Vous êtes sur la page 1sur 7

Faculté des Sciences de Monastir Développement d’application réparties

TP N°1 : Les sockets

Objectifs du TP :
Ce TP a pour objectif de manipuler la communication client/serveur via les sockets avec java.
Introduction aux sockets :
Un socket est un point de terminaison dans une communication bidirectionnelle entre deux programmes
fonctionnant sur un réseau.
La communication par socket est souvent comparée aux communications humaines. On distingue ainsi
deux modes de communication :
• Le mode connecté (comparable à une communication téléphonique), utilisant le protocole TCP. Dans ce
mode de communication, une connexion durable est établie entre les deux processus, de telle façon que le
socket de destination n'est pas nécessaire à chaque envoi de données.
• Le mode non connecté (analogue à une communication par courrier), utilisant le protocole UDP. Ce
mode nécessite l'adresse de destination à chaque envoi, et aucun accusé de réception n'est donné.
Lancement du Eclipse :
1- Lancer un nouveau projet :
File  New  Project Java Project

1
Faculté des Sciences de Monastir Développement d’application réparties

2- Nommer le projet : Tp1Socket

3- Créer une classe Server :


Remarque : Il faut vérifier que la classe contient la méthode main.

2
Faculté des Sciences de Monastir Développement d’application réparties

4- De la même façon créer la classe Client.

Exercice 1 : Recevoir et envoyer des entiers


L’exercice a pour but de développer un serveur TCP/IP qui écoute sur le port 1234 et qui accepte des
connexions clientes. Le programme client se connecte au serveur, puis lui envoie un message. Le message
est analysé par le serveur, qui lui répond.
L’exemple suivant montre deux classes :

 L’un du coté serveur : Server

 L’autre du coté client : Client

3
Faculté des Sciences de Monastir Développement d’application réparties
Coté Serveur :

Coté Client :

4
Faculté des Sciences de Monastir Développement d’application réparties
Exécuter le programme et commenter le résultat :

Remarque : Exécuter la classe Server puis la classe Client.

5
Faculté des Sciences de Monastir Développement d’application réparties

Exercice 2 : Recevoir et envoyer des chaines de caractères


On souhaite échanger entre le client/serveur des chaines de caractères via les sockets.
1- Ecrire la partie client et la partie serveur

6
Faculté des Sciences de Monastir Développement d’application réparties

2- Exécuter les deux classes

Vous aimerez peut-être aussi