Arti hop (pengukuran TTL)

10

Ketika saya menggunakan perintah ping saya mendapatkan hasil berikutnya (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
...

Dalam dokumentasi untuk utilitas tersebut TTL diukur dalam hop . Menurut spesifikasi ICMP RFC 792 :

Waktunya untuk Hidup. Saatnya hidup dalam hitungan detik ; karena bidang ini dikurangi pada setiap mesin tempat datagram diproses, nilai dalam bidang ini setidaknya harus sama besar dengan jumlah gateway yang akan dilalui datagram ini.

Jadi, setiap host menurunkan TTL setidaknya 1 detik . Tidak ada yang dikatakan tentang hop . Jadi mengapa hop digunakan? Mengapa tidak menggunakan, katakanlah ms , jika host memproses datagram terlalu cepat? Dan mengapa spesifikasi tidak mengatakan apa pun tentang hop ?

Kyrylo M.
sumber
Pertanyaan bagus. Jika saya ingat dengan benar, mereka mengganti TTL dengan hop di IPv6, tapi saya tidak yakin.
AndrejaKo
1
@ AndrejaKo, ya, mereka melakukannya. Namun secara resmi hanya di IPv6.
Kyrylo M

Jawaban:

7

TTL dirancang untuk menghentikan paket yang hidup (dan menghabiskan sumber daya) selamanya jika ada loop routing.

Awalnya, router mungkin membutuhkan lebih dari satu detik untuk memproses paket.

Ketika router menjadi jauh lebih cepat, dan mulai memproses paket dalam waktu kurang dari satu detik, itu akan konyol bagi mereka untuk mengurangi TTL dengan nol, karena dengan begitu tidak akan menghentikan loop.

Jadi sebagai gantinya, itu mengurangi TTL oleh satu detik.

Perubahan ini didokumentasikan dalam RFC 1716 bagian 5.3.1.

Bidang Time-to-Live (TTL) dari header IP didefinisikan sebagai timer yang membatasi umur datagram. Ini adalah bidang 8-bit dan unit adalah detik. Setiap router (atau modul lain) yang menangani paket HARUS mengurangi TTL oleh setidaknya satu, bahkan jika waktu yang berlalu jauh lebih sedikit dari satu detik. Karena hal ini sangat sering terjadi, TTL secara efektif merupakan batas jumlah hop pada seberapa jauh datagram dapat disebarkan melalui Internet.

Ketika router meneruskan sebuah paket, itu HARUS mengurangi TTL oleh setidaknya satu. Jika memegang paket lebih dari satu detik, itu MUNGKIN mengurangi TTL satu per setiap detik.

Lihat juga:

Wikipedia - Waktu untuk Hidup :

Bidang TTL diatur oleh pengirim datagram, dan dikurangi oleh setiap host pada rute ke tujuannya.

Maxi-pedia - Time to Live (TTL)

Setiap router yang dilalui paket diperlukan untuk mengurangi setidaknya satu hitungan dari bidang TTL.

Mikel
sumber
Tidak melihat apa pun tentang hop dan mengapa mereka menggunakan bukan detik atau ms.
Kyrylo M
1
Saya menambahkan tautan ke RFC 1716. Di situlah ditentukan.
Mikel