Ukuran header IPv4 maksimum

8

Header IPv4


Saya tahu panjang tajuk IP adalah minimal 20 byte dan maksimum 60 byte. Tapi kenapa? Mengapa panjang header IP dibatasi hingga 60 byte? Apakah ada orang di sini yang bisa menjelaskannya kepada saya? Terima kasih.

ebyrock
sumber
1
Apakah ada jawaban yang membantu Anda? jika demikian, Anda harus menerima jawabannya sehingga pertanyaan tidak terus muncul selamanya, mencari jawaban. Atau, Anda bisa memberikan dan menerima jawaban Anda sendiri.
Ron Maupin

Jawaban:

14

The Internet Protocol (IP) didefinisikan dalam RFC 791 . RFC menentukan format header IP. Di header ada bidang IHL ( Internet Header Length ) yang panjangnya 4 bit dan menentukan panjang header dalam kata-kata 32 bit . Bidang IHL dapat menyimpan nilai dari 0 (Biner 0000) hingga 15 (Biner 1111).

Jadi ukuran Internet Header (IP header) terpanjang bisa 15 * 32 Bits = 480 Bits = 60 Bytes . Inilah sebabnya mengapa tajuk memiliki ukuran maksimum 60 Bytes.

Ukuran header terpendek adalah 20 byte, di mana bidang IHL memiliki nilai 5 (0101). Ini karena semua bidang yang diperlukan dalam header membutuhkan ruang 20 Bytes. Jadi sementara secara teori Anda bisa mengatur IHL ke nilai <5 ini akan selalu menjadi nilai yang salah dan dengan demikian header paket tidak valid.

Sebastian Wiesinger
sumber
Terima kasih, Sebastian. Ini adalah jawaban yang saya cari. Sekarang saya mengerti persis. Jadi analogi saya juga benar. :)
ebyrock
Tetapi nilai terpendek adalah 5 karena didefinisikan dalam RFC 791? Jadi tidak bisa diatur ke 0 (0000)?
ebyrock
1
Minimal 5 kata (20 byte) karena itu adalah bagian yang diperlukan dari header. Mungkin ada opsi nol atau lebih, sehingga 20 hingga 60 byte.
Ricky Beam
1
Saya menambahkan penjelasan untuk ukuran minimum untuk membuatnya lengkap.
Sebastian Wiesinger
1
itu berarti menghitung panjang header dalam kenaikan 32-bit.
Sebastian Wiesinger
3

Per RFC 791 di mana ia didefinisikan, lihat halaman 12 di mana ia membahas datagram:

Total Panjang adalah panjang datagram, diukur dalam oktet, termasuk tajuk internet dan data. Bidang ini memungkinkan panjang datagram hingga 65.535 oktet. Datagram panjang seperti itu tidak praktis untuk sebagian besar host dan jaringan. Semua host harus siap untuk menerima datagram hingga 576 oktet (apakah mereka tiba utuh atau dalam fragmen). Disarankan bahwa host hanya mengirim datagram yang lebih besar dari 576 oktet jika mereka memiliki kepastian bahwa tujuan dipersiapkan untuk menerima datagram yang lebih besar.

Angka 576 dipilih untuk memungkinkan blok data berukuran wajar untuk ditransmisikan di samping informasi header yang diperlukan. Sebagai contoh, ukuran ini memungkinkan suatu blok data 512 oktet ditambah 64 oktet header agar sesuai dalam datagram. Header internet maksimal adalah 60 oktet, dan header internet tipikal adalah 20 oktet, memungkinkan margin untuk header protokol tingkat yang lebih tinggi. "

Pada dasarnya panjangnya didefinisikan antara 20 dan 60 untuk memungkinkan penggunaan protokol yang berbeda dan agar sesuai dengan ukuran datagram yang direkomendasikan.

Mike Naylor
sumber
1
Terima kasih Mike lagi tetapi saya tidak mengerti. Dalam tanggapan Anda dikatakan bahwa "Header internet maksimal adalah 60 oktet" tetapi tidak menjelaskan mengapa? Saya memasukkan foto ke pertanyaan saya. Ukuran header IP didefinisikan dalam IHL (Internet Header Length) yang dalam 4-7 bit dan itu berarti panjangnya 4 bit. jika kita mengatur semua bit adalah 1 di Base2 (1111) yang akan menjadi 15 di Base10. Dan panjang header Internet adalah 32 bit kata. Kami mengalikan 15 x 32 = 480 bit yang sama dengan 60 byte (480/8). Saya tidak yakin ini analogi yang benar. :(
ebyrock
Bukan mencoba menjadi singkat tetapi 'mengapa' adalah: ini adalah bagaimana ia didefinisikan. Semua protokol internet memiliki definisi. Definisi-definisi ini adalah standar yang diikuti oleh semua protokol lalu lintas internet.
Mike Naylor