• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

II.3 Ad Hoc Routing Protocol

Jaringan Mobile ad hoc merupakan suatu jaringan wireless yang memiliki karakteristik yang dinamis [6]. Node dalam jaringan tersebut dapat saling berkomunikasi satu sama lain, dikarenakan masing-masing node memiliki kemampuan routing sehingga dapat mengirim data ke tujuan melalui node lain. Dengan demikian masing-masing node bertindak sebagai router. Oleh karena

setiap node bertindak sebagai router maka diperlukan suatu protokol untuk keperluan routing.

Kualitas dasar protokol routing pada jaringan ad hoc adalah bahwa protokol tersebut harus mampu beradaptasi secara dinamis terhadap perubahan topologi jaringan. Hal ini diimplementasikan dengan terknik perencanaan untuk menelusuri perubahan topologi jaringan dan menemukan rute yang baru ketika rute yang lama telah expired atau hilang.

Berdasarkan konsep routing dan beberapa pertimbangan untuk kondisi jaringan MANET, routing protocol dibagi menjadi tiga kategori seperti yang ditunjukkan pada Gambar 2.4 [6], yaitu :

1. Table Driven Routing Protocol (Proactive Routing Protocol) 2. On Demand Routing Protocol (Reactive Routing Protocol) 3. Hybrid Routing Protocol

Gambar 2.4 Kategori Ad hoc Routing Protocol [6]

Pada kategori on demand routing protocol (reactive routing protocol), proses pencarian rute hanya akan dilakukan ketika komunikasi dibutuhkan antara node sumber dengan node tujuan. Jadi routing table yang dimiliki oleh sebuah node berisi informasi rute ke node tujuan saja. Contohnya adalah Dynamic Source Routing (DSR), Ad hoc On-demand Distance Vector (AODV), Temporally Ordered Routing Algorithm (TORA), Associativy Based Routing (ABR), dan Signal Stability Routing (SSR).

Sedangkan pada kategori table driven routing protocol (proactive routing protocol), masing-masing node akan memiliki routing table yang lengkap dalam artian sebuah node akan mengetahui semua rute ke node lain yang berada dalam jaringan tersebut. Setiap node akan melakukan update routing table yang dimilikinya secara periodik, sehingga perubahan topologi jaringan dapat diketahui setiap interval waktu tersebut. Hal ini bertujuan untuk menjaga konsistensi, dan informasi perutean setiap pasangan node dalam jaringan MANET. Propagasi rute diperbaharui setiap interval waktu yang tetap. Contoh : Destination Sequenced Distance Vector (DSDV), Cluster Switch Gateway Routing (CSGR), Wireless Routing Protocol (WRP), Optimized Link State Routing (OLSR).

Kategori ketiga yaitu, hybrid routing protocol yang mengkombinasikan antara kedua tipe routingprotocol (proaktif dan reaktif), contoh dari routing protocol ini adalah Zone Routing Protocol (ZRP) . Konsep jaringan hybrid adalah gabungan dari jaringan infrastruktur dan MANET . Disatu sisi ada jaringan dengan infrastruktur dan disisi lain terdapat node yang dapat bergerak bebas (mobile node) dengan fasilitas routing. Hal ini memungkinkan rute multi-hop antara mobile node dengan base station, dan menyebabkan ruang lingkup area dari base station menjadi lebih luas. Ide jaringan hybrid adalah untuk efisiensi dari jaringan infrastruktur yang ada, untuk memperluas area dari base station dan mengurangi konsumsi daya listrik.

II.3.1 Destination Sequence Distance Vector

Destination Sequence Distance Vector (DSDV) termasuk dalam kategori table driven routing protocol dalam jaringan Mobile Ad hoc [2]. DSDV menggunakan metode routing distance vector yang dilengkapi dengan adanya sequence number. Dengan metode distance vector, memungkinkan setiap node dalam jaringan untuk dapat bertukar tabel routing melalui node tetangganya, namun salah satu kekurangan dari metode ini adalah dapat mengakibatkan terjadinya looping dalam jaringan sehingga digunakanlah suatu sequenced number tertentu untuk mencegah terjadinya looping.

setiap node dalam jaringan tersebut. Sequence number akan dihasilkan ssetiap kali akan mengirim pesan, dengan demikian maka sequence number akan dihasilkan jika terjadi perubahan dalam jaringan. Hal ini dapat disebabkan karena :

