Home

ROUTING in a Nutshell

3 Comments

Berawal dari request temen gw…yang belum paham betul tentang routing protocol, so I made this article

———————————————————-

Alkisah…ada 3 Router: Router A, Router B, dan Router C

Masing2 router punya hapalan (rute) klo mau jalan ke bandung lewat mana (interface/physical port) …klo mau jalan ke Jakarta lewat mana

Tapi ketika router A mau pergi ke jalan Y atau ke Router C…there is a problem…

So…Router pada dasarnya hanya tau network2 yang hanya terhubung langsung dengannya, klo yang tidak terhubung langsung maka mereka butuh bantuan dan uluran tangan kita…masih banyak anak2 terlantar yang harus kita tolong *ngaco blas*

Nah, oleh karena itu ada beberapa metode routing yang bisa dipakai:

  • Static Routing
  • Dynamic Distance Vector Routing Protocol
  • Dynamic Link-State Routing Protocol
  • Path-Vector Protocol (khusus yang punya ilmu kanuragan tingkat tinggi)
  • Multicast (ini juga harus punya ilmu kanuragan tinggi, ga dibahas disini…klik link nya aja)

And lets explain them briefly one by one

——————————————————–

Static

Singkatnya…router2 ini disuruh “menghapal” apa yang diperintahkan oleh tuannya (Network Admin/Engineer)

————————————————————–

Dynamic Distance Vector

Wkwkwk, pertama kali mereka akan “kenalan” satu sama lain, yang namanya kenalan pasti pake Bahasa sama, nanti ga nyambung.

Setelah kenalan baru deh tuker2an rute…

Contoh protocol Distance Vector adalah RIP (Routing Information Protocol), Special mention adalah EIGRP (yang akan kita bahas belakangan) yang juga termasuk dalam jenis Distance Vector Protocol

———————————————————-

Dynamic Link State

Lets take a look again at Distance Vector picture above…si Router A bilang “oh, klo mau ke Y dan Z tinggal minta ama router B“. si Router A dan Router C tidak pernah saling mengenal satu sama lain

This is called “Routing by Rumors“, beda dengan Link State…

This is called Flooding, jadi semua Router akan mengenal satu sama lain

Dan disini pula permasalahan link-state (klo lu pake router tipe lama), akan sangat berat (makan process dan RAM) klo satu area ada beberapa puluh router

Lu bayangin aja…

lu masuk ruangan pesta ulang tahun, lu cuma kenal temen lu yang ulang tahun, trus lu mesti kenalan satu-satu sama temennya temen lu trus apalin muka sama namanya

Contoh protocol link-state adalah OSPF (Open Shortest Path First)
dan IS-IS (intermediate system-to-intermediate system)

Perbedaan kedua hewan ini adalah:

  • OSPF dibentuk dengan metode TCP/IP, IS-IS dengan metode OSI
  • So, OSPF heavily reliant on IP (ganti versi IP, OSPF-nya juga ganti)
  • IS-IS ga perduli dengan IP, yang di routing adalah mac-address (lets say it that way)
  • Algorithma IS-IS ini dipake di Data Center buat load-balancing Layer 2 (switch biasa kaga bisa, nanti ada looping, makanya ada STP)

Persamaannya, konsep isolasi area yang tidak ditemukan di Distance Vector, bayangin klo ada router yang link-nya “flapping” (idup-mati terus), seperti dibawah ini

Klo ada area, update dan singkronisasinya hanya per-area saja

Dalam OSPF, ada beberapa konsep Area (klo di IS-IS sistemnya “level”, level 1 dan level 2):

  • Backbone Area alias Area 0: wajib kudu harus mesti…semua area lain (contoh area 1 mau konek ke area 2) harus konek ke backbone area dulu

    contoh dari firewall.cx

  • Normal Area: area lain selain area 0
  • Stub Area: normal area yang ga ada “sambungan”nya lagi..

    Area 11 adalah contoh stub, karena “dibelakang” area 11 ga ada sambungan ke area lain (AREA loh ya…bukan router lain dalam satu area)

    Trus klo ada sambungan jadi gimana? Bukannya point pertama…semua harus konek ke backbone dulu baru bisa konek?

    Contoh…area 2 konek ke area 1, ga langsung ke area 0 (backbone)

    Virtual-link adalah teknologi semacam “tunneling” khusus OSPF

  • NSSA Area: klo ada area stub, tapi dibelakangnya ada area lain, BUT…area tsb. bukan OSPF

    Jadi, klo lu liat gambar diatas, lu pengen area 2 dibikin Stub, cuma ga stub2 amat *hah?*, masi ada external link kesono…makanya namanya NSSA (Not-so-stubby area)

