Il livello di trasporto ac­qui­si­sce i dati dal livello di sessione e li inoltra al livello di rete. Inoltre, mette a di­spo­si­zio­ne una co­mu­ni­ca­zio­ne sicura e tra­spa­ren­te tra due sistemi, può scomporre i pacchetti e regolare la velocità di tra­smis­sio­ne.

Cos’è il livello di trasporto?

Il livello di trasporto (Transport Layer) è il quarto livello del modello ISO/OSI e serve ad as­si­cu­ra­re che due sistemi possano co­mu­ni­ca­re fra loro mediante una tra­smis­sio­ne dei dati end-to-end protetta, completa e tra­spa­ren­te. Ha anche il compito di evitare ingorghi.

Il modello ISO/OSI è uno standard volto a per­met­te­re il col­le­ga­men­to tra due terminali in una rete, anche se le due parti uti­liz­za­no software o hardware diversi. Svi­lup­pa­to a partire dagli anni Settanta e pre­sen­ta­to per la prima volta nel 1983, comprende un totale di sette livelli che hanno compiti diversi fra loro, ma sono costruiti l’uno sull’altro e in parte in­te­ra­gi­sco­no. I sette livelli sono, in ordine crescente:

  1. Livello fisico (Physical Layer)
  2. Livello di col­le­ga­men­to dati (Data Link Layer)
  3. Livello di rete (Network Layer)
  4. Livello di trasporto (Transport Layer)
  5. Livello di sessione (Session Layer)
  6. Livello di pre­sen­ta­zio­ne (Pre­sen­ta­tion Layer)
  7. Livello di ap­pli­ca­zio­ne (Ap­pli­ca­tion Layer)

Quali sono le funzioni del livello di trasporto?

Il compito prin­ci­pa­le del livello di trasporto è mettere a di­spo­si­zio­ne una tra­smis­sio­ne dei dati end-to-end fun­zio­na­le e sicura all’interno di una rete. A questo scopo il livello di trasporto ac­qui­si­sce i dati dal livello di sessione (livello 5) e li inoltra al livello di rete (livello 3). All’oc­cor­ren­za esso può sud­di­vi­de­re i dati anche in unità più piccole o rag­grup­par­li in pacchetti per tra­spor­tar­li più fa­cil­men­te.

Le tra­smis­sio­ni possono avvenire in modalità connessa oppure di­scon­nes­sa. Il livello di trasporto può uti­liz­za­re una con­nes­sio­ne di rete, usare un solo col­le­ga­men­to per più col­le­ga­men­ti oppure di­stri­bui­re un col­le­ga­men­to di trasporto tra più con­nes­sio­ni di rete, agendo però sempre in modo tra­spa­ren­te.

Il livello di trasporto si occupa anche di in­stau­ra­re, in­ter­rom­pe­re e mo­ni­to­ra­re la con­nes­sio­ne. Se la tra­smis­sio­ne avviene in modalità connessa, l’avvenuto tra­sfe­ri­men­to dei dati è segnalato da una conferma. Così la macchina che ha inviato i dati sa che tutte le unità sono state trasmesse come previsto. In assenza di conferma viene avviato au­to­ma­ti­ca­men­te un nuovo tentativo di tra­smis­sio­ne. Il livello di trasporto non tiene conto dei mezzi uti­liz­za­ti nei primi tre livelli.

Quali servizi svolge il livello di trasporto?

