• Aucun résultat trouvé

PR6 – Programmation réseaux TP no 10 : Multi-diffusion

N/A
N/A
Protected

Academic year: 2022

Partager "PR6 – Programmation réseaux TP no 10 : Multi-diffusion"

Copied!
1
0
0

Texte intégral

(1)

L3 Informatique Année 2014-2015

PR6 – Programmation réseaux TP n

o

10 : Multi-diffusion

Dans ce TP, nous refaisons un serveur de tchat, mais cette fois-ci avec des serveurs de diffusion.

I) Diffusion intégrale

Exercice 1 : Le serveur

Écrivez, en Java et en C, un programme qui reçoit sur le port 12321 des datagrammes UDP et qui en diffuse “intégralement” le contenu précédé de l’adresse de l’émetteur et le temps de la réception, sur le port numéro 10101 de chaque machine du réseau.

Supposez que la taille du message contenu dans les datagrammes ne dépasse pas 1024 caractères. Le format des messages envoyé par le serveur sera l’adresse IP de l’émetteur, suivit d’un tabulation, de l’heure et de la minute de la réception du message par le serveur, d’une deuxième tabulation et du contenu du message reçu par le serveur, par exemple : 172.28.46.176 10:14 Good morning!

Exercice 2 : Le client

Écrivez, en C ou en Java au choix, un client pour ce serveur :

– le client lit les messages sur l’entrée standard et les envoie à partir d’un port quelconque sous forme de datagrammes UDP au serveur, et

– en même temps, il lit les messages qu’il reçoit du serveur sur le port 10101 et les affiche sur la sortie standard.

Que se passe-t-il quand plusieurs serveurs diffusent leurs messages sur le port 10101 ? Que se serait-il passé si les erveurs écoutaient sur le même port que les clients ?

Exercice 3 : UI – bonus

Pour améliorer l’interface utilisateur du client, vous pouvez afficher les messages que vous recevez du serveur sur un terminal autre que le terminal sur lequel vous lisez les messages tapés au clavier.

Pour ce faire, il faut que vous ouvriez un autre terminal, que vous récupériez le lien sur son fichier IO à l’aide de la commande ttyet que vous écriviez dans ce fichier.

II) Multi-diffusion

Exercice 4 : Le serveur

Changez votre serveur pour qu’il envoie les messages, qu’il reçoit maintenant sur le port 12121, à une addresse de diffusion sur le port 10201.

Exercice 5 : Le client

Modifiez votre client de sorte qu’il s’abonne à l’adresse de diffusion et qu’il reçoive les messages.

1

Références

Documents relatifs

Écrire un programme qui prend 3 arguments fic, alire, pivot sur la ligne de commande, vérifie que fic est composé uniquement de chiffres et si c’est le cas, stocke dans une chaîne

Ce message aura la forme suivante : adresse_ip port\n où adresse_ip est une chaînes de caractère représentant une adresse IP et port est une chaîne de caractères représentant

Pour cela le client demande la définition d’un mot au serveur et celui-ci lui renvoie le texte obtenu par l’appel à l’utilitaire dict (voir man dict sur son terminal).. Si dict

Dans chacun des trois exercices ci-dessous, il s’agit d’écrire un serveur qui reçoit une image sous une certaine forme, la transforme en niveaux de gris et la renvoie sous une

Écrire un programme, ServeurMajuscule, représentant un serveur TCP itératif renvoyant les chaînes de caractères envoyées par des clients après les avoir mis en majuscule.. Le

Pour cela, faire en sorte que le serveur détermine le nombre à choisir lorsque qu’un client se connecte et qu’il n’y a à ce moment là pas de client connecté.. Tout client qui

L’idée est la suivante : un client producteur envoie au serveur une chaîne de caractères qu’il aura reçu par l’entrée standard (le clavier), le serveur stocke alors cette

Le protocole est élémentaire, le client se contente d’envoyer un mot au serveur qui lui renvoit la réponse sous la forme d’un texte constitué d’un nombre quelconque de lignes