Senin, 12 Mei 2014

OSPF (Open Shortest Path First)

OSPF (Open Shortest Path First) merupakan sebuah routing protokol berjenis IGP yang hanya dapat bekerja dalam jaringan internal suatu ogranisasi atau perusahaan. Jaringan internal maksudnya adalah jaringan di mana Anda masih memiliki hak untuk menggunakan, mengatur, dan memodifikasinya. Atau dengan kata lain, Anda masih memiliki hak administrasi terhadap jaringan tersebut.


OSPF merupakan routing protokol yang menggunakan konsep hirarki routing, artinya OSPF membagi-bagi jaringan menjadi beberapa tingkatan. Tingkatan-tingkatan ini diwujudkan dengan menggunakan sistem pengelompokan area. Dengan menggunakan konsep hirarki routing ini sistem penyebaran informasinya menjadi lebih teratur dan tersegmentasi, tidak menyebar ke sana ke mari dengan sembarangan. Efek dari keteraturan distribusi routing ini adalah jaringan yang penggunaan bandwidth-nya lebih efisien, lebih cepat mencapai konvergensi, dan lebih presisi dalam menentukan rute-rute terbaik menuju ke sebuah lokasi. OSPF merupakan salah satu routing protocol yang selalu berusaha untuk bekerja layaknya prinsip kerja seperti demikian.
Untuk memulai semua aktivitas OSPF dalam menjalankan pertukaran informasi routing, hal pertama yang harus dilakukannya adalah membentuk sebuah komunikasi dengan para router lain. Router lain yang berhubungan langsung atau yang berada di dalam satu jaringan dengan router OSPF tersebut disebut dengan neighbour router atau router tetangga.
Langkah pertama yang harus dilakukan sebuah router OSPF adalah harus membentuk hubungan dengan neighbour router. Router OSPF mempunyai sebuah mekanisme untuk dapat menemukan router tetangganya dan dapat membuka hubungan. Mekanisme tersebut disebut dengan istilah Hello protocol.
Dalam membentuk hubungan dengan tetangganya, router OSPF akan mengirimkan sebuah paket berukuran kecil secara periodik ke dalam jaringan atau ke sebuah perangkat yang terhubung langsung dengannya. Paket kecil tersebut dinamai dengan istilah Hello packet. Pada kondisi standar, Hello packet dikirimkan berkala setiap 10 detik sekali (dalam media broadcast multiaccess) dan 30 detik sekali dalam media Point-to-Point.
Hello packet berisikan informasi seputar pernak-pernik yang ada pada router pengirim. Hello packet pada umumnya dikirim dengan menggunakan multicast address untuk menuju ke semua router yang menjalankan OSPF (IP multicast 224.0.0.5). Semua router yang menjalankan OSPF pasti akan mendengarkan protokol hello ini dan juga akan mengirimkan hello packet-nya secara berkala. Cara kerja dari Hello protocol dan pembentukan neighbour router terdiri dari beberapa jenis, tergantung dari jenis media di mana router OSPF berjalan.
Secara garis besar, proses yang dilakukan routing protokol OSPF mulai dari awal hingga dapat saling bertukar informasi ada lima langkah. Berikut ini adalah langkah-langkahnya:

