BGP, farklı yönetim alanlarına ait ağların hangi prefixlere hangi ağ yolları üzerinden ulaşılabildiğini birbirine bildirmesini sağlayan otonom sistemler arası yönlendirme protokolüdür. Bir BGP duyurusu yalnız hedef prefixi değil, duyurunun geçtiği otonom sistemleri ve yol seçimini etkileyen öznitelikleri de taşır.

Bir otonom sistem, ortak bir teknik ve yönlendirme politikası altında işletilen ağlar bütünüdür ve otonom sistem numarası olan ASN ile tanımlanır. Aynı kurumun bütün cihazlarının tek bir otonom sistemde bulunması gerekmez. BGP, bu sistemlerin komşuluk kurup erişilebilirlik bilgisi paylaşmasını sağlar; kullanıcı trafiğini kendi başına taşımaz, yönlendiricilerin hangi ağ yolunu kullanacağına ilişkin bilgi üretir.

Bu nedenle BGP yol seçimi, yalnız fiziksel yakınlığa veya en az sayıda cihaza dayanmaz. Kabul ve tercih kararları, her ağ işletmecisinin içe ve dışa aktarım politikalarıyla birlikte değerlendirilir.

eBGP ve iBGP ile Prefix Duyuruları

Farklı otonom sistemler arasındaki BGP oturumlarına eBGP, aynı otonom sistem içindeki BGP yönlendiricileri arasındaki oturumlara iBGP denir. iBGP, hem yerel yolları hem dışarıdan öğrenilen yolları sistem içinde dağıtabilir.

Prefix duyurusu, belirli bir IPv4 veya IPv6 adres bloğunun bir BGP komşusu üzerinden erişilebilir olduğunun bildirilmesidir. Duyuru kabul edilirse ilgili yol aday olarak yönlendirme bilgisine eklenebilir; kabul edilmesi, mutlaka en iyi yol seçileceği veya başka komşulara aktarılacağı anlamına gelmez.

Bir komşu artık belirli bir prefix için yol sunmuyorsa UPDATE mesajıyla o yolu geri çeker. Bu işlem, aynı prefix için diğer komşulardan öğrenilmiş yolların da silindiği anlamına gelmez.

BGP Mesajlarıyla Oturum Nasıl İlerler?

BGP komşuları önce TCP bağlantısı kurar; BGP için standart dinleme bağlantı noktası TCP 179’dur. Protokolün temel işleyişi dört mesaj türüyle yürür ve her mesaj oturum yaşam döngüsünde farklı bir görev üstlenir.

MesajTemel GörevOturuma Etkisi
OPENASN, BGP tanımlayıcısı, bekleme süresi ve desteklenen seçenekler gibi oturum bilgilerini paylaşır.Komşuların oturumu kabul edip edemeyeceğini belirler.
KEEPALIVEYeni yönlendirme bilgisi taşımadan komşuluğun etkin olduğunu bildirir.Bekleme zamanlayıcısının dolmasını önler ve oturumu canlı tutar.
UPDATEPrefix erişilebilirliğini, yol özniteliklerini ve geri çekilen yolları taşır.Yönlendirme bilgisini ekler, değiştirir veya kaldırır.
NOTIFICATIONAlgılanan BGP hatasını ve hata kodunu bildirir.Oturumun kapatılmasıyla sonuçlanır.

OPEN alışverişi başarıyla tamamlanıp KEEPALIVE ile doğrulandığında oturum Established (kurulmuş) durumuna geçer. Yönlendirme değişimleri bu aşamadan sonra UPDATE mesajlarıyla paylaşılır; BGP periyodik olarak bütün tabloyu yeniden göndermek yerine değişiklikleri iletir.

Yol Öznitelikleri ve Yönlendirme Politikası

UPDATE mesajındaki yol öznitelikleri, bir prefixe ulaşmak için yalnız hangi komşunun kullanılabileceğini değil, yolun nasıl değerlendirilmesi gerektiğini de açıklar. Operatör politikası bu öznitelikleri inceleyebilir, değiştirebilir ve duyurunun kabul veya yeniden duyurma kararını belirleyebilir.

AS_PATH

