I protocolli di rete sono insiemi di regole stabilite che dettano come formattare, trasmettere e ricevere dati in modo che i dispositivi di rete dei computer — dai server e router agli endpoint — possano comunicare indipendentemente dalle differenze nelle loro infrastrutture, progetti o standard sottostanti.
Per inviare e ricevere con successo informazioni, i dispositivi su entrambi i lati di uno scambio di comunicazione devono accettare e seguire le convenzioni del protocollo. Il supporto per i protocolli di rete può essere integrato nel software, nell’hardware o in entrambi.
I protocolli di rete standardizzati forniscono un linguaggio comune per i dispositivi di rete. Senza di essi, i computer non saprebbero come interagire tra loro. Di conseguenza, tranne che per reti speciali costruite intorno a un’architettura specifica, poche reti sarebbero in grado di funzionare, e internet come lo conosciamo non esisterebbe. Praticamente tutti gli utenti finali della rete si affidano ai protocolli di rete per la connettività.
Come funzionano i protocolli di rete
I protocolli di rete suddividono i processi più grandi in funzioni e compiti discreti e strettamente definiti ad ogni livello della rete. Nel modello standard, noto come modello OSI (Open Systems Interconnection), uno o più protocolli di rete governano le attività ad ogni livello nello scambio di telecomunicazioni.
Un insieme di protocolli di rete cooperanti è chiamato suite di protocolli. La suite TCP/IP include numerosi protocolli attraverso i livelli — come i livelli dati, rete, trasporto e applicazione — che lavorano insieme per permettere la connettività internet. Questi includono:
- Transmission Control Protocol (TCP), che usa un insieme di regole per scambiare messaggi con altri punti internet a livello di pacchetti di informazioni;
- User Datagram Protocol (UDP), che agisce come un protocollo di comunicazione alternativo al TCP ed è usato per stabilire connessioni a bassa latenza e tolleranza alle perdite tra applicazioni e internet.
- Protocollo Internet (IP), che usa una serie di regole per inviare e ricevere messaggi a livello di indirizzo Internet; e
- protocolli di rete aggiuntivi che includono il protocollo HTTP (Hypertext Transfer Protocol) e FTP (File Transfer Protocol), ognuno dei quali ha definito una serie di regole per scambiare e visualizzare informazioni.
Ogni pacchetto trasmesso e ricevuto su una rete contiene dati binari. La maggior parte dei protocolli aggiunge un’intestazione all’inizio di ogni pacchetto per memorizzare informazioni sul mittente e sulla destinazione del messaggio. Alcuni protocolli possono anche includere un footer alla fine con informazioni aggiuntive. I protocolli di rete elaborano queste intestazioni e piè di pagina come parte dei dati che si muovono tra i dispositivi al fine di identificare i messaggi del loro stesso tipo.
I protocolli di rete sono spesso stabiliti in uno standard industriale — sviluppato, definito e pubblicato da gruppi come:
- l’International Telecommunication Union
- l’Institute of Electrical and Electronics Engineers
- la Internet Engineering Task Force
- la International Organization for Standardization
- il World Wide Web Consortium.
I principali tipi di protocolli di rete
In generale, le reti hanno tre tipi di protocolli: comunicazione, come Ethernet; gestione, come il Simple Mail Transfer Protocol (SMTP); e sicurezza, come Secure Shell (SSH).
Cadono in queste tre grandi categorie migliaia di protocolli di rete che gestiscono uniformemente un’ampia varietà di compiti definiti, tra cui autenticazione, automazione, correzione, compressione, gestione degli errori, recupero di file, trasferimento di file, aggregazione di link, routing, semantica, sincronizzazione e sintassi.
Implementazione dei protocolli di rete
Per funzionare, i protocolli di rete devono essere codificati all’interno di un software, sia una parte del sistema operativo del computer (OS) o come applicazione, sia implementati nell’hardware del computer. La maggior parte dei sistemi operativi moderni possiede servizi software integrati che sono preparati per implementare alcuni protocolli di rete. Altre applicazioni, come i browser web, sono progettate con librerie software che supportano qualsiasi protocollo necessario al funzionamento dell’applicazione. Inoltre, il supporto dei protocolli TCP/IP e di routing è implementato direttamente nell’hardware per migliorare le prestazioni.
Ogni volta che viene implementato un nuovo protocollo, viene aggiunto alla suite di protocolli. L’organizzazione delle suite di protocolli è considerata monolitica poiché tutti i protocolli sono memorizzati nello stesso indirizzo e costruiti uno sopra l’altro.
Vulnerabilità dei protocolli di rete
Una grande vulnerabilità trovata nei protocolli di rete è che non sono progettati per la sicurezza. La loro mancanza di protezione può talvolta permettere ad attacchi maligni, come l’intercettazione e l’avvelenamento della cache, di colpire il sistema. L’attacco più comune ai protocolli di rete è la pubblicità di falsi percorsi, facendo passare il traffico attraverso host compromessi invece di quelli appropriati.
Gli analizzatori di protocollo di rete sono stati progettati e installati in risposta a queste vulnerabilità. Gli analizzatori di protocollo di rete proteggono i sistemi da attività dannose integrando firewall, programmi anti-virus e software anti-spyware.
Usi dei protocolli di rete
I protocolli di rete sono ciò che rende possibile l’Internet moderno, poiché consentono ai computer di comunicare attraverso le reti senza che gli utenti debbano vedere o sapere quali operazioni in background stanno avvenendo. Alcuni esempi specifici di protocolli di rete e i loro usi sono:
- Post Office Protocol 3 (POP3), che è la versione più recente di un protocollo standard usato per ricevere e-mail in arrivo.
- Simple main transport Protocol, che è usato per inviare e distribuire e-mail in uscita.
- File Transfer Protocol (FTP), che è usato per trasferire file da una macchina all’altra.
- Telnet, che è un insieme di regole usate per collegare un sistema a un altro tramite un login remoto. In questo protocollo, il sistema che invia la richiesta di connessione è il computer locale e il sistema che accetta la connessione è il computer remoto.
Alcuni altri esempi di protocollo di rete includono:
- Address Resolution Protocol
- Blocks Extensible Exchange Protocol
- Border Gateway Protocol
- Binary Synchronous Communications
- Canonical Text Services
- Domain name system
- Dynamic Host Configuration Protocol
- Enhanced Interior Gateway Routing Protocol
- HTTP over SSL
- Sistema di interfaccia umana
- Internet Control Message Protocol
- Internet Message Access Protocol
- Gopher
- Controllo accesso media
- Network News Transfer Protocol
- Open Shortest Path First
- Post Office Protocol
- Secure Sockets Layer
- Simple Mail Transfer Protocol
- Telnet
- Terminal Network
- Thread
- Transmission Control Protocol
- Transport Layer Security
- Universal Description, Discovery and Integration
- User Datagram Protocol
- Voice over IP
- X10