Jaringan Komputer
Bedah Fixed Header IPv6 vs IPv4 dan Fleksibilitas Extension Header
Pahami alasan performa efisiensi IPv6 melalui Fixed Header 40-byte, penghapusan checksum & broadcast, serta mata rantai Extension Header berkinerja tinggi.

Bayangkan sebuah loket bea cukai pengiriman barang internasional. Pada sistem konvensional, setiap paket dilengkapi formulir kertas tebal yang ukurannya berubah-ubah tergantung jenis barang. Setiap kali paket berpindah pos pemeriksaan, petugas bea cukai harus membaca panjang formulir dari awal, menghitung ulang tanda tangan cap stempel verifikasi (checksum), dan jika paket dinilai terlalu besar untuk troli lokal, petugas harus memotong isi kardus menjadi beberapa paket kecil di tempat (fragmentasi). Proses ini sangat lambat, melelahkan petugas, dan menciptakan antrean panjang di gudang perantara.
Kini, bandingkan dengan sistem modern: setiap kontainer barang ditempeli kartu RFID standar berukuran tepat 40 milimeter dengan format baku yang selalu sama. Sensor gerbang otomatis (hardware ASIC) dapat memindai kartu tersebut dalam hitungan nanodetik tanpa henti. Jika barang membutuhkan izin khusus karantina atau dokumen deklarasi tambahan, dokumen itu diselipkan sebagai kartu lampiran berseri (extension) di belakangnya tanpa mengganggu pemrosesan kartu utama.
Itulah lompatan filosofi desain antara Header IPv4 dan Fixed Header IPv6. Meskipun alamat IPv6 berukuran 4 kali lebih panjang daripada IPv4, tajuk paket IPv6 dirancang jauh lebih ringkas, konsisten, dan dioptimalkan secara mendalam untuk perangkat keras perutean modern.
Yang akan dipelajari
- Mengapa struktur header IPv4 menjadi bottleneck performa pada router berkecepatan tinggi.
- Membedah 8 field utama pada Fixed Header IPv6 (40 byte) dan membandingkannya dengan 14 field pada IPv4.
- Alasan arsitektural penghapusan field Header Checksum dan dampaknya terhadap kecepatan pemrosesan per-hop.
- Mekanisme mata rantai ekstensi (daisy chaining) melalui field Next Header sesuai RFC 8200.
- Perbedaan penanganan fragmentasi paket: Router-Assisted Fragmentation (IPv4) vs End-to-End Path MTU Discovery (IPv6).
- Menganalisis paket IPv6 mentah melalui tangkapan CLI
tcpdumpdan Wireshark.
Masalah Inefisiensi pada Header IPv4
Protokol IPv4 dirancang pada era ketika tautan jaringan fisik masih belum andal dan router berbasis perangkat lunak (software-based). Konsekuensinya, header IPv4 dibebani oleh berbagai mekanisme kontrol yang di kemudian hari menjadi beban pemrosesan (overhead) yang mahal.
Struktur Header IPv4 (Panjang Variabel 20 - 60 Byte):
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| IHL |Type of Service| Total Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identification |Flags| Fragment Offset |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time to Live | Protocol | Header Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Header IPv4 memiliki beberapa kelemahan arsitektural:
-
Panjang Header yang Berubah-ubah (Variable Length):
Dengan adanya field opsional (Options), ukuran header IPv4 dapat bervariasi antara 20 hingga 60 byte. Akibatnya, router harus selalu membaca field IHL (Internet Header Length) terlebih dahulu hanya untuk mengetahui di byte ke berapa payload data dimulai. Hal ini menghambat pemrosesan paralel pada perangkat keras router ASIC (Application-Specific Integrated Circuit). -
Kalkulasi Ulang Header Checksum pada Setiap Hop:
Setiap kali router meneruskan paket IPv4, nilai TTL (Time to Live) harus dikurangi 1. Karena nilai TTL berubah, router wajib menghitung ulang nilai matematis Header Checksum (algoritma ones' complement sum) sebelum mengirimkan paket ke antarmuka berikutnya. Pada router core yang menangani jutaan paket per detik, kalkulasi ulang checksum ini menghabiskan siklus CPU yang sangat besar. -
Fragmentasi di Tengah Jalan (In-Flight Fragmentation):
Pada IPv4, jika sebuah router menerima paket yang ukurannya melebihi Maximum Transmission Unit (MTU) jalur keluar, router tersebut berhak memecah paket menjadi fragmen-fragmen kecil menggunakan field Identification, Flags, dan Fragment Offset. Proses ini membebani memori penyangga (buffer) router dan meningkatkan latensi secara drastis.
Anatomi Fixed Header IPv6 (40 Byte Tetap)
Dalam RFC 2460 (yang kemudian diperbarui dalam standar resmi RFC 8200), IETF melakukan perombakan total. Header dasar IPv6 dibuat memiliki ukuran tetap (Fixed Header) sebesar 40 byte (320 bit) tanpa perkecualian.
Meskipun ukuran alamat pengirim dan tujuan melonjak dari 32 bit menjadi 128 bit (memakan total atau 32 byte), total ukuran header hanya 40 byte. Artinya, metadata kontrol protokol dipadatkan menjadi hanya 8 byte (64 bit) saja!
Struktur Fixed Header IPv6 (Tepat 40 Byte):
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| Traffic Class | Flow Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Payload Length | Next Header | Hop Limit |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Source Address +
| (128 bits) |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Destination Address +
| (128 bits) |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Bedah 8 Field Fixed Header IPv6
-
Version (4 bit):
Bernilai biner0110(angka desimal 6), mengidentifikasikan paket sebagai protokol IPv6. -
Traffic Class (8 bit):
Setara dengan field Type of Service (ToS) pada IPv4. Digunakan untuk manajemen Quality of Service (QoS). Terdiri dari 6 bit Differentiated Services Code Point (DSCP) untuk klasifikasi prioritas trafik (misal VoIP vs bulk download) dan 2 bit Explicit Congestion Notification (ECN) untuk mendeteksi kongesti jaringan tanpa perlu membuang (drop) paket. -
Flow Label (20 bit):
Fitur baru yang revolusioner pada IPv6. Field ini memungkinkan host sumber memberi label unik pada sekumpulan paket yang berada dalam satu aliran data spesifik (misalnya sesi panggilan video real-time atau VPN tunnel). Router perantara dapat merutekan seluruh paket dengan Flow Label yang sama melalui jalur yang persis sama (flow routing) tanpa perlu membongkar payload Layer 4 (port TCP/UDP), sehingga mendukung akselerasi perangkat keras yang sangat cepat. -
Payload Length (16 bit):
Menyatakan panjang muatan data yang berada di belakang 40 byte Fixed Header (dalam satuan byte). Perhatikan perbedaannya dengan IPv4: Total Length pada IPv4 menghitung header + data, sedangkan Payload Length pada IPv6 hanya menghitung panjang data dan Extension Header. Batas maksimal standar adalah 65.535 byte (atau hingga 4 GB jika menggunakan opsi Jumbogram). -
Next Header (8 bit):
Menggantikan field Protocol pada IPv4. Field ini menentukan tipe header yang berada tepat setelah Fixed Header. Nilainya bisa berupa protokol Layer 4 langsung (seperti TCP bernilai 6 atau UDP bernilai 17) atau menunjuk ke salah satu Extension Header IPv6. -
Hop Limit (8 bit):
Menggantikan nama Time to Live (TTL) pada IPv4. Setiap kali paket melintasi satu router (1 hop), nilai ini dikurangi 1. Jika mencapai 0, paket dibuang dan pesan ICMPv6 Time Exceeded dikirimkan kembali ke pengirim. Keuntungan terbesarnya: karena tidak ada checksum di header IPv6, pengurangan nilai Hop Limit tidak memicu kalkulasi ulang apa pun! -
Source Address (128 bit):
Alamat logis lengkap 128-bit milik pengirim paket. -
Destination Address (128 bit):
Alamat logis lengkap 128-bit milik penerima paket.
Apa yang Dihilangkan dan Mengapa?
| Field IPv4 yang Dihilangkan | Alasan Arsitektural Pembuangan di IPv6 |
|---|---|
| IHL (Internet Header Length) | Tidak dibutuhkan lagi karena header IPv6 selalu berukuran tepat 40 byte (fixed). |
| Identification, Flags, Fragment Offset | Dipindahkan dari header utama ke dalam Fragment Extension Header. Paket normal yang tidak terfragmentasi tidak perlu membuang 32 bit sia-sia. |
| Header Checksum | Dihapus sepenuhnya. Jaringan modern (Ethernet FCS di Layer 2 dan checksum TCP/UDP di Layer 4) sudah menjamin integritas data. Menghilangkan checksum mengeliminasi kalkulasi ulang per-hop pada router. |
| Options & Padding | Digantikan oleh mekanisme Extension Headers yang jauh lebih fleksibel dan modular. |
Diagram In-Post & Rantai Ekstensi (Extension Header Chain)
Bagaimana jika paket IPv6 memerlukan opsi khusus seperti enkripsi keamanan (IPsec), informasi routing, atau fragmentasi? IPv6 menggunakan mekanisme Extension Headers yang disusun menggunakan konsep mata rantai berseri (daisy chaining).
Setiap Extension Header memiliki field Next Header di byte pertamanya yang menunjuk ke header berikutnya dalam antrean, hingga header terakhir menunjuk ke protokol transport (TCP/UDP/ICMPv6).

Nilai Protokol Next Header yang Umum Digunakan
Berdasarkan registry IANA, nomor protokol pada field Next Header berbagi ruang angka yang sama dengan protokol IPv4:
0: Hop-by-Hop Options Header (wajib dibaca oleh setiap router di jalur transmisi).43: Routing Header (misal untuk teknologi Segment Routing over IPv6 / SRv6).44: Fragment Header (memuat ID fragmentasi dan offset).50: Encapsulating Security Payload / ESP (enkripsi muatan IPsec).51: Authentication Header / AH (integritas data IPsec).60: Destination Options Header (opsi khusus yang hanya dibaca oleh penerima akhir).6: Transmission Control Protocol (TCP).17: User Datagram Protocol (UDP).58: ICMPv6 (protokol kontrol dan pensinyalan IPv6).59: No Next Header (menandakan tidak ada data apa pun setelah header tersebut).
Efisiensi Pemrosesan Router: Prinsip "Abaikan Jika Bukan Tujuan"
Salah satu terobosan terbesar IPv6 adalah aturan pemrosesan Extension Header (RFC 8200):
Router perantara (transit routers) di internet HANYA memproses Fixed Header 40 byte dan TIDAK BOLEH memeriksa atau membongkar Extension Header, kecuali satu perkecualian: Hop-by-Hop Options Header (protokol 0).
Dengan aturan ini, router core internet dapat meneruskan miliaran paket per detik langsung pada kecepatan kabel (wire-speed) tanpa melambatkan kinerja hanya karena ada paket yang membawa opsi IPsec atau opsi tujuan.
Mengapa Router IPv6 Tidak Pernah Memotong Paket (Fragmentasi)
Pada arsitektur IPv6, router perantara dilarang keras melakukan fragmentasi paket.
Jika sebuah router menerima paket IPv6 yang ukurannya lebih besar daripada MTU tautan keluar berikutnya:
- Router langsung membuang (drop) paket tersebut.
- Router mengirimkan pesan kesalahan ICMPv6 Type 2: Packet Too Big (PTB) kembali ke host pengirim, dengan menyertakan nilai MTU tautan yang didukungnya.
- Host pengirim menerima pesan PTB tersebut melalui mekanisme Path MTU Discovery (PMTUD - RFC 8201), lalu menyesuaikan ukuran segmen data yang dikirim atau menyisipkan Fragment Extension Header di tingkat pengirim sendiri sebelum paket dikirim ulang.
Hal ini membebaskan router dari beban komputasi fragmentasi yang selama ini memperlambat transmisi pada jaringan IPv4.
Bedah Inspeksi Paket dengan Wireshark & CLI tcpdump
Mari kita lihat secara langsung representasi Fixed Header IPv6 di antarmuka jaringan Linux.
Menangkap Paket IPv6 dengan tcpdump
Jalankan perintah berikut pada terminal:
# Menangkap paket IPv6 secara detail (menampilkan nilai heksadesimal)
sudo tcpdump -i eth0 -nn -vv -XX ip6 and icmp6
Lakukan tes ping dari terminal lain ke alamat DNS Google:
ping -6 -c 1 2001:4860:4860::8888
Keluaran hexdump mentah yang ditangkap tcpdump:
22:15:30.104218 IP6 (flowlabel 0x93b4a, hlim 64, next-header ICMPv6 (58) payload length: 64)
2001:db8:1::10 > 2001:4860:4860::8888: [icmp6 sum ok] ICMP6, echo request, id 1421, seq 1
0x0000: 6009 3b4a 0040 3a40 2001 0db8 0001 0000 `.k.J.@:@.......
0x0010: 0000 0000 0000 0010 2001 4860 4860 0000 ........H`H`..
0x0020: 0000 0000 0000 8888 8000 abcd 058d 0001 ................
Analisis Bit demi Bit dari 40 Byte Pertama (0x0000 - 0x0027)
Perhatikan 4 baris heksadesimal pertama yang merupakan Fixed Header 40-byte:
60 09 3b 4a(4 byte pertama):- Digit
6(4 bit biner0110): Version = 6. 00(8 bit berikutnya): Traffic Class = 0 (DSCP standard best-effort).9 3b 4a(20 bit berikutnya): Flow Label = 0x93b4a.
- Digit
00 40(2 byte):- Payload Length = 0x0040 (64 byte dalam desimal, merupakan ukuran pesan ICMPv6 Echo Request).
3a(1 byte):- Next Header = 0x3a (nilai heksadesimal
3a= , yang merupakan kode protokol resmi untuk ICMPv6).
- Next Header = 0x3a (nilai heksadesimal
40(1 byte):- Hop Limit = 0x40 (nilai heksadesimal
40= , TTL awal bawaan kernel Linux).
- Hop Limit = 0x40 (nilai heksadesimal
2001 0db8 0001 0000 0000 0000 0000 0010(16 byte):- Source IP Address:
2001:db8:1::10.
- Source IP Address:
2001 4860 4860 0000 0000 0000 0000 8888(16 byte):- Destination IP Address:
2001:4860:4860::8888.
- Destination IP Address:
Tepat setelah byte ke-40 (mulai dari 8000), kita langsung melihat payload ICMPv6 (80 mewakili ICMPv6 Type 128 = Echo Request). Sangat rapi, deterministik, dan dapat diparsing dalam satu siklus memori register.
Kesalahan yang Sering Terjadi (Common Pitfalls)
| Kesalahan Umum | Realitas Teknis | Rekomendasi Solusi |
|---|---|---|
| Mengira Fixed Header IPv6 lebih lambat dari IPv4 karena ukurannya 40 byte vs 20 byte. | Ukuran 40 byte IPv6 sebagian besar diisi oleh alamat sumber dan tujuan (32 byte). Struktur tetap 40-byte justru mempercepat pemrosesan perangkat keras ASIC hingga puluhan kali lipat karena alignment 64-bit yang konsisten tanpa parsing field Options. | Pahami bahwa efisiensi perangkat keras ditentukan oleh keseragaman struktur memori (fixed offset), bukan semata-mata ukuran byte mentah. |
| Memblokir seluruh paket ICMPv6 pada firewall/router. | Menolak paket ICMPv6 Type 2 (Packet Too Big) akan merusak mekanisme Path MTU Discovery (PMTUD), memicu fenomena MTU Black Hole di mana koneksi TCP hang saat mengirim data berukuran besar. | Jangan pernah memblokir ICMPv6 Type 2, Type 3, serta pesan NDP di firewall. |
| Menyamakan Payload Length IPv6 dengan Total Length IPv4. | Total Length IPv4 mencakup ukuran header + payload. Payload Length IPv6 hanya menghitung panjang data di belakang 40 byte Fixed Header (termasuk Extension Header). | Dalam pemrograman socket / raw packet sniffing, hitung Ukuran Paket Total = 40 + Payload Length. |
| Mengasumsikan urutan Extension Header boleh sembarangan. | RFC 8200 menetapkan urutan baku (misal: Hop-by-Hop wajib pertama setelah Base Header, disusul Destination Options, Routing, Fragment, dst.). Router dapat membuang paket jika urutannya salah. | Ikuti rekomendasi urutan rantai Extension Header resmi sesuai pedoman RFC 8200. |
Latihan Mandiri
-
Perhitungan Ukuran Paket Total:
Sebuah pengujian jaringan menangkap paket IPv6 yang membawa muatan TCP segmen sebesar 1.400 byte data. Paket tersebut disisipkan Routing Extension Header berukuran 24 byte dan Fragment Extension Header berukuran 8 byte. Jika header TCP standar berukuran 20 byte:- Berapakah nilai numerik yang tertulis pada field Payload Length di Fixed Header IPv6?
- Berapakah total ukuran keseluruhan paket pada Layer 3?
-
Analisis Rantai Next Header:
Perhatikan urutan enkapsulasi paket berikut dari lapisan terdalam ke luar:
Fixed Header IPv6 Hop-by-Hop Options Header ESP Header TCP Segmen.
Tentukan nilai numerik protokol (dalam desimal) yang harus diisi pada:- Field Next Header pada Fixed Header IPv6.
- Field Next Header pada Hop-by-Hop Options Header.
- Field Next Header pada ESP Header.
-
Studi Kasus PMTUD Black Hole:
Seorang insinyur jaringan mengamati bahwa pengguna dapat melakukan tesping -6ke server web, namun halaman web HTTPS gagal dimuat (koneksi menggantung tanpa batas waktu saat proses jabat tangan TLS selesai). Setelah ditelusuri, MTU antarmuka klien adalah 1.500 byte, namun di tengah jalur terdapat tautan tunnel dengan MTU 1.280 byte. Mengapa fenomena ini terjadi dan konfigurasi firewall apa yang menyebabkannya?
Kunci Jawaban & Pembahasan
Latihan 1
Langkah Perhitungan:
-
Hitung seluruh muatan yang berada di belakang Fixed Header 40-byte:
- Routing Extension Header: 24 byte
- Fragment Extension Header: 8 byte
- TCP Header: 20 byte
- Data Muatan Aplikasi: 1.400 byte
Nilai yang tertulis pada field Payload Length di Fixed Header adalah 1.452 (atau dalam heksadesimal
0x05ac).
-
Hitung total ukuran keseluruhan paket Layer 3:
Jawaban:
- Nilai field Payload Length = 1.452 byte.
- Total ukuran paket Layer 3 = 1.492 byte (masih aman di bawah batas MTU standar Ethernet 1.500 byte).
Latihan 2
Pembahasan Rantai Next Header: Mekanisme rantai Next Header bekerja seperti penunjuk memori (pointer) yang menunjuk ke struktur berikutnya yang berada tepat di belakangnya:
- Fixed Header IPv6: Menunjuk ke Hop-by-Hop Options Header yang berada tepat setelahnya. Nilai protokolnya adalah
0. - Hop-by-Hop Options Header: Menunjuk ke ESP (Encapsulating Security Payload) yang berada setelahnya. Nilai protokolnya adalah
50. - ESP Header: Memuat data terenkripsi yang membungkus segmen transport TCP. Nilai protokol pada field Next Header ESP adalah
6(TCP).
Jawaban:
- Next Header pada Fixed Header = 0
- Next Header pada Hop-by-Hop = 50
- Next Header pada ESP = 6
Latihan 3
Analisis Permasalahan:
- Paket ping (ICMPv6 Echo Request) berukuran kecil (kurang dari 100 byte), sehingga dapat melintasi tunnel ber-MTU 1.280 byte tanpa masalah.
- Saat klien mengakses HTTPS, server web mengirimkan data sertifikat TLS dan data web yang ukurannya mendekati batas MTU Ethernet (1.500 byte).
- Ketika paket 1.500 byte tersebut tiba di router gerbang tunnel, router tidak dapat meneruskannya karena ukuran paket melebihi batas 1.280 byte. Karena aturan IPv6 melarang router memecah paket, router tersebut membuat pesan kesalahan ICMPv6 Type 2 (Packet Too Big) untuk dikirimkan kembali ke server pengirim.
- Namun, firewall perantara atau firewall server dikonfigurasi secara keliru dengan memblokir seluruh paket ICMPv6 (
DROP icmp6). - Akibatnya, server tidak pernah menerima pesan Packet Too Big, terus-menerus menunggu ACK dan melakukan retransmisi paket 1.500 byte yang sama, sementara klien menunggu data yang tidak kunjung tiba (MTU Black Hole).
Solusi:
Konfigurasikan firewall agar mengizinkan pesan ICMPv6 tipe 2 (Packet Too Big), misalnya dengan aturan iptables:
ip6tables -A INPUT -p icmpv6 --icmpv6-type packet-too-big -j ACCEPT



Discussion (0)
We store your optional name, your comment, and technical hashes (not your raw IP address) to prevent spam. A functional cookie lets you edit or delete your own comments from this browser. To request deletion, use the contact page.
No comments yet. Start the discussion.