1. Update secara periodik oleh masing-masing node di mana setiap node akan mengirimkan pesan secara periodik.

2. Jika terdapat triggered update seperti ada node datang atau pergi sehingga node tetangga akan mengirimkan pesan ditandai dengan nilai sequnce number yang baru.

Dengan metode routing DSDV, setiap node memelihara sebuah tabel forwarding dan menyebarkan tabel routing ke node tetangganya. Tabel routing tersebut memuat informasi sebagai berikut :

1. Alamat node tujuan (berupa MAC Address)

2. Jumlah hop yang diperlukan untuk mencapai node tujuan

3. Sequence number dari informasi yang diterima. Sequence number tersebut berasal dari node tujuan.

Tabel routing akan diperbaharui secara periodik dengan tujuan untuk menyesuaikan jika terjadi perubahan topologi jaringan (ada node yang bergerak atau berpindah tempat), dan untuk memelihara konsistensi dari tabel routing yang sudah ada. Sequence number yang baru akan dihasilkan oleh setiap node jika terjadi pembaharuan tabel routing.

Jika tabel routing sudah diperbaharui maka akan dipilih rute untuk mencapai node tujuan dengan kriteria sebagai berikut :

1. Tabel routing dengan nilai sequence number yang terbaru akan terpilih. Sequence number terbaru ditandai dengan nilai sequence number yang lebih besar dari yang sebelumnya

2. Jika dihasilkan sequence number yang sama maka dilihat nilai metric-nya, dan nilai metric yang paling kecil akan dipilih.

Setiap node akan mempunyai sebuah forwarding table yang berisi informasi pada table routing dan informasi lain seperti install time. Install time akan berisi interval waktu yang diperlukan untuk mendapatkan tabel routing dari node tujuan. Jika install time bernilai besar, maka hal tersebut mengindikasikan adanya link

yang terputus antara node asal dan node tujuan. Install time dijadikan dasar keputusan untuk menghapus rute tertentu yang terputus dengan node asal. Dengan penggunaan DSDV maka penghapusan suatu rute tersebut akan jarang sekali dilakukan namun install time tetap digunakan untuk memonitor rute-rute yang terputus dengan node asal, dan mengambil langkah yang diperlukan bila hal tersebut terjadi.

Link yang terputus akan ditandai dengan nilai metric yang tak berhingga, dan node asal akan mengeluarkan sequenced number ganjil untuk node tujuan tersebut. Sequenced number yang ganjil tersebut akan disebarkan ke node-node lain sehingga semua node dalam jaringan tersebut mengetahui bahwa ada link yang terputus untuk node tujuan dengan sequenced number ganjil tersebut.

Looping dalam jaringan DSDV dapat dihindari dengan penggunaan sequence number, di mana setiap node untuk setiap perubahan dalam jaringan akan menghasilkan sequenced number baru. Jadi node lain akan mengetahui kejadian yang baru terjadi melalui nilai sequence number. Makin besar nilai sequence number maka pesan yang diterima semakin baru. Sequence number yang lebih kecil menandakan bahwa kejadian tersebut sudah tidak up to date sehingga akan diganti.

Gambar 2.5 merupakan contoh jaringan MANET sebelum dan setelah terjadi pergerakan node. Tabel 2.1 merupakan tabel routing yang dihasilkan oleh node H6 sebelum terjadi pergerakan node. Metode routing DSDV memiliki sifat setiap node yang berada dalam jaringan akan memelihara sebuah tabel forwarding dan menyebarkan tabel routing ke node tetangganya [7]. Tabel routing tersebut memuat informasi sebagai berikut :

1. Alamat node tujuan (berupa MAC address).

2. Jumlah hop yang diperlukan untuk mencapai node tujuan. 3. Sequenced number.

Gambar 2.5 Contoh jaringan ad hoc sebelum dan setelah terjadi pergerakan node [2].

Tabel 2.1 Tabel routing node H6 sebelum terjadi perpindahan node [2].

Gambar 2.6 sampai Gambar 2.8 menunjukkan prosedur pengiriman paket routing pada DSDV [2]. Gambar 2.5 memperlihatkan node H4 ingin mengirim paket ke node H5. Node H4 mengecek tabel routing untuk menentukan node H6 merupakan node berikutnya untuk routing paket ke node H5. Node H4 kemudian mengirim paket ke node H6.

Gambar 2.6 Node H4 mengirim paket ke node H6 [2].

