Socket
Introduction Sockets
Création, attachement, fermeture
Sockets dans le domaine unix
Mode connecté
Mode non connecté
Sockets dans le domaine internet
Mode connecté
Mode non connecté Serveur servant plusieurs clients
Architecture d’applications réparties Principe :
Un serveur propose un ou plusieurs services (l’heure, transfert de
fichiers, etc.)
Un ou plusieurs clients utilisent le service
Serveur
processus rendant un service spécifique identifié par un port
particulier (n° port),
en attente sur une station (@ IP)
Client
processus appelant le serveur afin d’obtenir le service, lancé à la demande à partir généralement de n’importe quelle
station.
Émet une requête dans un protocole donné (TCP/IP ou UDP/IP) Précise l’adresse de la machine du serveur Précise le service souhaité : le port de communication
Interface de programmation pour les communications
Ensemble de primitives assurant le service de communication, Générique : s’adapte aux différents besoins de communication, Indépendant des protocoles et des réseaux :
▪ Mais développé à l’origine sous Unix 4BSD, pour Internet !
N’utilise pas forcément un réseau :
▪ Programmation de communication locale (interne à une station) : domaine Unix !
Interface de programmation proposée par l’unix de Berkeley
Permettent des échanges bidirectionnels entre processus Une socket :
Point de communication par lequel un processus peut émettre ou
recevoir des données
Un triplet (protocole, adresse, port)
Considérée comme un descripteur de fichier par le système d’exploitation À la différence
Socket:
▪ on distingue la création de la socket : socket() ▪ Du nommage: bind() ▪ La connection: connect() ▪ ….
Fichier:
▪ Open() !
La librairie UNIX socket permet la programmation au niveau transport
Ensemble