:: Enseignements :: ESIPE :: E4INFO :: 2011-2012 :: Applications réseaux ::
[LOGO]

TCP non bloquant


Exercice 1 - Mini additionneur TCP non bloquant

On souhaite écrire un serveur qui accepte de multiples clients en non-bloquant et permettant d'effectuer l'addition de deux entiers pour chaque client.

Pour simplifier, on vous donne le code du client, qui demande 2 entiers au clavier, les envoie en serveur et attends la réponse du serveur.

Écrire le code du serveur non bloquant.

Modifier le client pour qu'il continue (en boucle) à envoyer des opérandes et à reçevoir des résultats; vérifier que votre serveur fonctionne toujours correctement.

Utilisez jconsole pour constater l'évolution du nombre de threads utilisés par le serveur lorsque le nombre de clients simultanés augmente...

Exercice 2 - Un serveur Echo bizarre en non-bloquant

Écrire un serveur qui accepte de multiples clients en non-bloquant, qui se comporte comme un serveur Echo (tout ce qui est reçu est renvoyé au client), mais qui double toutes les occurrences du caractère ASCII A.
Pour simplifier le développement, dans un premier temps, on considerera les bytes comme des caractères (ascii).

Tester avec plusieurs clients en parallèle (vous pouvez utiliser l'utilitaire nc)

Exercice 3 - Un client non-bloquant

Réfléchissez à l'implémentation d'un client non bloquant pour le serveur "bizarre" précédent.