Aller au contenu
uencoder

Socket

Un socket est un point de terminaison de communication réseau identifié par (protocole, IP locale, port local, IP distante, port distant), servant d'interface entre les couches application et transport.

Objectif

Donne aux applications un point de communication abstrait qui masque les détails du protocole sous-jacent.

Mécanisme

L'API socket : socket() crée, bind() attribue une adresse, listen() met un serveur en écoute, accept() prend une connexion, connect() appelle depuis le client, send()/recv() transfèrent les données et close() ferme. Les sockets TCP ont une machine à états ; UDP est sans connexion.

Cas d’usage

  • Serveurs et clients réseau
  • Connexions aux bases de données
  • Communication WebSocket
  • Sockets de domaine Unix (IPC local)

Exemples

  • entrée
    (TCP, 0.0.0.0:8080, client:1234)
    Output
    One connected TCP socket

    The five-tuple

Erreurs courantes

Unclosed sockets exhaust available ports
Use SO_REUSEADDR or close sockets promptly

Termes associés

Outils associés

References