Günümüz bilgisayar ağlarında ağ yedekliliği çok büyük önem taşımaktadır. Network üzerinde iyi derecede yapılandırılan ağ aygıtlarının süreklilik başarımı maksimum seviyede artar. Switch’leri birden fazla ağ kablosu ile birbirine bağlamak network yedeklilik durumunu ifade eder.
STP Protokolü Nedir?
Düzgün tasarlanan bir ağda bir hata oluşması neredeyse imkansız hale gelmiştir. Bunun sebebi ise yedekli ağların tasarlanması ve geliştirilmesidir. Dolayısıyla iyi bir hizmet veren veya piyasaya ün salmış bir kurum eğer müşterilerine hizmet verememe durumu yaşarsa, müşteri kaybı ve güvenilirliği ve ayrıca ticari kayıplara yol açacaktır.
Ağ üzerinde veri iletimi için kullanılan 2. Katman Anahtarlar (Switch) yedekli bağları düzgün yapılandırılmadığı zaman ağ üzerinde bir Loop (Döngü) oluşturmaktadır. Örneğin; iki adet Switch’i iki ağ kablosu ile birbirine bağladınız fakat yapılandırmadınız. Bu işlem rastgele yedekli bir ağ oluşturmaktır.
Aslında buradaki amaç bir kabloda oluşan hata durumunda diğer kablonun otomatik olarak devreye girmesidir. Daha detaylı bilgi verecek olursak, en hızlı bağ üzerinden çerçevelerin iletilmesi için en kısa yol yapılandırmasıdır.
Önceki yazımızda ağ yedekliliği hakkında detaylı bilgiler verdik ve ayrıca ağ yedekleme işleminde oluşan problemlerden bahsettik. Bu problemlerin en büyüğü Loop (Döngü)’tur. Ayrıca Broadcast Storm (Yayın Fırtınası) da diyebiliriz.
Aşağıdaki görüntü Loop oluşturan küçük bir ağ topolojisidir;
Yukarıdaki görüntüyü açıklayacak olursak, iki ayrıca Switch’e bağlı bilgisayarlar olduğunu düşünelim. Bu bilgisayarlar MAC adreslerine sahip olmadığı için ARP protokolü vasıtasıyla ağ üzerine Broadcast (ff:ff:ff:ff:ff:ff) gönderecektir. Broadcast çerçevesini alan Switch2, çerçeveyi aldığı arayüzden hariç tüm portlarından iletecektir.
Sonuç olarak, Switch2 Switch1’e Broadcast çerçevesini tekrar geri iletecek ve ayrca Broadcast çerçevesini alan bilgisayar da aynı şekilde Broadcast çervesini göndereceği için çoklu bir ARP trafiği oluşacaktır. Dolayısıyla ağ üzerinde bir döngü meydana gelecek ve iki Switch’ten biri kapatılmadığı sürece Loop devam edecektir. Veya Switch’lere bağlı her iki kablodan birini çıkararak Loop sona erer.
Peki, bu Broadcast çerçevesi neden sonsuza kadar devam edecek? Çünkü, Ethernet Frames (Ethernet Çerçeveleri) bir TTL (Time to Live – Yaşam Süresi) değerine sahip değildirler.
İşte tam bu noktada STP (Spanning Tree Protocol – Kapsama Ağacı Protokolü) devreye girecektir.
Çalışma Mantığı
STP, ağ üzerindeki Loop’ları önlemenin yanısıra en iyi yol seçimini yapar. STP çalışma mantığı temelde karışık olsa da Switch’ler üzerinde çok kolay yapılandırılmaktadır.
STP, döngüleri önlemek için STA (Spanning Tree Algorithm – Kapsama Ağacı Algoritması) algoritmasını kullanır.
Spanning Tree nasıl çalışır kısaca bahsedelim;
- Switch üzerinde yapılandırılan belirli arayüzleri yedek bağ olarak yedekler (standby) veya bloklar.
- Son aygıtlar için arayüzleri Forwarding (İletim) moda sokar.
- İletme yolunun arızalanması durumunda en uygun rotayı belirleyerek paketi iletir.
Switch’ler üzerinde Spanning Tree etkinleştirildikten sonra STA algoritması Switch’lerin bir haritasını yapılandırır. STA algoritması veri paketinin iletimi için yedek yol veya en iyi yolu belirlemek için bazı terimler kullanır.
Aşağıdaki görüntüye baktığımızda, 3 adet Switch’in birbirine bağlı olduğunu görüyoruz. ST Protokolü yapılandırılmış bir ağda Switch’ler kendi aralarında BPDU denilen paketler gönderir. Root Bridge (Ana Köprü) olarak seçilen Switch ağdaki diğer tüm Switch’lere BPDU (Bridge Protocol Data Units – Köprü Protokolü Veri Birimi) paketlerini her 2 saniyede bir gönderir.
Bir BPDU çerçevesi aşağıdaki bilgileri içerir;
- Kaynak Switch Kimlik Bilgisi
- Kaynak Switch Port Bilgisi
- Root Bridge Giden Yolun Toplam Maliyeti
- Maksimum Veri Paketi Zamanlayıcı Değeri
- Hello Paketlerinin Bilgisi
Yukarıdaki görüntüde açıklandığı gibi, her 2 saniye de bir Switch’ler arasında BPDU çerçeveleri gönderilecektir. Eğer isterseniz varsayılan hello paketlerinin süresini değiştirebilirsiniz. Root Bridge (Ana Köprü/Anahtar) olarak seçilen Switch için Bridge ID değeri nasıl belirlendi?
Root Bridge ve Designated Port Seçimi
Aslında tüm Switch’ler Root Bridge’dir ve tüm Switch’lerin varsayılan Priority (Öncelik) değeri 32768’dir.
Bridge ID değeri belirlenirken MAC Adresi ve Priority (Öncelik) değeri göz önünde tutulur. Tüm Switch’lerin varsayılan Priority değeri aynı ise, Bridge ID MAC adreslerine bakılarak belirlenir. Yukarıdaki görüntüde en küçük MAC adresi AAA’ dır ve en küçük MAC adresine sahip olan Switch-1 en iyi Bridge ID değerine sahip olacaktır ve dolayısıyla Root Bridge (Ana Köprü/Anahtar) olacaktır.
Root Bridge olarak belirlenen arayüzler her zaman Designated (Adanmış) olarak görev yapar ve bu daima Forwarding (İletme) durumu anlamına gelir.
Aşağıdaki görüntüde Switch-1 Root Bridge’dir ve Designated portları belirtir ayrıca “D” harfi ile açıklanır.
Root Port Seçimi
Spanning Tree Protocol yapılandırmasında Root Bridge Switch’e en kısa yol Root Port (Ana Port) olarak adlandırılır. Dolayısıyla yukarıdaki Switch-2 ve Switch-3 Ethernet0/0 arayüzleri Root Port olarak yapılandırılacaktır.
Spanning Tree Root Port seçiminde Path Cost (Yol Değeri) kullanılır. Normal şartlarda Bandwidth/1000 formülü ile hesaplansa da IEEE tarafından varsayılan Path Cost’lar aşağıdaki gibi belirlenmiştir.
Bandwidth (Bant Genişliği) | Path Cost (Yol Değeri) |
4 Mbps | 250 |
10 Mbps | 100 |
16 Mbps | 62 |
45 Mbps | 39 |
100 Mbps | 19 |
155 Mbps | 14 |
622 Mbps | 6 |
1 Gbps | 4 |
10 Gbps | 2 |
Ayrıca her bir Switch bağlantısında bir adet Root Port olmak zorundadır. Aşağıdaki örnekte Root Bridge en yakın arayüzler Root Port olarak belirlenmiştir.
Root Portları inceledikten sonra, Switch-2 ve Switch-3 Ethernet1/0 arayüzlerini inceleyelim.
Designated Port ve Non-Designated Port Seçimi
Designated Port seçimi yapılırken de MAC Adresi ve Priority değerleri incelenir. Her iki Switch’in Priority değerleri eşit ise, Designated Port için MAC adreslerine bakılacaktır.
Aşağıdaki örnekte Designated Port olarak Switch-2 seçildiğinde ise, diğer Switch döngüleri engellemek için Non-Designated / Blocked olarak seçilecektir.
Designated ve Non-Designated / Blocked Portlar belirlendikten sonra artık ağımız da Loop (Döngü) oluşmayacaktır. Yukarıdaki görüntülerde Switch’ler arasındaki bağlantılar aynı Path Cost değerlerine sahiptir. Bu yüzden birden fazla Switch’ten meydana gelen bir ağda bu portlar farklılık gösterebilir. Ayrıca, Non-Designated / Blocked olarak seçilen Port Turuncu renkte olacaktır.
Cisco Packet Tracer’da STP’yi Anlama
Spanning-Tree protokolünü daha iyi anlamak için Cisco Packet Tracer programında 4 adet Switch ekleyerek STP detaylarını inceleyelim.
Yukarıdaki ağ topolojisini incelediğimizde, tüm Switch’lerin aynı Priority değerlerine sahip olduğunu görebiliriz. Ve bu yüzden STP, Root Bridge seçiminde MAC adresini değerlendirerek en düşük Bridge ID değerine sahip olan Switch’i Root Bridge olarak seçecektir.
- Root Bridge seçildikten sonra kendi portlarına bağlı arayüzler Designated Port olacaktır. Çünkü hem Bridge Switch’ine bağlı bağlar Root durumdadır. Bir sonraki adım Root Port’ların seçilmesidir.
- Root Port’ların seçilmesinde ise, Root Bridge Switch’e giden Path Cost göz önünde tutulur. Eğer Path Cost’lar eşitse Switch0 ve Switch3 Root Port olarak seçilecektir. Örneğin; Switch3 ve Switch2 arası Path Cost değeri 19 olsaydı, Swich3’ten Root Bridge giden bağ Non-Designated/Blocked duruma girecekti.
- Root Port’lar belirlendikten sonra, Switch1 bağları yapılandırılacaktır. Öyleyse, Swictch1 Root Bridge giden Path Cost hesaplanır. Eğer Path Cost eşitse (4+4), Switch1 MAC Adresi ve Priority incelenir. Yukarıdaki topolojiye göre Priority değerleri eşittir ve dolayısıyla MAC Adresleri dikkate alınır. Switch1, Switch0 ve Switch3 Bridge ID değerlerine bakar ve en düşük değeri olan Switch0 bağını Root Port olarak belirler.
Daha sonra, geriye tek bir arayüz kalıyor ve bu arayüz de döngüleri önlemek amacıyla Non-Designated / Blocked olarak yapılandırılacaktır. Sonuç olarak bu protokol ağ üzerinde BPDU çerçevelerini diğer Switch’lere gönderip alarak ağ haritasını tasarlamıştır.
Video
Cisco Packet Tracer’da üç adet Cisco Switch’i çapraz kablo ile birbirine bağladıktan sonra STP yakınsamasını incelemek için aşağıdaki videoyu izleyebilir ve ayrıca YouTube kanalımıza abone olabilirsiniz!
Sonuç
Network Switch’lerde varsayılan olarak STP etkin durumdadır ve otomatik olarak yol seçimlerini yaparlar. Fakat ağ üzerindeki Switch’lerin yönetimi manuel olarak yapılandırmak çok önemlidir. Cisco Switch BPDU paketlerinin yönetimi güvenlik açısından son derece önemlidir. Bizi takip ettiğiniz için teşekkürler!