TP  Introduction aux socket

Master 2 IISA (réseaux et protocoles)
IPST/ULP  2006 - 2007


1. Client/Serveur UDP et TCP

Le client envoie des chaînes de caractères que le serveur affichera sur son terminal.


caractères, puis de fichiers). On vérifiera notamment, pour les chaînes de caractères, que le nombre de connexions simultanées
est limité par le paramètre de la fonction "listen". Vérifier les sockets avec la commandes "netstat" (port, processus attaché, état TCP, etc).

2. Dialogue avec un serveur existant

Pour le protocole HTTP, vous n'utiliserez que la commande "GET" sachant que le numéro de port est le 80. Le port utilisé par SMTP est le 25.
La spécification complète des protocoles HTTP et SMTP se trouve dans les RFC (Request For Comments) 2068 (HTTP)
et 821 (SMTP). Ces RFC sont disponibles à l'adresse suivante :  http://ietf.org/rfc.html

La commande "telnet m p"  établie une connexion TCP sur le port p de la machine m permettant alors de tester ces protocoles.

Fonctions utiles

in_addr_t inet_addr(const char *cp);

Transforme l'adresse IP donnée au format  "a.b.c.d"  en une structure in_addr.

int inet_aton(const char *cp, struct in_addr in);

Transforme l'adresse IP donnée au format "a.b.c.d" en un entier long non signé.

char * inet_ntoa(struct in_addr in);

Transforme une adresse IP du format struct in_addr au format "a.b.c.d".



Pour plus d'informations sur ces fonctions et les sockets en général, voir sur  : clarinet.u-strasbg.fr\~merindol.
Pour plus de détails sur l'ensemble des TP, voir sur : www.3d-reconstruction.org.