Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

Exercice 3 : Mise en œuvre de TCP/IP Echo (Sockets TCP)

Ce projet implémente un service echo TCP où le serveur renvoie exactement les données reçues du client.

Structure du projet

  • ServeurTCP.java : Serveur echo qui écoute sur le port 12347
  • ClientTCP.java : Client qui envoie des messages et reçoit l'echo

Fonctionnement

Serveur Echo

  1. Crée un socket serveur sur le port 12347
  2. Accepte une connexion client
  3. Lit les données envoyées par le client
  4. Renvoie immédiatement les mêmes données (echo)
  5. Répète les étapes 3-4 jusqu'à recevoir "bye" ou "null"
  6. Ferme toutes les connexions

Client

  1. Se connecte au serveur echo
  2. Demande à l'utilisateur d'entrer un message
  3. Si le message est "bye" ou "null", ferme la connexion
  4. Sinon, envoie le message au serveur
  5. Reçoit et affiche l'echo du serveur
  6. Répète les étapes 2-5

Compilation

cd exo3
javac ServeurTCP.java ClientTCP.java

Exécution

1. Démarrer le serveur (dans un terminal)

java ServeurTCP

2. Démarrer le client (dans un autre terminal)

java ClientTCP

Exemple d'utilisation

Terminal Serveur :

Serveur Echo démarré sur le port 12347
En attente de connexion...

Client connecté : 127.0.0.1
Service Echo actif (attend 'bye' ou 'null' pour terminer)

Reçu du client : Hello World
Echo renvoyé au client : Hello World

Reçu du client : Test message
Echo renvoyé au client : Test message

Reçu du client : 12345
Echo renvoyé au client : 12345

Message de fin reçu. Fermeture de la connexion...
Serveur arrêté.

Terminal Client :

Connexion au serveur Echo localhost:12347...
Connexion établie !
Service Echo actif (tapez 'bye' ou 'null' pour terminer)

Vous: Hello World
Echo: Hello World

Vous: Test message
Echo: Test message

Vous: 12345
Echo: 12345

Vous: bye

Fermeture de la connexion...
Connexion fermée.

Notes

  • Le serveur renvoie exactement ce qu'il reçoit (service echo)
  • La connexion se termine avec "bye" ou "null"
  • Le serveur doit être démarré avant le client
  • Le port par défaut est 12347 (modifiable dans le code)
  • Le serveur gère une seule connexion à la fois