ana sayfa : araştırma : TCP-IP ve İnternet : IP yönlendirme [ 4 / 7 ]

GERİ

IV. IP YÖNLENDİRME

            IP yönlendirme TCP/IP ağlarının bel kemiği denebilir; ağlar arası IP paket aktarımı, paketlerin en uygun yolları takip ederek bilgisayar sistemleri arasında gidip gelmesi IP yönlendirme tarafından gerçekleştirilir. Yönlendirme görevi, temel olarak yönlendiriciler ve geçit yolu cihazlarına bırakılmıştır. Komple ağ oluşturulmasında, bağlantı/geçit noktası konumuna sahip bu cihazların başarımı ve yönlendirmede kullandıkları algoritmalar göz önüne alınması gerek önemli unsurlardır.

            Yalın (tek segmentli) bir TCP/IP ağda IP yönlendirmeye o kadar gerek yoktur;    sistemlere, yalnızca, IP adresi ve ağ maskesinin yerleştirilmesiyle iş kotarılır. Çünkü bütün aktarım LAN içerisinde kalmaktadır. Ancak bir ağ, birkaç tane LAN’ ın birleşmesinden oluşmuşsa veya internet gibi global bir ağa bağlıysa, sistemlere yerleştirilen IP bilgilerine ek olarak, yönlendirme bilgileri de ek olarak verilmelidir. Bu bölümde IP yönlendirme ile ilgili konular teorik açıdan ele alınmıştır. Yönlendirme işinin gerçekleşmesinde ana görev yönlendirme protokollerine (routing protocols) düşer; birçok yönlendirme protokolü vardır. En uygun yolun bulunması ve yönlendirme kararının verilmesi yol uzunluğu, yolun bant genişliği, ara düğümlerin sayısı gibi göz önüne alınan birçok parametre vardır. Yönlendirme protokolleri, türüne göre bu parametrelerden birini veya birkaçına bakarak görevlerini yerine getirirler.

       Yönlendirme işinin gerçekleştirilmesi için sistemler üzerinde yönlendirme tablosu (routing table) tutulur. Bu tablo, gönderilecek veri paketlerinin alıcısına ulaşması hangi yolun izleneceğini belirten yönlendirme bilgilerini tutar. Bu bilgiler, ya ağ yöneticisi (network administrator) tarafından elle verilir, ya da kullanılan yönlendirme algoritmasınca doldurulur ve güncellenir.   

       Yönlendirme algoritmaları, protokolleri ve tabloları IP yönlendirmede işin temel taşıdır. TCP/IP tabanlı ağlarda, ağlar arası paket aktarımını sağlayan IP yönlendirme, uygulama alanına göre en uygun olacak şekilde gerçekleştirilmektedir. Dengeler göz önüne alınarak, ağ içersindeki sistemlerde en uygun yönlendirme protokolü yürütülmeli ve yönlendirme tabloları bilinçli bir şekilde oluşturulmalıdır. Tabloların gereksiz yere şişmesi, sistemin işlem gücünü azaltacağı gibi, gerekli uygun yönlendirme bilgilerinin olmaması da IP paketleri çok uzaklara sürükleyebilir; doğal olarak kaybolması olasıdır.

4.1 IP Yönlendirmenin Temelleri

4.1.1 Doğrudan(Direct) Yönlendirme

       Bilgisayar ağları üzerinde iletişime geçilmek istenen bilgisayar eğer mantıksal olarak aynı ağ üzerinde bulunuyorsa bir datagramın gönderilmesinde router servisine ihtiyaç yoktur. Gönderilecek olan veri paketi herhangi bir yönlendirici üzerinden geçmeden ilgili bilgisayara iletilir. Bir bilgisayar göndereceği verinin hedef adresine bakarak kendisi ile aynı ağda olup olmadığını anlar. Kendi ağında ise doğrudan bir yönlendirme gerçekleşir.  


