Rabu, 26 November 2008

modul 4 dan 5

OPEN SHORTEST PATH FIRST

1. Pendahuluan
OSPF merupakan interior routing protocol yang kepanjangan dari Open Shortest Path First. OSPF di desain olrh IETF ( Internet Engineering Task Force ) yang pada mulanya dikembangkan dari algoritma SPF ( shortest path first ). Hampir tidak berbeda dengan IGRP ( Interior Gateway Routing Protocol ) pada tahun 80-an. Pada awalnya RIP adalah routing protokol yang umum dipakai, namun ternyata untuk AS yang besar, RIP sudah tidak memadai lagi.

OSPF diturunkan dari beberapa periset seperti Bolt, Beranek, Newmans. Protokol ini bersifat open yang berarti dapat diadopsi oleh siapa pun. OSPF dipublikasikan pada RFC nomor 1247.

Karakteristik Open Shortest Path First (OSPF):
¨ Menggunakan Algoritma link-state
¨ Membutuhkan waktu CPU dan memori yang besar
¨ Tidak menyebabkan routing loop
¨ Dapat membentuk heirarki routing menggunakan konsep area
¨ Cepat mengetahui perubahan pada jaringan
¨ Dapat menggunakan beberapa metrik

2. Cara Kerja OSPF
OSPF bekerja dengan link-state protocol yang memungkinkan untuk membentuk tabel routing secara hirarki. Sebelum berlanjut ke dalamnya, perlu dijelaskan sedikit istilah-istilah umum dalam OSPF, yaitu :


· Area
Area yaitu letak dimana berada sebuah kumpulan network, router dan host biasa. Area di sini bukan berarti area fisik.

· Backbone
Backbone adalah area yang khusus dimana area-area saling terhubungkan. Seluruh area yang ada, harus terhubung ke backbone.
· Stub Area
Adalah area dimana hanya terdapat satu buah gateway / router, tidak ada alternatif lainnya.

OSPF bekerja dengan membentuk sebuah peta network yang dipelajari berdasarkan informasi dari router-router yang berada dalam neighbour. Peta tersebut akan berpusat pada local host. Dari localhost host tersebut akan ada cost untuk menuju network lain yang ditentukan dari hasil perhitungan.
Untuk memudahkan penggambarannya, mari kita bangun sebuah network imaginer demikian :

Keterangan
Router 1 terhubung ke subnet 10 dan 11
Router 2 terhubung ke subnet 11 dan 12
Router 3 terhubung ke subnet 12 dan 15
Router 4 terhubung ke subnet 13 dan 15
Router 5 terhubung ke subnet 14 dan 15
Pertama-tama network diatas akan dibagi menjadi beberapa area, yaitu :
Area 1 : 10 ( stub area karena hanya mempunyai 1 router )
Area 2 : 11 dan 12
Area 3 : 13 , 14 dan 15
Dan masing-masing router mempunyai neighbour :
Router 1 mempunyai neighbour router 2
Router 2 mempunyai neighbour router 1 dan 3
Router 3 mempunyai neighbour router 2, 4 dan 5
Router 4 mempunyai neighbour router 3 dan 5
Router 5 mempunyai neighbour router 3 dan 4
Router 1 menggambarkan peta network seperti demikian :


Sebagai localhost, router 1 bernilai 0. Lalu router 2 yang behubungan secara direct dengan router 1 diberikan cost 10 ( 0 + 10 ). Lalu dari router 2 berhubungan dengan router 3 yang bernilai 20 ( 0 + 10 + 10 ) dan pada akhirnya router 4 dan 5 bernilai 30.
Masing-masing link bernilai 10, yang berarti apabila link tersebut dilewati, maka harganya harus ditambahkan 10. Seperti pada contoh router 2 yang bernilai 20 merupakan hasil pertambahan 0 + 10 + 10.
Lalu pada bagian paling bawah dari gambar, ada router 4 dan 5 yang bernilai 40. Hal ini disebabkan router 4 bisa berhubungan lansung dengan 5 tanpa melalui router 3 dan itu akan menambah cost sebanyak 10 lagi. Demikian juga yang terjadi pada router 5 yang bisa dicapai melalui router 4, tanpa router 3. Namun pada akhirnya, cost terrendahlah yang dipilih dalam tabel routing. Yaitu yang bernilai 30 sedangkan 40 dibuang.



Membentuk Routing Table

Setiap host pada TCP/IP Network harus memiliki tabel routing agar dapat menentukan jalan untuk mencapai tujuan dari paket-paket yang akan dikirimkannya. Tabel routing secara otomatis akan terbentuk pada saat interface dikonfigurasi. Tabel routing pada tahap ini adalah tabel routing minimal. Perhatikan gambar 3-4. Untuk melihat tabel routing pada host dengan IP Address 167.205.20.3 ( Token Ring ) dalam bentuk numerik, dipakai perintah berikut :

$ netstat -nrRouting tablesDestination Gateway Flags Refcnt Use Interface127.0.0.1 127.0.0.1 UH 1 105 lo0167.205.20.0 167.205.20.3 U 35 3075 ed0

