Règles relatives aux ports
- Tous les ports de la console XBOX auxquels le titre peut se lier, à l’exception du port multijoueur UDP (User Datagram Protocol) local préféré, ont le même comportement que sur un PC avec le pare-feu par défaut. Ces ports autorisent tout le trafic sortant TCP (Transmission Control Protocol) et UDP, tout en bloquant les paquets UDP et TCP entrants non sollicités.
- Le port multijoueur UDP local préféré se comporte de la même façon que les autres ports, mais autorise les paquets UDP entrants non sollicités. TCP ne peut pas être utilisé.
- Pour la communication pair à pair dans les titres du Microsoft Game Development Kit (GDK), vous devez utiliser UDP sur le port multijoueur préféré. De plus, vous devez effectuer la traversée du pare-feu et du NAT.
Disponibilité des ports/ports réservés
Le titre peut utiliser n’importe quel port disponible auquel il peut se lier. Si un port est déjà utilisé, la fonction bind retourneE_ADDRINUSE, comme elle le ferait sur un PC.
Un certain nombre de ports ne sont jamais disponibles pour le titre. La liste des ports réservés présente l’ensemble actuel des ports réservés par le système.
Il n’existe aucun moyen pour les titres du Microsoft Game Development Kit (GDK) de réserver des ports à l’avance. Il est toujours possible qu’un port soit déjà utilisé au moment où le titre du Microsoft Game Development Kit (GDK) tente de s’y lier. Une logique de repli et de nouvelle tentative appropriée est nécessaire lorsque ces conflits de ports se produisent.
La seule exception est le port multijoueur UDP local préféré, qui est réservé au titre et dont la disponibilité est toujours garantie.
Ports de développement
Pendant le développement, il peut être utile d’autoriser les paquets TCP et UDP entrants non sollicités afin de faciliter les outils et les flux de débogage. Les ports que le titre du Microsoft Game Development Kit (GDK) prévoit d’utiliser à cette fin doivent être spécifiés sous le nœudDevelopmentOnly du fichier MicrosoftGame.config. Vous pouvez spécifier un nombre quelconque de ports. L’utilisation du port dans le titre est identique à celle de tout autre port. Les ports de développement n’ont ce comportement particulier que sur les trousses de développement et reprennent le comportement par défaut, soit le blocage des paquets entrants non sollicités, sur les consoles commerciales. L’exemple suivant montre comment marquer les ports 4600 et 4601 comme ports de développement dans MicrosoftGame.config.
Après avoir modifié
DebugNetworkPortList dans MicrosoftGame.config, vous devez, en plus de redéployer votre titre, exécuter xbapp applyconfig pour que les modifications prennent effet.