Peer to peer

KeTZaLDeV Messages postés 35 Date d'inscription mercredi 5 octobre 2005 Statut Membre Dernière intervention 24 octobre 2016 - 23 mars 2006 à 14:35
frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006 - 26 mars 2006 à 23:26
bonjour, j'ai un petit soucis...

Je dois fabriquer un logiciel de messagerie, utilisant la voIP, donc j'utilise l'API JMF, et mon probleme est que je dois faire tourner ce client serveur en mode Peer to Peer.

Le probleme est que qi une personne se trouve derriere un routeur, ainsi que son correspondant, comment arriver a faire une connexion entre les deux.

Si j'ai un serveur avec une adresse routable, je peux fabriquer un serveurSocket sur ce serveur et meme si mon client est derriere son routeur, la conenxion s'etablira grace aux ports...(je ne rentre pas dans les details...)

Seulement, si mon serveur de peer to peer ne possede pas une adresse routable, le client ne pourra jamais le trouver.

Je vous donne les elements que je possede pour cette application : je peux utiliser un serveur avec adresse routable, afin que mon client se connecte dessus(serveur de comptes)

Ensuite ce client doit faire un genre de serveur pour commencer une communication avec un autre client...

La question que je me pose, est :
Peut on raccorder deux sockets qui partent de clients avec addresses non routable vers le serveur, peut on les raccorder entre eux afin de faire un canal de discussion entre les deux clients.

Les logiciels de peer to peer arrive a le faire, je ne voit pas pourquoi on ne pourrais pas le faire en java...
Merci de votre contribution

Ketzal

10 réponses

frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006
23 mars 2006 à 20:49
bonjour...



et oui..le probleme est bien connu...ca s'appelle du Nat traversal



on peut le faire en java, pas de souci. mais la pas d'api pour aider.



la jmf utilise RTP, qui ne passe pas les nat..donc il faut que tu
implementes un systeme de passage de Nat et ensuite un
RTPConnector.



la pas de solution miracles..prendre petites mimine pour coder ca.

prevoir 2 mois minimum rien que pour ca..(et encore, ca m'a pris plus
de temps que ca pour un systéme simple, je me casse encore la tete
dessus pour l'ameliorer :( ).



sinon, tu peux aussi trouver des bonnes docs sur les sites des
laboratoires de recherche en reseau. par exemple, la technique la
plus evoluée actuellement c'est le hole punching concue pour passer les
doubles nat, mais qui ne les passent pas toutes.

Le MIT travaille dessus en ce moment et sors quelques docs regulierement.



sinon..tu peux toujours passer par un serveur de relais qui aurait une ip publique (ou une nat precise sur ton serveur).



sinon..ce n'est pas pasque les logiciels peer to peer le fond que c'est facile :(.



enfin bon courage :)
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
23 mars 2006 à 21:06
Coucou,



faisez gaffe hein, meme en java, le p2p devient illegal ^^
0
frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006
23 mars 2006 à 21:07
meme pas vrai :p.



tu le disais toi meme y a pas longtemps, pas dans le cadre de la recherche :D
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
23 mars 2006 à 21:09
Arf oui :/



bon ben [../auteurdetail.aspx?ID=592813 ketzaldev] tu va devoir prouver que tu fais de la recherche :D
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
KeTZaLDeV Messages postés 35 Date d'inscription mercredi 5 octobre 2005 Statut Membre Dernière intervention 24 octobre 2016
23 mars 2006 à 21:21
ouais lol, merci pour les infos...

c partit, je cherche :)
0
frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006
23 mars 2006 à 21:22
nan mais ketzaldev developpe une plateforme de elearning.

ca fait un certain temps qu'il se bat avec la jmf et tomcat pour ca.



question tu connais : www.plenadis.fr ?? je t'en ai deja parlé, mais ca
n'a pas eu l'air de t'interresser....m'enfin..ca ne fait qu'un peu plus
1000 classes java a se retaper :S



(qu'ils sont mechants ces profs, tuteurs ou maitres de stages a
filer des sujets qui scotchent tous les etudiants tels que la visio ou
le reseau )
0
frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006
23 mars 2006 à 21:22
nan mais ketzaldev developpe une plateforme de elearning.

ca fait un certain temps qu'il se bat avec la jmf et tomcat pour ca.



question tu connais : www.plenadis.fr ?? je t'en ai deja parlé, mais ca
n'a pas eu l'air de t'interresser....m'enfin..ca ne fait qu'un peu plus
1000 classes java a se retaper :S



(qu'ils sont mechants ces profs, tuteurs ou maitres de stages a
filer des sujets qui scotchent tous les etudiants tels que la visio ou
le reseau )
0
frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006
23 mars 2006 à 21:23
par curiosité c'est quoi ta fac ? ou ecole ?
0
KeTZaLDeV Messages postés 35 Date d'inscription mercredi 5 octobre 2005 Statut Membre Dernière intervention 24 octobre 2016
26 mars 2006 à 22:07
ESEO angers www.eseo.fr

Et vous savez comment faire ca avec du multicast par hasard?
0
frank_sauvage Messages postés 56 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 9 avril 2006
26 mars 2006 à 23:26
en utilisant la meme propriété que pour le hole punching ca passe en bidouillant..

mais..c'est de la grosse bidouille d'une part, et d'une autre, ca ne
marche que sur les peripheriques de nat supportant le hole
punching...c'est a dire ceux basé sur une table a triplets et non
quadruplet..



la tu sors du cadre programmation et tu t'engouffres dans du reseau
bien pointu par contre . ce dont on parle ici est experimental.



de toute facon, tu dois dés a present comprendre un truc : en reseau,
aucune solution est universelle, si tu veux que quelque chose
communique, plus tu integreras de techniques, plus ca aura
de chance de marcher dans plus d'environnements. c'est la regle. c'est
pour ca qu'il existe des protocoles de decouverte de topologies afin de
decider quelle technique utiliser.



Cdlt;

FSA
0
Rejoignez-nous