Şekil-15 Doğrudan Yönlendirme

       Eğer veri paketi şekilde olduğu gibi yönlendiriciden geçmeden hedef bilgisayara iletiliyorsa bu tür bir yönlendirme işlemine “Doğrudan(direct) Yönlendirme” denir.

4.1.2 Dolaylı(Indirect) Yönlendirme


       Dolaylı yönlendirme işlemi ise, eğer verinin gönderileceği host mantıksal olarak başka bir ağ dilimi içinde ise gerçekleşir. Bu tür yönlendirme işlemlerini yönlendiriciler (ruoter) organize eder. Bu tür bir yönlendirmede paket yönlendiriciler üzerinde bulunan yönlendirme tabloları sayesinde hedef adrese gönderilir.

Şekil-16 Dolaylı Yönlendirme

       Şekildeki C hostu ile B hostu kendi aralarında iletişime geçmek isterseler veri paketleri yönlendirici üzerinden geçerek ilgili bilgisayarlara ulaştırılır.   

4.1.3 Yönlendirme Tabloları

       Aşağıdaki şekilde 4 tane birbirinden fiziksel olarak farklı ağ yönlendiriciler ile birbirlerine bağlanmıştır. Bu uygulamayı basit bir Internet uygulaması olarak düşünebiliriz. Mantıksal olarak farklılık gösteren ağlar üzerindeki bir bilgisayar diğer bir ağdaki bilgisayar ile haberleşmek isterse yönlendiriciler üzerinden veri paketini göndermesi gerekir. Peki yönlendirici veri paketini hangi ağ segmentine göndereceğini nereden biliyor? İşte bu bilgi yönlendiriciler üzerinde bulunan yönlendirme tablolarında tutuluyor. Bu tablolar hangi ağa nasıl ulaşılacağını, en uygun  yolun seçimini ve diğer yönlendirici bilgilerini içermektedir.


Şekil-16 Basit Bir Ağ Uygulaması

Şeklimize göre her yönlendiricinin tablosunu düzenleyecek olursak;

Router A İçin Yönlendirme Tablosu:

Tablo-4.1 Router A İçin Yönlendirme Tablosu

Hedef Network Adresi

Geçilecek Ağ Adresi yada Yönlendirici Portu

Geçilecek Router Sayısı

128.1.0.0

Doğrudan Port 1

0

128.2.0.0

Doğrudan Port 2

0

128.3.0.0

128.2.0.3

1

128.4.0.0

128.2.0.3

2

 

Router B İçin Yönlendirme Tablosu:

Tablo-4.2 Router B İçin Yönlendirme Tablosu

Hedef Network Adresi

Geçilecek Ağ Adresi yada Yönlendirici Portu

Geçilecek Router Sayısı

128.1.0.0

128.2.0.2

1

128.2.0.0

Doğrudan Port 1

0

128.3.0.0

Doğrudan Port 2

0

128.4.0.0

128.3.0.3

1

 

Router C İçin Yönlendirme Tablosu:

Tablo-4.3 Router C İçin Yönlendirme Tablosu

Hedef Network Adresi

Geçilecek Ağ Adresi yada Yönlendirici Portu

Geçilecek Router Sayısı

128.1.0.0

128.3.0.2

2

128.2.0.0

128.3.0.2

1

128.3.0.0

Doğrudan Port 1

0

128.4.0.0

Doğrudan Port 2

0

 

       Bu tablolar sayesinde  bir router üzerindeki datagramın hangi yolu izleyerek hedefine ulaşazağı kolayca anlaşılmaktadır. Mesela; router C üzerindeki bir datagram 128.1.0.0 IP adresine sahip olan ağa bir veri göndermek istiyor. Bunun için 128.3.0.2 IP adresine sahip olan Router B’nin 2.portundan veriyi aktaracağı tabloda ifade edilmiş ve paketi göndereceği yere ulaştırmak için 2 tane router’dan geçmesi gerektiği gösterilmiştir.(Tablo-5 Satır 1) 

4.2 Yönlendirme Algoritmaları

       Yönlendiriciler üzerinde tutulan ve en uygun yolun belirlenmesinde kullanılan yönlendirme tablolarının dinamik olarak güncellenmesini sağlar. Temelde biri uzaklık vektörü, diğeri bağlantı durumu algoritması olarak adlandırılan iki  farklı yönlendirme algoritması vardır. Bu algoritmalara dayanarak RIP, OSPF, IGP,BGP gibi birçok yönlendirme protokolu geliştirilmiştir.

       Protokol kümelerindeki ağ katmanının (OSI’nin 3.cü katmanı) en temel işlevi yönlendirmedir. Yönlendirme, bir düğümün, alıcı adresi içerisinde olan bir IP paketi, alıcısına en uygun yoldan ulaşması için komşu düğüme geçirme mekanizmasıdır.

       Algoritmalar, yönlendirme tablolarının güncellenmesi açısından statik ve dinamik, gerçekleştirilmesi açısından Uzaklık Vektörü Algoritması( Distance Vector Algorithm) ve Bağlantı Durumu Algoritması(Link State Algorithm) sınıflanmıştır. Algorritmalar en uygun yolu belirleyebilmek için;

·         Yolun bant genişliği(bandwidth)

·         Trafik yoğunluğu(load)

·         Yol uzunluğu(path lenght,hop count)

·         Maliyet(cost)

·         Güvenirlik(reliability)

·         Güvenlik(security)

·         Gecikme(delay)

gibi parametrelerden bir veya birkaçını kullnarak bir metrik değer hesaplarlar. Bu metrik değere göre paketler yönlendirilir.

4.2.1 Statik Algoritmalar   

       Ağ işletime alınmadan önce, yönlendirme bilgisi cihazlar üzerindeki yönlendirme tablolarına girilir ve değiştirilmediği sürece sabit kalır. Örneğin, en yönlendirme kriteri için minimum iletim süresi göz önüne alınacaksa, ağın işletiminden önce her bir yöndeki iletim süresi hesaplanmalı ve yönlendirme algoritması iki uç arasında en kısa sürede iletimi gerçekleştiren yolları belirlemelidir.

       Örneğin Şekil-17’de görülen örnek ağda düğümler arasında birden çok alternatif yol vardır ve iki düğüm arasındaki yol iletim süreleri (veya maliyetleri) kirişlerin ortalarında verilmiştir. Buna göre düğümler arasında en hesaplı yol maliyetleri hesaplanabilir. Örneğin A düğümü için en uygun yol aşağıdaki gibi hesaplanabilir.

 


Şekil-17 Yönlendirme İçin Maliyetler

 


A→B:1

A→C:2

A→D  (A→C→D üzerinden):3

A→E  (A→C→D→E üzerinden):4

A→F  (A→B→E→F üzerinden):5

4.2.2 Dinamik Algoritmalar      

       Düğümler ağ topolojisindeki değişiklikleri ve trafik yoğunluğunu izleyerek ağın o anki durumuna göre karar verirler. Bu yapıda düğümler periyodik olarak kendi durumlarını belirten durum paketlerini komşularına geçirirler ve kendi yönlendirme tablolarını belirli aralıklarla güncellerler. 

       Adaptif yönlendirme kullanılmasının en olumlu yanı, geçici tıkanma sorunlarını kendiliğinden çözebilmesidir; aktarım için tek bir yol varsa ve yol kopmuşsa iletim elbette gerçekleştirilemez, ancak birden fazla yol varsa, hemen ikinci en uygun yol kullanılır. Adaptif yönlendirme algoritmaları merkezi ve dağılmış denetimli olarak iki sınıfa ayrılır. Yönlendirme algoritması, merkezi denetimli bir ağda, tek bir ağ denetim düğümünde koşar. Bu düğüm, durum paketleriyle gelen bilgiyi kullanarak yönlendirme algoritmasını koşturur ve her bir düğüme yönlendirme tablolarında yapması gereken güncellemeleri haber verir.

 

