Demande d'aide

Fermé
cs_didouni_ahlem Messages postés 2 Date d'inscription mercredi 14 février 2007 Statut Membre Dernière intervention 7 mai 2010 - 11 mars 2010 à 14:32
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 11 mars 2010 à 14:53
Salut à tous,
SVP j'ai besoin d'aide sur un petit exercice:



Enoncé :
Les architectures Peer-to-Peer se basent sur un principe simple de partage de fichiers sur internet où chaque participant peut jouer le rôle d’un client et d’un serveur en même temps. Dans cette épreuve, il s’agit d’élaborer un exemple assez basique de systèmes de fichiers en « peer-to-peer » dont voici le principe :
1)Connexion au réseau peer-to-peer
- Chaque utilisateur dispose d’une application pour partager le contenu d’un répertoire spécifié en ligne de commande en tant que argument à la classe principale de cette application.
- En démarrant cette application, l’utilisateur dispose d’une application qui joue le rôle d’un client et d’un serveur.
- Au démarrage, cette application charge le contenu d’un fichier servers.txt dans un vector servers. Ce fichier contient une liste d’adresse IP d’autres utilisateurs du réseau Peer-to-Peer.

2)Recherche de fichiers
- Le client lance une requête spécifiant un nom de fichier à télécharger dans une première ligne et son adresse IP dans une deuxième ligne. Cette requête est envoyée aux serveurs que le client connaît à travers le vecteur servers. Ce client reste en écoute des réponses des autres machines sur un port par défaut 1234. Voici un exemple de ce genre de requêtes :
SEARCH maChonson.mp3
134.120.1.67
- Chaque application qui reçoit cette requête vérifie si le fichier existe dans son répertoire partagé et envoi un message au client qui cherche le fichier pour lui dire que le fichier a été trouvé. Voici un exemple de ce genre de messages (deuxième ligne = adresse de la machine où le fichier a été trouvée):
FOUND maChanson.mp3
134.120.1.124
- Lors de la réception d’un message FOUND l’adresse IP de la machine contenant le fichier est ajoutée au vecteur de serveurs si ce vecteur ne le contient pas déjà.
- Chaque application qui reçoit une requête SEARCH doit aussi transmettre la requête aux autres nœuds qu’il connaît en ajoutant son adresse IP dans la deuxième ligne. Voici un exemple :
SEARCH maChonson.mp3
134.120.1.67 134.120.1.124
- Pour éviter les recherches interminables, l’application qui reçoit une requête de recherche d’un fichier ne doit la transmettre qu’aux nœuds qui n’ont pas déjà traité cette requête.

3)Téléchargement de fichiers
- Si un client veut télécharger un fichier d’un nœud particulier (après avoir obtenu le résultat de recherche), ce dernier doit envoyer une requête DOWNLOAD du style :
DOWNLOAD maChonson.mp3
- L’application qui reçoit une requête DOWNLOAD doit envoyer le contenu du fichier demandé vers le client concerné
4)Déconnexion
- Si un client veut quitter le réseau Peer-to-Peer, il doit enregistrer le contenu du vecteur servers et envoyer aux nœuds qu’il connait une requête sur deux lignes contenant QUIT et son adresse IP:
QUIT
134.120.1.67
- Chaque nœud qui reçoit une requête QUIT doit enlever l’adresse spécifiée dans la requête de son vecteur servers et transmettre cette requête aux autres machines enregistrées dans ce même fichier tout en ajoutant son adresse à la fin de la deuxième ligne
QUIT
134.120.1.67 134.120.1.124
- Pour éviter les transmissions interminables, l’application qui reçoit une requête QUIT ne doit la transmettre qu’aux nœuds qui n’ont pas déjà traité cette requête.


Travail demandé :
Développer le code de l’application demandée selon l’énoncé ci-dessus en utilisant les sockets JAVA.





j'été absent lors des cours, et je sais pas quoi faire

1 réponse

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
11 mars 2010 à 14:53
Salut,

Parce que tu as séché les cours pour jouer à la playstation, c'est à nous de faire le boulot à ta place, c'est cà ?

Ne rêve pas, on n'est pas là pour cà.

Sujet clos !
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
Rejoignez-nous