20 Desember 2019

Fragmentasi Mengubah Data Menjadi Datagram Yang Sesuai Dengan Protokol IP


Ketika sebuah host sumber atau router harus mengirimkan sebuah data-gram IP dalam sebuah saluran jaringan dengan nilai Maximum transmission unit (MTU) yang dimilikinya lebih kecil dibandingkan ukuran data-gram IP, data-gram IP yang akan dikirimkan tersebut harus dipecah ke dalam beberapa fragmen. Proses ini disebut sebagai Fragmentation (fragmentasi). Ketika fragmentasi terjadi, muatan IP di-belah menjadi beberapa segmen, dan setiap segmen dikirimkan dengan header IP-nya masing-masing. Fragmentasi adalah proses ketika pihak pengirim membagi informasi yang dikirim menjadi beberapa paket data. Proses ini ditandai dengan urutan beberapa PDU (Protocol Data Unit) dengan berbagai batasan ukuran. PDU adalah bentuk potongan-potongan data pada setiap lapisan yang melalui lapisan komunikasi jaringan. Ketika data-gram dibungkus dalam sebuah frame, total ukuran data-gram harus kurang dari ukuran maksimum yang telah ditentukan aturannya. Setiap sebuah data-gram yang di-fragmentasi memiliki header tersendiri. Sebuah data-gram dapat di-fragmentasi beberapa kali sebelum mencapai tujuan akhirnya. Setelah data yang dikirimkan telah sampai di tujuan, serangkaian frame-frame tersebut dirakit kembali menjadi data-gram yang sama dengan data-gram sumber. Setelah proses merakit ulang data-gram tersebut selesai dilakukan, data-gram baru dapat di proses lebih lanjut oleh lapisan di atasnya.

Fragmentasi dilakukan oleh lapisan jaringan ketika ukuran maksimum data-gram lebih besar dari ukuran maksimum data yang dapat disimpan dalam frame. Istilah yang digunakan untuk menyebutkan ukuran maksimum tersebut adalah Maximum Transmission Unit (MTU). Sebelum dikirimkan melalui media transmisi yang ada, data-gram dipecah-pecah menjadi fragmen yang berukuran lebih kecil. Dengan adanya fragmentasi menjadikan paket data yang melewati jalur komunikasi pada jaringan berukuran lebih kecil atau sama dengan MTU. Walau tajuk atau header IP v.4 dan IP v.6 berbeda, tetapi fragmentasi IP v.4 dan IP v.6 dapat menggunakan algoritme yang sama. Header adalah informasi kontrol yang berada di awal pesan, segmen, data-gram, paket atau blok data. Header data-gram IP mempunyai panjang yang tetap yaitu 20 byte. Sedangkan panjang header yang variabel adalah 40 byte. Oleh karena itu, header data-gram IP berkisar antara 20 hingga 60 byte. Panjang header variabel ini adalah opsi yang digunakan untuk kepentingan pengetesan dan debugging. Format opsi tersebut tersusun dari Code, Length dan Data.

RFC 791 berisi tentang prosedur fragmentasi IP, transmisi paket IP dan penyusunan kembali kembali paket IP yang telah selesai dikirimkan. RFC 791 diterbitkan oleh IETF pada bulan September tahun 1981. Standar tersebut dibuat oleh University of Southern California agar dapat digunakan oleh DARPA (Defense Advanced Research Projects Agency). Dokumen tersebut menetapkan protokol internet yang digunakan untuk standar DoD (Department of Defence). Defense Advanced Research Projects Agency (DARPA) adalah agen dari Departemen Pertahanan A.S. yang bertanggung jawab atas pengembangan teknologi baru untuk digunakan oleh militer. DARPA dibentuk pada bulan Februari 1958 oleh Presiden Dwight D. Eisenhower sebagai tanggapan atas peluncuran Sputnik 1 Uni Soviet pada tahun 1957. Sejak awal, misinya adalah memastikan bahwa Amerika Serikat Menghindari kejutan teknologi lebih lanjut. Proyek DARPA telah memberikan kontribusi teknologi signifikan yang memengaruhi banyak bidang non-militer, seperti jaringan komputer, basis internet modern dan antarmuka pengguna grafis di bidang teknologi informasi. DARPA adalah organisasi independen yang melakukan penelitian dan pengembangan militer dan melapor langsung ke manajemen Departemen Pertahanan senior. DARPA memiliki sekitar 240 karyawan, 15 di antaranya manajemen, dan hampir 140 adalah staf teknis. Nama organisasi tersebut berubah beberapa kali, yaitu DARPA (Maret 1972), ARPA (Februari 1993), dan DARPA (Maret 1996).