4.2.2.1 Uzaklık Vektörü Algoritması - DVA(Distance Vector Algortihm)

       DVA algoritması, yönlendiriciler arasında uzaklık bilgisinin (veya atlama sayısının) metrik değer olarak kullanılmasına dayanır. Her yönlendiricide paketlerin gönderilebileceği diğer komşu yönlendiriciler için uzaklık vektör tablosu oluşturulur; en uygun yola bu vektöre dayanılarak karar verilir.

       Uzaklık vektörü, komşu olan yönlendiricilere göre hesaplanır. Yönlendiriciler,kendi taraflarındaki yönlendirme tablosu bilgilerini, diğer tüm komşu yönlendiricilere yayma yoluyla bildirir ve her yönlendirici kendisine gelen yeni durumları tuttuğu tabloya yansıtır. Yansıtma işi oldukça hızlı yapılmalıdır.

       Eğer bu algoritma merkez yönlendiricilerde kullanılıyorsa ve yansıtma yavaş olursa, merkez yönlendiriciler için hızlı uyarlama gereksinimi sağlanmamış olunur ve yönlendirmede sorunlar çıkabilir. Normalde olmayan yere yönlendirme yapılabilir veya olan bir bağlantıya, henüz güncelleme yapılmadığı için, yokmuş gibi görünerek yönlendirme yapılmayabilir. Bu algoritmada atlama sayısına dayanılarak en kısa kullanılır ve yönlendirme tablosunun güncellenmesi için yönlendiriciler arasındaki trafiğin bir miktar artmasına neden olur. Bu algoritmada güncelleme bilgisi yalnızca komşu yönlendiricilere yapılır; ancak gönderilen bilgi, enelde tüm yönlendirme tablosunun aktarılması şeklinde olur.

 

4.2.2.2 Bağlantı Durumu Algoritması - LSA(Link State Algortihm)

       LSA algoritması, en uygun yolun belirlenmesi için kullanılan metrik değeri, uzaklık bilgisinin yanı sıra yönlendiricilere yapılmış olan bağlantıları da göz önüne alarak hesaplar. Bu algoritmada, ağ içindeki bir yönlendirici ağın tüm topolojisi hakkında bilgi sahibidir. Herhangi bir yönlendirici, kendisine olan bağlantıda bir değişiklik olduğunu algıladığı zaman, bu değişikliği tüm ağa yayma yoluyla bildirir. Ancak bu yayma işlemi tüm yönlendirme tablosunun gönderilmesi şeklinde olmayıp yalnızca algılanan değişikliğin bildirilmesi şeklindedir. Uzaklık vektörü algoritmasında(DVA’da) ise komşu düğümlere gönderilen yönlendirme tablosu bilgileri daha fazladır; genelde, yönlendirme tablosunun tamamı veya büyük bir kısmı gönderilir. Bu durum, uzaklık vektörü algoritmasının ağı daha fazla yüklemesi anlamına gelir; ancak gönderme işlemi yalnızca komşu düğümlere yapılır.

       Bağlantı durumu algoritmasında, algılanan değişiklik ağdaki, yine bu algoritmayı koşturan tüm yönlendiricilere bildirilir; ancak değişikliği içeren paketin kısa olması ve algoritmanın uzaklık vektörü algoritmasına göre daha gerçekçi yönlendirme yapması nedeniyle daha çok merkez yönlendiricilerde kullanılmaktadır. Bu algoritma daha fazla işlem gücü gerektirdiğinden buna sahip yönlendiriciler daha güçlü donanıma sahip olmalıdır. çünkü metrik değerin hesaplanması için daha çok parametre göz önüne alınmaktadır. RIP, OSPF,IGP gibi bir çok yönlendirme protokolu bu iki algoritmadan birine dayanır. Örneğin IP ağlarda oldukça fazla kullanılan RIP, uzaklık vektörü algoritmasına; OSPF ise, bağlantı durumu algoritmasına dayanır.

