Chaque système informatique qui utilise la suite de protocoles TCP/IP contient un ensemble d’API appelées API sockets. Elles permettent aux programmes de se connecter et d’échanger des données sur le réseau.
Même si j’utilise le courriel comme exemple de programme dans cet article, les sockets font bien plus
Introduction des sockets

que cela. Ils sont l’API de communication sous-jacente que toutes les applications de type TCP/IP – dont Telnet, FTP, HTTP et PING – utilisent. En fait, les sockets sont le moyen d’écrire des applications en réseau. IBM a utilisé les API sockets pour écrire Client Access. Microsoft les a utilisés pour écrire Internet Explorer. Et Apache s’en est aussi servi pour son fameux serveur HTTP.
Faisons une analogie entre un socket et un téléphone en disséquant une conversation téléphonique :
• Vous cherchez le numéro de téléphone et le numéro de poste de la personne à qui vous voulez parler.
• Vous saisissez le combiné téléphonique.
• Vous composez le numéro et le poste et attendez que quelqu’un dise « Allo ».
• Ensuite, vous conversez avec l’interlocuteur. La personne entend tout ce que vous dites et vous entendez tout ce qu’elle dit.
• La conversation terminée, vous raccrochez le combiné. Un programme client TCP fonctionne à peu près de la même manière :
• Vous recherchez l’adresse IP (numéro de téléphone) et le port (poste) du serveur auquel vous voulez parler. Vous le faites avec les API gethostbyname() et getservbyname ().
• Vous ouvrez un nouveau socket (récepteur téléphonique) en appelant l’API socket().
• Vous vous connectez à l’adresse et au port IP et attendez que le serveur établisse la connexion (en composant le numéro et en attendant le « allo ») avec l’API connect().
• Vous envoyez et recevez l’information au moyen des API send() et recv().
• A la fin, vous vous déconnectez (raccrochez le combiné) avec l’API close().
J’ai prototypé toutes les API sockets ainsi que les structures de données et les constantes qui les accompagnent, et j’ai mis le tout dans un livre de copie (copy book) appelé SOCKET_H. Vous pouvez télécharger ce membre à partir de iSeriesNetwork. com/code pour ne pas avoir à écrire vous-mêmes ces définitions.
Téléchargez cette ressource

Percer le brouillard des rançongiciels
Explorez les méandres d’une investigation de ransomware, avec les experts de Palo Alto Networks et Unit 42 pour faire la lumière dans la nébuleuse des rançongiciels. Plongez au cœur de l’enquête pour comprendre les méthodes, les outils et les tactiques utilisés par les acteurs de la menace. Découvrez comment prévenir les attaques, les contrer et minimiser leur impact. Des enseignements indispensables aux équipes cyber.
Les articles les plus consultés
- Les 6 étapes vers un diagnostic réussi
- Activer la mise en veille prolongée dans Windows 10
- Afficher les icônes cachées dans la barre de notification
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
Les plus consultés sur iTPro.fr
- Le Club EBIOS, une communauté dédiée à la gestion des risques autour de la méthode EBIOS
- La difficile mise en conformité avec les réglementations pour les entreprises françaises
- Les risques liés à l’essor fulgurant de l’IA générative
- Pourquoi est-il temps de repenser la gestion des vulnérabilités ?
- Reporting RSE : un levier d’innovation !
