ANALISIS KINERJA DESTINATION SEQUENCE DISTANCE VECTOR( DSDV ) DALAM MENCEGAH COUNT TO INFINITY PADA ROUTING INFORMATION PROTOCOL ( RIP )
TESIS Octara Pribadi 117038041
PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER DAN TEKNIK INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
ii
PERSETUJUAN
Judul
: ANALISIS KINERJA DESTINATION SEQUENCE DISTANCE COUNT
VECTOR TO
DALAM
INFINITY
PADA
MENCEGAH ROUTING
INFORMATION PROTOCOL (RIP) Kategori
: Jaringan Komputer
Nama
: Octara Pribadi
Nomor Induk Mahasiswa
: 117038041
Program Studi
: Magister (S2) Teknik Informatika
Fakultas
: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing
:
Pembimbing 2
Pembimbing 1
(Dr. Erna Budhiarti Nababan, M.IT)
(Prof. Dr. Muhammad Zarlis)
Diketahui / disetujui oleh Ketua Program Studi Magister (S2) Teknik Informatika
(Prof. Dr. Muhammad Zarlis) NIP. 195707011986011003
iii
PERNYATAAN ORISINILITAS
ANALISIS KINERJA DESTINATION SEQUENCE DISTANCE VECTOR DALAM MENCEGAH COUNT TO INFINITY PADA ROUTING INFORMATION PROTOCOL (RIP)
TESIS
Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, 17 Desember 2015
( Octara Pribadi ) NIM. 117038041
iv
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di bawah ini : Nama
: Octara Pribadi
NIM
: 117038041
Program Studi
: Magister (S2) Teknik Informatika
Jenis Karya Ilmiah
: TESIS
Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak Bebas Royalti Non-Eksklusif (Non-Exclusive Royalty Free Right) atas tesis saya yang berjudul :
ANALISIS KINERJA DESTINATION SEQUENCE DISTANCE VECTOR DALAM MENCEGAH COUNT TO INFINITY PADA ROUTING INFORMATION PROTOCOL (RIP)
Berserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas ROyalti NonEksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk database, merawat dan mempublikasikan tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan/atau sebagai pemilih hak cipta.
Demikian pernyataan ini dibuat dengan sebenarnya. Medan, 17 Desember 2015
( Octara Pribadi ) NIM. 117038041
v
Telah diuji pada Tanggal : 22 Desember 2015
PANITIA PENGUJI TESIS Ketua
:
Prof. Dr. Muhammad Zarlis
Anggota
:
1. Dr. Erna Budhiarti Nababan, M.IT 2. Prof. Dr. Tulus 3. Prof. Dr. Herman Mawengkang 4. Prof. Dr. Iryanto, M.Si.
vi
RIWAYAT HIDUP
DATA PRIBADI
Nama Lengkap (berikut gelar) : Octara Pribadi, S.Kom. Tempat dan Tanggal Lahir
: Medan, 06 Oktober 1989
Alamat Rumah
: Jln. Zainal Abidin dusun II Hamparan Perak
Telepon / Faks /HP
: 0857-6011-0983
E-Mail
:
[email protected]
Instansi Tempat Bekerja
: STMIK TIME Medan
Alamat Kantor
: Jln. Merbabu No. 32 AA-BB, Medan
DATA PENDIDIKAN
SD
: SD Dr. Wahidin Sudirohusodo
TAMAT : 2001
SMP : SMP Dr. Wahidin Sudirohusodo
TAMAT : 2004
SMA : SMA Dr. Wahidin Sudirohusodo
TAMAT : 2007
S1
: Teknik Informatika STMIK TIME
TAMAT : 2011
S2
: Teknik Informatika USU
TAMAT : 2015
vii
UCAPAN TERIMA KASIH
Puji dan syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena dengan rahmat yang diberikan-Nya lah penulis dapat menyelesaikan Tesis yang merupakan salah satu syarat dalam akademis perguruan tinggi. Pada kesempatan ini, penulis ingin menyampaikan beberapa patah kata, pertama penulis sadar akan karya ilmiah yang dikerjakan masih jauh dari kata sempurna, sehingga penulis dengan senang hati mengharapkan adanya kritik maupun saran yang membangun sehingga karya ilmiah ini dapat dikembangkan agar lebih baik lagi kedepannya. Kedua penulis ingin mengucapkan terima kasih yang sedalam-dalamnya kepada semua pihak yang telah membantu penulis dalam menyelesaikan karya ilmiah ini baik secara langsung maupun tidak langsung diantaranya Bapak Prof. Dr. Muhammad Zarlis, M.Si. dan Ibu Dr. Erna Budhiarti Nababan, M.IT. selaku pembimbing I dan II yang telah memberikan banyak masukan yang sehingga Tesis ini dapat diselesaikan. Terima kasih juga ditujukan kepada Ibu Pelangi W. Wijaya, M.Pd. , Bapak Edi Wijaya, S.Kom. , M.Kom. dan Bapak Huliman, S.Kom. , M.Kom. yang telah memberikan bantuan berupa semangat dan dukungan yang luar biasa kepada penulis. Tidak lupa ucapan terima kasih kepada seluruh staf Program Studi S2 Teknik Informatika yang telah memberikan pelayanan yang luar biasa sehingga penulis sangat terbantu dalam penyelesaian Tesis. Yang terakhir ucapan terima kasih ditujukan kepada orang tua penulis yang telah memberikan bantuan berupa doa, semangat, dan dukungan yang dimana tanpanya penulis tidak akan bisa menyelesaikan Tesis ini semestinya.
viii
Akhir kata semoga karya ilmiah ini dapat berguna bagi kehidupan masyarakat kedepannya. Atas waktu dan perhatiannya penulis ucapkan terima kasih.
Medan, Oktober 2015
Octara Pribadi
ix
ABSTRAK
Protokol RIP (Routing Information Protocol) digunakan untuk mendistribusikan informasi antar router dalam jaringan secara otomatis. Sebagai salah satu protokol berbasis distance vector , RIP memiliki masalah serius yaitu count-to-infinity yang membuatnya tidak cocok digunakan untuk jaringan berskala besar. Salah satu pendekatan yang dapat dilakukan untuk menanggulangi masalah tersebut adalah DSDV (Destination Sequence Distance Vector). Penelitian ini dimaksudkan untuk menganalisa keefektifan DSDV dalam mencegah count-to-infinity pada RIP. Kata Kunci : Routing Information Protocol, Count to Infinity, Distance Vector Routing
x
Performance Analysis Of Destination Sequence Distance Vector (DSDV) To Prevent Count To Infinity Problem In Routing Information Protocol (RIP)
ABSTRACT
Routing Information Protocol (RIP) is use to enchanged information between router in autonomous system. However RIP as an distance vector routing protocol suffered from count-to-infinity problem that cause RIP is not suitable to be used in a larger network scale. There is one approach that can be made to prevent such problem which is DSDV (Destination Sequence Distance Vector). This research aim to analyze how effective DSDV to prevent count-to-infinity problem in RIP. Keywords : Routing Information Protocol, Count to Infinity , Distance Vector Routing
xi
DAFTAR ISI
Hal HALAMAN JUDUL
i
PERSETUJUAN
ii
PERNYATAAN ORISINILITAS
iii
PERSETUJUAN PUBLIKASI
iv
PANITIA PENGUJI
v
RIWAYAT HIDUP
vi
UCAPAN TERIMA KASIH
vii
ABSTRAK
ix
ABSTRACT
x
DAFTAR ISI
xi
DAFTAR TABEL
xiii
DAFTAR GAMBAR
xiv
BAB 1 :
BAB 2 :
PENDAHULUAN 1.1 Latar Belakang
1
1.2 Perumusan Masalah
2
1.3 Batasan Masalah
3
1.4 Tujuan Penelitian
3
1.5 Manfaat Penelitian
3
LANDASAN TEORI 2.1 Jaringan Komputer
4
2.1.1 Model Lapisan OSI(Open Systems Interconnection)
4
2.1.2 Routing
6
xii
BAB 3 :
BAB 4 :
BAB 5 :
2.2 RIP(Routing Information Protocol)
16
2.3 Count-to-infinity
19
2.4 Metode Destination Sequence Distance Vector
25
2.5 Penelitian Terkait
28
2.6 Perbedaan Dengan Penelitian Terdahulu
30
METODE PENELITIAN 3.1 Pendahuluan
31
3.2 Sampel Topologi Jaringan
32
3.3 Analisa Data
33
3.3.1 Komponen DSDV : Paket “hello”
40
3.3.2 Triggered Update
40
3.4 Mendeteksi terjadinya count-to-infinity
41
3.5 Instrumen Penelitian
43
HASIL DAN PEMBAHASAN 4.1 Hasil
44
4.2 Pembahasan
54
KESIMPULAN DAN SARAN 5.1 Kesimpulan
57
5.2 Saran
57
DAFTAR PUSTAKA
xvi
xiii
DAFTAR TABEL
Nomor
Keterangan
Halaman
2.1
Tabel Fungsi Lapisan OSI
5
2.2
Routing Table
8
2.3
Routing Table Router1
10
2.4
Routing Table Router2
10
2.5
Routing Table Router 3
10
2.6 2.7 2.8 3.1 3.2 3.3
Informasi Tabel Informasi Pada Node C Informasi Tabel Informasi Pada Node C (Update) Penelitian Terkait Informasi Routing Pada Node A Interval pertama Informasi Routing Pada Node A Interval kedua Informasi Routing Pada Node A ketika C dan D Terputus Hasil Pengamatan Dengan Beberapa Susunan Node Hasil pengamatan dengan beberapa susunan node tanpa DSDV
26 26 29 36 36 38
4.1 4.2
53 54
xiv
DAFTAR GAMBAR
Nomor
Keterangan
Halaman
2.1.
Model Lapisan OSI
5
2.2
Router dalam 4 segmen jaringan
7
2.3
Static routing menggunakan cisco router
8
2.4
Skema jaringan dengan beberapa router
9
2.5
(a) Skema Jaringan (b) Routing Table untuk Router A, I,
13
H, K dan J(router yang baru ditambahkan) 2.6
Tampilan Autonomous System
16
2.7
RA mengirimkan pesan kepada RB dan RC
17
2.8
RB dan RC memeriksa N1 dengan tabel routing
17
2.9
RB dan RC mengirimkan informasi {N1,2} ke RA dan
18
RD 2.10
RD menerima informasi dari RB atau RC
18
2.11
RD mengirimkan informasi {N1,3} ke router tetangga
18
2.12
Kondisi masing-masing routing table dalam keadaan
19
convergence 2.13
Link A E putus
20
2.14
Router A mengirimkan informasi kepada router lain
20
2.15
Router B C dan F meng-update informasi routing table
21
2.16
Router B C dan F mengirimkan kembali informasi
22
routing table yang salah kepada Router A 2.17
Ilustrasi Routing Loop
23
2.18
Susunan Router membentuk Loop
23
2.19
Susunan Node Dimana Node A Berpindah Posisi
25
2.20
Node A Terputus
27
3.1
Diagram Penelitian
31
xv
3.2
(a) Topologi Tanpa Loop (b) Topologi Dengan Loop
32
3.3
Proses Analisa Data
33
3.4
Paket hello dari node A
34
3.5
Nomor Sequence pada DSDV
35
3.6
Koneksi node C dan D putus
37
3.7
Triggered Update Node C
37
3.8
Node D terhubung dengan B
38
3.9
Koneksi terputus antara B dan C
39
3.10
Kemungkinan yang terjadi jika koneksi B dan C
39
terputus 3.11
Triggered Update
41
3.12
Empat node membentuk loop
42
3.13
Nilai metric maksimum untuk 4 node yang membentuk
42
loop 4.1
Tampilan Router Dengan Loop
45
4.2
Kondisi Tabel Router Saat Convergence Dengan t=1
46
4.3
Kondisi Tabel Router Pada t=2
46
4.4
Kondisi Tabel Router Pada t=3
47
4.5
Asumsi Koneksi Antara B-E-D
48
4.6
Informasi Routing D sampai Ke Router B
48
4.7
Informasi Routing A dan B Telah Diperbaharui
49
4.8
Router A, B, C dan D Convergence
50
4.9
Susunan Node Dengan Loop
51
4.10
Koneksi Antara R2 dan R7
52
4.11
Loop Yang Terbentuk Dari Node R1-R2-R7-Rn
53
BAB 1 PENDAHULUAN
1.1.
Latar Belakang
Protokol routing dinamis Routing Information Protocol (RIP) adalah salah satu protokol routing berbasis distance vector paling tua yang masih banyak digunakan sekarang. Protokol RIP masih didukung oleh beberapa router kelas menengah yang biasa digunakan oleh perusahaan skala menengah ataupun sekolah. Walaupun pada masa sekarang protokol RIP sudah dianggap kadaluarsa dan digantikan oleh protokol routing yang lebih canggih seperti OSPF (Open Shorthest Path First), EIGRP (Enchanged Interior Gateway Routing Protocol) atau IS-IS, RIP tetap menjadi pilihan utama jika ingin membuat jaringan dengan skala kecil hingga menengah dikarenakan RIP memiliki konfigurasi yang jauh lebih mudah dan tidak membutuhkan komputasi yang berat. Hal ini membuat RIP dapat dengan mudah diimplementasikan kedalam router dengan harga yang lebih terjangkau. Dibalik kelebihannya, RIP juga memiliki beberapa kekurangan yang cukup fatal, dua diantaranya yaitu lamanya waktu yang dibutuhkan bagi RIP untuk memperbaiki rute yang rusak jika terdapat satu atau beberapa node yang putus didalam jaringan dan masalah count-to-infinity yang terdapat pada sebagian besar protokol routing berbasis distance vector. Masalah count-to-infinity yang terdapat pada RIP membuat protokol ini membatasi informasi jumlah router yang dapat dikunjungi dari satu node ke node lainnya sebesar 15, sehingga protokol RIP tidak cocok diimplementasikan di perusahaan yang membutuhkan skala jaringan yang lebih besar dari 15. Selain kedua masalah diatas, RIP mengirimkan informasi tabel routing dengan cara broadcast secara periodik ke router lain yang terhubung langsung. Jika pada saat yang hampir bersamaan seluruh router mem-broadcast informasi, hal ini akan membuat lalu lintas data didalam jaringan akan dibanjiri oleh informasi tersebut dan memperlambat jaringan atau bahkan menyebabkan paket menjadi loss.
2
Beberapa penelitian pernah dilakukan untuk mempercepat proses RIP dan mengatasi masalah count-to-infinity antara lain Split Horizon with Poison Reverse, Triggered Update, Poison Route, dan Hold Timer. Walaupun terdapat beberapa metode yang ditambahkan untuk mencegah terjadinya count-to-infinity, namun tidak bisa diandalkan untuk semua kasus. Sehingga pada RIP satu-satunya cara untuk “mengobati” masalah count-to-infinity ini adalah dengan menentukan batas maksimal jumlah node yang dapat dijangkau oleh informasi dimana pada RIP jumlah tersebut adalah 15. Terdapat beberapa protokol routing dinamis berbasis distance vector yang dibuat beberapa tahun setelah RIP, yang dijamin terbebas dari masalah count-to-infinity diantaranya yaitu EIGRP dengan metode DUAL-FSM (Diffusing Update Algorithm on Finite State Machine) dan AODV (Ad hoc On-Demand Distance Vector) dengan metode DSDV (Destination Sequence Distance Vector). Metode DUAL-FSM diaplikasikan secara proprietary pada mesin-mesin buatan Cisco, sedangkan metode DSDV lebih diaplikasikan ke protokol routing terbuka. Pada penelitian ini, penulis mencoba menambahkan metode DSDV pada protokol routing RIP sehingga dapat mencegah terjadinya count-to-infinity. Atas dasar tersebut, penulis mengangkat judul penelitian “Analisis kinerja Destination Sequence Distance Vector (DSDV) dalam mencegah count-to-infinity pada Routing Information Protocol (RIP)”.
1.2.
Perumusan Masalah
Protokol RIP memiliki masalah serius yaitu count-to-infinity yang dapat terjadi akibat susunan node RIP yang membentuk loop. Akibatnya RIP dibatasi dengan jumlah node maksimal 15 sehingga secara langsung membatasi skala ukuran jaringan yang dapat ditangani oleh RIP. Oleh sebab itu diperlukan metode yang tepat untuk dapat mencegah count-to-infinity para RIP, agar RIP dapat digunakan pada jaringan dengan skala yang lebih besar.
3
1.3.
Batasan Masalah
Hal-hal yang penulis batasi agar penelitian ini lebih fokus pada masalah yang diteliti adalah : 1.
Protokol RIP yang penulis bahas adalah protokol RIP versi 1.
2.
Pembuktian yang penulis lakukan adalah dalam bentuk simulasi.
3.
Dalam penelitian ini, penulis mengabaikan kecepatan maupun ruang(space) yang digunakan oleh DSDV.
4.
Kinerja DSDV yang diteliti adalah keefektifannya dalam mencegah count-to-infinity.
1.4.
Tujuan Penelitian
Adapun tujuan penelitian ini adalah meningkatkan jumlah router menggunakan RIP dengan mencegah terjadinya count-to-infinity dengan metode DSDV.
1.5.
Manfaat Penelitian
Manfaat penelitian ini adalah sebagai berikut : 1.
Protokol RIP dapat digunakan sebagai alternatif protokol routing untuk skala jaringan yang lebih besar.
2.
Dengan metode DSDV pada RIP diharapkan protokol RIP dapat lebih cepat convergence jika terdapat perubahan topologi dalam jaringan.
3.
Diharapkan metode DSDV dapat dijadikan acuan protokol routing yang lain yang terkena masalah count-to-infinity.
BAB 2 LANDASAN TEORI
2.1.
Jaringan Komputer
Menurut Sopandi (2008) “Jaringan komputer adalah gabungan antara teknologi komputer dan teknologi telekomunikasi. Gabungan teknologi ini menghasilkan pengolahan data yang dapat didistribusikan, mencakup pemakaian database, software aplikasi dan peralatan hardware secara bersamaan”. Perangkat komputer saling meminta dan memberikan layanan(service). Komputer yang meminta informasi disebut sebagai client dan komputer yang memberikan informasi disebut sebagai server. Model seperti ini disebut sebagai model client-server. Selain itu terdapat pula model P2P (Peer to Peer) dimana pada model ini terdapat 2 buah komputer atau lebih yang secara bergantian berfungsi sebagai client atau server. Keuntungan yang didapat jika kita menjalankan jaringan komputer dibandingkan dengan komputer yang bekerja sendiri-sendiri misalnya:
2.1.1.
1.
Pembaharuan Informasi lebih cepat, karena proses update terpusat.
2.
Dapat berbagi data dalam komputer.
Model Lapisan OSI(Open Systems Interconnection)
Model Open Systems Interconnection (OSI) diciptakan oleh International Organization for Standardization (ISO) yang menyediakan kerangka logika terstruktur bagaimana proses komunikasi data berinteraksi melalui jaringan. Standard ini dikembangkan untuk industri komputer agar komputer dapat berkomunikasi pada jaringan yang berbeda secara efisien (McQuerry, 2008). Terdapat 7 lapisan OSI yaitu:
5
Gambar 2.1 Model Lapisan OSI ( Sumber : Tanenbaum, 2011 )
Ketika sebuah data ditransmisikan dari satu perangkat ke perangkat lain, maka data tersebut akan diproses mulai dari lapisan teratas yaitu application hingga lapisan terbawah yaitu physical dari sisi pengirim, sedangkan dari sisi penerima akan diproses mulai dari lapisan terbawah ke lapisan teratas. Pada tiap-tiap layer ketika data akan di kirim oleh komputer server, maka akan diberikan tambahan informasi yang menempel pada data yang disebut sebagai header. Dan ketika data sampai pada komputer client , informasi header ini akan dilepaskan satu persatu hingga menyisakan data yang akan diproses oleh komputer penerima (Forouzan, 2007). Berikut ini tabel fungsi masing-masing lapisan OSI : Tabel 2.1 Tabel Fungsi Lapisan OSI Nomor
Nama
Fungsi
1
Application
Menyediakan jasa untuk aplikasi pengguna. Layer ini bertanggungjawab atas pertukaran informasi antara program komputer, seperti program e-mail, dan servis lain yang akan dijalankan dalam jaringan, seperti server printer atau aplikasi komputer lainnya.
6
Tabel 2.1 Tabel Fungsi Lapisan OSI (lanjutan) Bertanggung jawab bagaimana data dikonversi dan diformat untuk transfer data. Contoh konversi format 2
Presentation
text ASCII untuk dokumen, .gif dan .jpg untuk gambar. Layer ini membentuk kode konversi, translasi data, enkripsi dan konversi. Menentukan bagaimana dua terminal menjaga,
3
Session
memelihara dan mengatur koneksi, dan bagaimana mereka saling berhubungan satu sama lain. Bertanggung jawab membagi data menjadi segmen,
4
Transport
menjaga koneksi logika end-to-end antar terminal, dan menyediakan penanganan error (error handling).
5
Network
Bertanggung jawab menentukan alamat jaringan, menentukan
rute
yang
harus
diambil
selama
perjalanan, dan menjaga antrian trafik di jaringan. Data pada layer ini berbentuk paket. 6
Data Link
Menyediakan link untuk data, memaketkannya menjadi frame yang berhubungan dengan perangkat keras
kemudian
diangkut
melalui
media.
Komunikasinya dengan kartu jaringan, mengatur komunikasi layer physical antara sistem koneksi dan penanganan error. 7
Physical
Bertanggung jawab atas proses data menjadi bit dan mentransfernya melalui media dan menjaga koneksi fisik antar system.
2.1.2.
Routing
Network Layer merupakan layer yang berfungsi untuk mengatur rute yang akan dilalui oleh paket data dari sumber ke tujuan, melalui proses yang disebut sebagai routing.
7
Routing merupakan salah satu proses untuk meneruskan paket data dari satu segmen jaringan ke segmen jaringan lain. Untuk melakukannya diperlukan suatu alat yang disebut sebagai router, ilustrasinya dapat dilihat pada gambar 2.2
Gambar 2.2 Router dalam 4 segmen jaringan (Sumber : Lammle, 2000) Pada gambar 2.2. terdapat 4 buah segmen jaringan, masing-masing yaitu Network A, B, C, dan D. Agar keseluruh jaringan dapat saling berhubungan, maka dipasang sebuah router. Untuk mengendalikan aliran paket data dari satu router ke router lainnya, dapat menggunakan 2 macam proses routing yaitu : 1.
Static routing, yaitu pengisian data rute secara manual atau langsung pada routing table.
2.
Dynamic routing,
yaitu
pengisian
data
rute secara otomatis
menggunakan routing protocol. Ilustrasi dari static routing dapat dilihat pada gambar 2.3
8
Gambar 2.3 Static routing menggunakan cisco router (Sumber : Lammle, 2000) Pada gambar 2.3 router dengan IP(Internet Protocol) 172.16.2.2 dikonfigurasi sebagai berikut : Ip route 172.16.1.0 255.255.255.0 172.16.2.1 Artinya untuk menuju ke segmen jaringan 172.16.1.0 dengan subnet 255.255.255.0 , dapat melewati router dengan IP 172.16.2.1 , sehingga rute akan tercipta dan tersimpan dalam tabel routing dengan format lebih kurang sebagai berikut (dapat berbeda untuk tiap-tiap vendor) :
Tabel 2.2 Routing Table Route
Network Address
Netmask
Gateway Address
Metric
Static
172.16.1.0
255.255.255.0
172.16.2.1
1
Sehingga setiap paket data yang ingin menuju ke segmen jaringan 172.16.1.0 dan melalui router dengan IP 172.16.2.2 , router tersebut akan melihat informasi pada tabelnya, kemudian data akan diteruskan melalui router dengan IP 172.16.2.1 hingga sampai ke tujuan. Illustrasi kedua, pada gambar 2.4 , terdapat jaringan dengan 3 buah router yang terhubung ke segmen jaringan tertentu :
9
Gambar 2.4 Skema jaringan dengan beberapa router
Maka konfigurasi untuk masing-masing router adalah :
Router01 yaitu : ip route 172.16.3.0 255.255.255.0 172.16.1.2 ip route 172.16.4.0 255.255.255.0 172.16.1.2 ip route 172.16.5.0 255.255.255.0 172.16.1.2
Router02 yaitu : ip route 172.16.2.0 255.255.255.0 172.16.1.1 ip route 172.16.4.0 255.255.255.0 172.16.3.2
Router03 yaitu : ip route 172.16.1.0 255.255.255.0 172.16.3.1 ip route 172.16.2.0 255.255.255.0 172.16.3.1 ip route 172.16.5.0 255.255.255.0 172.16.3.1
Sehingga akan terbentuk routing table yang dapat dilihat pada tabel 2.3, 2.4 dan 2.5.
10
Tabel 2.3 Routing Table Router1 Route
Network Address
Netmask
Gateway Address
Metric
Connected
172.16.1.0
255.255.255.0
-
0
Connected
172.16.2.0
255.255.255.0
-
0
Static
172.16.3.0
255.255.255.0
172.16.1.2
1
Static
172.16.4.0
255.255.255.0
172.16.1.2
2
Static
172.16.5.0
255.255.255.0
172.16.1.2
1
Tabel 2.4 Routing Table Router2 Route
Network Address
Netmask
Gateway Address
Metric
Connected
172.16.1.0
255.255.255.0
-
0
Static
172.16.2.0
255.255.255.0
172.16.1.1
1
Connected
172.16.3.0
255.255.255.0
-
0
Static
172.16.4.0
255.255.255.0
172.16.3.2
1
Connected
172.16.5.0
255.255.255.0
-
0
Route
Tabel 2.5 Routing Table Router3 Network Gateway Netmask Address Address
Metric
Static
172.16.1.0
255.255.255.0
172.16.3.1
1
Static
172.16.2.0
255.255.255.0
172.16.3.1
2
Connected
172.16.3.0
255.255.255.0
-
0
Connected
172.16.4.0
255.255.255.0
-
0
Static
172.16.5.0
255.255.255.0
172.16.3.1
1
Seluruh router pada jaringan harus didefinisikan informasi rutenya. Jika suatu saat segmen jaringan dirubah, maka setiap rute pada masing-masing router juga harus
11
disesuaikan lagi secara manual. Pada jaringan skala besar, penambahan data secara manual seperti ini sangatlah tidak efisien karena boros tenaga dan waktu. Namun selain kelemahan, terdapat juga beberapa kelebihan static routing yaitu 1.
Jalur routing mudah diprediksi
2.
Tidak membutuhkan proses update routing table.
3.
Mudah dikonfigurasi untuk jaringan kecil.
Dan kelemahan static routing yaitu : 1.
Tidak cocok untuk jaringan berskala besar.
2.
Tidak dapat beradaptasi terhadap penambahan router karena konfigurasi pada tiap router harus dirubah secara manual.
3.
Tidak dapat beradaptasi terhadap munculnya link failure pada salah satu jalur.
Untuk mengatasi hal semacam itu, lebih disarankan untuk menggunakan dynamic routing. Dynamic routing mengatur rute setiap paket dengan menggunakan routing table yang ter-update secara otomatis melalui routing protocol. Dynamic Routing dikategorikan menjadi 2 yaitu : 1.
Interior Gateway Protocol(IGP)
2.
Exterior Gateway Protocol(EGP)
Interior Gateway Protocol adalah sebutan untuk protokol-protokol routing yang digunakan di dalam sebuah Autonomous System(AS), sedangkan Exterior Gateway Protocol adalah protokol yang membawa informasi routing antar 2 buah administrative entities, dalam hal ini 2 buah AS. Contoh IGP antara lain Routing Information Protocol (RIP), Open Shortest Path First (OSPF), dan Enhanced Interior Gateway Routing Protocol (EIGRP), sedangkan contoh EGP antara lain Border Gateway Protocol (BGP). Secara umum terdapat 2 jenis protokol routing berdasarkan cara kerjanya yaitu 1.
Distance Vector
2.
Link-State
12
Menurut Tanembaum (2011) Distance Vector merupakan proses routing yang bekerja dengan acuan sebuah routing table, untuk mengetahui rute terbaik untuk mencapai tujuan. Dimana tabel ini akan selalu di-update dengan cara saling berbagi informasi dengan router tetangga. Algoritma yang digunakan untuk mencari rute terpendeknya adalah algoritma Bellman-Ford. Pada routing distance vector, setiap router memiliki sebuah table routing yang berisi daftar router lain beserta jarak tujuannya dalam jaringan yang disebut sebagai metric. Terdapat 2 jenis metric secara umum yaitu hop dan delay. Hop merupakan penentuan jarak antar router berdasarkan letaknya, misalnya jika Router A terhubung dengan Router B dan Router B terhubung dengan Router C, maka jarak antara Router A dan Router B disebut 1 hop, jarak antara Router B dan Router C disebut 1 hop dan jarak antara Router A dengan Router C disebut 2 hop karena melewati 2 router yaitu B dan C. Selain hop, satuan pengukuran lain adalah delay, cara kerjanya yaitu Router A mengirim sebuah paket ECHO kepada Router B, setelah paket diterima oleh Router B, dengan segera Router B mengirimkan paket balasan ke Router A secepat-cepatnya. Dengan ini Router A mengetahui waktu yang dibutuhkan untuk menjangkau Router B dalam satuan milidetik. Setelah itu Router A akan mengirimkan informasi ini kepada Router tetangga lainnya, dan juga mendapatkan informasi yang sama dari Router tetangga lain. Maka masing-masing Router akan meng-update informasi ini kedalam routing table masing-masing. Ilustrasi distance vector dapat dilihat pada gambar 2.5.
13
Gambar 2.5 (a) Skema Jaringan (b) Routing Table untuk Router A, I, H, K dan J(router yang baru ditambahkan) ( Sumber : Tanenbaum, 2011 )
Pada gambar 2.5 bagian (b), jarak antara Router A dengan B adalah 12ms, dengan C 25ms, dengan D 40ms, dan seterusnya. Asumsikan Router J akan mengirimkan data ke Router G, karena Router J tidak memiliki hubungan langsung ke Router G, maka Router J mencari RouterA yang terhubung langsung dengan delay 8ms, kemudian Router A dapat mencapai Router G dengan jeda 18ms, maka total waktunya 26ms. Hal yang sama juga dilakukan Router J dengan Router I, H, dan K yaitu 41(10+31), 18(12+6), dan 37(6+31). Dapat dilihat bahwa delay terkecil adalah melalui H dengan total delay hanya 18ms. Cara yang sama dapat digunakan untuk menghitung jika tujuannya adalah Router lain selain G. Link-state merupakan proses routing yang membangun topologi database-nya sendiri. Konsep dasar dari link-state routing adalah setiap router menerima peta (map) dari router tetangga. Link-state bekerja dengan cara yang berbeda dari distance vector.
14
Walaupun proses pengumpulan informasi routing-nya lebih rumit dan berat dari distance vector, namun link-state lebih realible, lebih scalable dalam melayani jaringan besar, lebih terstruktur dan juga lebih menghemat bandwith. Link-state akan melakukan penyelidikan terhadap semua koneksi yang ada dalam jaringan. Status dari koneksi-koneksi tersebut, jenis dan tipe koneksi, bahkan kecepatan dari koneksi tersebut semuanya dikumpulkan menjadi sebuah informasi. Hal ini sangat berbeda dengan distance vector. Algoritma distance vector memiliki informasi yang tidak spesifik tentang jaringan tujuan dan tidak mengetahui jarak router, sedangkan algoritma link-state memperbaiki pengetahuan dari jarak router dan bagaimana router terkoneksi. Pada protokol routing link-state, router akan memilih sendiri jalur untuk menuju ketujuannya. Router tersebut akan mendapatkan informasi tentang jalur terbaik (best pathway) melalui router tetangganya. Dari router tetangga itulah router mempelajari routing dan mencari jalur terbaik melalui router tetangganya tersebut. Protokol routing link-state memiliki beberapa fungsi, yaitu: 1.
Akan cepat merespon jika terjadi perubahan pada jaringan.
2.
Mengirimkan triggered update hanya pada saat jaringan mengalami perubahan.
3.
Mengirimkan update secara priodik yang dikenal dengan link-state refreshes.
4.
Menggunakan “hello packet” untuk mencari router tetangga.
Hello packet terkirim hanya pada router tetangga. Hello packet berisi informasi tentang jaringan yang terhubung. Fitur-fitur dari protokol routing link-state yaitu: 1.
Link State Advertisements (LSA).
2.
Topologi database.
3.
Algoritma Shortest Path First (SPF).
4.
SPF tree.
5.
Penentuan jalur terbaik pada routing table, baik jalurnya maupun portnya.
15
Link State Advertisements Paket kecil dari informasi routing yang dikirim antar router. LSA akan dikirim antar router. LSA akan dikirim ke router yang terhubung langsung. Saat terjadi perubahan jaringan. Sebagai contoh jika ada router yang mati, maka router yang terhubung langsung akan meng-update LSA-nya. Masing-masing router membangun database topologi yang berisi informasi LSA. Link-state protokol akan melakukan flood atau pembanjiran dengan menggunakan alamat multicast, kemudian router yang mendapatkan informasi perubahan itu akan mengirimkan lagi update-nya ke router tetangga yang terhubung langsung. Namun informasi LSA ini tidak akan terkirim lagi ke sisi pengirim pertama.
Topologi database Merupakan kumpulan informasi yang berasal dari semua LSA yang telah terkumpul. Disini informasi yang didapatkan adalah semua informasi tentang interface yang terhubung langsung. Bisa berupa IP Address, subnetmask, jenis dari jaringan yang terhubung, bagaimana router bisa terkoneksi ke jaringan dan lain-lain. Dari database kemudian dihitung jalur terbaik pada jaringan.
Algoritma SPF (Shortest Path First) Algoritma SPF dengan menggunakan informasi dari database sebelumnya akan menghasilkan tree (pohon) yang disebut sebagai SPF tree, dengan router itu sendiri sebagai root (akar). Router kemudian akan menggunakan SPF untuk mengetahui jalur mana yang paling pendek untuk mencapai tujuan. Algoritma SPF yang digunakan adalah algoritma dijkstra.
SPF tree SPF tree dibuat menggunakan algoritma dijkstra. SPF tree ini akan membantu router untuk menentukan jalur terbaiknya. Dari percabangan ini juga router akan mengetahui jalaur mana yang pendek dan yang terbaik.
16
2.2.
RIP(Routing Information Protocol) Routing Information Protocol (RIP) adalah sebuah protokol routing dinamis
yang digunakan dalam jaringan LAN (Local Area Network) dan WAN (Wide Area Network) dan diklarifikasikan sebagai Interior Gateway Protocol (IGP). Protokol ini menggunakan algoritma distance vector routing dan menggunakan jumlah hop sebagai metric. Pertama kali didefinisikan dalam RFC 1058 tahun 1988. Protokol ini telah dikembangkan beberapa kali, sehingga terciptalah RIP versi 2 (RFC 2453). Algoritma pencarian rute terpendek yang digunakan dalam RIP adalah algoritma Bellman-Ford, pertama kali digunakan dalam jaringan komputer pada tahun 1968, sebagai awal dari algoritma routing ARPANET. Versi paling awal protokol khusus yang menjadi RIP adalah Gateway Information Protocol, sebagai bagian dari PARC Universal Packet Internetworking Protocol Suite, yang dikembangkan di Xerox Parc. Sebuah versi yang bernama Routing Information Protocol adalah bagian dari Xerox Network Services. Sebuah versi dari RIP yang mendukung Internet Protocol (IP) kemudian dimasukkan dalam Berkeley Software Distribution (BSD) dari sistem operasi Unix. Ini dikenal sebagai daemon routed. Berbagai vendor lainnya membuat protokol routing yang diimplementasikan sendiri. Akhirnya, RFC 1058 menyatukan berbagai implementasi di bawah satu standar. Gambar 2.6 menunjukan ilustrasi cara RIP menentukan rute terbaik untuk menyampaikan paket data :
Gambar 2.6 Tampilan Autonomous System (Sumber : Hill, 2002)
17
Pada gambar 2.6 Router A (RA) terhubung dengan Network 1 (N1) dan Network 2 (N2), Network 2 terhubung dengan Router B (RB) dan Router C (RC), dan seterusnya. RA memerika koneksinya yang ternyata terhubung dengan N1 dengan cost 1, dan memasukan dalam routing table-nya, informasi {N1,1}. Kemudian RA akan mengirimkan pesan pada router tetangganya yaitu RB dan RC (gambar 2.7).
Gambar 2.7 RA mengirimkan pesan kepada RB dan RC (Sumber : Hill, 2002) Setelah pesan sampai pada RB dan RC, RB dan RC akan memeriksa routing table apakah sudah memiliki N1(gambar 2.8). Karena tabel belum memiliki informasi N1, maka RB dan RC akan segera memasukan informasi {N1,2} pada routing table, yang berarti untuk mencapai N1 harus melompat sebanyak 2 hop melewati router.
Gambar 2.8 RB dan RC memeriksa N1 dengan tabel routing (Sumber : Hill, 2002) Setelah itu, RB dan RC akan mengirimkan informasi {N1,2} ke router tetangganya yaitu RA dan RD (gambar 2.9). RA yang telah memiliki informasi {N1,1} dengan nilai hop yang lebih kecil akan mengabaikan informasi tersebut, sedangkan RD akan segera memasukan informasi {N1,3} dari RB atau RC (tergantung mana yang sampai terlebih dahulu) kedalam routing table-nya (gambar 2.10).
18
Gambar 2.9 RB dan RC mengirimkan informasi {N1,2} ke RA dan RD (Sumber : Hill, 2002)
Gambar 2.10 RD menerima informasi dari RB atau RC (Sumber : Hill, 2002) Setelah itu, RD akan mengirimkan informasi {N1,3} ke router tetangganya, dan router tetangga kembali akan memeriksa apakah informasi tersebut di tabelnya. Jika informasi telah ada, akan diperiksa jika nilai hop lebih kecil akan di-update pada routing table, jika tidak akan diabaikan. Namun jika N1 belum ada akan langsung dimasukan dalam routing table (gambar 2.11).
Gambar 2.11 RD mengirimkan informasi {N1,3} ke router tetangga (Sumber : Hill, 2002) Proses ini terjadi secara terus-menerus hingga seluruh router mendapatkan informasi dari keseluruhan network yang ada pada jaringan. Kondisi seperti ini disebut convergence.
19
2.3.
Count-to-infinity Salah satu masalah pada RIP (dan sebagian besar protokol routing berbasis
distance vector) adalah masalah count-to-infinity. Menurut Adiwazsha (2003) count-to-infinity merupakan salah satu contoh masalah yang muncul pada distance vector routing yang disebabkan jika terdapat salah satu link router yang rusak namun tidak diketahui router tetangga yang tetap mengirimkan informasi routing yang rusak pada router lain. Ilustrasinya dapat dilihat pada gambar 2.12.
Gambar 2.12 Kondisi masing-masing routing table dalam keadaan convergence (Sumber : Tanembaum, 2011) Pada gambar 2.12 seluruh router telah memiliki informasi routing yang benar, atau disebut juga sebagai convergence. Masing-masing router telah mencatat rute terpendek untuk mencapai tiap-tiap tujuan.
20
Gambar 2.13 Link A E putus (Sumber : Tanembaum, 2011) Pada gambar 2.13 , diasumsikan koneksi antar Router A dan E putus, maka router A akan segera mengetahuinya dan meng-update nilai pada routing table.
Gambar 2.14 Router A mengirimkan informasi kepada router lain (Sumber : Tanembaum, 2011) Pada gambar 2.14 , Router A meng-update nilai hop untuk menuju ke E melalui E dengan nilai infinity atau 16. Router A kemudian akan mencari nilai hop
21
terkecil dalam hal ini B yaitu 3. Sehingga Router A akan menuju E melalui Router B dengan hop sebesar 3.
Gambar 2.15 Router B C dan F meng-update informasi routing table (Sumber : Tanembaum, 2011) Pada gambar 2.15 , akibat adanya perubahan nilai pada routing table, memicu Router A untuk mengirimkan informasi routing terbaru-nya kepada router tetangga yaitu B, C dan F, mengakibatkan masing-masing router meng-update nilai routing table yang menuju ke Router E via Router A dengan nilai hop Router A ke E ditambah dengan 1. Pada contoh nilai hop Router A ke E bernilai 3, sehingga Router B, C dan F akan meng-update nilai 4 kedalam routing table masing-masing.
22
Gambar 2.16 Router B C dan F mengirimkan kembali informasi routing table yang salah kepada Router A (Sumber : Tanembaum, 2011) Pada gambar 2.16 , Router B, C dan D melakukan update routing table, dan karena terjadi perubah nilai routing table, maka masing-masing Router akan terpicu untuk mengirimkan informasi routing, contoh : Router B sekarang memiliki nilai hop 4 untuk menuju ke E via Router A, dan nilai hop 3 untuk menuju ke E via Router C. Karena nilai 3 lebih kecil dari 4, maka Router B akan menggunakan jalur via C dan akan mengirimkan informasi tersebut kepada Router A. Hal yang sama juga terjadi pada Router C dan F. Router A kemudian meng-update nilai hop yang dikirimkan oleh Router B, C dan F sehingga yang sebelumnya (3,3,3) menjadi (4,4,5). Karena nilai routing table Router A berubah lagi, maka Router A akan kembali mengirimkan informasi routing yang sudah salah ini kepada Router tetangganya, Router tetangga akan meng-update , mengirimkan kembali ke Router tetangganya, dan seterusnya hingga nilai hop akan bertambah terus secara bertahap tak berhingga. Karena RIP hanya dapat melakukan hop maksimal 15, sehingga jika jumlah hop telah mencapai 16, koneksi menuju E dianggap putus. Menurut Adiwazsha (2003) untuk menangani masalah count to infinity, RIP menggunakan 3 metode yaitu :
23
1.
Split horizon with poison reverse
2.
Triggered Update
3.
Menentukan maksimum distribusi
Sedangkan Kiruthika & Umarani (2010) menambahkan satu metode lagi yang disebut Hold Time. Metode split horizon, digunakan untuk mencegah router mengirimkan kembali informasi ke router lain tempat informasi tersebut berasal. Ilustrasinya dapat dilihat pada gambar 2.17.
Gambar 2.17 Ilustrasi split horizon
Pada gambar 2.17 terdapat 4 node router yaitu A, B, C dan D. B memiliki nilai metric 1 baik terhadap A maupun C. Oleh sebab itu, B akan mengirimkan informasi “metric 2 menuju A melewati B” kepada C, C yang mendapatkan informasi ini akan memasukan informasi kedalam tabel routing-nya dan mengirimkan informasi tersebut kepada seluruh tetangga kecuali B, karena tidak mungkin B melewati C untuk menuju ke A.
Gambar 2.18 Susunan router membentuk loop
24
Namun jika susunan router-nya membentuk loop seperti pada gambar 2.18 split horizon tidak dapat mencegah informasi kembali ke router pengirim, B mengirimkan informasi “metric 2 menuju A melewati B” kepada C, C mengirimkan kepada D, D akan meneruskan kembali ke B. Split horizon with poison reverse merupakan salah satu varian dari split horizon, dimana ketika salah satu router mendeteksi adanya rute yang terputus, maka router tersebut akan meracuni informasi metric dengan 16 dan melanggar aturan dari split horizon dengan mengirimkan kembali informasi tersebut ke router tempat informasi itu berasal. Hal ini dilakukan untuk menjamin setiap router dalam jaringan mengetahui adanya rute yang putus. Triggered Update adalah metode yang ditambahkan kedalam protokol RIP dengan cara kerja, jika terdapat salah satu informasi routing yang menunjukan nilai 16 (unreachable) akan memicu router mengirimkan informasi tersebut dengan cepat untuk memperingati
router
tetangganya,
dengan
harapan
router
tetangga
sudah
memperbaharui informasi yang terbaru sebelum mengirimkan informasi routing table secara periodik. Dengan metode diatas, sudah dapat mencegah count-to-infinity jika dan hanya jika, informasi yang dipicu oleh triggered update terlebih dahulu sampai ke tetangga lain, sebelum informasi periodik tetangga dikirimkan, namun didalam jaringan yang sebenarnya, hal tersebut tidak bisa dijamin mengingat banyaknya halangan yang harus dilalui oleh informasi yang dipicu triggered update seperti rute yang padat, delay , dll. Kelemahan dari triggered update inilah yang akan ditutupi oleh hold time. Hold time bekerja dengan cara sebagai berikut jika router mendapatkan informasi adanya rute yang terputus (unreachable) yang dipicu oleh triggered udpate, akan menyalakan timer dan tidak akan meng-update informasi rute yang koneksinya dinyatakan putus hingga jeda waktu tertentu (pada RIP yaitu 180 detik) dan memperbaiki seluruh informasi koneksi yang putus pada routing table. Gabungan metode diatas efektif untuk mencegah routing loop dan count- toinfinity, walaupun efek sampingnya memperbesar delay yang terjadi hingga terjadi routing convergence.
25
2.4.
Metode Destination Sequence Distance Vector (DSDV) Menurut Perkins & Bhagwat (1994), metode DSDV dapat digunakan untuk
menghitung rute yang bebas loop pada protokol routing distance vector. Cara metode DSDV bekerja adalah dengan mengirimkan informasi nomor sequence secara periodik ke node tetangga. Setiap tetangga yang mendapatkan informasi menuju node lainnya harus membandingkan nomor sequence yang memiliki nilai terbesar, dengan asumsi semakin besar nomor sequence, semakin baru informasi tersebut dan tidak menciptakan loop. Lebih jelasnya dapat dilihat pada gambar 2.19.
Gambar 2.19 Susunan node dimana node A berpindah posisi
Asumsikan keadaan awal dimana node A bertetangga dengan B dan keseluruh node dalam keadaan convergence. Maka dapat dilihat informasi pada salah satu node misalnya C pada tabel 2.6.
26
Tabel 2.6 Informasi tabel informasi pada node C destination
via
metric
seq. number
install time
C
C
0
C-100
T-001
A
A
1
A-124
T-001
B
B
1
B-64
T-001
D
D
1
D-10
T-001
E
D
2
E-90
T-001
F
D
2
F-36
T-001
Pada tabel informasi 2.6 dapat dilihat A mengirimkan nomor sequence A-124. Karena A terhubung dengan C, maka setiap A memperbaharui nomor sequence C akan langsung mendapatkan informasi terbaru tersebut, tidak mungkin ada node lain yang memiliki nomor sequence yang lebih besar dari yang dikirim A. Beberapa saat kemudian node A berpindah dan dihubungkan dengan E dan F. Karena terjadi perubahan pada topologi jaringan, node A akan mengirimkan informasi nomor sequence baru yang lebih besar dari sebelumnya kepada tetangga barunya yaitu node E dan F. Node E dan F pada gilirannya akan meneruskan informasi ini ke node D dan dari D ke C. Perlu diketahui pada saat node A mengirimkan ke node tetangganya (dalam hal ini E dan F) dengan nomor sequence yang lebih besar. Setiap node akan memperbaharui informasi dalam tabel masing-masing jika memenuhi 2 syarat berikut : 1.
Nomor sequence yang diterima > nomor sequence pada tabel.
2.
Nomor sequence yang diterima = nomor sequence pada tabel dan metric yang diterima < metric pada tabel.
Tentu saja E dan F akan segera memperbaharui informasi node A yang terbaru dan menghapus informasi yang sebelumnya didapat dari node D. Ketika informasi ini telah diteruskan hingga node C, C akan segera memperbaharui tabel informasinya, ilustrasinya dapat dilihat pada tabel 2.7 :
27
Tabel 2.7 Informasi tabel informasi pada node C (update) destination
via
metric
seq. number
install time
C
C
0
C-102
T-020
A
D
3
A-126
T-018
B
B
1
B-66
T-016
D
D
1
D-12
T-018
E
D
2
E-92
T-016
F
D
2
F-38
T-020
Pada tabel 2.7 informasi nomor sequence terbarulah yang akan dijadikan acuan dalam mengirimkan informasi. Masalah berikutnya apabila node A bukan berpindah topologinya terhadap node lain, namun “terputus” dengan node lain maka informasi ini harus segera disampaikan keseluruh jaringan.
Gambar 2.20 Node A terputus
Pada gambar 2.20 terlihat node A terputus dengan node C, dalam hal ini satusatunya node yang mengetahui hanya C karena terhubung langsung dengan A, disinilah fungsi install time pada tabel C, yaitu mencatat waktu setiap informasi yang diperbaharui pada tabel. Setiap node secara periodik akan mengirimkan informasi sendiri ke node tetangganya, hal ini bisa dilakukan dengan mengirimkan paket “hello” yang berisi informasi berupa destination, via, dan metric node bersangkutan, bukan seluruh isi tabel untuk mencegah lalu lintas jaringan yang jadi padat secara tiba-tiba jika
28
setiap node mengirimkan paket “hello” pada saat yang hampir bersamaan. Setiap informasi dalam tabel memiliki waktu kadaluarsa misalnya 3 kali lama waktu ketika informasi terakhir dimasukan ke tabel dan dicatat waktunya di install time. Ketika informasi kadaluarsa, dianggap node A terputus dan node C akan menambahkan nomor sequence A dengan 1 dan merubah metric menjadi ∞ atau bisa juga dengan -1 dan mengirimkan informasi ini ke node lainnya. Karena node A tidak terhubung dengan node lain selain C, maka tidak ada kemungkinan node lain selain C yang memiliki nomor sequence yang lebih besar, dengan begitu setiap node pada jaringan akan mengetahui rute ke node A telah putus.
2.5.
Penelitian Terkait Adiwazsha (2003) menjelaskan bahwa untuk menangani masalah count-to-
infinity pada routing jaringan yang menerapkan algoritma Bellman-Ford dapat menggunakan metode seperti menentukan maksimum distribusi perhitungan, Split Horizon with poisoned reverse, update dengan pemicu(triggered update) dan menggunakan Penghitung Waktu. Kiruthika & Umarani (2010) menjelaskan bahwa untuk menangani masalah routing loop pada RIP dapat menggunakan beberapa metode seperti split horizon, poisoned reverse, triggered update dan hold timer. Kedua metode tersebut tidak dapat mencegah count-to-infinity untuk setiap kasus namun dapat mengobati-nya dengan konsekuensi waktu convergence yang lebih lama. Metode DSDV yang diusulkan oleh Perkins & Bhagwat (1994) sebaliknya dapat mencegah terjadinya count-to-infinity pada protokol routing berbasis distance vector. Dimana secara periodik DSDV akan mengirimkan nomor sequence dengan nilai yang bertambah (increment), sehingga informasi paling valid adalah informasi dengan nomor sequence terbesar. Salah satu implementasi DSDV adalah pada protokol AODV (Ad-Hoc on Demand Distance Vector) yang digunakan sebagai salah satu protokol routing untuk
29
perangkat mobile, dimana beberapa metode ditambahkan didalamnya agar perangkat yang mengimplementasikannya lebih hemat daya.
Untuk penelitian terkait dapat dilihat pada tabel 2.8 :
Tabel 2.8 Penelitian Terkait Peneliti dan
Metode
Keterangan
Tahun Adiwazsha
1.
(2003)
Menentukan
Menentukan
maksimum
distribusi
maksimum distribusi informasi hingga hop ke 15, sehingga penghitungan 2.
dapat memperbaiki count-to-infinity dan
Split Horizon and menggunakan bantuan split horizon with Poisoned Reverse
3.
poison reverse untuk mencegah count-to-
Update
dengan infinity untuk topologi tanpa loop dan
pemicu
mempercepat konvergensi dengan update dengan pemicu.
Kiruthika & 1.
Split Horizon and Ditambahkan hold timer yang berfungsi
Umarani
Poisoned Reverse
untuk
2.
Triggered Update
memperbaharui informasi routing dari
3.
Hold Timer
router lain selama periode waktu tertentu.
(2010)
Garcia-LunaAceves Murthy (1993)
menahan
router
untuk
DUAL-FSM (Diffusing Menentukan rute yang terbebas dari loop
& Update Algorithm on dengan kalkulasi DUAL untuk mencari Finate State Machine)
feasible distance (rute terpendek) dan feasible successor (rute bebas loop) yaitu rute cadangan yang digunakan jika rute feasible distance terputus.
30
Tabel 2.8 Penelitian Terkait (lanjutan) Perkins
& Destination
Bhagwat
Distance
(1994)
(DSDV)
Sequence Menggunakan Vector sequence periodik
informasi
nomor
dikirimkan
secara
yang
kedalam
menggunakan
jaringan
informasi
dan nomor
sequence terbaru untuk menjamin rute bebas loop. Perkins
& Destination
Sequence Menggunakan
Royer
Distance
(1999)
(DSDV) pada protokol loop dan menghindari paket hello routing AODV
informasi
nomor
Vector sequence untuk menentukan rute bebas
broadcast
untuk
mengoptimalkan
fungsi routing perangkat mobile seperti notebook atau smartphone.
2.6.
Perbedaan Dengan Penelitian Terdahulu Pada penelitian ini, penulis menambahkan metode DSDV pada metode yang
telah ada pada protokol RIP dalam mencegah count-to-infinity. Pada metode DSDV, protokol RIP akan mengirimkan nomor sequence secara periodik dan memastikan hanya nomor sequence terbaru yang akan menjadi acuan dalam penentuan rute yang bebas dari loop.
BAB 3 METODOLOGI PENELITIAN
3.1.
Pendahuluan Dalam penelitian ini, penulis menganalisa performa DSDV yang ditambahkan
kedalam protokol RIP untuk mendeteksi kemungkinan terjadinya count-to-infinity. Dengan begitu, protokol RIP dapat dimanfaatkan sebagai alternatif protokol routing dengan jumlah susunan node router yang lebih besar dari 15. Langkah-langkah yang penulis lakukan dalam menganalisa performa DSDV dapat dilihat pada gambar 3.1
Gambar 3.1 Diagram Penelitian
32
3.2.
Sampel Topologi Jaringan Pada penelitian ini, penulis menggunakan 2 jenis topologi dalam simulasi yaitu
topologi dimana tiap-tiap node tidak membentuk loop dan topologi yang membentuk loop. Penulis berusaha membuat topologi sesederhana mungkin dengan tujuan agar lebih mudah diteliti dan menjamin hasil akan sama dengan topologi lain yang lebih kompleks. Berikut ini 2 ilustrasi topologi yang akan penulis gunakan dalam penelitian:
Gambar 3.2 (a) topologi tanpa loop (b) topologi dengan loop Pada gambar 3.2 bagian “a” topologi yang dipakai terdiri 4 node yang terhubung dengan node A sebagai pusat, sedangkan bagian “b” susunan node yang sedemikian rupa sehingga terbentuk loop antara A, B dan C. Dengan demikian dapat memungkinkan terjadinya count-to-infinity , dan akan dilihat seberapa efektif DSDV dalam mencegah hal tersebut.
33
3.3.
Analisa Data
Untuk menganalisa data yang akan digunakan, penulis menggunakan langkah-langkah yang dapat dilihat pada gambar 3.3
Gambar 3.3 Proses Analisa Data
Pada gambar 3.3 sampel data dimasukan kedalam program berupa graph yang terdiri dari beberapa node yang saling terhubung. Masing-masing node akan mengirimkan serta memproses informasi secara simultan. Untuk melakukan beberapa
34
proses secara simultan, digunakan 3 timer yaitu hello timer, neighbour timer dan routing timer. Hello timer berfungsi untuk mengirimkan informasi nomor sequence yang bertambah secara periodik setiap 5 detik kepada seluruh node tetangganya.
Gambar 3.4 Paket hello dari node A
Pada gambar 3.4, node A mengirimkan paket hello kepada node tetangganya. Informasi paket hello berisi node beserta nomor sequence node pengirim. Setiap node yang telah mendapatkan paket hello akan memeriksa tabel neighbour, jika tabel neighbour belum menyimpan node yang mengirimkan paket hello, maka node tersebut akan dimasukan kedalam tabel neighbour. Timer Neighbour, berfungsi untuk mensinkronisasikan antara paket hello dan tabel neighbour, tabel neighbour inilah yang menjadi acuan bagi node untuk mengirimkan informasi “hello” dan informasi routing. Tabel neighbour berisi daftar node tetangga yang terhubung langsung. Timer routing, berfungsi untuk memproses seluruh informasi yang diterima dari node tetangga, dari informasi ini node akan menentukan jarak terdekat untuk mencapai node lainnya dan menentukan kapan informasi dalam tabel routing
35
kadaluarsa. Tabel routing berisi informasi yaitu : node tujuan, via, metric, dan nomor sequence. Timer routing secara simultan akan memproses seluruh informasi yang diterima dari node lain. Untuk membedakan informasi yang valid ataupun tidak setiap informasi yang diproses oleh timer routing akan dibandingkan nomor sequence-nya dengan nomor sequence pada tabel routing dengan metode DSDV. Berdasarkan metode DSDV, maka informasi nomor sequence yang dijadikan acuan haruslah lebih besar dari sebelumnya. Namun untuk membedakan nomor sequence yang berasal dari node sumber ataupun yang diubah paksa akibat node bersangkutan mendeteksi node tetangga yang putus, dibedakan dengan cara penggunaan nomor yang berbeda untuk increment-nya. Untuk informasi yang memang asli dari sumber, akan bertambah 2 tiap satuan waktu sedangkan untuk informasi yang diubah paksa akan bertambah 1 tiap satuan waktu. Setiap node memulai nomor sequence dari angka genap, sehingga tiap waktunya nomor sequence bertambah 2 (tetap genap), sedangkan untuk node yang putus bertambah 1 (ganjil). Dengan cara seperti ini, jika suatu saat node yang putus terhubung kembali, maka node dapat mengirimkan nomor sequence dengan increment 2 yang secara otomatis lebih besar dari informasi nomor sequence ganjil yang telah beredar dijaringan. Gambar 3.5 menunjukan ilustrasi nomor sequence pada DSDV.
Gambar 3.5 Nomor Sequence pada DSDV
Diketahui beberapa nilai sebagai berikut : 𝑗
1. 𝑣 𝑖𝑘: node i menuju ke node j via k
36
𝑗
2. 𝑠𝑖 : nomor sequence node j yang tersimpan oleh node i 𝑗
3. 𝑑𝑖 : jarak antara node i ke j Penulis hanya fokus pada node A, dimana untuk node lainnya akan memiliki proses yang sama. Pada gambar 3.5, seluruh node akan mengirimkan nomor sequence kepada seluruh tetangga, masing-masing akan memperbaharui tabelnya, tabel 3.1 menunjukan informasi tabel routing node A.
Tabel 3.1 Informasi routing pada node A interval pertama Destination A B C D
Metric 0 1 1 2
Node A Via A B C C
Sequence Number A-46 B-50 C-78 D-54
Pada tabel 3.1 node A mendapatkan informasi dari node B dan C langsung dari tetangga, sedangkan node D harus melalui C sehingga setiap node yang menuju node lain yang bukan tetangganya akan memiliki nilai 𝑑𝐴𝐷 > 1. Pada interval berikutnya node A akan mengirimkan nomor sequence kepada seluruh node tetangga dan bias saja pada saat bersamaan mendapatkan nomor sequence dari tetangga lainnya. Untuk lebih jelasnya dapat dilihat pada tabel 3.2. Tabel 3.2 Informasi routing pada node A interval kedua Destination A B C D
Metric 0 1 1 2
Node A Via A B C C
Sequence Number A-48 B-52 C-80 D-56
Sekarang diasumsikan salah satu node terputus misalnya antara node C dan D seperti tampak pada gambar 3.6.
37
Gambar 3.6 Koneksi node C dan D putus Node C akan merubah nilai 𝑑𝐶𝐷 = ∞ dan 𝑠𝐶𝐷 + 1 dan mengirimkan informasi ini keseluruh node tetangga sesegera mungkin (triggered update). Ilustrasinya dapat dilihat pada gambar 3.7
𝑑𝐶𝐷
=∞
𝑠𝐶𝐷 + 1
𝑑𝐶𝐷 = ∞ 𝑠𝐶𝐷 + 1
Gambar 3.7 Triggered Update Node C Dari ilustrasi 3.7 baik A maupun B memiliki nilai 𝑣 𝐷𝐴𝐶 dan 𝑣 𝐷𝐵𝐶 sehingga tidak mungkin 𝑠𝐴𝐷 > 𝑠𝐶𝐷 + 1 begitu juga dengan B. Oleh sebab itu, A dan B akan memperbaharui nomor sequence kedalam tabel, sehingga hasilnya dapat dilihat pada tabel 3.3
38
Tabel 3.3 Informasi routing pada node A ketika C dan D putus Destination A B C D
Metric 0 1 1
∞
Node A Via A B C C
Sequence Number A-48 B-52 C-80 D-57
Karena metric A menuju D adalah ∞ A akan mengaktifkan invalid timer dan flush timer. Dimana selama invalid timer aktif A akan secara aktif mengirimkan informasi ini kepada seluruh tetangganya termasuk C, setelah waktu flush timer habis maka secara otomatis informasi D akan dihapus dari tabel. Namun jika flush timer belum habis dan terdapat informasi menuju D dengan 𝑠𝐴𝐷 yang lebih besar dari yang telah disimpan ditabel maka A akan menyimpan informasi ini dan mengirimkan informasi tersebut ke tetangga lain. Tentu saja hal tersebut dapat terjadi apabila koneksi C dan D yang telah terputus sebelumnya terhubung kembali, atau terdapat koneksi lain yang menghubungkan D melewati node lain selain C, ilustrasinya dapat dilihat pada gambar 3.6
Gambar 3.8 Node D terhubung dengan B
Skenarionya sedikit berbeda jika terdapat node yang terputus ternyata berada didalam loop , contoh :
39
Gambar 3.9 Koneksi terputus antara B dan C Pada gambar 3.9, node C akan memperbaharui nilai tabel menjadi 𝑑𝐶𝐵 = ∞ dan 𝑠𝐶𝐵 + 1 , kemudian terdapat 2 kemungkinan yang dapat terjadi yaitu :
Gambar 3.10 Kemungkinan yang terjadi jika koneksi B dan C terputus
Pada contoh (a) informasi C sampai terlebih dahulu ke A sebelum B (waktu periodik B belum aktif) karena 𝑠𝐶𝐵 + 1 > 𝑠𝐴𝐵 maka A akan memperbaharui informasi yang salah dari node C, dan mengirimkan informasi ini ke B, B tentu saja tidak percaya. Kondisi ini tidak berlangsung lama, sebab ketika waktu periodik B aktif, B akan 𝑗
mengirimkan nilai 𝑠𝐵 + 2 keseluruh tetangga termasuk A, karena 𝑠𝐴𝐵 + 2 lebih besar dari nomor sequence pada tabel, A akan memperbaharui informasi tabel dan mengirimkannya kepada C, dan karena 𝑠𝐴𝐵 + 2 > 𝑠𝐶𝐵 + 1 maka C akan memperharui tabel informasinya.
40
Pada contoh (b) sebelum C sempat mengirimkan informasi nomor sequence, 𝑗
B terlebih dahulu mengirimkan informasi 𝑠𝐵 + 2 kepada A yang diteruskan ke C, dan karena 𝑠𝐴𝐵 + 2 > 𝑠𝐶𝐵 + 1 C akan segera memperbaharui informasi tabelnya. 3.3.1.
Komponen DSDV : Paket “hello” Dalam RIP, untuk mengasumsikan suatu node terputus adalah ketika dalam
interval 180 detik node bersangkutan tidak menerima update informasi dari tetangganya. Tentu saja hal ini menyebabkan lamanya suatu jaringan untuk convergence, jika ada salah satu saja node yang putus. Selain itu setiap kali update, node bersangkutan akan mengirimkan seluruh informasi tabel kepada tetangganya, tentu saja jika saat yang hampir bersamaan masing-masing node saling meng-update maka akan meningkatkan bandwidth yang pada akhirnya kembali memperlambat terjadinya convergence. DSDV sendiri menggunakan paket hello pada node. Menurut Arifin & Hadi (2011) paket hello hanya berisi informasi sequence dari router pengirim saja, dan dikirimkan tiap 5 detik. Diasumsikan terdapat koneksi A-B-C , maka A pada 5 detik pertama mengirimkan “A-40”, 5 detik kedua “A-42”, dan seterusnya dengan penambahan nilai 2 tiap interval. Jika B yang terhubung dengan A tidak menerima informasi hello dari A dalam jeda waktu 15 detik (informasi dari A gagal mencapai B berturut-turut sebanyak 3 kali) maka B akan mengasumsikan A putus dan seperti contoh sebelumnya akan memperbaharui informasi A dengan metric ∞ dan nomor sequence “ganjil” kepada tetangganya, hingga node A berhasil terhubung kembali dengan B.
3.3.2.
Triggered Update Dengan memanfaatkan paket hello, tiap node tidak perlu mengirimkan seluruh
informasi tabelnya tiap interval waktu tertentu. Router hanya mengirimkan informasi tabel kepada tetangga jika terpicu dengan adanya perubahan metric, dan hanya informasi yang terjadi perubahan saja yang dikirim bukan keseluruhan isi tabel.
41
Gambar 3.11 Triggered Update Pada gambar 3.11 diasumsikan jaringan setelah convergence ternyata koneksi D dan E putus. Maka D akan merubah nomor sequence menjadi 𝑠𝐷𝐸 + 1 dan 𝑑𝐷𝐸 = ∞. Router D akan sesegera mungkin mengirimkan informasi ini (tanpa menunggu waktu periodik) kepada seluruh tetangga yang terhubung dengannya, yang pada gilirannya akan memicu A memperbaharui informasinya dan jaringan kembali convergence.
3.4.
Mendeteksi terjadinya count-to-infinity
Proses terakhir adalah untuk mendeteksi jika terjadi count-to-infinity dengan memeriksa nilai metric untuk masing-masing sampel. Menurut Purnomo dan Kurniawan (2010) Nilai metric terbesar untuk sampel dengan loop yaitu 𝑚𝑚𝑎𝑥 = 𝑑𝑖𝑣(𝑖, 2) + 2 dimana i merupakan banyaknya node yang membentuk loop dan “div” merupakan fungsi integer divide. Ilustrasinya dapat dilihat pada gambar 3.12
42
Gambar 3.12 Empat node membentuk loop
Pada gambar 3.12 terdapat 4 buah node membentuk loop (A, B, C dan D) dan dan tiap node tersebut terhubung parallel dengan node lain (E, F, G dan H). Maka 𝑚𝑚𝑎𝑥 dapat dihitung dengan 𝑚𝑚𝑎𝑥 = 𝑑𝑖𝑣(4,2) + 2 yaitu 4. Contohnya dapat dilihat pada gambar 3.13
Gambar 3.13 Nilai metric maksimum untuk 4 node yang membentuk loop
Pada gambar 3.13 terdapat total 2 koneksi dengan nilai metric maksimum yaitu H-D-A-B-F dan G-C-B-A-E. Jadi nilai metric maksimum ini dapat dijadikan acuan dalam menentukan terjadinya count-to-infinity pada sampel data.
43
3.5.
Instrumen Penelitian
Adapun alat dan bahan penelitian yang digunakan penulis untuk melakukan penelitian ini adalah sebagai berikut : 1.
Perangkat keras Laptop DELL a. Processor Intel(R) Core(TM) i3 CPU M330 @2.13GHz b. RAM 2 GB DDR3 c. Harddisk 320 GB d. Monitor dengan resolusi 1366 x 768 pixel (32 bit true color) e. Mouse dan keyboad
2.
Perangkat lunak a. Sistem Operasi Windows 7 b. java development kit (JDK) versi 8 c. netbeans
BAB 4 HASIL DAN PEMBAHASAN
Pada bab ini penulis akan menampilkan hasil dan pembahasan cara mengatasi routing loop pada RIP dengan metode DSDV yang disajikan dalam bentuk tampilan program. Hasil yang ditunjukan dibawah memiliki beberapa konfigurasi antara lain : 1. Hello Timer mengirimkan paket hello setiap 5 detik. 2. Invalid Timer mengatur waktu kadaluarsa sebagai 15 detik, jika informasi routing yang disimpan tidak diperbaharui dalam 15 detik, maka informasi tersebut akan ditandai sebagai unreachable. 3. Flush Timer mengatur waktu dimana informasi routing yang unreachable akan di broadcast keseluruh tetangga, diatur dengan waktu 10 detik dimulai dari informasi unreachable. Setelah 10 detik, informasi akan dihapus dari tabel routing. 4. Metode split horizon with poison reverse tetap digunakan.
4.1.
Hasil
Hal pertama yang akan dilakukan adalah menentukan susunan antar router, penulis mensimulasikan 3 hingga 100 buah router yang disusun sedemikian rupa sehingga membentuk loop. Berikut tampilannya :
45
Gambar 4.1 Tampilan Router Dengan Loop
Pada gambar 4.1 router A, B, dan C membentuk loop, masing-masing router memiliki jarak 1 metric terhadap router tetangganya. Dalam RIP hal ini dapat menyebabkan routing loop jika saja koneksi antara C dan D putus, dan C mengirimkan informasi ini lebih lambat dibandingkan informasi yang datang dari A atau B yang celakanya memiliki informasi menuju D melewati C itu sendiri, maka C akan percaya bahwa A atau B memiliki rute menuju D. Namun dengan ditambahkannya metode DSDV maka hal seperti diatas dapat dicegah, karena selain destination dan metric terdapat 1 variabel lagi yaitu nomor sequence router tujuan yang menjadi patokan untuk menentukan informasi adalah valid atau tidak. Dibawah ini akan diberikan ilustrasi yang memperlihatkan cara kerja DSDV , diasumsikan susunan router seperti pada gambar 4.1 dan masing-masing router telah convergence. Namun dalam waktu t tertentu, ternyata koneksi antara C dan D putus, sehingga metode DSDV akan membantu mencegah terjadinya loop.
46
t=1 Table Router A
Table Router B
dest
met
via
seq
dest
met
via
seq
A
0
A
A-230
B
0
B
B-64
B
1
B
B-64
C
1
C
C-256
C
1
C
C-256
D
2
C
D-144
D
2
C
D-144
A
1
A
A-230
Table Router C
Table Router D
dest
met
via
seq
dest
met
via
seq
C
0
C
C-256
D
0
D
D-144
D
1
D
D-144
A
2
C
A-230
A
1
A
A-230
B
2
C
B-64
B
1
B
B-64
C
1
C
C-256
Gambar 4.2 Kondisi Tabel Router saat convergence dengan t = 1
Pada gambar 4.2 terlihat jika masing-masing router memiliki rute ke router lainnya dengan nilai metric minimum.
t=2 Table Router A
Table Router B
dest
met
via
seq
dest
met
via
seq
A
0
A
A-230
B
0
B
B-64
B
1
B
B-64
C
1
C
C-256
C
1
C
C-256
D
2
C
D-144
D
2
C
D-144
A
1
A
A-230
Table Router C
Table Router D
dest
met
via
seq
dest
met
via
seq
C
0
C
C-256
D
0
D
D-146
D
-1
D
D-145
A
2
C
A-230
A
1
A
A-230
B
2
C
B-64
B
1
B
B-64
C
-1
C
C-257
Gambar 4.3 Kondisi Tabel Router pada t = 2
Pada gambar 4.3 koneksi antara C dan D terputus, baik C maupun D mengetahui hal ini dan segera memperbaharui informasi tabel (baris yang diberi latar)
47
dan melakukan proses poison route pada rute yang bermasalah dan bersiap-siap mengirimkan informasi ini kepada tetangganya. Pada saat yang bersamaan bisa saja router A ataupun B mengirimkan seluruh informasi tabelnya (secara periodik setiap t waktu tertentu) dan diterima oleh C sebelum C sempat mengirimkan informasi miliknya kepada A dan B. Dalam hal ini C akan melihat terlebih dahulu nomor sequence dari informasi menuju ke D yang dikirim oleh A dan B sebelumnya, yang ternyata memiliki nomor sequence yang lebih kecil jika dibandingkan dengan nomor sequence D yang dimiliki oleh C ( D-144 < D-145 ). Informasi yang dikirimkan oleh A dan B yang menuju ke D akan diabaikan oleh C, dan C tetap akan mengirimkan update informasi terbaru kepada A dan B namun tidak kepada D, karena kondisi terputus.
t=3 Table Router A
Table Router B
dest
met
via
seq
dest
met
via
seq
A
0
A
A-230
B
0
B
B-64
B
1
B
B-64
C
1
C
C-256
C
1
C
C-256
D
-1
C
D-145
D
-1
C
D-145
A
1
A
A-230
dest
met
via
seq
dest
met
via
seq
C
0
C
C-256
D
0
D
D-146
D
-1
D
D-145
A
2
C
A-230
A
1
A
A-230
B
2
C
B-64
B
1
B
B-64
C
-1
C
C-257
Table Router C
Table Router D
Gambar 4.4 Kondisi Tabel Router pada t = 3
Pada gambar 4.4 ketika t=3 A dan B mendapatkan informasi terbaru dari C, dimana nomor sequence D yang diterima dari C lebih besar. A dan B akan memperbaharui informasi tersebut. Ketika A dan B mendapati nilai metric yang diterima bernilai -1 atau unreachable maka A dan B akan mengaktifkan flush timer dimana informasi yang unreachable akan dihapus jika waktu kadaluarsa flush timer telah habis dan router kembali convergence.
48
Gambar 4.5 Asumsi Koneksi Antara B-E-D
Diasumsikan kembali, jika terdapat koneksi seperti pada gambar 4.5 , dan kondisi terakhir dari tabel routing adalah seperti gambar 4.4 ( informasi routing E dapat diabaikan ), maka ketika dalam waktu t yang berikutnya ( tergantung waktu konfigurasi pengiriman paket routing ) informasi routing yang berasal dari D akan sampai ke B lewat E. t=5 Table Router A
Table Router B
dest
met
via
seq
dest
met
via
A
0
A
A-230
B
0
B
B-64
B
1
B
B-64
C
1
C
C-256
C
1
C
C-256
D
2
E
D-146
D
-1
C
D-145
A
1
A
A-230
Table Router C
seq
Table Router D
dest
met
via
seq
dest
met
via
seq
C
0
C
C-256
D
0
D
D-146
D
-1
D
D-145
A
2
C
A-230
A
1
A
A-230
B
2
C
B-64
B
1
B
B-64
C
-1
C
C-257
Gambar 4.6 Informasi routing D sampai ke Router B
49
Pada gambar 4.6, diasumsikan pada t = 5 router B mendapatkan informasi routing dari D lewat E dan karena nomor sequence yang diterima lebih besar dari nomor sequence yang ada pada tabel routing ( D-146 > D-145 ) maka B memperbaharui informasi routing-nya dan memicu triggered update yang akan membuat B mengirimkan informasi baru tadi ke seluruh tetangga B. Dapat terlihat pada gambar 4.6 nilai metric yang sebelumnya -1 telah diperbaharui menjadi 2 dan nomor sequence yang sebelumnya D-145 telah diperbaharui menjadi D-146.
t=6 Table Router A
Table Router B
dest
met
via
seq
dest
met
via
seq
A
0
A
A-230
B
0
B
B-64
B
1
B
B-64
C
1
C
C-256
C
1
C
C-256
D
2
E
D-146
D
3
B
D-146
A
1
A
A-230
Table Router C
Table Router D
dest
met
via
seq
dest
met
via
seq
C
0
C
C-256
D
0
D
D-146
D
3
B
D-146
A
2
C
A-230
A
1
A
A-230
B
2
C
B-64
B
1
B
B-64
C
-1
C
C-257
Gambar 4.7 Informasi routing A dan B telah diperbaharui
Pada gambar 4.7, router A dan C mendapatkan informasi terbaru dari D melalui B, sehingga A dan C memperbaharui informasi routing-nya dan memicu triggered update ke masing-masing router tetangga. Terlihat bahwa nilai metric dan nomor sequence telah diperbaharui.
50
t = 10 Table Router A
Table Router B
dest
met
via
seq
dest
met
via
seq
A
0
A
A-232
B
0
B
B-66
B
1
B
B-66
C
1
C
C-258
C
1
C
C-258
D
2
E
D-146
D
3
B
D-146
A
1
A
A-232
dest
met
via
seq
dest
met
via
seq
C
0
C
C-258
D
0
D
D-146
D
3
B
D-146
A
3
E
A-232
A
1
A
A-232
B
2
C
B-66
B
1
B
B-66
C
3
E
C-258
Table Router C
Table Router D
Gambar 4.8 Router A, B, C dan D convergence
Pada gambar 4.8 pada saat t=10, router A dan C akan mengirimkan paket hello yang berisi informasi mereka sendiri ke seluruh tetangga dimana nomor sequence-nya bertambah 2 sehingga A sekarang memiliki nomor sequence A-232 dan C memiliki nomor sequence C-258. Informasi ini dikirimkan ke router B, yang kemudian akan mengirimkan informasi ke E dan pada akhirnya ke D. Karena nomor sequence-nya lebih baru daripada yang telah dimiliki oleh D sebelumnya, maka D akan memperbaharui informasi ini dan seluruh router kembali convergence. Untuk node membentuk loop dengan jumlah lebih dari 3, DSDV juga dapat mencegah terjadinya count-to-infinity. Untuk membuktikannya dapat dilihat pada gambar 4.9
51
Gambar 4.9 Susunan node dengan loop
Diasumsikan beberapa hal sebagai berikut : 1.
Rn : node ke-n yang membentuk loop dengan node lainnya
2.
Rn,1 : node yang memiliki koneksi hanya dengan node Rn (node parallel)
Masing-masing node akan mengirimkan nomor sequence s keseluruh node lainnya. Asumsikan pada saat t tertentu R1 dan Rn menyimpan nilai 𝑠11,1 dan 𝑠𝑛1,1dari node R1,1 , kemudian koneksi antara R1 dan R1,1 terputus. R1 akan menambahkan 𝑠11,1 +1 dan mengirimkan informasi ini keseluruh node lainnya termasuk Rn, sehingga nilai 𝑠11,1 < 𝑠𝑛1,1. Oleh sebab itu Rn akan memperbaharui informasi yang berasal dari R1, namun jika Rn belum menerima informasi 𝑠11,1 ternyata terlebih dahulu mengirimkan informasi 𝑠𝑛1,1 kepada R1, maka R1 akan mengacuhkan informasi tersebut dikarenakan informasi tersebut memiliki nilai yang lebih kecil daripada informasi yang dimiliki oleh R1. R1 akan memilih 𝑣 1,11𝑛 jika dan hanya jika
𝑠𝑛1,1 > 𝑠11,1namun karena ini telah
52
dibuktikan tidak mungkin terjadi, maka R1 tidak akan memperbaharui informasi menuju R1,1 melalui Rn. Jika asumsikan ditambahkan koneksi antara R2 dan R7 seperti tampak pada gambar 4.10
Gambar 4.10 Koneksi antara R2 dan R7
Maka R2 sekarang dapat menempuh R7 secara langsung dikarenakan jarak 𝑣27 7 < 𝑣27 3. Karena R1 terhubung langsung dengan R2 dan Rn terhubung dengan R7, maka rute yang membentuk loop antara R1 dan Rn menjadi R1-R2-R7-Rn. Untuk lebih lengkapnya dapat dilihat pada gambar 4.11
53
Gambar 4.11 Loop yang terbentuk dari node R1-R2-R7-Rn
Berdasarkan ujicoba pada beberapa sampel topologi menggunakan program simulasi, dimana ketika jaringan dalam keadaan convergence dan salah satu node parallel diputuskan, hasilnya dapat dilihat pada tabel 4.1:
Tabel 4.1 Hasil pengamatan dengan beberapa susunan node dengan DSDV Jumlah node dalam loop 3 4 5 6 7 8 10 20
Nilai metric maksimum (hop) 3 4 4 5 5 6 7 12
Convergence Ya Ya Ya Ya Ya Ya Ya Ya
54
Tabel 4.2 Hasil pengamatan dengan beberapa susunan node tanpa DSDV Jumlah node dalam loop 3 4 5 6 7 8 10 20
Nilai metric maksimum (hop) >3 >4 >4 >5 >5 >6 >7 > 12
Convergence Tidak Tidak Tidak Tidak Tidak Tidak Tidak Tidak
Pada tabel 4.1 penulis mencoba membuat beberapa topologi node yang membentuk loop untuk membuktikan keefektifan DSDV jika node yang membentuk loop banyak. Hasilnya untuk jumlah node yang membentuk loop mulai dari 3 node hingga 20 node dapat convergence. Nilai metric pada masing-masing topologi pada tabel merupakan nilai maksimum jarak terpendek yang ditempuh oleh node satu untuk menuju node lainnya. Pada tabel 4.2 tanpa DSDV, ketika jaringan dalam keadaan convergence dan node parallel diputuskan, maka node yang tadinya terhubung dengan node parallel akan mendapatkan informasi yang salah dari node lainnya dan meneruskan informasi yang salah kepada node lainnya dan terjadi count-to-infinity, sehingga nilai metric akan terus bertambah tanpa berhenti.
4.2.
Pembahasan
Metode DSDV yang ditambahkan pada RIP dapat mencegah terjadinya routing loop sehingga dapat digunakan untuk mencegah terjadinya count-to-infinity. Hal ini dikarenakan, dengan menggunakan sequence number yang dikirimkan oleh paket hello secara periodik dapat dijadikan informasi acuan terbaru, sehingga jika terdapat router dengan informasi yang lebih kuno dan tidak valid berada dijaringan, dapat diketahui dan diupayakan untuk diganti dengan informasi yang benar. RIP yang sebelumnya memiliki kelemahan utama dijumlah hop dimana untuk mengatasi jika terjadinya count-to-infinity diberikan nilai maksimum 15, sehingga
55
untuk hop 16 atau lebih dianggap sebagai unreachable. Hal ini tentunya membatasi penggunaan RIP itu sendiri untuk jaringan dengan skala menengah atau besar. Namun dengan DSDV hal seperti routing loop dan count-to-infinity dapat dicegah, dan batas maksimum hop pada RIP dapat ditiadakan. Selain masalah count-to-infinity, RIP juga memiliki masalah dalam hal lamanya convergence. Hal ini disebabkan karena RIP menggunakan update timer yang memiliki nilai default 30 detik , dimana setiap router akan berusaha mengirimkan seluruh informasi tabel routing-nya keseluruh tetangga. Sedangkan untuk menentukan koneksi router sedang putus atau tidak menggunakan invalid timer dengan nilai default 120 detik, dimana jika router gagal mendapatkan informasi dari router lain selama 120 detik ( 4 kali update timer ) barulah dianggap putus. Selain itu terdapat hold down timer yang secara default 240 detik yang artinya selama itu router bersangkutan tidak akan percaya dengan informasi yang memiliki tujuan yang telah ditandai dengan unreachable dari router tetangga manapun walaupun bisa saja informasinya valid, dan sambil mengirimkan informasi unreachable tersebut keseluruh tetangganya. Dengan kata lain jika router A menandai informasi menuju B sebagai unreachable, maka untuk kembali convergence dibutuhkan waktu setidaknya 240 detik yang ditambahkan dengan waktu yang diperlukan oleh router B untuk mengirimkan informasinya kepada A melewati router lainnya. Dengan DSDV router tahu persis informasi yang dapat dipercaya adalah informasi yang memiliki nilai sequence terbesar, sehingga tidak lagi dibutuhkan hold down timer untuk menahan segala informasi yang datang dari router lain. Sedangkan untuk update timer yang digunakan dalam RIP dapat dirubah sedikit dengan menggunakan hello timer , dimana perbedaannya adalah jika pada RIP seluruh informasi pada tabel routing dikirimkan secara periodik yang dapat menyebabkan jaringan menjadi padat, maka dengan hello timer hanya perlu mengirimkan informasi dari router pengirim saja. Misalnya router A hanya perlu mengirimkan informasi dengan format : destination, metric, via, dan sequence number contoh | A | 0 | A | A-12 | kepada tetangga yang terhubung. Dikarenakan informasi yang harus diperbaharui
56
secara periodic lebih kecil dalam hal ukuran, maka dapat dikurangi periodiknya misalnya per 5 detik. Dengan itu dapat diatur invalid timer dengan waktu sebesar 3 kali hello timer atau 15 detik jika diasumsikan router bersangkutan gagal mengirimkan informasi periodiknya 3 kali berturut-turut. Pada kasus ini, jika dibandingkan dengan RIP yang membutuhkan waktu 240 detik lebih untuk bisa convergence, dengan tambahan metode DSDV dan sedikit modifikasi menggunakan hello timer dapat meningkatkan kecepatan convergence menjadi 15 detik ditambah beberapa detik yang dibutuhkan router lain untuk mengirimkan informasi terbarunya. Selain kelebihan, metode DSDV juga memiliki beberapa kelemahan yang disebabkan oleh nomor sequence itu sendiri, dikarenakan nomor sequence dijadikan sebagai acuan untuk menentukan informasi valid atau tidak, maka router harus sesering mungkin mengirimkan informasi mengenai nomor sequence terbaru kepada router tetangga. Hal ini membuat lalu lintas lebih sibuk jika dibandingkan dengan metode RIP tanpa DSDV yang hanya mengirimkan informasi tiap 30 detik. Hal ini menyebabkan metode DSDV lebih cocok diimplementasikan untuk jaringan dengan koneksi cepat. Selain itu metode DSDV lebih sering merubah-rubah nilai informasi tabel routing-nya karena setiap router yang mendapatkan nomor sequence yang terbaru akan langsung merubah informasi yang telah ada dan langsung mengirimkan informasi tersebut kepada tetangga lainnya, walaupun masing-masing router dijaringan tidak ada perubahan sama sekali. Hal ini membuat router yang akan menjalan RIP dan metode DSDV lebih mengkonsumsi daya listrik jika dibandingkan RIP tanpa DSDV.
BAB 5 KESIMPULAN DAN SARAN
5.1.
Kesimpulan
Berdasarkan hasil penelitian ini, maka penulis dapat menarik kesimpulan sebagai berikut : 1.
Metode DSDV efektif dalam mencegah terjadinya count-to-infinity pada RIP.
2.
Metode DSDV pada RIP dapat mengatasi masalah jumlah hop maksimum 15 dalam jaringan, sehingga dapat digunakan untuk jaringan dengan skala yang lebih luas.
5.2.
Saran
Sedangkan saran yang diberikan penulis kepada peneliti yang ingin meneruskan penelitian penulis sebagai berikut : 1.
Penelitian berikutnya dapat melakukan penelitian tentang waktu terbaik yang harus dikonfigurasi pada masing-masing timer RIP agar dapat bekerja dengan lalu lintas yang lebih efisien tanpa mengurangi kualitas kecepatan convergence.
2.
Peneliti berikutnya dapat meneliti performa metode DSDV jika jumlah router yang terhubung sangat banyak.
xvi
DAFTAR PUSTAKA
Aceves J.J.G.L & Murthy S. 1997. A Path-Finding Algorithm for Loop-Free Routing. IEEE/ACM Trans. Networking5:148-160 Adiwazha B. 2003. Penanganan Masalah Count-To-Infinity Pada Routing Jaringan Yang Menerapkan Algoritma Bellman-Ford. Jurnal Ilmu Komputer dan Teknologi Informasi3(2): 21-35 Arifin, M. & Hadi Z. M. 2011. Analisis Performansi Routing AODV Pada Jaringan VANet. Jurnal Teknik Jaringan Komputer4(1):65-75 Forouzan, B. A. & Vegan, S. C. 2007. Data Communications and Networking 4th ed. McGrawHill: NewYork. Garcia-Lunes-Aceves, JJ. 1993. Loop-Free Routing Using Diffusing Computations. IEEE/ACM Transactions on Networking1(1) : 130-141 Hill, B. 2002. Cisco – The Complete Reference. McGrawHill: Berkeley, CA. Kiruthika, R. & Umarani, R. 2010. Pencegahan routing loop pada RIP dengan metode hold down timer dan menentukan maksimal hop. Jurnal Informatika3: 1-5 Lammle, T. 2000. CCNA Cisco® Certified Network Associate Study Guide 2nd Ed. Sybex: Alameda, CA. McQuerry S. 2008, Interconnecting Cisco Network Devices, Part 2. Cisco Press: Indiana Polis. Pei, D. , Massey, D. & Zhang L. 2003. Detection of invalid routing announcements in RIP protocol. IEEE3:1450-1455. Perkins, C. E. & Bhagwat, P. 1994. Highly dynamic Destination-Sequenced Distance Vector routing (DSDV) for mobile computers. ACM SIGCOMM Computer Communication24(4): 234-244. Perkins, C.E. & Royer, E. M. 1997. Ad-hoc On-Demand Distance Vector Routing. ACM SIGCOMM Computer Communication 27(3):90-100.
xvii
Purnomo A. , Kurniawan H. 2010. Implementasi Protokol Routing Destination Sequence Distance Vector (DSDV) Pada Jaringan Wireless NS-2 Dengan NAM. Jurnal Teknologi Informasi4(1) : 1-5 Sopandi, D. 2008. Instalasi dan konfirugrasi jaringan komputer. Informatika: Bandung Tanenbaum, A. S. & Wetherall, D. J. 2011. Computer Networks 5th Edition. Pearson Education International: Boston, CA.