2.4 Routing Protocol
2.4.1 Routing Protocol Dynamic Source Routing
2. Reaktif atau On Demand Routing Protocol
Pada on demand routing protocol (reactive routing protocol), proses pencarian
route hanya dilakukan ketika node sumber membutuhkan komunikasi dengan node
tujuan. Jadi routing table yang dimiliki oleh sebuah node berisi informasi route ke
node tujuan saja. Contoh on demand routing: AODV (Ad Hoc On-Demand Distance Vector), DSR (Dynamic Source Routing), TORA (Temporally Ordered Routing Algorithm), SSR (Signal Stability Routing), dan ASR (Associativity Based Routing).
2.4.1 Routing Protocol Dynamic Source Routing
Dynamic Source Routing (DSR) termasuk dalam kategori on demand routing protocol (reactive routing protocol) karena algoritma routing ini menggunakan
mekanisme source routing [7]. Protokol ini terdiri dari dua fase utama, route
discovery dan route maintenance. DSR hampir mirip dengan AODV karena
membentuk route on demand namun menggunakan source routing bukan routing
table pada intermediate device. Protokol ini benar-benar berdasarkan source routing
dimana semua informasi routing dipertahankan (terus diperbarui) pada mobile node.
2.4.1.1 Route Discovery
Route discovery adalah suatu mekanisme pada DSR yang berfungsi untuk
melakukan pencarian jalan (path) secara dinamis dalam jaringan ad hoc, baik secara langsung di dalam range transmisi ataupun dengan melewati beberapa node
intermediate [7]. Ketika sebuah node memiliki paket yang harus dikirimkan ke tujuan
tertentu, node tersebut akan melihat ke route cache untuk memastikan apakah node tersebut sudah memiliki source routing ke tujuan tersebut.
Jika node tersebut masih memiliki routing tersebut, maka node itu akan menggunakannya untuk mengirim paket tersebut. Di sisi lain, jika node tersebut tidak memiliki source routing seperti yang dimaksud, maka node tersebut akan memulai pencarian dengan melakukan broadcasting yang berisi paket permintaan routing. Pesan permintaan ini berisi alamat tujuan beserta alamat node sumber nomor identifikasi yang unik.
Setiap node yang menerima pesan tersebut akan mengecek apakah ia mengetahui alamat tujuan yang dimaksud dari pesan tersebut. Jika tidak, maka node tersebut akan menambahkan alamat sendiri pada route record dan meneruskan paket tersebut ke
node yang terhubung dengannya. Untuk membatasi jumlah route request yang
disebarkan pada link keluar dari sebuah node, maka sebuah mobile node hanya meneruskan permintaan route jika route request belum terlihat oleh mobile node tersebut dan alamat mobile node belum muncul dalam route record. Route reply dihasilkan ketika salah satu route request telah mencapai tujuan itu sendiri atau ketika mencapai node intermediate yang berisi route cache ke tujuan yang belum sampai. Pada saat paket telah mencapai tujuan
atau node intermediate, paket tersebut berisi route record yang berisi informasi
hop yang dilalui.
Gambar 2.6 Pembangunan route record selama route discovery [8]
Gambar 2.5 mengilustrasikan node “1” mengecek routing cache sendiri, lalu
mengirimkan sebuah permintaan route ke node ”2” berisi alamatnya sendiri, yaitu
alamat tujuan dan nomor unique sequence untuk deteksi loop. Node yang menerima mengecek cache untuk route menuju tujuan. Jika tidak berisi route, maka node akan menambahkan alamatnya sendiri ke paket dan meneruskannya.
2.4.1.2 Route Maintenance
Route maintenance terjadi jika terdapat kesalahan dalam pengiriman paket dan
adanya notifikasi dari node lain. Hal ini terjadi ketika data link layer menemukan masalah yang fatal. Sumber akan selalu terganggu ketika ada jalur yang terpotong [7]. Ketika ada sebuah kesalahan paket yang diterima, hop yang ada dalam cache route dihapus dan semua route yang memiliki hop tersebut akan dipotong pada saat itu juga. Selain untuk memberitahukan pesan kesalahan, notifikasi juga digunakan untuk memverifikasi operasi yang benar dari link route.
Keuntungan penggunaan DSR ini adalah intermediate node tidak perlu memelihara secara up to date informasi routing pada saat melewatkan paket, karena setiap paket selalu berisi informasi routing di dalam header. Routing jenis ini juga menghilangkan proses periodic route advertisement dan neighbor detection yang dijalankan oleh routing ad hoc lainnya. Dibandingkan dengan on demand routing lainnya, DSR memiliki kinerja yang paling baik dalam hal
throughput, routing overhead (pada paket) dan rata-rata panjang path, akan
tetapi DSR memiliki delay waktu yang buruk bagi proses untuk pencarian route baru. Protokol ini menggunakan pendekatan reactive, sehingga menghilangkan kebutuhan untuk membanjiri jaringan yang melakukan update tabel seperti yang terjadi pada pendekatan table driven. Node intermediate juga memanfaatkan route
cache secara efisien untuk mengurangi kontrol overhaead.
Kerugian dari routing ini adalah mekanisme route maintenance tidak dapat memperbaiki link yang rusak atau down. Informasi route cache yang kadaluwarsa juga bisa mengakibatkan inkonsistensi selama fase rekonstruksi route. Penggunaan
routing ini akan sangat optimal pada jumlah node yang kecil atau kurang dari 200 node. Untuk jumlah yang lebih besar akan mengakibatkan collision antar paket dan
menyebabkan bertambahnya delay waktu pada saat akan membangun koneksi baru. [7]
1. Next header
8-bit selector. Mengidentifikasi tipe header dengan segera bersama dengan DSR
options header. Menggunakan value yang sama dengan IPv4 Protocol field [RFC1700] jika tidak ada header yang dimaksud, maka identifikasi dilanjutkan. Header harus memiliki value 59 "No Next Header" [RFC2460].
2. Flow state header (F)
Flag bit harus di set 0. Bit ini diatur dalam DSR Flow State dan diperjelas di DSR Options header.
3. Reserved
Harus dikirim 0 dan diabaikan pada penerimaan 4. Payload length
Panjang dari DSR options header, 4-octet fixed portion. Nilai dari field Payload
Length mendefinisikan panjang total dari semua pilihan yang dibawa dalam DSR options header.
Variable-length field, panjang dari Options field ditentukan oleh Payload Length field di dalam DSR Options header. Berisi satu atau lebih potongan-potongan
informasi opsional (DSR options) dikodekan dalam format type-length-value (TLV).
Gambar 2.7 Route Maintenance [8]
Gambar 2.6 menjelaskan sebuah route replay akan dikirimkan kembali, jika sebuah node menemukan rute sebenarnya menuju node tujuan. Jika ada suatu node yang bukan merupakan node tujuan, maka akan menambah cached route ke pesan
route replay. Pada gambar 2.6, node “4” tidak lagi pada jangkauan transmisi dari node
“2”. Rute “1,2,4,7” tidak bisa diambil, maka rute lainnya yang disimpan pada node
“1” yaitu “1,2,3,5,6,7” harus digunakan.