Gambar 2.7 memperlihatkan node H6 mengecek tabel routing yang dimilikinya untuk menentukan node H7 merupakan node berikutnya untuk pengiriman paket dari node H4 ke node H5.

Gambar 2.7 Node H6 mengecek tabel routing [2].

Gambar 2.8 memperlihatkan node H6 meneruskan paket ke node H7. Prosedur rute paket tersebut diulang sepanjang jalan sampai paket node H4

Gambar 2.8 Node H6 meneruskan paket ke node H7 [2].

Pada Tabel 2.2 menunjukkan tabel routing yang dimiliki node H7. Node H7 kemudian melakukan update packet ke node tetangganya, karena beberapa node dalam topologi jaringan melakukan pergerakan atau berpindah tempat seperti node H1, node H3, dan node H5 (lihat Gambar 2.6) [2].

Tabel 2.2 Tabel routing node H7 (update packet) [2].

Tabel 2.3 memperlihatkan tabel routing yang dimiliki oleh node H6 sebelum node H7 mengirimkan update packet ke tetangganya.

Ketika node H6 menerima update packet dari node H7, node H6 akan memeriksa informasi tabel routing yang dimilikinya. Jika ada nilai sequence number yang lebih besar nomer urutannya maka akan dimasukkan dalam tabel routing [2]. Sequence number S516_H1 pada dest H1 Tabel 2.2 nilainya lebih besar dibandingkan dengan di Tabel 2.3, maka nilai sequence number tersebut dimasukkan dalam tabel routing node H6. Hal ini terlepas nilai metric lebih besar ataupun kecil. Jika ada rute dengan nilai sequence number sama, maka rute dengan nilai metric yang lebih kecil dimasukkan dalam tabel routing. Dest H5 pada Tabel 2.2 dengan Tabel 2.3 yang memiliki sequence number yang sama yaitu S502_H5, namun pada Tabel 2.3 nilai metric lebih kecil. Tabel 2.4 merupakan tabel routing yang dimiliki node H6 setelah menerima update packet dari node H7.

Tabel 2.4 Tabel routing node H6 setelah dilakukan update tabel routing [2].

Tabel 2.5 merupakan tabel routing yang dimiliki node H7 setelah mendeteksi jalur dengan node H1 putus. (Diasumsikan pada Gambar 2.2 jalur antara node H1 dan H7 putus) [3]. Node H7 mendeteksi jalur dengana node H1 putus, kemudian menyiarkan update packet ke node tetangga (node H6).

Tabel 2.5 Tabel routing node H7 (update packet) [2].

Tabel 2.6 Tabel routing node H6 [2].

Ketika node H6 menerima update packet dari node H7, node H6 kemudian melakukan update tabel routing yang dimilikinya dengan informasi update packet dari node H7. Node H6 melakukan update dest H1 Sequence number S517_H1 dan nilai metric ∞. Nilai metric ∞ menjelaskan link dari H1 putus. Tabel routing node H6 setelah dilakukan update dapat dilihat pada Tabel 2.7.

Tabel 2.7 Tabel routing node H6 (update packet) [2].

Looping dalam jaringan DSDV dapat dihindari dengan penggunaan sequence number, jika terjadi perubahan dalam jaringan setiap node akan menghasilkan sequenced number baru [2]. Node lainnya akan mengetahui kejadian yang baru terjadi melalui nilai sequence number. Makin besar nilai sequence number maka pesan yang diterima semakin baru. Sequence number yang lebih kecil menandakan bahwa kejadian tersebut sudah tidak up to date sehingga akan diganti.

II.3.2 Optimized Link Stated Routing

Optimized Link Stated Routing (OLSR) adalah routing protocol proaktif, yang mewarisi kestabilan algoritma link state dan rute segera tersedia ketika

diperlukan. OLSR merupakan optimalisasi dari link state klasik, optimalisasi ini berdasarkan pada konsep multipoint relays (MPR) [8]. OLSR menyediakan dua fungsi utama yaitu :

1. Neighbor Discovery

Neighbor Discovery berfungsi untuk mendeteksi node tetangga yang memiliki hubungan langsung. Setiap node pada protokol OLSR selalu tukar-menukar informasi topologi dengan node tetangga dalam MANET [9]. Pada awalnya, setiap node mengirimkan hello message secara broadcast untuk mengetahui keberadaan node tetangganya yang berada dalam jangkauan node yang mengirimkan hello message tersebut.

