Reading Time: 3 minutes

Commutazione di pacchetto

Le applicazioni distribuite scambiano messaggi per eseguire i propri compiti.

I messaggi possono contenere qualsiasi cosa il progettista del protocollo desideri. Possono svolgere una funzione di controllo o contenere dati, come in un messaggio di posta elettronica, un’immagine JPEG o un file audio.

Nelle moderne reti di calcolatori, l’origine suddivide i messaggi lunghi in parti più piccole note come pacchetti.

Tra l’origine e la destinazione, questi pacchetti viaggiano attraverso collegamenti e commutatori di pacchetto (di cui esistono due tipi principali: i router e i commutatori a livello di link).

I pacchetti vengono trasmessi su ciascun collegamento di comunicazione a una frequenza pari alla frequenza totale di trasmissione del collegamento.

La maggior parte dei commutatori di pacchetto utilizza la trasmissione store-and-forward.

Ciò significa che il commutatore deve ricevere l’intero pacchetto prima di poter cominciare a trasmettere sul collegamento in uscita il primo bit del pacchetto.

Di conseguenza, questi commutatori di pacchetto introducono un ritardo, chiamato ritardo di store-and-forward, all’ingresso di ciascun collegamento lungo il percorso del pacchetto.

Consideriamo ora quanto tempo richiede l’invio di un pacchetto di L bit tra due host in una rete a commutazione di pacchetto.

Supponiamo che esistano Q collegamenti tra i due host, ciascuno alla frequenza di R bps.

Si ipotizzi che questo sia l’unico pacchetto in rete. Il pacchetto deve innanzi tutto essere trasmesso sul primo collegamento in uscita (A), il che richiede L/R secondi.

Deve poi essere ritrasmesso su ciascuno dei Q-1 collegamenti restanti. In pratica deve essere memorizzato e inoltrato Q-1 volte con un ritardo di L/R secondi.

Il ritardo risultante sarà quindi QL/R.

Ogni commutatore di pacchetto connette più collegamenti.

Per ciascuno di questi, il commutatore mantiene un buffer di output (o coda di output) per conservare i pacchetti che il router sta per inviare su quel collegamento.

I buffer di output rivestono un ruolo chiave nelle reti a commutazione di pacchetto.

Se un pacchetto in arrivo richiede l’invio attraverso un collegamento, ma lo trova occupato dalla trasmissione di un altro, quello in arrivo deve attendere nella coda.

Di conseguenza in aggiunta ai ritardi store-and-forward, i pacchetti subiscono in questo caso anche ritardi di coda dovuti al buffer di output.

Tali ritardi sono variabili e dipendono dal livello di traffico nella rete.

Dato che la dimensione del buffer è limitata, un pacchetto in arrivo può trovare il buffer completamente pieno; in questi casi si verifica una perdita di pacchetto.

Verrà cioè eliminato o il pacchetto in arrivo o uno di quelli che si trovano già in coda, a seconda della politica adottata nei casi particolari.

Per capire meglio il meccanismo di perdita di pacchetto facciamo un esempio: immaginiamo di essere in fila per entrare in un ristorante che al momento non ha posto disponibile.

Il ritardo di coda è il tempo totale che attendiamo affinchè si liberi un posto; la perdita di un pacchetto si verifica quando il cameriere viene ad avvisarci di abbandonare la coda di attesa perchè ci sono già troppe persone.

error: Content is protected !!

La maggior parte dei contenuti del blog ComputerSec vengono pubblicati a beneficio di tutti e in modo completamente gratuito.
Tuttavia per supportare il blog, e per avere ulteriori vantaggi, puoi decidere di abbonarti e sfruttare al 100% tutti i contenuti!
Abbonati Ora!

Complimenti! Ti sei iscritto alla nostra Newsletter

C'è stato un errore durante l'invio della richiesta. Per favore riprova.

Computer Security will use the information you provide on this form to be in touch with you and to provide updates and marketing.