4.3 Yönlendirme Protokolleri

       Yönlendirme protokolleri, yönlendirici üzerinde koşan ve tablonun güncellenmesini sağlayan kurallardır, genelde yazılımla gerçeklenirler. Protokoller, dahili (interior) ve harici (exterior) olarak iki sınıfa ayrılmıştır. İç protokoller daha çok pek fazla büyük olmayan özel ağ içindeki yönlendiriciler arasında kullanılırken, dış protokoller birbirinden bağımsız ve geniş ağlar arasındaki yönlendiriciler üzerinde koşturulur                                                                                     Dahili Geçityolu Protokolleri  (Interior Gateway Protocol)

RIP (Routing Information Protocol)

OSPF(Open Shorthest Path First)

Harici Geçityolu Protokolleri  (Exterior Gatweway Protocol)

EGP2 (Exterior Gateway Protocol)

BGP(Border Gateway Protocol)

  NOT: Yönlendirme protokolleri (routing protocols) ile yönlendirmeli protokoller (routed protocols), genelde birbiriyle karıştırılır; ancak, farklı tanımlamalardır. İlki, yani yönlendirme protokolleri, dinamik yönlendirme tablosu oluşturmak için kullanılan RIP, OSPF; EGP gibi protokolleri; ikincisi, yani yönlendirmeli protokoller ise IP, IPX, DECnet, XNS, Apple Talk gibi protokolleri anlatır.

4.3.1 Dahili Geçityolu Protokolleri-IGP(Interior Gateway Protocol)

       IGP, özel ve bağımsız ağlar içindeki yönlendiricilerde kullanılan bir iç protokoldür. Bağımsız özel ağlarda temel kriter hız ve başarımın (performansın) yüksek olmasıdır. Ağ içersinde olabilecek herhangi bir kesintiye karşı, diğer en uygun yol hızlıca belirlenmelidir. IP ağ uygulamalarından iyi bilinen RIP ve OSPF bu protokole dayanır.

 

4.3.1.1 RIP-(Routing Information Protocol)

       RIP uzaklık vektör algoritmasına dayanır ve IGP’nin bir uygulamasıdır . İlk olarak XNS(Xerox Network Systems) protokol kümesinde kullanılmış olup daha sonra IP ağ uygulamasında kendisine geniş bir alan bulmuştur.

      UNIX işletim sistemi bünyesinde bulunan  ‘routed’ programı RIP içindir(bkz. Bölüm 9-RIP Yönlendirme Protokolu ve Çalıştırılması). Bu protokolda en uygun yol, atlama sayısına dayanılarak hesaplanı; tabloda her varış adresi için en iyi yol bilgisi tutulur. Uygulamada RIP için atlama sayısının en fazla 15 olacağı kabul edilmiştir; bu değerden daha uzak yerler ulaşılmaz durum olarak değerlendirilir.

       Ağ topolojisindeki herhangi bir değişiklik, oraya bağlı olan yönlendirici tarafından sezilir ve yönlendirici hemen yeni durum için değerlendirme yapar. Eğer daha iyi bir yol olduğunu öğrenirse, önce kendi tablosunu günceller (aynı varış adresli daha kötü yol varsa tablodan siler) ve daha sonra komşularına yansıtır. Komşu yönlendiriciler de yeni durumu göz önüne alarak kendi tablolarını güncelleyip kendi komşularına haber verirler. Ancak değişikliği ilk yansıtan yönlendiriciye tekrar gönderilmemelidir. Aksi durumda kısır döngü oluşur.

 

4.3.1.2 OSPF-( Open Shorthest Path First)

       OSPF geniş IP ağlarda kullanılan ve bağlantı durum algoritmasına dayanan bir protokoldur. Bu protokol hiyerarşik yapı içinde çalışır ve benzer hiyerarşik düzeyde olan yönlendiriciler arasında tablo güncellenmesi için kulanılır. Genel olarak IP ağlarda omurgayı oluşturan yönlendiriciler üzerinde koşturulur. IETF tarafından geliştirilmiş olup tanımlamaları RFC 1247 içinde yapılmıştır. OSPF geniş ağlarda RIP’e göre daha iyi sonuç vermektedir ve dolayısıyla onun yerine de facto standard haline gelmeye başlamıştır.

