Un’interfaccia di comunicazione UNIX sviluppata dall’Università di Berkeley per consentire l’agevole comunicazione tra processi e applicazioni attraverso la rete. Si tratta di un’entità logica a cui il programma si rivolge per colloquiare con un processo funzionante su un’altra macchina servendosi di un protocollo di rete come il TCP/IP. L’applicativo apre un "socket" e dichiara l’indirizzo di destinazione (composto dallindirizzo di rete e qualche altro identificatico) dopo di che la rete si occupa di creare la connessione.
Oltre che in UNIX i socket vengono utilizzati anche in ambiente NetWare e AppleTalk. Nel mondo NetWare il socket è una parte dell’indirizzo IPX e rappresenta la destinazione del pacchetto. A ogni socket viene assegnato un valore univoco, solitamente in modo dinamico, anche se alcuni socket sono rivervati da Novell per proprio uso.
Esistono quattro tipi di socket:
Datagram socket, per inviare datagrammi (un pacchetto utilizzato entro un sistema di recapito di
tipo connectionless nel quale non viene garantita la ricezione).
Stream socket, un meccanismo di livello superiore rispetto al precedente, che fornisce una connessione affidabile con il destinatario (ricezione garantita).
Raw socket, utilizzato per accedere a protocolli di basso livello e accessibile solo a programmi privilegiati.
DAS (Dynamically Assigned Socket) e SAS (Statistically Assigned Socket) usati per la consegna di datagrammi tra i diversi nodi di una rete AppleTalk.
|
|