1)      Membentuk Adjacency Router 
Adjacency router arti harafiahnya adalah router yang bersebelahan atau yang terdekat. Jadi proses pertama dari router OSPF ini adalah menghubungkan diri dan saling berkomunikasi dengan para router terdekat atau neighbour router. Untuk dapat membuka komunikasi, Hello protocol akan bekerja dengan mengirimkan Hello packet. Misalkan ada dua buah router, Router A dan B yang saling berkomunikasi OSPF. Ketika OSPF kali pertama bekerja, maka kedua router tersebut akan saling mengirimkan Hello packet dengan alamat multicast sebagai tujuannya. Di dalam Hello packet terdapat sebuah field yang berisi Neighbour ID. Misalkan router B menerima Hello packet lebih dahulu dari router A. Maka Router B akan mengirimkan kembali Hello packet-nya dengan disertai ID dari Router A.
Ketika router A menerima hello packet yang berisikan ID dari dirinya sendiri, maka Router A akan menganggap Router B adalah adjacent router dan mengirimkan kembali hello packet yang telah berisi ID Router B ke Router B. Dengan demikian Router B juga akan segera menganggap Router A sebagai adjacent routernya. Sampai di sini adjacency router telah terbentuk dan siap melakukan pertukaran informasi routing.
Contoh pembentukan adjacency di atas hanya terjadi pada proses OSPF yang berlangsung pada media Point-to-Point. Namun, prosesnya akan lain lagi jika OSPF berlangsung pada media broadcast multiaccess seperti pada jaringan ethernet. Karena media broadcast akan meneruskan paket-paket hello ke seluruh router yang ada dalam jaringan, maka adjacency router-nya tidak hanya satu. Proses pembentukan adjacency akan terus berulang sampai semua router yang ada di dalam jaringan tersebut menjadi adjacent router.
Namun apa yang akan terjadi jika semua router menjadi adjacent router? Tentu komunikasi OSPF akan meramaikan jaringan. Bandwidth jaringan Anda menjadi tidak efisien terpakai karena jatah untuk data yang sesungguhnya ingin lewat di dalamnya akan berkurang. Untuk itu pada jaringan broadcast multiaccess akan terjadi lagi sebuah proses pemilihan router yang menjabat sebagai “juru bicara” bagi router-router lainnya.
Router juru bicara ini sering disebut dengan istilah Designated Router. Selain router juru bicara, disediakan juga back-up untuk router juru bicara ini. Router ini disebut dengan istilah Backup Designated Router. Langkah berikutnya adalah proses pemilihan DR dan BDR, jika memang diperlukan.

2)      Memilih DR dan BDR (jika diperlukan)
Dalam jaringan broadcast multiaccess, DR dan BDR sangatlah diperlukan. DR dan BDR akan menjadi pusat komunikasi seputar informasi OSPF dalam jaringan tersebut. Semua paket pesan yang ada dalam proses OSPF akan disebarkan oleh DR dan BDR. Maka itu, pemilihan DR dan BDR menjadi proses yang sangat kritikal. Sesuai dengan namanya, BDR merupakan “shadow” dari DR. Artinya BDR tidak akan digunakan sampai masalah terjadi pada router DR. Ketika router DR bermasalah, maka posisi juru bicara akan langsung diambil oleh router BDR. Sehingga perpindahan posisi juru bicara akan berlangsung dengan smooth.
Proses pemilihan DR/BDR tidak lepas dari peran penting Hello packet. Di dalam Hello packet ada sebuah field berisikan ID dan nilai Priority dari sebuah router. Semua router yang ada dalam jaringan broadcast multi-access akan menerima semua Hello dari semua router yang ada dalam jaringan tersebut pada saat kali pertama OSPF berjalan. Router dengan nilai Priority tertinggi akan menang dalam pemilihan dan langsung menjadi DR. Router dengan nilai Priority di urutan kedua akan dipilih menjadi BDR. Status DR dan BDR ini tidak akan berubah sampai salah satunya tidak dapat berfungsi baik, meskipun ada router lain yang baru bergabung dalam jaringan dengan nilai Priority-nya lebih tinggi.
Secara default, semua router OSPF akan memiliki nilai Priority 1. Range Priority ini adalah mulai dari 0 hingga 255. Nilai 0 akan menjamin router tersebut tidak akan menjadi DR atau BDR, sedangkan nilai 255 menjamin sebuah router pasti akan menjadi DR. Router ID biasanya akan menjadi sebuah “tie breaker” jika nilai Priority-nya sama. Jika dua buah router memiliki nilai Priority yang sama, maka yang menjadi DR dan BDR adalah router dengan nilai router ID tertinggi dalam jaringan. Setelah DR dan BDR terpilih, langkah selanjutnya adalah mengumpulkan seluruh informasi jalur dalam jaringan.