4.3.1 Harici Geçityolu Protokolü-EGP(Exterior Gateway Protocol)

       EGP bağımsız ağ içindeki yönlendiricilerde değil de, bu tür ağları birbirine bağlayan yönlendiricilerde kullanılan bir protokol sınıfıdır. Bu algoritmada temel gereksinim güvenliğin sıkı tutulmasıdır; IGP’de ise işlerin olabildiğince hızlı kotarılmasıdır. Şekil-18’de IGP ve EGP’inin uygulamadaki yeri görülmektedir.


 

Şekil-18 IGP ve EGP’nin Kullanım Yeri

 

       Şekil-18’de görüldüğü gibi komple geniş bir ağ uygulamasında IGP ve EGP aynı anda kullanılabilmektedir; IGP bağımsız ağ içersinde en uygun yolu belirlemek için kullanılırken, EGP bağımsız ağlar arasında en uygun yolun belirlenmesinde kullanılmaktadır. Çok bilinen iki uygulaması EGP2 ve BGP’dir.

 

4.3.1.1 EGP2 (Exterior Gateway Protocol 2)

       Bu protokol bağımsız ağlar arasında yönlendirme bilgisi değiş tokuş işini gerçekleştirir. Internet’in yayılmasından sonra uygulamada etkin olmamıştır. EGP2 yerine BGP kullanılmaya başlanmıştır.

 

4.3.1.2 BGP2 (Border Gateway Protocol 2)

       Bağımsız ağlararası yönlendirme bilgisi değiş tokuş için EGP22nin eksikliğini gidermek amacıyla geliştirilmiştir. Yönlendirme tablosu güncellenmesinde EGP2’ye daha az bilgi transferi gerektirir ve gerçekleşmesi daha kolay bir protokoldur.

4.4 Metrik Değer Parametreleri

       Metrik değer hesaplanmasında en basit hesap yöntemi, yönlendiriciler arasındaki atlama sayısının(hop count) baz alınmasıdır. Gerçekte bu değer paketlerin alıcısına en hızlı gitmesini sağlayacaktır. Çünkü iki düğüm arasında atlama sayısı 2 olan bir yol 1 olan bir başka yoldan daha hızlı aktarım gerçekleştirebilir. Bu durumda paketlerin aktarılması için daha hızlı yol var iken atlama sayısı diye metrik değeri bir olan yola yönlendirme yapılır. Bu gibi durumların önüne geçmek için ağın ayrıntısını gösteren parametreler de kullanılır. Bunlar kısaca aşağıdaki gibidir.

·         En ucuz yola göre.

·         Servis kalitesi gereksinimine göre.

·         Gereksinimi duyulan servis türüne göre

·         Uygulama politikalarına göre

·         Var olan diğer yolun da kullanılmasına göre

       En uygun yol bulunurken yukarıdaki gibi parametrelerin de göz önüne alınması yönlendiricide gerekecek işlemci gücünü ve diğer donanım gereksinimini arttıracağından kenar yönlendiricilerde pek fazla kullanılmazlar;daha çok merkez yönlendiricilerde kullanılır.

       Yukarıdaki parametrelerden özellikle “var olan diğer yolun da kullanılması” dikkate değerdir. Birçok uygulamada yedek anlamında ana bağlantıya ek olarak ikinci bir bağlantı yapılır. Bunun amacı, ana bağlantıda bir kesinti olduğunda, iletişimin yavaş da olsa sağlanmasıdır. Normalde bu ikinci bağlantı kullanılmaz. Ancak yönlendirici ana bağlantı ile yedek bağlantı arasında yük paylaşımı yapılacağı ilkesine göre konfigüre edilirse, en iyi yolu bulmada ikinci yol da göz önüne alınır.