Bagian pertama dari tabel routing merupakan rute loopback ke localhost. Setiap host TCP/IP akan memiliki rute ini. Bagian kedua merupakan rute ke network 167.205.20.0 melalui interface ed0. Network ini adalah network lokal. Address 167.205.20.3 bukanlah remote gateway, melainkan address yang telah di-assign untuuk interface ed0. Perhatikan bahwa nomor network 167.205.20.0 muncul akibat parameter mask pada waktu konfigurasi interface dengan subnetmask 255.255.255.0. Tanpa adanya subnetmask, network address yang muncul adalah 167.205.0.0 ( Standar kelas B ).
Option pada kolom Flag:
Flag U ( up ) menandakan interface telah siap dipakai.
Flag H ( host ) menandakan hanya satu host yang dapat dicapai melalui rute ini. Berarti, rute ini hanya menuju ke host tertentu ( bedakan dengan rute ke suatu network yang mungkin memiliki puluhan / ratusan host ). Kebanyakan rute yang ada pada routing table menuju ke network, bukan ke host tertentu. Hal ini untuk memperkecil ukuran routing table. Suatu instansi mungkin hanya memiliki satu network, tetapi network tersebut mungkin terdiri dari ratusan host. Mudah dimengerti bahwa jika seluruh IP Address dari host yang ada pada network tujuan dimasukkan dalam routing table, ukurannya akan membengkak dengan cepat. Cukup nomor networknya saja yang dicantumkan karena telah mewakili nomor seluruh host pada network tersebut.
Flag b à alamat broadcast
Flag C à rute sedang digunakan
Flag c à sama seperti flag sebelumnya, tapi flag ini menunjuk ke protokol yang spesifik
Flag G à rute memerlukan gatway lagi
Flag S à ditambah secara manual

Untuk akses ke network yang lain, network token ring di atas hanya memiliki satu gateway, yakni yang ber-IP Address 167.205.20.11. Untuk itu, seluruh host yang ada pada network token ring ( kecuali gateway ) dapat menambahkan default routing sbb :
# route -n add default 167.205.20.11 1add net default: gateway 167.205.20.11

Dengan perintah ini, rute ke seluruh network ( selain network lokal ) akan ditempuh melalui gateway 1 (167.205.20.11). Option -n tidak harus digunakan. Option tersebut hanya untuk menampilkan address secara numerik untuk menghindari permintaan ke Name Server yang belum tentu bekerja. Metric 1 dipakai sebagai metric terkecil untuk rute melalui gateway ekstenal, untuk memberikan prioritas tertinggi pada rute ini. Jika kita periksa kembali routing table setelah memasukkan default routing ini, akan muncul sbb :

$ netstat -nrRouting tablesDestination Gateway Flags Refcnt Use Interface127.0.0.1 127.0.0.1 UH 1 105 lo0default 167.205.20.11 UG 0 0 ed0 167.205.20.0 167.205.20.3 U 35 3075 ed0

Pada routing table di atas terlihat adanya entri default routing. Flag G menandakan rute default ini melalui eksternal gateway ( host 167.205.20.11 ).
Pada network Ethernet ( 167.205.22.0 ) ada 3 buah gateway. Untuk host-host pada network ini, routing table dapat dibentuk secara statis. Misalkan kita berada pada host 167.205.22.3. Network 167.205.20.0 dapat dicapai melalui gateway 1 (167.205.22.5), network 44.132.1.0 melalui gateway 2 (167.205.22.18) dan akses ke network yang lebih besar, misalkan ke Internet Provider, dicapai melalui gateway 3 (167.205.22.20). Untuk itu, setelah routing minimal dapat ditambahkan perintah routing sbb :
# route -n add 167.205.20.0 167.205.22.5 1add net 167.205.20.0: gateway 167.205.22.5
# route -n add 44.132.1.0 167.205.22.18 1add net 44.132.1.0: gateway 167.205.22.18
# route -n add default 167.205.22.20 1add net default: gateway 167.205.22.20

Routing table akan bertambah menjadi :
$ netstat -nrRouting tablesDestination Gateway Flags Refcnt Use Interface127.0.0.1 127.0.0.1 UH 1 105 lo0167.205.22.0 167.205.22.3 U 28 9808 ed0default 167.205.22.20 UG 0 0 ed0 167.205.20.0 167.205.22.5 UG 0 0 ed044.132.1.0 167.205.22.18 UG 0 0 ed0

Agar routing table terbentuk pada saat start up komputer, perlu di set routing statis dengan beberapa modifikasi sbb :
· Tambahkan static routing yang diinginkan sesuai konfigurasi network
· Non-aktifkan semua perintah dari file startup yang menjalankan protokol routing.
Untuk host di atas, edit file rc.local untuk menambahkan statement route sbb:
route -n add default 167.205.22.20 1 > /dev/consoleroute -n add 167.205.20.0 167.205.22.5 1 > /dev/consoleroute -n add 44.132.1.0 167.205.22.18 1 > /dev/console

Startup file untuk setiap sistem mungkin saja berbeda, tetapi pada dasarnya memiliki prosedur yang sama. Bacalah selalu dokumentasi dari sistem anda.

Tidak ada komentar: