Routing (Distance Vector ve Link State) - BilişimLife.net - Bilişim Teknolojileri Ortak Çözüm Platformu
Routing (Distance Vector ve Link State) 29902990 okunma
Routing, bir ağ içerisindeki yönlendirmelerdir. Konu genel anlamda geniştir. Çünkü içerisinde birçok protokol ve algoritma bulunuyor. Çeşitli protokoller farklı kategoriler altında işleniyor. Routing içerisinde bu protokolleri işleyeceğiz.
Iki adet kategorimiz var: Distance Vector ve Link Sate. Distance Vector, Link State protokollerine göre daha basittir.
Distance Vector (RIP, IGRP)
Yönlendirme protokollerinden bir tanesi Distance Vector’dur yani uzaklık vektörüdür. IRP spesifikasyonlarından gelir. Içerisinde iki adet protokol barındırır. Birincisi RIP, diğeri IGRP.
En kısa yolu bulabilmek için yol üzerindeki routerların sayısını kullanan protokoller de diyebiliriz.
Routerlar route (yönlendirme) tablolarının kopyalarını komşu routerlara gönderirler ve distance vector, distence vectorleri toplar.
Distence: Ne kadar uzak?
Vector: Hangi yönde?
Şimdi bir ağ olduğunu varsayalım. Aşağıda küçük bir ağ kurdum. PC0’ın PC1’e iletişimini gösterdim. B router’ının yönlendirme tablosuna bakalım.
B router’ına Show ip route komutunu verdiğimizde bize network id (ağ adresi), interface (arayüz) ve süre gösteriyor. R ile işaretlediğim yer RIP protokolü üzerinden bağlantı sağlandığını gösteriyor. C ise connected olup direk bağlantı sağladığını gösteriyor.
Açıktır ki 192.168.2.0 ip adresinin 10.2.0.2 ip adresli router aracılığıyla (Router C), 193.168.2.0 network id’sinin ise 10.1.0.1 ip adresli router aracılığıyla (Router A) yönlendirme yaptığını görebiliyoruz.
Route tablosunda ayrıca ağın kaç router geçerek bağlı olduğunu da yazar. Örneğin 192.168.2.0 ağının S0 değeri 2’dir çünkü arasında 2 router kalıyor.
Yukarıdaki ağa tekrar bakalım.
Eğer ki 192.168.2.0 network id’si down olursa yani ağa bağlı olursa Router B, route tablosunu C’ye iletecek. Router C, 192.168.2.0 ağına gidecek en iyi yolun Router B üzerinden olacağını düşünür ve 192.168.2.0, S0 değerini 2 olarak tablosunu günceller. Daha sonra Router C kendi tablosunu B’ye gönderir. Router B, 192.168.2.0 S1 3, ardından Router A 192.168.2.0 S0 4 olarak günceller. Sonunda 192.168.2.0 ağı için kopya sayısı sonsuza ulaşır. Haliyle routing loplar yani yönlendirme döngüsü oluşur. Bunu engellemek için çeşitli yollar vardı. Bunları ele alalım.
Split Horizon: Distance vector protokoller aldıkları güncelleme bilgisini aldıkları arayüz üzerinden geri göndermezler. Router, directly connected networku yani direk bağlanmış ağı başka bir router üzerinden öğrenirse paketi çöpe atar. Döngü de gitmiş olur.
Route Poisoning: Bir network “down” ise bunun diğer routerlar tarafından bilinmesini sağlar.
Poisor Reverse: Down olan networkun hop count yani aygıt sayısına infinity yani sonsuzluk yazılır ve diğer router bunu “possibly down” olarak tablosuna işler (posior reverse over split horizon).
Holddown Timers: Hold down sayıcılar routerların komşularından aldığı ulaşılmaz bir ağa ait güncelleme ile başlar. Eğer aynı komşudan aynı ağa ait daha iyi metrik değere sahip bir güncelleme bilgisi alınırsa hold-down kaldırılır. RIP hold down süresi 180 saniyedir.
Trigged Update: Topoloji değişikliği olduğu anda bunu fark eden router periyodik güncelleme süresini beklemeden değişikliği komşu routerlara bildirir, route poisoning ile tümleşir.
Link State ve Balanced Hybrid Routing (EIGRP, OSPF)
Distance vectordeki gibi hop sayısı yerine bandwith, delay vs. gibi bilgilere göre bilgi toplayıp ona göre yönlendirme yapan protokollerdir.
Link state routing protokolleri ağdaki tüm topolojiden haberdardır. Hiçbir router komşusundan aldığı haber doğrultusunda routing yolunu seçemez. Her router tüm yolların haritasına sahiptir. Bu haritaya göre çeşitli algoritmalar (SPF – Shortest Path First) yardımıyla en iyi yolu bulur.
Bir ağdaki routing işlemlerini de görmüş olduk. Protokoller ayrı ele alınacaktır. Çünkü her birisinin yapılandırması farklı, hepsi bir konuda toplanmamalı.
Unutulmamalıdır ki bir router için daima en iyi yolu en kısa yoldur.