Ağ protokolleri gün geçtikte gelişiyor ve yeni protokoller oluşturuluyor veya geliştiriyor. Bu ağ protokollerinin kimisi güvenlik için kimisi hız için kimisi altyapı için kimisi de diğer sebeplerden ötürü nedenlerden dolayı geliştiriliyor veya hazırlanıyor.
Bugün de ağda değişiklik yapıldığında yönlendiriciler değişiklik olduğuna dair veri tabanına çeşitli paketler yollar. Bu paketler veri tabanına iletildikten sonra veri tabanının bağlı olduğu tabloya bu paketler kayıt edilir ve paketlerin iletilmesi için en hızlı ve en güvenli yolu aramaya çalışırlar ve bu işleme OSPF (Open Shortest Path First) denir. Şimdi OSPF'nin ne işe yaradığını detaylıca öğrenelim.
OSPF (Open Shortest Path First) Nedir?
OSPF (Open Shortest Path First) Türkçe karşılığı ise İlk açık yöne öncelik protokolü anlamına gelmektedir. Bu protokol RIP (Routing Information Protocol/Yönlendirme Bilgi Protokolü) protokolünde bulunan hataları, eksikleri gidermek adına IETF(Internet Engineering Task Force/İnternet Mühendisliği Görev Gücü) tarafından geliştirilmiş ağ protokolüdür.
Bu ağ protokolü Link-state (Hat Durumu) için çalışan bir protokol olarak hazırlanmıştır. OSPF Link-state ile ağda yapılan değişikler Triggered update (Tetiklenmiş Güncelleme) paketleri göndermektedir.
Bu paketler gönderilirken yönlendiriciler paketin iletilmesi için hazırlanmış tüm yolları tespit ettikten sonra SPF (Shortest Path First / En Kısa Yol) protokolünü devreye sokarak paketlerin en kısa ve durumu en iyi yoldan ulaşmasını sağlamaktadır.
Bu paketler her 30 dakikada Link-state'in özelliği olan refr@sh yani yenilme özelliği ile her 30 dakikada bir ağda değişiklik paketlerini iletmektedir.

OSPF Amacı Nedir?
OSPF ağların birbirlerine bağlanmasına yardımcı olmaktadır. Ülkemizde çeşitli internet sağlayıcısı (İSS) vardır. (Vodafone, Türk Telekom, Superonline, vb.) Bu internet sağlayıcıları ise GÉANT adlı Avrupa internet sağlayıcısına bağlıdır. Fark edildiği üzere Türkiye'de bulunan internet sağlayıcıları Avrupa internet sağlayıcısına bağlıdır.Bu olayda OSPF ile olmaktadır.
Ayrıca komşu tabloları oluşturmak için iki yöntem vardır. Bunlardan biri manuel yani kendi eliyle yapmasıdır. İkinci yöntem ise otomatik olarak router'ler ağa girilecektir.
İlk yönteme bakarsak hem zahmetli hem uzun süre isteyen hem de bu işleri yapabilecek kişi sayısı azdır. Bu yüzden OSPF'nin bize sunduğu ikinci yöntemi kullanabilirsiniz.
OSPF?in Özellikleri
OSPF'nin en büyük özelliklerinden olan ve diğer kendi rakiplerinde (RIP protokolü gibi) bulunmayan bir özelliği vardır. Bu özellik hat durumu protokolüdür. Bu protokol ile gönderilen paketleri en kısa ve en sağlıklı yoldan iletmeye yardımcı ol olmaktadır.
Sınıfı olmayan bir yapısı mevcuttur.
Ağ altyapısı geniş ve büyük olan ağlar için OSPF sayesinde alan değeri yani yönlendirme tablosunda ki karmaşıklığı ve tablo büyüklüğüne müdahale edebilir.
Ağın performansını yükseltmek için Load Balancing (Yük Dağılımı) özelliğini yükün ağırlığını sunuculara eşit bir biçimde paylaştırmasına yardımcı olan bu özellik ile ağ performansı yükselmektedir.
Yönlendiricileri çok hızlı çalışmaktadır. Yani herhangi bir ağ değişiklik olduğundan yönlendiriciler birbirlerine çok kısa sürede bu değişikliği iletebilir.
Komşuluk veri tabanı özelliği mevcuttur. Bu komşuluk tablolarında yönlendiriciler, ağ değişikliği ve paketleri iletmek için en kısa yolu listeler.
Md5 kimlik doğrulama özelliği vardır. Bu özellik sayesinde yönlendiricilerden iletilen paketleri şifreleyebilir ve bu özellik sayesinde paketleri iletmek çok daha güvenli ve bu paketlerin saldırganlar tarafından ele geçirilmesi çok daha zor olacaktır.
OSPF Çalışma Mantığı
OSPF protokolü ağda değişiklik olduğu zaman ağda oluşan güncellemeri paket haline getirir ve bu paketleri çoğaltmaktadır. Bu paketler çoğaltılırken ağda bir bağlantı değişiklik olursa bu değişikliği yönlendiriciler tespit eder.
Ağ değişikliğini tespit eden yönlendiriciler LSA (Link-State Advertisement/Hat Durum İlanı) paketini üretmeye başlar. Bu LSA paketi tüm komşu yönlendiricilere iletilir ve böylece diğer yönlendiriciler tarafından da ağ bağlantısının değiştiği tespit edilir.
Komşu yönlendiriciler LSA paketinde ağ bağlantısında değişiklik olduğunu tespit edince gönderirken LSA paketinin kopyasını oluşturur ve komşu yönlendiriciler LSA'nın veri tabanı yani LSDB (Link-State Database/Hat Durumu Veri Tabanı) LSA paketlerini göndermektedir.
Veritabanına gönderilen LSA paketleri ise ağa bağlanmak için en kısa yolu veya ağda iletilen paketlerin veritabanına gitmesi için en uygun yolu bulmaya çalışır. Kolay yolu bularak ağ hızında yavaşlama yerine çok fazla olmasada bir hızlanma olabilme şansı vardır.