Nah, disitu kita liat ada ABR dan ASBR, apaan sih itu

  • ABR (Area Boundary Router): Router OSPF yang satu “kaki”nya konek ke area A, satunya lagi konek ke area lain (contoh diatas)
  • ASBR (Autonomous System Boundary Router): bedanya dengan ABR adalah, satu kakinya bukan ke OSPF, tapi ke external link (RIP, EIGRP, Static, dll)

Nah, untuk Router OSPF bisa mengetahui mana yang area 0, mana yang stub, mana yang NSSA, dll…diperlukanlah LSA (Link State Advertisement)

Dalam OSPF terdapat beberapa type LSA yang bisa dikeluarkan…tergantung kebutuhannya, Lets take a look at this map to explain my analogy

Anggeplah 1 pulau itu 1 area..

Bagaimana agar mereka punya ID masing2 (router-ID)? LSA type 1

Bagaimana agar mereka (router) kenal satu sama lain di satu pulau yang sama (Network)? LSA type 2

Bagaimana agar pulau jawa tau mereka punya channel ke pulau Sumatra (Summary)? LSA type 3

Bagaimana agar pulau jawa tau bahwa mereka punya external link via Sumatra (Summary ASB)? LSA type 4

Bagaimana agar pulau Sumatra tau mereka punya external link ke singapur trus ngasi tau ke pulau jawa (AS External)? LSA type 5

Bagaimana agar setiap pulau punya jalur sendiri untuk mengirim barang secara serentak (multicast)? LSA type 6

Dan bagaimana agar pulau jawa tau bahwa mereka punya external link tanpa perlu mengetahui semua rute di Sumatra (NSSA)? LSA type 7

Satu lagi, bagaimana agar setiap pulau tau bahwa mereka bisa pake pesawat terbang bukan mobil atau kapal (IPv6)? LSA type 8

So…LSA akan dibuat tergantung kebutuhan, notice…semenjak ada PIM (protocol independent multicast) dan IPv6, M-OSPF alias LSA type 6 ga kepake lagi

Untuk IS-IS klo dijelasin kepanjangan disini, link artikel gue tentang IS-IS

—————————————————————

Special Mention

Path Vector

There’s only 1 protocol exist…BGP (Border Gateway Protocol), previously…there is EGP (emang gua pikirin *ehem* Exterior Gateway Protocol)

Mostly exist in Service Provider (but not limited to)

RIP, OSPF, EIGRP, and IS-IS are called IGP (Interior Gateway Protocol)

What is the common thing between those protocols? Klo uda “sepakat” ke suatu link (kek mau ke Link A lewat LAMBAT.NET)…semua pasti lewat sana, dan LAMBAT.NET pasti akan kasi ke PUTUS NYAMBUNG.NET langsung karena metric/jarak nya lebih kecil daripada harus belok dulu ke MUKE GILE.NET

Nah, BGP disebut path vector protocol karena path traffic-nya bisa kita “arahin” sesuai keinginan kita…segala macam routing policy yang tidak bisa diterapkan di IGP (contohnya Filtering Route yang tidak flexible) bisa diterapkan di BGP

That’s the BGP in a nutshell (to make this article short enough)

Advanced Distance Vector

Satu2nya yang menyandang predikat ini adalah EIGRP (enhanced interior gateway routing protocol)

That backup route system is called DUAL (Diffusing Update Algorithm), here’s how its work

  • R1 to R5 via R2 is 10 (4 + 6)…R2 the shortest route
  • R1 to R5 via R3 is 16 (11 + 5)
  • R1 to R5 via R4 is 15 (4 + 11)

EIGRP called shortest route a.k.a main route the Successor, and the backup link is Feasible Successor

In order to be Feasible Successor…EIGRP has a formula

Advertised distance (reported from neighbor) value must be lower than Successor value

So, if Successor value is 10 (via R2), then…

  • R3 to R5 is 5…R3 is the backup link
  • R4 to R5 is 11

While OSPF has mapping of whole area routers (which is good in term of finding best route), EIGRP still has to trust neighboring routers about topology (typical Distance Vector, which OSPF bad in term of memory processing)

Why R3 has to be the backup link, when the calculation is like this

  • R1-R3-R5 = 16
  • R1-R4-R5 = 15..this should be the backup route, but no, right?

So…EIGRP can fight well comparing with OSPF in memory and processing, BUT not in term of algorithm provided for finding best route and alternative route

———————————

Well, that’s it folks…hope you understand this article and see you soon

My other article

Penjelasan tentang OSPF

Penjelasan tentang LSA

Penjelasan tentang BGP

Penjelasan tentang EIGRP

Penjelasan tentang IS-IS

Penjelasan tentang Routing Protocol

Penjelasan tentang Distance Vector

Penjelasan tentang Link-State

Penjelasan tentang Multicast

OSPF (Open Shortest Path First)

7 Comments

Bagian dari Dynamic Protocol yang merupakan Link-State…OSPF akan kita kupas tuntas

Secara tajam…setajam…..SILET

*CUTTTT !!!!….kebanyakan infotaintment luh jadi alay !!


Untuk langsung konfigurasi bisa lihat disini

OSPF dikembangkan oleh IETF, but… at the same time, ISO was working on a link-state routing protocol of their own, Intermediate System-to-Intermediate System (IS-IS). Not surprisingly, IETF chose OSPF as their recommended IGP (Interior Gateway Protocol)

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

LSP (Link State Packet) dari OSPF

packet untuk OSPF konvergensi disebut LSP

OSPF LSP packet itu ada 5 tipe:

  1. Hello, tidak perlu dijelaskan
  2. DBD, ini penyakit yang disebarkan oleh nyamuk *ehem* DBD packet berisi list versi singkat dari sending router link-state database dan digunakan oleh receiving router untuk meng-compare dengan miliknya.
  3. LSR, receiving router bisa meminta (request) more information di DBD yang diterima
  4. LSU, ini packet untuk merespon LSR dan juga untuk announce new information. LSU contain many Link-State Advertisement (LSA)
  5. LSAck, ini paket ketika LSU diterima oleh receiving router

