Le protocol UDP pour un jeu - Divers - Programmation
Marsh Posté le 04-05-2004 à 14:19:56
c'est parce que c'est le client derriere le routeur qui se connecte sur le serveur, donc tout est bon
par contre pour faire server derriere un routeur, le configurer est obligatoire
ps : utilise un port que tu fixe pour la connection au serveur , et laisse windows s'occuper du port coté client :-)
Marsh Posté le 04-05-2004 à 15:25:16
Dans le cas d'un protocole connecté comme TCP ce que tu dis est correct mais avec UDP le client et le serveur s'envois des messages de façon indépendante, donc les 2 parties font office de serveur et de client... peut-être que je me trompe, justement c'est ce que j'essaie de savoir
Marsh Posté le 05-05-2004 à 12:14:07
pas faux, j'avais oublié ca
alors +1, ca m'interesse aussi vu que je vais me plonger la dedans prochainement aussi :-)
je suis moi meme derriere un routeur, et j'ai essayer bcp de programmes ( et meme des tout petits ) qui fonctionne en udp sans probleme, donc je pense que y a pas à se préocupper de ca...mais pourtant la logique voudrait que si...
vu que je suis derriere un routeur je peut t'aider à tester si tu veut ;-)
Marsh Posté le 05-05-2004 à 12:20:26
le client se connecte sur le serveur qui a une IP publique : lors de la réception du premier datagramme, le serveur à la connaissance du client et avec les informations de l'entete du datagramme, il peut renvoyer un message au client.
bref pas la peine de réserver des ports : le 2000 pour ton serveur, ton client lui n'a aucune limitation : il prend le premier que lui donne le système et voilà ....
(Java le client )
Marsh Posté le 05-05-2004 à 12:42:49
C'est pas moi qui ai choisi Java !!
T'as une dent contre java ?
Marsh Posté le 05-05-2004 à 19:46:28
je vois que j'ai bcp de lacunes encore ^^
mais apparement ca répond à ta question : les concepteurs de l'udp ont pensé à toi
Marsh Posté le 05-05-2004 à 19:47:47
rien à voir. encore heureux que quand tu reçois une connexion tu soit en mesure de savoir avec qui tu parles
Marsh Posté le 05-05-2004 à 20:47:42
arg g encore dis une connerie
bon ben je me tais, je me renseigne et je reviens ^^
Marsh Posté le 05-05-2004 à 21:49:03
Reply
Marsh Posté le 04-05-2004 à 09:08:10
Hello tout le monde !
Voila je suis en train de faire un petit jeu multijoueur avec un pote, je m'occupe du serveur (Ruby) et lui du client (java).
Nous avons choisi le protocole UDP car la communication n'a pas besoin d'être fiable et est "désynchronisé".
Mais voila, un problème est survenu (les numéros de port sont choisi juste pour l'exemple) :
Le client se connecte sur le serveur par le port 2000 et le serveur sur le client par le port 2001, mais si le client passe par une passerelle, ce qui est souvent le cas (modem routeur ADSL par exemple), le serveur ne pourra pas atteindre le client car le routeur ne saura pas ou router les paquets arrivant sur le port 2001 (à moins que le routeur soit spécifiquement configurer, mais admettons qu'il ne le soit pas).
Donc comment font les jeux comme quake pour établir une "connexion UDP" à travers une passerelle sans avoir à la configurer ?
Merci d'avance pour vos réponses !