AS_PATH, duyurunun geçtiği otonom sistemleri sıralar. Bir eBGP yönlendiricisi duyuruyu başka bir otonom sisteme gönderirken kendi ASN'sini yolun başına ekler. Bir yönlendirici kendi ASN'sini aldığı AS_PATH içinde görürse bu durum döngü işareti olarak değerlendirilir ve yol genellikle kabul edilmez.

Daha kısa AS_PATH çoğu karar sürecinde avantaj sağlayabilir, ancak her zaman ilk veya tek ölçüt değildir. Yerel politika daha yüksek öncelik veriyorsa daha uzun AS_PATH içeren bir yol seçilebilir.

LOCAL_PREF, MED, NEXT_HOP ve Diğer Öznitelikler

LOCAL_PREF, bir otonom sistem içinde hangi dış çıkışın tercih edileceğini belirlemek için kullanılır ve normal eBGP oturumlarında dış komşulara aktarılmaz. MED, komşu otonom sisteme birden fazla giriş noktası arasından tercih önerisi iletebilir; bu değerin nasıl karşılaştırılacağı politika ve uygulamaya bağlıdır.

NEXT_HOP, duyurulan prefixe ulaşmak için kullanılacak yönlendiricinin IP adresini belirtir. Bu yolun kullanılabilmesi için yerel yönlendirme tablosunda NEXT_HOP adresine nasıl ulaşılacağının çözülebilmesi gerekir; bunun için doğrudan bağlantı, statik yol veya iç yönlendirme protokolüyle öğrenilen bir yol kullanılabilir.

ORIGIN, yol bilgisinin BGP’ye hangi yöntemle alındığını gösterir; köken ASN ile aynı bilgi değildir. Community etiketleri ise yolları gruplayarak belirli politikalara tabi tutmak için kullanılır. Özniteliklerin seçim sırası, kullanılan BGP uygulamasına ve yapılandırmaya göre değişebilir.

Bir Prefix Duyurusu Ağlar Arasında Nasıl Yayılır?

Basitleştirilmiş bir örnekte AS64496, 203.0.113.0/24 prefixini AS64497'ye duyursun. Bu değerler yalnız açıklama amacıyla seçilmiş örnek numaralardır; gerçek bir canlı BGP sonucu değildir.

  1. AS64496, prefixi kendi dışa aktarım politikasına göre AS64497'ye gönderir.
  2. AS64497, duyuruyu prefix ve yol filtreleriyle denetler; izin verilen yolu aday olarak kabul eder.
  3. AS64497, kabul ettiği adaylar arasından kendi politikasıyla en iyi yolu seçer.
  4. AS64497, dışa aktarım politikası izin verirse duyuruyu AS64498'e aktarırken kendi ASN'sini AS_PATH başına ekler.
  5. AS64498, AS_PATH içinde 64497 ve 64496 numaralarını görür; kendi politikasıyla bu yolu kabul edebilir, daha az tercih edebilir veya reddedebilir.

Her otonom sistem aynı duyuruyu bağımsız olarak değerlendirir. Bir ağın kabul ettiği veya tercih ettiği yolun başka bir ağ tarafından da aynı şekilde seçilmesi gerekmez. Bir yol geri çekildiğinde her ağ seçimini yeniden değerlendirir; dışa aktarım politikasına göre komşularına geri çekme bilgisi veya alternatif bir yol duyurabilir.

BGP Yol Seçimi Neden En Kısa Fiziksel Yol Değildir?

BGP, gecikmeyi, kablo uzunluğunu veya ara yönlendirici sayısını doğrudan ölçen bir protokol değildir. Temel karar süreci, uygulanabilir yollar arasından politika ve yol özniteliklerine göre bir tercih oluşturur. Bu nedenle daha az otonom sistemden geçen bir yol, gerçek ağ gecikmesi bakımından daha hızlı olmak zorunda değildir.

Bir ağ işletmecisi, müşteri bağlantılarına, başka ağlarla doğrudan trafik değişimine veya diğer ağlara erişim sağlayan transit hizmetine göre belirli çıkışları önceliklendirebilir. LOCAL_PREF, AS_PATH, MED, NEXT_HOP adresinin erişilebilirliği ve BGP uygulamasına özgü ek seçim ölçütleri birlikte sonucu etkiler. BGP’nin seçtiği yol, ağ işletmecisinin politikasına göre kabul edip tercih ettiği yoldur; küresel olarak en kısa veya en hızlı yol olmak zorunda değildir.