Jadi…router yang satu dengan yang lain saling mengirimkan LSA miliknya (yang berisi …dan meng-compare / membandingkan dengan LSA yang di terima (router A bilang link ke X mati, tapi menurut B link ke X ga mati…nanti router A akan “mikir” , berarti dia bisa saja kirim paket lewat B untuk ke X)

Liat cara kerja Link-State

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

Hello Packet

Hello packets are used to:

  • Discover OSPF neighbors and establish neighbor adjacencies.
  • Advertise parameters on which two routers must agree to become neighbors.
  • Elect the Designated Router (DR) and Backup Designated Router (BDR) on multiaccess networks like Ethernet and Frame Relay.

Yang penting2 apa aja sih??:

  • Type: OSPF Packet Type =Hello (1), DBD (2), LS Request (3), LS Update (4), LS ACK (5)
  • Router ID: IP dari router yang ngirim paket
  • Area ID: area/wilayah darimana paket itu berasal
  • Network Mask: Subnet mask associated with the sending interface
  • Hello Interval: number of seconds between the sending router’s hellos
  • Router Priority: Used in DR/BDR election (nanti dibawah dijelasin)
  • Designated Router (DR): Router ID of the DR, if any
  • Backup Designated Router (BDR): Router ID of the BDR, if any
  • List of Neighbors: lists the OSPF Router ID of the neighboring router(s)

Before two routers can form an OSPF neighbor adjacency, they must agree on three values: Hello interval, Dead interval, and network type

  • Hello Interval (default): 10 second on multi-access and 30 on *non-broadcast multi access (NBMA) such as Frame Relay, X.25, ATM
  • OSPF Hello packets are sent as multicast to an address reserved (224.0.0.5)
  • Using a multicast address allows a device untuk meng-ignore packet jika sebuah interface tidak OSPF Enabled. Jadi ga perlu repot2 proses paket (saves CPU processing time on non-OSPF devices).
  • Dead Interval is the period (dalam detik) that the router will wait to receive a Hello packet from neighbor before declaring that neighbor “down.”
  • Dead Interval for Multi access is 40 second and NBMA is 120 second
  • Network Type…
  • Hello packet juga menentukan DR (Designated Route) dan BDR (Backup DR) guna menghemat/memangkas traffic yang ada di MULTIAKSES NETWORK (klo bukan multi akses…ga perlu DR & BDR)

*NBMA adalah network2 yang bisa multi akses (jadi 1 router bisa di akses dari beberapa router) tapi ga bisa broadcast

Hello packet ini juga mengirimkan OSPF router ID, buat apa sih ?? sebagai “nama” dari router yang menjalankan OSPF

Contoh: interface fa0/0 di router Cisco 1841 dikasih ip 10.1.1.1 dan di fa0/1 dikasi 172.16.1.1 , maka yang menjadi ID si router OSPF ini adalah 172.16.1.1 (nama si router nya bukan paijo, tukimin, dan lain-lain haha…namanya pake IP)…dan ya, IP yang paling tinggi yang jadi router ID (klo kita ga set manual yah..)

*loopback interface adalah interface “bayangan”, klo interface FastEthernet dan serial secara fisik bisa dilihat…loopback tidak, purpose nya bisa untuk router ID di OSPF atau untuk simulasi network

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

LSU (Link State Update)

Dalam LSU terdapat 1 atau lebih LSA (Link State Advertisement), jadinya kadang2 LSA bisa di sebut LSU

LSA sendiri adalah BROADCAST packet (ya..broadcast) yang isi paket nya terdiri dari informasi2 yang dibutuhkan oleh router seperti neighbor information dan path cost

LSA inilah yang meng-influence routing table di OSPF

Header Packet dari LSA itu 20 byte. didalam LSA Header itu terdapat link-state ID

updated: lsa type 8 for OSPFv3 (IPv6 OSPF)

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

Cisco OSPF Metric

Seperti yang kita ketahui…RIP memakai Hop untuk metric dan EIGRP memakai bandwidth dan delay (walaupun ada 2 lagi)

OSPF ini memakai cost, yang mana cost ini adalah Bandwidth-bandwidth juga ujung2nya…haha

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

OSPF in multi-access network

OSPF defines five network types:

  • Point-to-point
  • Broadcast Multiaccess
  • Nonbroadcast Multiaccess (NBMA)
  • Point-to-multipoint
  • Virtual links

Point-to-Multipoint, Broadcast Multiaccess, dan NBMA biasanya koneksi OSPF lewat Frame-Relay

klo koneksi OSPF lewat Ethernet Switch (Switch biasa atau Switch Layer 3/Multilayer Switch) = Broadcast Multiaccess (Multiakses karena via Switch, broadcast karena fitur switch memang menyediakan fungsi broadcast)

klo koneksi OSPF lewat Frame-Relay Switch (Router yang menjalankan Switching versi Frame-relay) = NBMA (multiakses karena via “Switch” juga, tapi Frame-Relay Switch ga ada fitur broadcast)

Virtual-Link akan dijelasin dibawah (tipe2 area OSPF)

Masalah dalam OSPF di multi akss adalah Flooding LSA (liat point diatas)

Figure 1. LSA Flooding

Masalah OSPF di multi akses network di ibaratkan seperti ini:

Gw berada di suatu ruangan yang penuh dengan orang, bagaimana jadinya jika gw harus introduce diri gue ke semua orang itu, dan masing2 orang lain juga harus mengenalkan diri ke yang lain pula

Udah gitu pas gw udah kenal dengan satu orang, gw harus kenalan lagi dengan yang lain dan GW HARUS NGASIH TAU NAMA YANG UDA GW KENAL KE ORANG YANG LAIN LAGI!!!

Mateee…

Liat cara kerja Link-State (Kalau bingung)

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

Solusi untuk OSPF Multi-Akses

Yaitu dengan meng-elect (menunjuk) satu router untuk jadi “leader” yang mengirimkan LSA, yang dinamakan DR (Designated Router) dan “cadangan”nya kalau2 DR nya mati…yang disebut Backup Designated Router (BDR)

Klo dipikir2…mirip kek fitur switch yang disebut VTPCuma switch server yang boleh kasih info VLAN ke switch yang lain

-.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.–.-.-.-

DR BDR Election Process

Router ID (entah Router-ID, IP interface, atau IP Loopback) yang paling tinggi akan menjadi DR

The election process only takes a few seconds. If all of the routers on the multiaccess network have not finished booting, it is possible that a router with a lower router ID will become the DR. This could be a lower-end router that took less time to boot. (bisa jadi klo router yang ID nya paling tinggi itu LAMA bootingnya…dia ga jadi DR)

Contoh dari gambar diatas…Router C lelet, yang jadi DR adalah Router B…Router C selesai booting…Router B TETEP JADI DR dan Router A jadi BDR

Kalau Router B mati, akan digantikan oleh Router A…nah untuk “suksesor” WAKIL PRESIDEN nya kosong

wakil presidennya uda jadi presiden…presidennya mangkat kek Bapak Soeharto digantikan oleh Bapak Habibie

disinilah router A akan jadi BDR

pertanyaannya bisa ga di rubah “prioritas”nya ??? bisa…ada commandnya koq

bahkan kita bisa modifikasi timer nya (liat paling atas)

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-

Tipe Route OSPF

klo RIP diwakili dengan huruf R di routing table dan EIGRP dengan D (DUAL), maka di OSPF terdapat 4 type of route

  • O – Rute OSPF biasa (intra area)
  • O IA – Rute OSPF yang didapat dari OSPF area lain
  • O E1 – Rute OSPF yang didapat dari different routing protocol
  • O E2 – Rute OSPF yang didapat dari different routing protocol

trus bedanya E1 dan E2 apa ???

E1 – biasanya digunakan untuk menghubungkan rute2 dari berbagai macam routing protocol didalam satu ISP, metricnya akan bertambah sendiri tergantung dari berapa besar cost (bandwidth) yang dilalui tiap titik.

E2 (Default) – bedanya dengan E1 adalam metricnya tetap…contoh, klo E2 metricnya 1120…di SEMUA router ospf akan bilang metricnya 1120…tapi klo E1 akan dikalkulasi lagi, tergantung dari berapa banyak link yang dilewati

ABR = Router yang menghubungkan beda area

ASBR = Router yang menghubungkan OSPF dengan Routing protocol lain

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-

Tipe Area dalam OSPF

1. Standard Area – yang biasa (kirim summary, link update, dan external route)

2. Backbone Area – atau yang biasa disebut Area 0, semua area yang terhubung ke Area 0 akan bisa ping2an, Backbone juga salah satu standard area

OSPF Rules: semua area selain area 0 (contoh area 1) harus terhubung dengan area 0, apa lagi kalu mau ke area lain (contoh ke area 2, area 2 ini juga harus terhubung ke area 0)

OSPF Area

Cisco merekomendasikan maksimum 50 router per-area (biar ga berat router kerjanya ni router2 low-end, OSPF itu makan CPU Process tinggi)

nah, klo ada area yang lebih dari 50 router gimana? dibikin area baru untuk router nya

katanya ga bole terhubung ke area selain area 0? ini gunanya Virtual-Link (fitur OSPF agar area selain area 0 seakan-akan terhubung langsung ke area 0/backbone area)

OSPF Area

 

di router2 perbatasan antar area (ABR – Area Boundary Router), di konfig OSPF Virtual-Link

3. Stub Area – ga nerima external route. Klo mo kirim ke luar, router cuma kirim lewat default route (0.0.0.0). Stub area ga bisa punya ABR (ya eyaa laaa)

4. Totally Stubby Area – ga nerima summary route dan external route (klo stub masi nerima summary route), tipe Area ini cuma Cisco Propiertary

5. Not-So-Stubby-Area (NSSA) – sama kek stub2 yang lain, cuma dia boleh punya ASBR dan bisa nerima internal dan external (cuma memang ga diterusin ke external networknya)…pake LSA tipe 7

NSSA ini ibarat klo di view jaringan kita itu STUB…cuma dibalik stub itu ada routing protocol lain yang punya beberapa network (router kita ternyata ASBR)

6. Totally Stubby NSSA – apaan lagi nihhh??? sama kek  NSSA, cuma hanya default route aja

-.-.-.-.-.-.-.-.-.-.-.-.-.-..–.-.-..-.-.-.-.-..-.-.-.-..-.-.-.-.-.-.-.-..-.-

OSPF Superbackbone

Super Backbone dipake klo Core/Backbone nya bukan OSPF

maksudnya? biasanya ada di topologi customer ke ISP, dimana customer router (CE – Customer Edge) terhubung ke ISP Router (PE – Provider Edge) melalui OSPF convergence, sementari router2 didalam ISP yang terhubung ke PE pake non-OSPF (biasanya BGP dan MPLS)

OSPF Superbackbone

nah, dari gambar diatas klo CE Router mau propagate routing table nya ke Site IGP (Branch Office misalkan), mau ga mau harus di retribusi ke BGP, trus di PE router yang deket Site IGP juga BGP harus di retribusikan kembali ke OSPF

hasilnya akan jadi External OSPF (O E2 atau O E1) yang membuat kita tidak bisa men-summarisasi external area dan stub area akan susah di implement, dengan super backbone akan jadi Internal Inter Area OSPF (O IA)

dengan OSPF Super Backbone, ISP dengan BGP-MPLS nya akan bertindak seakan-akan area 0 (thats why Super Backbone), caranya dengan mengimplementasikan BGP Attributes dan Extended Community (belajar BGP yah ^_^ )