IBM Cloud Docs
Descrizione dei protocolli per le comunicazioni internet

Descrizione dei protocolli per le comunicazioni internet

In generale, un protocollo di comunicazione è un sistema di regole che consente a due o più entità di un sistema di comunicazioni di trasmettere informazioni. Internet dispone di una vasta suite di protocolli per coprire molte situazioni. Nella creazione di applicazioni basate sul Web e di interfacce di programmazione, gli sviluppatori di software utilizzano comunemente tre di questi protocolli di comunicazione per descrivere lo stato della rete e il modo in cui i pacchetti di dati vengono spostati nella rete:

  • ICMP, Internet Control Message Protocol, parte della suite di protocolli internet definita in RFC 792.
  • TCP, Transmission Control Protocol
  • UDP, User Datagram Protocol

I protocolli utilizzati per una particolare implementazione, ad esempio, di una chiamata API, possono influenzare il comportamento generale della rete. Vale quindi la pena di comprendere le differenze fondamentali tra di loro. Se hai bisogno di più informazioni, su internet sono disponibili molti buoni articoli con descrizioni dettagliate dei protocolli.

ICMP

ICMP è un protocollo di controllo, che significa che è progettato per trasportare informazioni sullo stato della rete stessa. Si tratta essenzialmente di un protocollo di livello di rete (livello OSI 3) di notifica degli errori e di controllo degli errori per la rete. Gli esempi più noti di ICMP nella pratica sono i programmi di utilità ping e traceroute. Il programma di utilità ping utilizza ICMP per analizzare gli host remoti per la reattività e il tempo complessivo di andata e ritorno dei messaggi del probe. Il programma di utilità traceroute utilizza ICMP per rilevare e tracciare gli instradamenti di rete che i pacchetti ICMP assumono quando viaggiano verso la destinazione.

Ciò che gli sviluppatori devono sapere è che i pacchetti ICMP non hanno numeri di porta TCP o UDP ad essi associati perché i numeri di porta sono un costrutto di livello 4 (livello di trasporto).

TCP e UDP

TCP (Transmission Control Protocol) e UDP (User Datagram Protocol) sono protocolli di trasporto di livello 4 OSI. Questi protocolli vengono utilizzati per passare i dati effettivi. La differenza principale tra TCP e UDP, dal punto di vista di uno sviluppatore, è come gestiscono l'ordine dei pacchetti.

TCP è un protocollo orientato alla connessione, garantisce che tutti i pacchetti inviati raggiungano la destinazione nell'ordine corretto.

In alternativa, UDP è un protocollo senza connessione. Le comunicazioni sono orientate al datagramma, quindi l'integrità è garantita solo sul singolo datagramma. I datagrammi raggiungono una destinazione e possono arrivare non in ordine o forse non arrivano affatto.

In genere, UDP viene utilizzato per la comunicazione in tempo reale, dove una piccola percentuale della velocità di perdita di pacchetti è preferibile al sovraccarico di una connessione TCP.