Significato del luppolo (misurazione TTL)


10

Quando utilizzo il comando ping ottengo i risultati successivi (Windows):

C:\>ping example.microsoft.com
Pinging example.microsoft.com [192.168.239.132] with 32 bytes of data:
Reply from 192.168.239.132: bytes=32 time=101ms TTL=124
...

Nella documentazione relativa a tali servizi, il TTL è misurato in luppolo . Secondo la specifica ICMP RFC 792 :

Tempo di vivere. Tempo di vivere in pochi secondi ; poiché questo campo viene decrementato su ogni macchina in cui viene elaborato il datagramma, il valore in questo campo dovrebbe essere almeno pari al numero di gateway che questo datagramma attraverserà.

Quindi, ogni host riduce il TTL di almeno 1 secondo . Niente da dire sul luppolo . Quindi perché vengono utilizzati il ​​luppolo? Perché non usare, diciamo ms , se gli host elaborano i datagrammi troppo velocemente? E perché le specifiche non dicono nulla sul luppolo ?


Buona domanda. Se ricordo bene, hanno sostituito TTL con luppolo in IPv6, ma non ne sono sicuro.
AndrejaKo

1
@AndrejaKo, sì, l'hanno fatto. Ma ufficialmente solo in IPv6.
Kyrylo M

Risposte:


7

TTL è progettato per impedire ai pacchetti di vivere (e consumare risorse) per sempre se esiste un ciclo di routing.

Inizialmente, i router potrebbero impiegare più di un secondo per elaborare un pacchetto.

Quando i router sono diventati molto più veloci e hanno iniziato a elaborare i pacchetti in meno di un secondo, sarebbe sciocco per loro ridurre il TTL di zero, perché in questo modo non si fermerebbero i loop.

Quindi, invece, riduce il TTL di un secondo.

Questa modifica è stata documentata nella sezione 5.3.1 di RFC 1716 .

Il campo Time-to-Live (TTL) dell'intestazione IP è definito come un timer che limita la durata di un datagramma. È un campo a 8 bit e le unità sono secondi. Ogni router (o altro modulo) che gestisce un pacchetto DEVE ridurre il TTL di almeno uno, anche se il tempo trascorso è stato molto inferiore a un secondo. Poiché questo è molto spesso il caso, il TTL è effettivamente un limite di conteggio dei salti su quanto un datagramma può propagarsi attraverso Internet.

Quando un router inoltra un pacchetto, DEVE ridurre il TTL di almeno uno. Se contiene un pacchetto per più di un secondo, può diminuire il TTL di uno per ogni secondo.

Guarda anche:

Wikipedia - Time to Live :

Il campo TTL viene impostato dal mittente del datagramma e ridotto da ogni host sul percorso verso la sua destinazione.

Maxi-pedia - Time to Live (TTL)

Ogni router attraversato dal pacchetto deve sottrarre almeno un conteggio dal campo TTL.


Non vedo nulla sui luppoli e sul perché hanno usato invece di secondi o ms.
Kyrylo M

1
Ho aggiunto un collegamento a RFC 1716. Ecco dove è specificato.
Mikel
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.