Ada tiga jenis field yang berguna untuk menunjukkan apakah sebuah data-gram IP harus difragmentasi atau tidak, ketiga jenis field tersebut bernama identification, flag dan Fragment Offset. Identification adalah field yang digunakan untuk mengelompokkan semua fragmen dari sebuah data-gram IP dalam sebuah kelompok. Host pengirim mengeset nilai field ini, dan nilai ini tidak akan berubah selama proses fragmentasi berlangsung. Field Flag terdiri dari dua jenis, yaitu Don't fragment dan More Fragments. Don’t fragment (DF) akan di-setel ke nilai “0” untuk mengizinkan fragmentasi dilakukan, atau nilai “1” untuk mencegah fragmentasi dilakukan terhadap data-gram IP. Dengan kata lain, fragmentasi terjadi jika flag DF bernilai “0”. Jika fragmentasi dibutuhkan untuk meneruskan data-gram IP dan flag DF ini diset ke nilai “1”, maka router akan mengirimkan pesan “ICMP Destination Unreachable-Fragmentation Needed And DF Set” kepada host pengirim. More Fragments di-setel ke nilai “0” jika tidak ada fragmen lainnya yang mengikuti fragmen yang bersangkutan, atau di-setel ke nilai “1” jika ada tambahan fragmen yang mengikuti fragmen tersebut. Fragment Offset akan di-setel untuk mengindikasikan posisi fragmen yang bersangkutan terhadap muatan IP yang belum di-fragmentasi. Field ini digunakan untuk menata ulang urutan semua fragmen pada saat proses penyatuan kembali menjadi sebuah data-gram IP yang utuh di pihak penerima.

Paket-paket data dalam protokol IP dikirimkan dalam bentuk data-gram. Sebuah data-gram IP terdiri dari header IP dan muatan IP (payload). Selama fragmentasi dilakukan, muatan IP dipecah ke dalam fragmen-fragmen dengan menggunakan batasan 8 byte dan nilai maksimum fragment block sebesar 8 byte diletakkan pada setiap fragmen. Field Fragment Offset pun di-setel untuk mengindikasikan permulaan fragment block untuk fragmen tersebut dibandingkan dengan muatan IP yang belum di-fragmentasi. Setiap fragmen yang di-fragmentasi oleh router, akan disalin header-nya dan beberapa field ini akan diubah selama fragmentasi. Beberapa parameter pada header fragmentasi adalah Header Lenght, Time-to-Live (TTL), Total Lenght, Flag More Fragment dan Header Checksum. Masing masing parameter tersebut memiliki ciri khas dan fungsi tersendiri. Isi header yang berguna sebagai kontrol error atau kontrol kesalahan adalah Checksum. Checkum adalah urutan angka dan huruf yang digunakan untuk memeriksa kesalahan data. Checksum berkas atau fragmen yang dikirimkan diperiksa pada sisi penerima data. Penentuan ada atau tidaknya kesalahan data yang diterima diperoleh dengan cara mencocokkan paket data dengan cheksum-nya. Jika keduanya cocok maka dapat dipastikan bahwa data yang diterima identik dengan data yang dikirimkan oleh pengirim.

Sebagai contoh proses terjadinya fragmentasi ketika mengirimkan suatu data melalui jaringan komputer adalah seperti berikut: pertama, sebuah titik yang berada di dalam jaringan Token Ring mengirimkan sebuah data-gram IP yang dapat di-fragmentasi dengan nilai field Identification 9999 ke sebuah titik dalam jaringan Ethernet. Jaringan Token Ring memiliki nilai MTU 4482 byte. Sementara itu, jaringan Ethernet memiliki MTU 1500 byte. Sebelum fragmentasi terjadi, field-field dalam header data-gram IP yang asli memiliki nilai tertentu. Router yang menghubungkan dua jenis jaringan tersebut akan menerima data-gram IP dari komputer pengirim dalam jaringan Token Ring. Router pun mengecek tabel routing dan menentukan antarmuka yang hendak digunakan untuk meneruskan pesan tersebut. Selanjutnya, router melihat flag DF dalam header IP: jika bernilai angka 1, router akan melalaikan data-gram yang bersangkutan dan memberikan pesan balasan "ICMP Destination Unreachable-Fragmentation Needed And DF Set" kepada pengirim, jika nilai-nya angka "0", router menjalankan fragmentasi terhadap muatan data-gram IP tersebut, yakni sebesar 4462 byte (dengan anggapan bahwa data-gram tersebut tidak memiliki IP Options) ke dalam empat buah fragmen, setiap fragmen memiliki ukuran 1500 byte (MTU dari jaringan Ethernet).