Spanning Tree (STP) Protokolü Nedir?

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.

Spanning Tree (STP) Protokolü Nedir?

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;

Bir Ağda Loop'un Oluşması

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.

STP Nasıl Çalışır?

STP (Spanning Tree Protokol – Kapsama Ağacı Protokolü) 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.

STP nasıl çalışır kısaca bahsedelim;

1. Switch üzerinde yapılandırılan belirli arayüzleri yedek bağ olarak yedekler (standby) veya bloklar.
2. Son aygıtlar için arayüzleri Forwarding (İletim) moda sokar.
3. İletme yolunun arızalanması durumunda en uygun rotayı belirleyerek paketi iletir.

Switch’ler üzerinde STP 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. Spanning Tree 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.

Switch'ler Arasında BPDU Paketi

Bir BPDU çerçevesi aşağıdaki bilgileri içerir;

1. Kaynak Switch Kimlik Bilgisi
2. Kaynak Switch Port Bilgisi
3. Root Bridge Giden Yolun Toplam Maliyeti
4. Maksimum Veri Paketi Zamanlayıcı Değeri
5. 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.

Designated Port Seçimi

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 Mbps250
10 Mbps100
16 Mbps62
45 Mbps39
100 Mbps19
155 Mbps14
622 Mbps6
1 Gbps4
10 Gbps2

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 Port Seçimi

Root Portları inceledikten sonra, Switch-2 ve Switch-3 Ethernet1/0 arayüzlerini inceleyelim.

Designated Port ve Non-Designated Port Seçimi

Spanning Tree protokolü 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 Port ve Non-Designated Port Seçimi

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 Anlama

Spanning-Tree protokolünü daha iyi anlamak için Cisco Packet Tracer programında 4 adet Switch ekleyerek STP detaylarını inceleyelim.

Packet Tracer'da STP Protokolünü İnceleme

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.

1. 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.

2. 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.

3. 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.

STP Nasıl Çalışı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!

   Son Söz


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!

   İlgili Yazılar


Switch Access Port
♦ Cisco Switch Trunk
♦ Cisco Port Security
♦ Native VLAN
Anahtarlama Çeşitleri

Add a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

shares
error: