Un pacchetto che parte da un host sorgente e raggiunge un host di destinazione attraversa diversi router e collegamenti. In ogni tappa il pacchetto può subire vari tipi di ritardo: ritardo di elaborazione, ritardo di accodamento, ritardo di propagazione e ritardo di trasmissione. La somma di questi ritardi restituiscono il ritardo totale di nodo (nodal delay).
È il tempo che occorre al router per esaminare l'intestazione del pacchetto e capire in quale collegamento dirigerlo.
È il tempo che occorre al pacchetto per essere spedito sul collegamento adatto alla sua intestazione. Tale ritardo dipende dal numero di pacchetti in coda. Se il traffico è intenso e ci sono molti pacchetti, il ritardo di accodamento sarà dell'ordine dei microsecondi o dei millisecondi. Se non c'è alcun pacchetto in coda, il ritardo di accodamento sarà nullo.
È il tempo che occorre per trasmettere tutti i bit di un pacchetto da un nodo all'altro (
Una volta che un bit del pacchetto è immesso nel collegamento questo deve raggiungere la destinazione. La velocità con cui si sposta varia a seconda del mezzo fisico, che varia dai
Il ritardo di trasmissione è il tempo che ci vuole per trasmettere in uscita il pacchetto e dipende dalla grandezza del pacchetto e dalla velocità del collegamento. Il ritardo di propagazione è il tempo che impiega il bit, immesso nel collegamento, per raggiungere la destinazione e dipende dalla distanza fra i due router.
(Possiamo dire in modo molto grezzo che il ritardo di trasmissione è il tempo che impiega il router per processare i pacchetti. Mentre il tempo di propagazione è il tempo per propagarli nel collegamento verso la destinazione).
Fino a qui abbiamo visto solo i ritardi su un singolo router. Supponiamo che ci siano
Il ritardo di elaborazione di ciascun router e presso il mittente è di
La velocità di trasmissione in uscita ad ogni router e dall'host sorgente è di
La propagazione su ciascun collegamento sia di
Il ritardo end-to-end
Con il programma traceroute in Linux (tracert in Windows) si può tracciare il percorso dei pacchetti verso un certo host di destinazione, esso calcola anche i ritardi riportarti dai pacchetti durante il viaggio verso la destinazione.
Oltre al ritardo e alla perdita di pacchetti, un'altra misura critica delle prestazioni è il throughput (letteralmente portata). Per darne una definizione supponiamo che debba essere inviato un file voluminoso da un nodo A ad un nodo B. Il throughput istantaneo è la velocità a cui il nodo B sta ricevendo il file. Se il file è di
Consideriamo un esempio per approfondire:
Sia
Il tempo necessario a traferire un grosso file dal server al client quindi richiede:
In caso di più collegamenti, il ragionamento è identico. Il throughput è il
Vediamo un altro caso. Supponiamo che ci siano 10 server che inviano file (10 downloads) e 10 client che li ricevono. Supponiamo i collegamenti passino per un unico nucleo.
Esaminiamo un caso specifico:
Il collegamento comune suddivide equamente la propria velocità di trasmissione tra i 10 downloads. Quindi il collo di bottiglia non è più il minimo tra
Prossimo argomento: Protocolli di rete