3)      Mengumpulkan State-state dalam Jaringan
Setelah terbentuk hubungan antar router-router OSPF, kini saatnya untuk bertukar informasi mengenai state-state dan jalur-jalur yang ada dalam jaringan. Pada jaringan yang menggunakan media broadcast multiaccess, DR-lah yang akan melayani setiap router yang ingin bertukar informasi OSPF dengannya. DR akan memulai lebih dulu proses pengiriman ini. Namun yang menjadi pertanyaan selanjutnya adalah, siapakah yang memulai lebih dulu pengiriman data link-state OSPF tersebut pada jaringan Point-to-Point?
Untuk itu, ada sebuah fase yang menangani siapa yang lebih dulu melakukan pengiriman. Fase ini akan memilih siapa yang akan menjadi master dan siapa yang menjadi slave dalam proses pengiriman. Router yang menjadi master akan melakukan pengiriman lebih dahulu, sedangkan router slave akan mendengarkan lebih dulu. Fase ini disebut dengan istilah Exstart State. Router master dan slave dipilih berdasarkan router ID tertinggi dari salah satu router. Ketika sebuah router mengirimkan Hello packet, router ID masing-masing juga dikirimkan ke router neighbour.
Setelah membandingkan dengan miliknya dan ternyata lebih rendah, maka router tersebut akan segera terpilih menjadi master dan melakukan pengiriman lebih dulu ke router slave. Setelah fase Exstart lewat, maka router akan memasuki fase Exchange. Pada fase ini kedua buah router akan saling mengirimkan Database Description Packet. Isi paket ini adalah ringkasan status untuk seluruh media yang ada dalam jaringan. Jika router penerimanya belum memiliki informasi yang ada dalam paket Database Description, maka router pengirim akan masuk dalam fase loading state. Fase loading state merupakan fase di mana sebuah router mulai mengirimkan informasi state secara lengkap ke router tetangganya.
Setelah loading state selesai, maka router-router yang tergabung dalam OSPF akan memiliki informasi state yang lengkap dan penuh dalam database statenya. Fase ini disebut dengan istilah Full state. Sampai fase ini proses awal OSPF sudah selesai, namun database state tidak bisa digunakan untuk proses forwarding data. Maka dari itu, router akan memasuki langkah selanjutnya, yaitu memilih rute-rute terbaik menuju ke suatu lokasi yang ada dalam database state tersebut.

4)      Memilih Rute Terbaik untuk Digunakan
Setelah informasi seluruh jaringan berada dalam database, maka kini saatnya untuk memilih rute terbaik untuk dimasukkan ke dalam routing table. Jika sebuah rute telah masuk ke dalam routing table, maka rute tersebut akan terus digunakan. Untuk memilih rute-rute terbaik, parameter yang digunakan oleh OSPF adalah Cost. Metrik Cost biasanya akan menggambarkan seberapa dekat dan cepatnya sebuah rute. Nilai Cost didapat dari perhitungan dengan rumus: Cost of the link = 108 /Bandwidth Router OSPF akan menghitung semua cost yang ada dan akan menjalankan algoritma Shortest Path First untuk memilih rute terbaiknya. Setelah selesai, maka rute tersebut langsung dimasukkan dalam routing table dan siap digunakan untuk forwarding data.

5)      Menjaga Informasi Routing Tetap Upto-date

Ketika sebuah rute sudah masuk ke dalam routing table, router tersebut harus juga me-maintain state database-nya. Hal ini bertujuan kalau ada sebuah rute yang sudah tidak valid, maka router harus tahu dan tidak boleh lagi menggunakannya. Ketika ada perubahan link-state dalam jaringan, OSPF router akan melakukan flooding terhadap perubahan ini. Tujuannya adalah agar seluruh router dalam jaringan mengetahui perubahan tersebut. Sampai di sini semua proses OSPF akan terus berulang-ulang. Mekanisme seperti ini membuat informasi rute-rute yang ada dalam jaringan terdistribusi dengan baik, terpilih dengan baik dan dapat digunakan dengan baik pula.

0 komentar:

Posting Komentar