İçe ve Dışa Aktarım Politikaları BGP Duyurularını Nasıl Sınırlar?

İçe aktarım politikası komşudan alınan duyuruların hangilerinin yerel karar sürecine girebileceğini belirler. Dışa aktarım politikası ise yerel veya öğrenilmiş yolların hangi komşulara yeniden duyurulabileceğini sınırlar. Bu iki yön ayrı tanımlanmalıdır.

  • Prefix filtreleri, beklenen adres blokları dışındaki duyuruları reddedebilir.
  • AS_PATH filtreleri, beklenmeyen veya izin verilmeyen otonom sistem sıralarını reddedebilir.
  • Maksimum prefix sınırı, komşudan olağan dışı sayıda yol alındığında yapılandırmaya göre daha fazla yolu reddedebilir veya oturumu kapatabilir.
  • LOCAL_PREF ve community kuralları, kabul edilen yolun kullanım ve yeniden duyuru davranışını değiştirebilir.
  • İçe ve dışa aktarım politikalarındaki izinler, yalnız beklenen yolları kapsamalıdır; bütün yolları kabul eden bir politika tek başına koruma sağlamaz.

RFC 8212 ile tanımlanan güvenli varsayılanda, eBGP komşuluğunda içe aktarım politikası yoksa alınan yollar yol seçimine alınmaz; dışa aktarım politikası yoksa komşuya yol duyurulmaz. Bu yaklaşım yanlışlıkla geniş kapsamlı yol yayımını azaltır, ancak doğru filtre tasarımı ve izleme gereksinimini ortadan kaldırmaz.

RPKI köken doğrulaması, duyurulan prefixi ve köken ASN’yi imzalı yetkilendirme kayıtlarıyla karşılaştırır; izin verilen prefix uzunluğu da bu denetime dahildir. BGP’nin yerini almaz, tüm AS_PATH’i doğrulamaz ve ayrıntılı filtreleme politikasının yerine geçmez.

BGP Politika Değişikliğini Test Etme ve Geri Alma

Ağ yöneticisi, BGP politika değişikliğini önce kontrollü bir test ortamında sınamalıdır. Beklenen yolların kaybolması veya beklenmeyen duyuruların yayılması gibi durumlarda eski yapılandırmaya nasıl dönüleceği, canlı uygulamadan önce belirlenir.

  1. Her komşuluk için beklenen uzak ASN'yi, adres ailesini ve oturum amacını belgeleyin.
  2. Alınmasına ve duyurulmasına izin verilen prefixleri açık biçimde tanımlayın.
  3. İçe ve dışa aktarım politikalarını ayrı inceleyin; varsayılan kabul davranışına güvenmeyin.
  4. AS_PATH koşullarını, maksimum prefix sınırlarını ve NEXT_HOP adresinin erişilebilirliğini kontrol edin.
  5. Oturum durumunu, alınan ve gönderilen prefix sayılarını, politika nedeniyle reddedilen yolları ve olağan dışı güncelleme sıklığını izleyin.
  6. Her politika değişikliği için önceki yapılandırmaya dönüş adımını ve başarı ölçütünü kaydedin.

Dış gözlem noktalarında görülen yollar, kendi yönlendiricinizin neden belirli bir yolu seçtiğini tek başına açıklamaz. Yerel BGP tablosunu, komşuluk politikalarını ve yönlendirme tablosuna alınan yolu birlikte inceleyin.

BGP Değişiklikleri Neden Her Ağda Aynı Anda Görülmez?

Bir kesintinin algılanması, yeni yolun seçilmesi ve güncellemelerin komşular arasında yayılması zaman alır. Ağların değişiklik sonrasında yeni yönlendirme durumuna ulaşmasına yakınsama denir; oturum zamanlayıcıları, politikalar ve ağın yapısı bu süreyi etkiler.

Bu sırada farklı gözlem noktaları farklı yollar gösterebilir. Değişikliğin bütün ağlarda aynı anda görüleceğini varsaymak yerine, hedef prefixin erişilebilirliğini ve kullanılan yolları birden fazla noktadan izleyin.