Socket (reti)
Da Wikipedia, l'enciclopedia libera.
Nei sistemi operativi moderni, un socket è un'astrazione software progettata per poter utilizzare delle API standard e condivise per la trasmissione e la ricezione di dati attraverso una rete. E' il punto in cui il codice applicativo di un processo accede al canale di comunicazione per mezzo di una Porta (reti). Dal punto di vista di un programmatore, un socket è un particolare oggetto sul quale leggere e scrivere i dati da trasmettere o ricevere.
Ci sono due tipi fondamentali di socket:
- I socket tradizionali su protocollo IP, usati in molti sistemi operativi per le comunicazioni attraverso il protocollo di rete IP (quali TCP o UDP).
- Gli Unix domain socket (detti anche socket locali), usati nei sistemi operativi Posix per le comunicazioni tra processi residenti sullo stesso computer.
Un socket IP è identificato dalla terna indirizzo IP del computer, protocollo di trasporto, numero di porta.
I socket sono stati introdotti nel 1983 in BSD e poi sono stati ripresi da praticamente tutti gli altri sistemi operativi. Per questo motivo solitamente le funzioni di programmazione dei socket vengono chiamate Berkeley socket API.