Numerosi sono i servizi che il livello di trasporto offre ai livelli superiori e che sono rilevanti per diversi aspetti del tra­sfe­ri­men­to dei dati. Di seguito alcuni esempi dei servizi più im­por­tan­ti.

  • Tra­smis­sio­ni orientate alla con­nes­sio­ne: il livello di trasporto mette a di­spo­si­zio­ne tra­smis­sio­ni orientate alla con­nes­sio­ne come TCP (Tran­smis­sion Control Protocol). A questo scopo assegna numeri di porta tra 0 e 65.535 e ricorre alla procedura di conferma descritta sopra.
  • Pro­to­col­li senza con­nes­sio­ne: a dif­fe­ren­za dei pro­to­col­li orientati alla con­nes­sio­ne, le tra­smis­sio­ni senza con­nes­sio­ne non inviano la conferma au­to­ma­ti­ca, facendo venir meno questo mec­ca­ni­smo di sicurezza. Questo metodo è tuttavia adatto per le tra­smis­sio­ni in tempo reale come le vi­deo­con­fe­ren­ze. Anche pro­to­col­li come UDP (User Datagram Protocol) uti­liz­za­no le porte tra 0 e 65.535.
  • Consegna in giornata (Same Order Delivery): questo servizio del livello di trasporto assicura che i pacchetti di dati siano inviati e mantenuti in una de­ter­mi­na­ta sequenza. A questo fine i singoli pacchetti vengono numerati, per­met­ten­do la di­spo­si­zio­ne corretta.
  • Integrità dei dati: durante la tra­smis­sio­ne tra due sistemi i dati possono essere dan­neg­gia­ti, andare persi o giungere al de­sti­na­ta­rio con una sequenza errata. Il livello di trasporto utilizza codici di ri­co­no­sci­men­to degli errori as­si­cu­ran­do che i dati siano re­ca­pi­ta­ti nello stato previsto. Per far ciò, il Transport Layer invia un messaggio di conferma al mittente.
  • Controllo del flusso: regola e ottimizza il traffico di dati. La velocità della tra­smis­sio­ne può essere ridotta o aumentata per adattare lo scambio di dati, impedendo un so­vrac­ca­ri­co del de­sti­na­ta­rio.
  • Pre­ven­zio­ne degli ingorghi: se tuttavia si ve­ri­fi­ca­no impasse nei nodi e nei col­le­ga­men­ti, il livello di trasporto può in­ter­ve­ni­re per evitare blocchi più gravi. Ad esempio, può ridurre la velocità di tra­smis­sio­ne.
  • Mul­ti­pla­zio­ne: i pacchetti che vengono tra­sfe­ri­ti da un sistema a un altro possono provenire da molte fonti diverse. Con la mul­ti­pla­zio­ne, il livello di trasporto permette agli utenti di aprire ap­pli­ca­zio­ni e servizi da diverse fonti all’interno di una rete.

Quali pro­to­col­li usano il livello di trasporto?

Molti sono i pro­to­col­li che il livello di trasporto utilizza oppure uti­liz­za­va in passato. Di seguito alcuni esempi.

  • DCCP (Datagram Con­ge­stion Control Protocol): pro­to­col­lo di rete per la tra­smis­sio­ne di mezzi nelle reti IP in tempo reale senza conferme ob­bli­ga­to­rie.
  • FCP (Fibre Channel Protocol): pro­to­col­lo di in­ter­fac­cia SCSI per un’in­ter­fac­cia standard in una rete di ar­chi­via­zio­ne.
  • Pro­to­col­lo IL: una forma sem­pli­fi­ca­ta di TCP.
  • MPTCP (Multipath TCP): standard volto a riunire più percorsi.
  • NORM (NACK-Oriented Reliable Multicast): per il trasporto af­fi­da­bi­le in gruppi multicast all’interno delle reti.
  • RDP (Reliable Data Protocol): pro­to­col­lo di trasporto per il tra­sfe­ri­men­to di immagini e dati.
  • RUDP (Reliable User Datagram Protocol): pro­to­col­lo per il sistema operativo Plan 9.
  • SCTP (Stream Control Tran­smis­sion Protocol): pro­to­col­lo di rete rivolto ai servizi di pacchetti po­ten­zial­men­te inaf­fi­da­bi­li.
  • TCP (Tran­smis­sion Control Protocol): pro­to­col­lo di rete am­pia­men­te diffuso che definisce il tipo di tra­sfe­ri­men­to di dati tra i com­po­nen­ti della rete.
  • UDP (User Datagram Protocol): pro­to­col­lo di rete mi­ni­ma­li­sta che permette l’invio di da­ta­gram­mi nelle reti basate su IP.
Vai al menu prin­ci­pa­le