0 3 2 1 4 Hello Massage Hello Massage Hello Massage Hello Massage Hello Massage Hello Massage Hello Massage (0,100) (50,160) (120,280) (200,420) (280,450)

Gambar 2.9 Pengiriman hello message tiap node [1].

Pengiriman hello message dikrim setiap tenggang waktu yang telah ditetapkan yang disebut dengan HELLO_INTERVAL. Hello messsage berfungsi agar setiap node dapat memperoleh informasi mengenai node tetangga yang berada dalam wilayah cakupan yang berjarak 1 hingga 2 hop [1]. Fungsi lain dari hello mesasge adalah memilih node tetangga sebagai Multipoint Relay (MPR). Gambar 2.9 memperlihatkan setiap node mengirim paket hello message.

flooding biasa, seluruh node dapat meneruskan pesan yang diterimanya. Hal ini dapat menyebabkan sebuah node menerima pesan yang sama secara berulang- ulang sehingga node dapat menerima 2 pesan yang sama dari 2 node tetangganya [1]. Pada Gambar 2.10 B flooding MPR, sebuah node hanya akan menerima 1 pesan dari node tetangganya.

Gambar 2.10 Teknik flooding, (A) flooding biasa (B) flooding MPR [1]

MPR adalah teknik untuk mengurangi jumlah overhead dalam jaringan [12]. Tujuan utama dari MPR yaitu mengurangi luapan atau flooding pada broadcast message dengan cara memilih beberapa node untuk bertindak sebagai MPR, sehingga hanya node yang bertindak sebagai MPR saja yang dapat meneruskan paket kontrol yang diterima. Teknik ini juga dapat digunakan protokol untuk menyediakan rute terpendek. Pemilihan MPR dapat menggunakan algoritma MPR yang memiliki 4 tahap, yaitu [1] :

1. Menentukan node awal yang akan memilih MPR yang berjarak 1 hop dan yang berjarak 2 hop.

2. Melakukan perhitungan dengan rumus D(x,y), dimana y adalah seluruh anggota dari N(x).

MPR : D (x,y) = N(y) – (x) – N(x) (2.1)

dengan D(x,y) adalah node tetangga yang berjarak 1 hop dari node x (node y adalah bagian dari N(x)). N(y) adalah node tetangga yang berjarak 1 hop dari node N(x). (x) adalah node yang memilih MPR. N(x) adalah node tetangga yang berjarak 1 hop dari node x (hanya berisi tetangga yang bersifat symmetric).

3. Memilih MPR sementara yang terdapat didalam N(x) yang dapat mencapai node yang berjarak 2 hop yang hanya memiliki 1 jalur untuk mencapainya.

4. Jika masih ada node lain di dalam N2(x) yang masih dapat dijangkau oleh MPR(x), maka jumlah node yang belum terjangkau langsung oleh MPR(x) dan terjangkau langsung oleh N(x) dihitung. Apabila jumlah angkanya ada yang sama, maka dipilih salah satu yang memiliki jumlah terbanyak dipilih. MPR(x) adalah multipoint relay set dari node x yang menggunakan algoritma ini. N2(x) adalah node tetangga yang berjarak 2 hop dari node x (hanya berisi tetangga yang bersifat symmetric).

0 3 2 1 4 (0,100) (50,160) (120,280) (200,420) (280,450)

Gambar 2.11 Contoh skenario penggunaan algoritma MPR [1]

Gambar 2.11 merupakan contoh skenario penggunaan algoritma MPR. Hal pertama yang dilakukan dalam algoritma MPR adalah memilih N(x) dan N2(x). Node 0 dipilih sebagai node acuan maka N(0) = {1,3} dan N2(0)= {2,4}. Pada tahap kedua dapat dilakukan perhitungan D(x,y), dengan y merupakan tetangga dari node 0, maka

D(0,1) = N(1) – {0} – N(0)

= {0,2,3,4} – {0} – {1,3} = {2,4} D(0,3) = N(3) – {0} – N(0)

= {0,1,4} – {0} – {1,3} = {4}

Langkah berikutnya, memilih MPR(0) yang hanya dapat menjangkau tetangganya yang berjarak 2 hop dengan ditempuh oleh 1 jalur saja. Dari Gambar 2.7 yang memenuhi adalah node 1 dan 3, karena node 2 hanya dapat dijangkau