OSPF'nin çalışma mantığına örnek
OSPF Tabloları Nedir?
OSPF'de 3 adet tablo bulunmaktadır. Bu tablolar OSPF için önemli olan tablolardır. Şimdi bu tabloları öğrenelim.
Komşuluk Tablosu
Komşuluk tablosu ağ değişikliğini tespit eden ve LSA paketini ilettiği komşu yönlendiricilerin bulunduğu tablodur. Bu tabloda komşu yönlendiricilerin listesi tutulmaktadır.
Topoloji Tablosu
Topoloji tablosu, LSDB (hat durumu veri tabanı) aktarılan LSA paketlerini depolayan veri tabanıdır. Bu veri tabanı ise topoloji tablosuna bağlı durumdadır. Bu tabloda ağda bulanan tüm yönlendiriciler ile bağlantı halindedir.
Yönlendirme Tablosu
Yönlendirme tablosu ise yönlendiriciler ve veri tabanı ile birlikte çalışmaktadır. Yönlendiriciler paketi veri tabanına iletirken sonra veri tabanı ise paketlerin en kısa yolunu hesaplamak ile görevlidir. Veri tabanı bu en kısa yolu hesapladıktan sonra yönlendirme tablosuna iletir. Yönlendirme tablosu ise bu en kısa yolu listeleye ekleyerek kayıt etmiş olur.
Bu tabloların amacı aldıkları değişiklik paketlerini, paketleri iletmek için en iyi yolları, yönlendiriciler arası bağlantıyı sağlamaktır. Bu tablolarda listeye alınan her kavram bilgisayarın RAM'ine kayıt olmaktadır. Böylece yeri geldiği zamana verileri kendiniz görebilir veya OSPF protokolünü kendinize göre ayarlama (konfigürasyon) yapabilirsiniz.

OSPF'de yönlendiricilerin birbirlerine olan bağlantısını gösteren bir örnek görsel
OSPF sayesinde somut olarak internet hızında bir gelişme söz konusu olabilir ama soyut olarak çok daha fazla yararı olduğunu anlayabiliriz ve kayıt edilen verileri RAM üzerine kayıt edilebildiği için hangi veri nasıl aktarılmış veya OSPF'yi konfigürasyon yapmamıza yardımcı olabilmektedir.