MPR(0) sementara adalah {1,3}. Pada tahap keempat dilakukan lagi pengecekan pada pemilihan MPR(0), mungkin masih ada yang dapat dipilih sebagai MPR. Node 1 yang paling banyak menjangkau tetangganya yang berjarak 2 hop jika dibandingkan dengan node 3, sehingga yang dipilih menjadi MPR hanya node 1.

Setelah melakukan pengiriman hello message dan pemilihan MPR langkah selanjutnya melakukan perhitungan jarak terpendek dari jumlah hop pada setiap tabel routing yang didapat [1]. Tabel 2.8 memperlihatkan contoh tabel routing yang dimiliki node 0.

Tabel 2.8 Contoh tabel routing dari node 0 [1].

Destination Next Distance

1 1 1

2 1 2

3 3 1

4 3 2

Kolom pertama pada Tabel 2.8 contoh tabel routing node 0 diisi dengan node tetangga yang berjarak 1 hingga 2 hop dari node asal (node 0), kolom dua diisi dengan node tetangga yang berjarak 1 hop yang akan dilalui oleh node sumber menuju node tujuan, dan kolom ketiga diisi dengan jumlah hop yang dilalui dari node asal ke node tujuan.

Pencarian rute tersebut dilakukan untuk pengiriman data dengan jarak terpendek [9]. Perhitungan jarak terpendek tersebut dapat dilakukan dengan menggunakan algoritma Dijkstra. Pencarian jarak terpendek dapat menghasilkan tabel routing yang berisi tentang informasi jalur terpendek setiap node, informasi tersebut akan disimpan oleh setiap node dan akan langsung di perbarui jika terjadi perubahan topologi.

2. Topology Dissemination

Setiap node dalam jaringan mempertahankan informasi topologi jarigan yang diperoleh melalui messages TC (topology control) [10]. Messages TC dikirim secara broadcast ke seluruh jaringan. Kegunaan pesan TC yaitu untuk

menyebarkan informasi tentang node tetangga yang telah ditetapkan sebagai MPR. Pesan TC disebarkan secara periodik dan hanya node yang bertindak sebagai MPR yang dapat meneruskan pesan TC. Dengan demikian, sebuah node dapat dijangkau baik secara langsung atau melalui node MPR [1]. Hello message dan message TC diperbarui secara periodik, dan memungkinkan setiap node unruk menghitung jalur ke semua node dalam jaringan. Jalur-jalur ini dihitung dengan algoritma jalur terpendek Djikstra.

II.3.3 Perbandingan antara Distance Vector dengan Link State

Perbandingan antar distance vector dengan link state ditunjukkan pada Tabel 2.9.

Tabel 2.9 Perbandingan Distance Vector dengan Link State

Distance Vector Link State

- Tabel routing distance vector berisi informasi Destination dan next hop. - Informasi tabel routing ini hanya

dimiliki oleh node tetangganya. - Menggunakan algoritma

Bellman-Ford

o Pembentukan tabel routing dengan cara pertukaran informasi hanya

- Tabel routing link state adalah interface dan daftar rute yang berisi informasi Destination, next hop, dan Distance.

- Setiap node memiliki informasi tabel routing. - Menggunakan algoritma

Dijkstra atau SPF.

o Pembentukan tabel routing dimulai dengan pengiriman paket link

terhubung.

- Melakukan update secara berkala atau periodik.

- Mengirimkan salinan dari tabel routing kepada node tetangganya.

dari masing-masing node, dan dikumpulkan dalam suatu database.

o Langkah selanjutnya informasi yang terkumpul akan diolah dengan algoritma SPF (short path first).

o Algoritma SPF ini menghasilkan short path first tree, untuk kemudian dibentuk menjadi daftar isi tabel routing.

- Update tabel routing bila ada perubahan saja.

- Mengirimkan update tabel routing ke semua node.

Berdasarkan Tabel 2.9, protocol link-state membutuhkan proses data dan memori yang lebih banyak daripada protocol distance vector. Hal tersebut dapat dilihat dari proses pembentukan tabel routing dan isi dari tabel routing. Link-state membutuhkan memori dan proses data yang lebih banyak untuk menangani semua informasi dari database, pohon topologi, dan table routing, daripada distance vector. Komputasi pada proses pembentukan tabel routing link state berpengaruh pada kebutuhan memori , konsumsi bandwidth, dan membutuhkan konsumsi energy yang lebih besar dibandingkan dengan distance vector.

II.4 Parameter Kinerja

Dokumen terkait