Paid-by-themewiki.top
EnglishFrenchGermanItalianJapanesePortugueseRussianSpanishTurkish

CCNA Gün 14 - STP (Spanning Tree Protocol)

Bu yazıda STP (Spanning Tree Protocol) ve PVST (Per-VLAN Spanning Tree) konularını ayrıntılı olarak öğreneceğiz.

Ağ Yedekliliği (Network Redundancy)

  • Yedeklilik, Ağ Tasarımının önemli bir parçasıdır. Yedekli olmayan bir ağ kesinlikle kabul edilemez.

  • Modern ağların günde 24 saat, haftada 7 gün, yılda 365 gün çalışması bekleniyor. Kısa bir kesinti bile bir işletme için felaket olabilir. Amazon ağının bir saatliğine kesintiye uğradığını hayal edin, bu kesinlikle iş için kötü olurdu.

  • Bir Ağ Bileşeni arızalanırsa, diğer bileşenlerin çok az veya hiç kesinti olmadan devralmasını sağlamalısınız.

  • Mümkün olduğunca ağdaki olası her noktada Yedeklilik uygulayıp altyapının mümkün olduğunca arızalara karşı dayanıklı olduğundan emin olmalıyız.

Yukarıdaki resimde kötü tasarlanmış bir ağ var. Bu Ağda bağlantının kesilebileceği birçok nokta vardır. Örneğin bir donanım arızası nedeniyle aşağı resimdeki bağlantı kesilirse, ağın tamamı internet bağlantısını kaybeder.

Veya bir donanım arızası nedeniyle aşağı resimdeki bağlantı kesilirse, Hostlar LAN içi ve internet bağlantılarını kaybederler.

Aşağıdaki Ağ, çok daha iyi bir bir tasarıma sahip.

Bir Host internete erişmek istiyorsa, normal bir durumda aşağı resimdeki yolu kullanabilir.

Ancak aşağı resimdeki Router bir donanım arızası yaşasa ve tamamen çökse bile, Host internete aşağı resimdeki yoldan veya başka bir alternatif yoldan ulaşabilir.

LAN'daki diğer PC'ye giden trafik aşağı resimdeki yolu takip edebilir.

Aşağı resimdeki Switch, devre dışı kalırsa ne olur? Bu bir sorun değil, çünkü alternatif yol mevcut.

Dolayısıyla Ağ Yedekliliğinin faydasını görebiliyoruz.

Ancak aşağı resimdeki Switch devre dışı kalırsa ne olacak diye soruyor olabilirsiniz. Bu durumda, bu Switch'e bağlı olan tüm Hostlar bağlantıyı kaybeder.

Ne yazık ki çoğu bilgisayarda yalnızca tek bir Network Interface Card (NIC) bulunur, bu nedenle sadece bu Switch'e takılabilirler. Ancak önemli Sunucular, tipik olarak birden çok NIC'e sahiptir, bu nedenle Yedeklilik amacıyla birden çok Switch'e takılabilirler.

Ağ Yedekliliği için birçok konuyu ele alacağız ve STP bunlardan biridir. STP, Layer 2 Protokolüdür.

STP olmadığında karşılaşabileceğimiz büyük bir sorun var.

Broadcast Storm

Bir Switch'in bir Broadcast veya Unknown Unicast Frame aldığı zaman ne yaptığını biliyorsunuz. 

Örneğin PC1'in PC2'ye trafik göndermek istediğini varsayalım. Bunu yapmak için PC2'nin MAC Adresini bilmesi gerekir.

PC1 bir ARP Request (Broadcast) Frame gönderdi, SW1 Frame'i aldığı zaman ne yapacak? Flood.

SW2 ve SW3, Frame'in bir kopyasını alır. Daha sonra aynı şeyi yaparlar. Flood.

1. Durum

PC2 ARP Request mesajını alır ve ARP Reply (Unicast) ile yanıt verir.

Her şey güzel? Aslında hayır. PC2, ARP Request mesajını alıp ARP Reply göndermesine rağmen, bu Broadcast Frame'ler hala ağda kalır, Loop (Döngü) oluşur.

2.Durum

SW1, iki farklı Portundan 2 adet Broadcast Frame aldı. Flood.

SW2 ve SW3 yeni alınan Broadcast Frame'leri ne yapacaklar? Flood. Loop oluşuyor. Bu sonsuza kadar devam eder.

IP Başlığının TTL alanını hatırlıyor musunuz? OSI Modelinin 3. Katmanında (Network Layer) sonsuz döngüleri önlemek için kullanılır.

Ethernet Başlığı, TTL alanına sahip değildir. Broadcast Frame'ler Ağda Döngüye (Loop) neden olursa, normal trafik Ağ içinde kullanılamaz hale gelebilir. Buna Broadcast Storm denir.

Broadcast Storm sonucunda ağınız böyle görünecek, o kadar döngüsel Broadcast Frame'ler ile dolu olacak ki ağınızın üzerinden normal trafik geçemeyecektir.

broadcast storm

Broadcast Storm tek sorun değildir. Switch Portuna bir Frame geldiğinde, Switch MAC Adresini öğrenmek ve MAC Adres Tablosunu güncellemek için Source MAC Adres alanını kullanır. Ancak Switch aynı Source MAC Adresine sahip Frame'leri tekrar tekrar farklı Portlarından aldığında, MAC Adres Tablosundaki Port bilgisini sürekli olarak günceller (MAC Adres Tablosundaki MAC Alanı Unique olmak zorunda). Bu, MAC Address Flapping olarak bilinir.

Layer 2 Döngüleri ile sonuçlanmayan yedekli yollara sahip bir ağı nasıl tasarlayabiliriz? STP bu soruya bir cevaptır.

STP (Spanning Tree Protocol)

  • Klasik Spanning Tree Protokolü IEEE 802.1D ile tanımlanmıştır.

  • Layer 2 Döngülerini önlemek çok önemli olduğundan, tüm marka Switch'ler varsayılan olarak STP çalıştırır.

STP, Yedekli Portları Blocking Durumuna getirerek Layer 2 Döngülerini önler. Aktif bir Port, yani o anda trafiği iletmekte olan bir Port devre dışı kalırsa, trafiği iletebilecek Yedekli Portlar aktif olur.

Forwarding State: Port normal şekilde davranır. Tüm normal trafiği gönderir ve alır.

Blocking State: Port yalnızca STP Mesajlarını (BPDU = Bridge Protocol Data Unit) alır.

BPDU Mesajındaki kısaltma olan Bridge'den bahsedelim.

Switch'lerden önce Hub ve Bridge vardı.

Bridge'den bahsetmemin nedeni, STP'nin hala Bridge terimini kullanmasıdır. Ancak Bridge terimini kullandığımızda aslında Switch demek istiyoruz. Modern ağlarda Bridge kullanılmaz.

Topoloji

Yeşil Renkteki Portlar Forwarding, Turuncu Renkteki Port Blocking Durumunu belirtiyor. SW2 - SW3 arasındaki bağlantı devre dışı bırakıldı (aralarında öyle bir bağlantı yokmuş gibi).

PC1, ARP Request (Broadcast) Frame gönderirse, Ağ Üzerinde aşağıdaki resimde olduğu gibi gönderilir, Loop (Döngü) oluşmaz.

Herhangi bir Aktif Durumda (Forwarding State) olan Port devre dışı kalırsa, Switch'ler topolojiyi otomatik olarak ayarlayacak ve Broadcast Frame Ağ Üzerinde aşağıdaki resimde olduğu gibi gönderilecek, yine Loop (Döngü) oluşmayacaktır.

  • STP, hangi Portların Forwarding ve hangi portların Blocking Durumunda olacağını seçerek Ağdaki her noktaya giden tek bir yol (Single Path) oluşturur. Bu Layer 2 Döngülerini önler.

  • STP, hangi Portların Forwarding ve Blocking Durumunda olacağını belirlemesi için kullandığı bir dizi işlem vardır.

  • STP özellikli Switch, tüm Portlarından Hello BPDU gönderir, varsayılan gönderme süresi 2 saniyede birdir.

  • Switch bir Portunda Hello BPDU alırsa, Portun başka bir Switch'e bağlı olduğunu bilir, çünkü Router, PC, vb. cihazlar STP kullanmazlar, dolayısıyla Hello BPDU göndermezler.

Yukarıdaki resimde Switch'ler her Portundan Hello BPDU gönderiyor. Switch'ler BPDU'ları kullanarak kendilerini diğer Switch'lere tanıtır ve diğer Switch'ler hakkında bilgi edinirler.

BPDU, tam olarak ne için kullanılıyor?

  • Switch'ler Ağ için bir Root Bridge seçmek için, BPDU Mesajındaki bir alan olan Bridge ID alanını kullanır. En düşük Bridge ID'ye sahip Switch, Root Bridge olur.

  • Root Bridge seçilen Switch'deki tüm Portlar Forwarding State/Designated Port olur ve topolojideki diğer Switch'lerin Root Bridge'e ulaşması için bir yolu olmalıdır.

  • Ağdaki diğer Switch'ler Layer 2 Döngülerinden kaçınmak için Portlarını Blocking veya Forwarding Duruma getirir.

STP Bridge ID Alanı

stp bridge id alanı

  • Root Bridge seçimi için ilk olarak Bridge Priority Alanına bakılır, daha sonra MAC Adrese bakılır.

  • Tüm Switch'lerde Varsayılan Bridge Priority 32768'dir.

  • MAC Adresi, Tie-Breaker olarak kullanılır ve varsayılan olarak en düşük MAC Adresine sahip Switch, Root Bridge olur.

Topoloji

Her Switch'in G0/2 Portu PC'ye bağlıdır. Switch'ler G0/2 Portundan BPDU almadığı için Forwarding State/Designated Port yapmanın güvenli olduğunu bilir, Layer 2 Loop oluşturma riski yoktur. Bu nedenle bu bağlantılar yeşil.

Her üç Switch'in de Bridge Priorty değeri 32768'dir. Hangisinin Root Bridge olacağını belirlemek için MAC Adreslerini karşılaştırmamız gerekecek. SW1, en düşük MAC Adresine sahiptir, bu nedenle SW1 bu ağda Root Bridge olacaktır.

Root Bridge'in Portları Forwarding State/Designated Port olacaktır.

Cisco Switch, PVST (Per-VLAN Spanning Tree) adlı bir STP sürümü kullanır.

PVST, her VLAN'da ayrı bir STP Instance çalıştırır, böylece her VLAN'da farklı Portlar Forwarding veya Blocking Durumda olabilir. Bir Port, örneğin VLAN1'de Forwarding, ancak VLAN2'de Blocking Durumunda olabilir.

Bu nedenle Bridge Priority aşağı resimdeki gibi güncellendi.

pvst bridge id alanı

Extended System ID (VLAN ID), Bridge Priority alanına eklenerek, Switch'in her VLAN'da farklı bir Bridge Priority değeri olması sağlandı.

Bridge Priority

pvst bridge priority alanı

Geleneksel varsayılan Bridge Priority değeri 32768'di. Bu en önemli bitin 1 yapılması, diğer bitlerin 0 olması ile oluyordu. Fakat Bridge Priority alanına VLAN ID eklenmesiyle bu değişti. Dolayısıyla Varsayılan VLAN 1'dir, bu nedenle toplam Bridge Priority değeri aslında 32768 değil, 32769'dur (32768 + 1).

VLAN Numarasını değiştirmeden Switch Bridge Priority değerini arttırmak istiyorsanız, minimum artış/azaltma aralığı nedir?

Extended System ID alanı, VLAN ID tarafından belirlendiği için değiştirilemez. Bu nedenle, STP Bridge Priority alanını 4096 birim kadar değiştirebilirsiniz.

Yani varsayılan 32769 olan Bridge Priority değerini biraz azaltmak istersek: 32768 - 4096 = 28672 + 1 = 28673 olur.

Yapılandırabileceğiniz geçerli değerler: 0, 4096, 8192,…, 32768,…., 61440. Toplam Bridge Priority değerini bulmak için Extended System ID (VLAN ID) değeri bu sayılara eklenecektir.

Topoloji

Biz sadece tek bir VLAN, VLAN1 için Topolojiye bakacağız, bu nedenle her Switch'in Bridge Priority değeri 32769'dur. Ancak bu Ağda örneğin VLAN1, VLAN2 ve VLAN3 gibi birden fazla VLAN varsa, Bridge Priority VLAN 2 için 32770, VLAN 3 için 32771 olacaktır, vb.

Belirli bir VLAN için Switch'lerdeki Bridge Priority değerini değiştirebiliriz, örneğin SW1 VLAN1'deki Root Bridge, SW2 VLAN2'deki Root Bridge ve SW3 VLAN 3'deki Root Bridge olabilir (Bununla ilgili bir komut var, ileride göreceğiz).

Bizim Topolojimizde VLAN 1 için Root Bridge SW1'dir.

Root Bridge

  • Switch ilk açıldığında Root Bridge olduğunu varsayar. Sadece Superior BPDU (Lower Bridge ID) alırsa konumundan vazgeçecektir ve Superior BPDU, daha düşük Bridge ID'ye sahip Switch'den gelen BPDU anlamına gelir.

  • Tüm Switch'ler Root Bridge üzerinde anlaştığında, yalnızca Root Bridge BPDU gönderir. Tüm Switch'lerin ilk başta BDPU göndermesinin nedeni, hepsinin Root Bridge olduklarını düşünmeleridir.

  • Ağdaki diğer Switch'ler ise BPDU'ları Designated Portları üzerinden iletecek, kendi orijinal BPDU'larını üretmeyeceklerdir.

Spanning Tree Quiz 1

Bu ağda hangi Switch Root Bridge olacak? SW3. Hem SW1 hem SW3 aynı Bridge Priority değerine sahiptir (12289), ancak SW3'ün MAC Adresi daha düşüktür.

Spanning Tree Quiz 2

Bu ağda hangi Switch Root Bridge olacak? SW4.

Spanning Tree Adımları

  • En düşük Bridge ID'ye sahip Switch, Root Bridge seçilir. Root Bridge'deki tüm Portlar Designated Porttur, bu nedenle tüm Portlar Forwarding State olur.

  • Diğer tüm Switch'ler, Portlarından birini Root Port olarak seçecektir. En düşük Root Cost'a sahip Port, Root Port olacaktır.

Her Portun ilişkili olduğu bir STP Cost Değeri vardır.

Topoloji

Switch'lerin Portları Gigabit Ethernet Portudur, dolayısıyla hepsinin Cost'u 4'dür. 

Root Cost: Root Bridge'e olan yol boyunca gidilen Portların toplam Cost'udur.

SW1 Root Bridge'dir, bu nedenle tüm Portlarının Cost'u 0'dır.

SW1, BPDU ile Root Cost = 0 ilan eder.

SW2, BDPU'yu alacak ve BDPU'yu diğer tüm Designated Portlarından gönderdiğinde, G0/1 Portunun Cost'unu (4) ekleyecektir. SW3 de aynısını yapacaktır.

Peki, SW2'nin Root Port olarak hangi Portunu seçeceğini düşünüyorsunuz?

SW2'nin Mantığı:

  • G0/1 Portu üzerinden bana 0 Cost ilan edildi. Benim G0/1 Port Cost 4. Bu nedenle G0/1 üzerinden toplam maliyet = 4

  • G0/0 Portu üzerinden bana 4 Cost ilan edildi. Benim G0/0 Port Cost 4. Bu nedenle G0/0 üzerinden toplam maliyet = 8

Dolayısıyla Root Port olarak G0/1 Portunu seçecektir. SW3'ün mantığı da aynıdır.

  • G0/0 Portu üzerinden bana 0 Cost ilan edildi. Benim G0/0 Port Cost 4. Bu nedenle G0/0 üzerinden toplam maliyet = 4

  • G0/1 Portu üzerinden bana 4 Cost ilan edildi. Benim G0/1 Port Cost 4. Bu nedenle G0/1 üzerinden toplam maliyet = 8

Dolayısıyla SW3 Root Port olarak G0/0 Portunu seçecektir.

stp root port selection

Root Portun karşısındaki Port, Designated Port olmalıdır. Root Port, Switch'in Root Bridge'e giden yolu olduğundan, başka bir Switch onu engellememelidir. Yukarıdaki durumda, her bir Root Portun karşısındaki Portlar Root Bridge'dir, dolayısıyla zaten Designated Porttur.

Spanning Tree Adımları - Özet

  • Root Bridge Seçimi

    • Lowest Bridge ID. En düşük Bridge ID'ye sahip Switch, Root Bridge seçilir. Root Bridge'deki tüm Portlar Designated Porttur, bu nedenle tüm Portlar Forwarding State olur.

  • Root Port Seçimi

    • Lowest Root Cost. Diğer tüm Switch'ler, Portlarından birini Root Port olarak seçecektir. En düşük Root Cost'a sahip Port, Root Port olacaktır.

    • Lowest Neighbor Bridge ID. Switch'in aynı Root Cost'a sahip birden fazla Portu varsa ne olur? Bu durumda en düşük Bridge ID'ye sahip komşuya bağlanan Port, Root Port olarak seçilecektir.

Spanning Tree Quiz 3

İlk olarak, hangi Switch Root Bridge olacak? SW2. Bu nedenle, SW2'nin Portlarının tümü Designated Porttur.

Diğer Switch'lerin hangi Portu Root Port olacak? Tüm Portlar Gigabit Ethernet Portudur, bu yüzden hepsinin Cost'u 4'tür. SW1 G0/0 ve SW4 G0/1'in Cost'u 4'tür, bu yüzden Root Port seçilirler.

SW3 G0/0 Portu üzerinden 8 (4 + 4) Cost'u vardır. G0/1 Portu da de aynı Cost'a (8) sahiptir. Bu nedenle hangi komşu Switch'in en düşük Bridge ID'ye sahip olduğunu bulmalıyız. SW1. Böylece, Root Port olarak G0/0 seçilir ve SW1'in G0/1 Portu Designated Port olur.

Root Portu seçmek için gerekli olabilecek bir adet daha Tie-Braker vardır. İki Switch arasında 2 bağlantı varsa, yani hem Root Cost hem de Neighbor Bridge ID aynıysa?

    • Lowest Neighbor Port ID. En düşük Port ID'ye sahip komşuya bağlı Port, Root Port olacaktır.

STP Hakkında Bilgi Görüntüleme Komutu: show spanning-tree [vlan vlan-id]

show spanning tree

Kırmızı bölüm Switch'deki her Portun STP Port ID bilgisini gösterir. Her Portun varsayılan önceliği 128'dir ve ardından bu Switch'de G0/0 için 128.1, G0/1 için 128.2 gibi Unique Port ID vardır.

Spanning Tree Quiz 4

SW1 ve SW3 arasında iki bağlantı var. SW3, Root Port olarak hangi Portu seçecek? G0/2.

SW3 G0/0, G0/1, G0/2 Portlarının Root Cost'u 8'dir. Bu nedenle Portların bağlandığı komşu Switch'lerin Bridge ID'sine bakılır. SW1, SW3'den daha düşük Bridge ID'ye sahip olduğundan seçilir. Fakat G0/2 ve G0/0 Portları aynı Switch'e bağlandıklarından dolayı Bridge ID'leri aynı olur. Bu yüzden Tie-Braker olarak Port ID'ye bakılır. SW1 G0/1 Port ID varsayılan olarak 128.2, G0/2 varsayılan Port ID 128.3'dür. Bu durumda komşu Switch SW1'deki en düşük Port ID G0/1'dir ve ona bağlı olan Port da G0/2'dir. SW3 G0/2 Root Port seçilir, SW1'in G0/1 Portu, SW3'ün Root Portuna bağlı olduğu için Designated Port olur.

Spanning Tree Adımları - Özet

  • Root Bridge Seçimi

    • Lowest Bridge ID. En düşük Bridge ID'ye sahip Switch, Root Bridge seçilir. Root Bridge'deki tüm Portlar Designated Porttur, bu nedenle tüm Portlar Forwarding State olur.

  • Root Port Seçimi

    • Lowest Root Cost. Diğer tüm Switch'ler, Portlarından birini Root Port olarak seçecektir. En düşük Root Cost'a sahip Port, Root Port olacaktır.

    • Lowest Neighbor Bridge ID. Switch'in aynı Root Cost'a sahip birden fazla Portu varsa ne olur? Bu durumda, en düşük Bridge ID'ye sahip komşuya bağlanan Port, Root Port olarak seçilecektir.

    • Lowest Neighbor Port ID. En düşük Port ID'ye sahip komşuya bağlı Port, Root Port olacaktır.

Şimdiye kadarki sürecimiz bu. Ancak hala bir Portu Blocking State yapmadık, Layer 2 Loop önlemek için bazı Portları Blocking State yapmamız gerekiyor.

Yukarıdaki topolojiye geri dönelim. Burada geriye kalan tek şey SW2 ve SW3 arasındaki bağlantıdır. 

Not: Root ve Designated Port = Forwarding State.

Switch'deki Her bir Port, ayrı bir Collision Domain'dir.  Her Collision Domain'de tek bir Designated Port vardır.

SW1 ve SW2 arasındaki Collision Domain'de bir adet Designated Port vardır, SW1 G0/0. SW1-SW3 arasındaki Collision Domain'de Designated Port SW1 G0/1'dir. PC'lerde STP olmadığından, PC'lerle olan bağlantıların tümü Designated Porttur.

Bu nedenle SW2 ve SW3 arasındaki bağlantıda Designated Porta ihtiyacımız var.

İki Switch Arasındaki Collision Domain'de Designated Port Belirleme Adımları

  • Her Switch'in Root Portu baz alınarak, en düşük Root Cost'a sahip Switch, Portunu Designated Port yapacaktır. Ancak bu durumda her iki Switch'in de Root Port Root Cost'u aynı. SW2 G0/1 Root Port için Root Cost = 4 ve SW3 G0/0 Root Port için Root Cost = 4'tür.

  • Root Cost aynıysa, en düşük Bridge ID'ye sahip Switch, Designated Portu belirler. SW2, daha düşük Bridge ID'ye sahiptir, dolayısıyla G0/0 Designated Port olacaktır. Diğer Switch, Portunu Non-Designated Port (Blocking State) yapacaktır. Bu durumda SW3 G0/1 Non-Designated Port olur, Layer 2 Loop önlemek için Portunu bloklar.

Spanning Tree Adımları

  • Root Bridge Seçimi

    • Lowest Bridge ID. En düşük Bridge ID'ye sahip Switch, Root Bridge seçilir. Root Bridge'deki tüm Portlar Designated Porttur, bu nedenle tüm Portlar Forwarding State olur.

  • Root Port Seçimi

    • Lowest Root Cost. Diğer tüm Switch'ler, Portlarından birini Root Port olarak seçecektir. En düşük Root Cost'a sahip Port, Root Port olacaktır.

    • Lowest Neighbor Bridge ID. En düşük Bridge ID'ye sahip komşuya bağlanan Port, Root Port olarak seçilecektir.

    • Lowest Neighbor Port ID. En düşük Port ID'ye sahip komşuya bağlı Port, Root Port olacaktır.

  • İki Switch Arasındaki Collision Domain'de Designated Port Seçimi

    • Her Switch'in Root Portu baz alınarak, en düşük Root Cost'a sahip Switch, Portunu Designated Port yapacaktır.

    • Root Cost aynıysa, en düşük Bridge ID'ye sahip Switch, Designated Portu belirler.

Spanning Tree Quiz 5

Root Bridge: SW3 (En düşük MAC Adresi)
SW3 G0/0 ve G0/1 Designated Port. SW1 G0/1 Root Port, SW4 G0/0 Root Port.

SW2'nin Root Portunu bul. G0/0 Root Cost 8, G0/1 Root Cost 8, G0/2 Root Cost 8. Tüm Portların Root Cost'u aynı. Bu nedenle Portların komşu olduğu Switch'lerin Bridge ID'lerine bak. G0/1, G0/2 Bridge ID (SW1) ve G0/0 Bridge ID (SW4) karşılaştır. Bridge Priority değerleri aynı olduğundan en düşük MAC Adresine sahip SW1 seçilir.  Fakat SW1'e bağlı 2 Port (G0/1, G0/2) var ve Root Cost ve Bridge ID'leri aynı. Bu nedenle komşu Switch (SW1) G0/0 ve G0/2 Portlarının Port ID'sine bakılır, G0/0 Port ID: 128.1, G0/2 Port ID: 128.3 olduğundan en düşük olan G0/0 seçilir ve ona bağlı olan SW2 G0/2 Root Port olur ve komşu Port G0/0 Designated Port olur.

SW4 ile SW2 bağlantısı arasındaki Collision Domain'de Designated Port olmalıdır. SW2 Root Port G0/2 Root Cost'u 8, SW4 Root Port G0/0 Root Cost'u 4'dür. Bu nedenle SW4 G0/1 Designated Port seçilir, karşısındaki Port SW2 G0/0 ise Non-Designated Port olur.

SW1 ile SW2 bağlantısı arasındaki Collision Domain'de (SW1 G0/2 - SW2 G0/1) Designated Port olmalıdır. SW1 Root Port G0/1 Root Cost 4, SW2 Root Port G0/2 Root Cost 8'dir. Bu nedenle SW1 G0/2 Designated Port seçilir, karşısındaki Port SW2 G0/1 ise Non-Designated Port olur.

Spanning Tree Quiz 6

Root Bridge: SW4 (En düşük Bridge Priority)

SW4 G0/0, G0/1, G0/2 Designated Port olur.

SW1 G0/1 en düşük Root Cost'a sahip olduğundan Root Port olur.

SW2 G0/0 ve G0/1 Root Cost'u aynıdır. Bu nedenle komşu Switch Bridge ID'ye bakılır. Fakat aynı Switch olduğundan Bridge ID de aynıdır. Bu nedenle komşu Switch Portlarının Port ID'lerine bakılır. SW4 G0/0 Port ID 128.1, SW4 G0/1 Port ID 128.2 olduğundan en düşük Port ID'ye sahip SW4 G0/0 Portu seçilir ve ona bağlı olan SW2 G0/0 Portu Root Port olarak seçilir.

SW1 Fa2/0 - SW2 Fa1/0, SW1 Fa1/0 - SW2 Fa2/0 ve SW2 G0/1 - SW4 G0/1 bağlantıları yedekli yol olarak kullanılacaktır. Bu bağlantılardaki Collision Domain'de Designated Portları belirlemeliyiz.

SW1 Fa2/0 - SW2 Fa1/0 ve SW1 Fa1/0 - SW2 Fa2/0 bağlantıları için, SW1 Root Port G0/1 Root Cost 8'dir, SW2 Root Port G0/0 Root Cost 4'dür. Bu nedenle SW2 Fa1/0 Designated Port, SW1 Fa2/0 Non-Designated Port olarak seçilir. Aynı şekilde SW2 Fa2/0 Designated Port, SW1 Fa1/0 Non-Designated Port olarak seçilir.

SW2 G0/1 - SW4 G0/1 bağlantısı için, SW4 G0/1 Designated Port olduğundan ve karşısındaki Port, Root Port olamayacağından SW2 G0/1 Non-Designated Port olur.

STP Konusunun ilk bölümünü bitirdik, şimdi konuyu tekrar etmek için Packet Tracer Simulator Programında LAB yaparak konuyu pekiştirelim.

LAB 1 - ANKI 1

LAB 1 Çözümü

İlk olarak LAB'ı kendiniz yapmayı deneyin. LAB'ı yaparken takılırsanız/yapamazsanız veya yaptığınız çözümü doğrulamak için buradaki çözümü inceleyebilirsiniz.

Which SW is the root bridge? -> SW3 (Lowest Bridge ID)

Identify the role (root/designated/non-designated) of each SW Port.

SW3 Root Bridge olduğundan F0/2, F0/1, F0/3, G0/1 Designated Porttur. 
SW4 G0/2 Root Cost 4, G0/1 Root Cost 4 + 19 = 23 olduğundan SW4 G0/2 Root Porttur.

SW2 F0/3 Root Cost 19, G0/1 8, F0/1 ve F0/2 Root Cost 38 olduğundan, SW2 G0/1 Root Port seçilir ve karşısındaki Port (SW4 G0/1) Designated Port olur.

SW1 F0/3 ve F0/4 Root Cost 19, F0/1 ve F0/2 Root Cost 19 + 8 = 27'dir. Bu nedenle Root Port olarak F0/3 veya F0/4 seçilir, fakat ikisinin de Root Cost'u aynı. Bu yüzden Portların karşısındaki Switch'lere bakılır, en düşük Bridge ID'ye sahip Switch seçilir. Fakat burada zaten iki Port da tek bir Switch'e bağlı (SW3). Bu nedenle Portların bağlı olduğu karşı Switch Portlarının Port ID'lerine bakılır. SW3 F0/2 Port ID 128.3, SW3 F0/1 Port ID 128.2 olduğundan SW3 F0/1 seçilir ve bu Porta bağlı olan SW1 Portu F0/4 Root Port seçilir.

Diğer bağlantılar yedekli yol olarak kullanılır.
SW1 F0/3 ve SW2 F0/3 için zaten tek bir rol kalmıştır, o da Non-Designated Porttur. 

SW1 F0/1 - SW2 F0/1 ve SW1 F0/2 - SW2 F0/2 bağlantıları için Collision Domain'de bir Designated Port belirlenmelidir.

SW1 Root Port Root Cost 19. SW2 Root Port Root Cost 8 olduğundan SW2 F0/1, F0/2 Designated Port, SW1 F0/1, F/2 Non-Designated Port olacaktır.

Cevaplarımızı Spanning Tree komutları ile doğrulayalım.

show spanning tree

SW3

VLAN001 -> VLAN bilgisi.  

Switch'de birden fazla VLAN olsaydı, tüm bu bilgilerin her VLAN için ayrı olarak listelendiğini görürsünüz. Bu komutun çıktısını, tek bir VLAN gösterecek şekilde filtreleyebilirsiniz: show spanning-tree vlan 1

  • Spanning Tree enabled protocol ieee -> ieee, Klasik STP'yi kullandığımız anlamına gelir (802.1D) veya Cisco PVST.
  • Root ID: Ağdaki Root Bridge'in bilgileri

    • This bridge is the root.

  • Bridge ID
    • Priority 24577 (priority 24576 sys-id-ext 1 (VLAN ID=1))

Alttaki Tabloda Portların; Role, State, Cost (Toplam Cost değil, sadece bu Portun Cost'udur), Port ID (Prio. Nbr), Type bilgileri bulunmaktadır.

STP Hakkında Ayrıntılı Bilgi Görüntüleme Komutu: show spannig-tree detail

STP Mode, STP Optional Feature, STP State Port Sayıları Hakkında Bilgi Görüntüleme Komutu: show spanning-tree summary

SW3

STP Active sütunu, aktifleştirilmiş toplam STP Port sayısını belirtir. Varsayılan olarak, başka bir cihaza bağlanan ve etkinleştirilen her portta STP aktiftir.

SW4

SW2

SW1

Root ID
Port: 4 (FastEthernet0/4) -> Root Port

Role: Root -> Root Port

Role: Altn -> Alternate Port (Non-Designated)

Sts: FWD -> Forwarding State

Sts: BLK -> Blocking State

Cost: 19 -> Bu toplam Cost değil, sadece bu Portun Cost'udur. Toplam Cost'u öğrenmek için Root ID bölümünden Cost bilgisine bakın veya show spannig-tree detail komutunu kullanın.

Ağ Tasarımında Kullanılan Yaygın Switch Türleri

  • Access Layer Switch
  • Distribution Layer Switch
  • Core Layer switch


Spanning Tree Port States

stp port states

Forwarding ve Blocking State = Stable

Listening ve Learning State = Transitional

Root/Designated Portlar, Forwarding State olarak Stable olur.
Non-Designated (Alternate) Portlar, Blocking State olarak Stable olur.

Ağ Topolojisinde herhangi bir değişiklik olmadığı sürece Switch'ler Stable kalırlar. Yeni bir cihaz eklenirse, bir Port kapanırsa veya bir yerde donanım arızası meydana gelirse, State değiştirmek zorunda kalabilirler.

Transitional States (Listening ve Learning) Port etkinleştirildiğinde veya ağ topolojisindeki bir değişiklik nedeniyle Blocking State bir Port, Forwarding State Port olduğunda kullanılırlar.

Disable State. Yönetimsel olarak devre dışı bırakılmış, yani shutdown komutu uygulanmış Porta atıfta bulunur.

Blocking State / Stable

  • Non-Designated Portlar Blocking State'dir.
  • Blocking State Portlar, Loop önlemek için devre dışı bırakılır.
  • Blocking State Portlar, normal ağ trafiği göndermez/almaz. Blocking State Porta gelen herhangi bir normal trafik bırakılacaktır.
  • Blocking State Portlar, STP BPDU Mesajlarını alır. STP Topolojisinin farkında olmak için BPDU almaları, işlemeleri ve gerekirse bir Forwarding State Porta geçmeye hazır olmaları gerekir.
  • Blocking State Portlar, STP BPDU İLETMEZ.
  • Blocking State Portlar, MAC Adreslerini ÖĞRENMEZ. Porta normal trafik gelirse, MAC Adres Tablosuna MAC Adresi eklenmeden bırakılır.

Listening State / Transitional

stp listening state

  • Blocking State'den sonra Listening State'e geçilir.
  • Listening State, varsayılan olarak 15 saniye uzunluğundadır. Bu, Forward Delay Timer tarafından belirlenir.
  • Listening State Port, yalnızca STP BPDU Mesajlarını iletir/alır. Normal trafik göndermez/almaz. Listening State Portta normal trafik alınırsa bırakılır.
  • Listening State Port, gelen normal trafikten MAC Adres öğrenmez.

Learning State / Transitional

stp learning state

  • Listening State'den sonra, Learning State'e geçilir.
  • Learning State, varsayılan olarak 15 saniye uzunluğundadır. Bu, Forward Delay Timer tarafından belirlenir.
    • Listening ve Learning State, Forward Delay Timer kullanır. Varsayılan olarak her iki State arasında hareket etmek ve Forwarding State Porta geçmek toplam 30 saniye sürer.
  • Learning State Port, yalnızca STP BPDU Mesajları iletir/alır. Normal trafik göndermez/almaz. Learning State Portta normal trafik alınırsa bırakılır.
  • Learning State Port, gelen Normal Trafikten MAC Adreslerini öğrenir. Learning State Port, önceden MAC Adres Tablosunun bir kısmını oluşturarak trafiği iletmeye hazırlanır.

Forwarding State / Stable

stp forwarding state

  • Root / Designated Port =  Forwarding State
  • Forwarding State Port, normal şekilde çalışır, STP BPDU Mesajları iletir/alır, normal trafik gönderir/alır, gelen normal trafikten MAC Adreslerini öğrenir ve MAC Adres Tablosuna ekler.

Özet

stp port states summary

Spanning Tree Timers

stp-timers

Hello (Duration: 2 sec)

  • Root Bridge Hello BPDU gönderme sıklığını ifade eder.
  • Root Bridge dışındaki Switch'ler, kendi BPDU'larını oluşturmazlar, ancak aldıkları BPDU'ları yalnızca Designated Portlarından iletirler.

hello bpdu

Bu Switch'lerin hepsinin aynı anda çevrimiçi olduğunu varsayarsak, her bir Switch kendisinin Root Bridge olduğunu varsayar ve tüm Portlarından Hello BPDU gönderir.

hello bpdu send

Ağ Bütünleştiğinde (Network Converged - Ağdaki Tüm Portların Stable Duruma Gelmesi), Yalnızca Root Bridge BPDU Gönderir.

stp root bridge send hello bpdu

Diğer Switch'ler aldıkları BPDU'ları Designated Portlarından iletir, Root Cost, Bridge ID gibi bilgileri günceller.

stp hello bpdu

2 saniye sonra Root Bridge yeniden BPDU gönderir ve diğer Switch'ler aldıkları BPDU'ları yeniden Designated Portlarından iletecektir.

Forward Delay (Duration: 15 sec)

  • Switch'in Listening ve Learning State'de ne kadar süre kalacağını belirtir.
  • Listening ve Learning State 15 saniye = Toplam 30 Saniye (Varsayılan).

Max Age (Duration: 20 Sec (10 * Hello BPDU))

Portun Hello BPDU almayı bıraktıktan sonra STP Topolojisini değiştirmek için ne kadar süre bekleyeceğini belirtir.

stp max age timer

Her Collision Domain'de bir Designated Port olduğunu ve BPDU'ların Designated Portlardan iletildiğini unutmayın. Bu nedenle tüm Root Portlar ve Non-Designated Portlar, BPDU almayı bekler. Yukarıdaki resimdeki Root Bridge SW3, Hello BPDU gönderiyor. SW1 ve SW4 bunları Root Portundan alıp, Designated Portlarından iletir.

Max Age Timer göstermek için SW2 G0/1 Portuna odaklanalım. Az önce bir BPDU aldı, bu nedenle Max Age Timer 20'ye resetlendi, 19, 18'e kadar geri sayıyor ve Root Bridge (SW3) Hello Timer (2 Sec) nedeniyle yeniden BPDU gönderiyor. SW2 Max Age Timer tekrar 20'ye resetlenir, 19,18, … diye geriye sayar.

SW1 ve SW2 arasındaki bağlantıda bir arıza meydana gelirse? Root Bridge BPDU gönderir ve diğer Switch'ler BPDU'ları iletir, ancak SW1'in G0/0 Portu kapalıdır, dolayısıyla SW2 artık G0/1 Portundan BPDU alamaz.

stp max age timer example

SW2 Max Age Timer geri saymaya devam eder, 18,17,… ve arıza düzelmezse ve SW2 G0/1 Portunda BPDU alamazsa, SW2 Max Age Timer 0'a kadar geri sayar.

O zaman ne olur? Öncelikle Max Age Timer 0'a gelmeden önce BPDU alırsa, Max Age Timer yeniden 20 saniyeye resetlenir ve herhangi bir değişiklik olmayacaktır.

Max Age Timer 0'a kadar geri sayar ve bir BPDU alınmazsa; Root Bridge, Root, Designated ve Non-Designated Portlar dahil olmak üzere STP seçeneklerini yeniden değerlendirecektir.

Bu kararlardan sonra Non-Designated bir Port, Designated veya Root Port olarak seçilirse, Blocking durumundan Listening durumuna (15 saniye), daha sonra Learning State (15 saniye) ve en son Forwarding State.

Blocking State Portun, Forwarding State Porta geçmesi toplam 50 saniye sürebilir. Neden bu kadar uzun sürüyor?

Bu Timer'lar ve Transitional State'ler (Listening ve Learning), bir Port tarafından yanlışlıkla Döngü (Loop) oluşturulmadığından emin olmak içindir. Layer 2 Loop'un ne kadar tehlikeli olduğunu görmüştük. Bu nedenle, STP, bir Portu Blocking State'den Forwarding State'e taşırken çok dikkatlidir.

Bununla birlikte Forwarding State olan Port, Doğrudan Blocking State'e Geçebilir, çünkü Loop oluşturma endişesi yoktur.

STP BPDU Frame

stp bpdu frame

PVST = Trunk Encapsulation için yalnızca Cisco ISL destekleyen daha eski sürümdür.
PVST+ = Trunk Encapsulation için dot1q (802.1Q) destekleyen daha yeni bir sürümdür.

PVST desek de, aslında PVST+ kastediyoruz.

Cisco PVST+, BPDU için 0100.0ccc.cccd Destination MAC Adresini kullanır (Bu bilgiyi hatırla).
Klasik STP, BPDU için 0180.c200.0000 Destination MAC Adresini kullanır (Bu bilgiyi hatırla).

  • Protocol Identifier: Spanning Tree Protocol (0x0000)

  • Protocol Version Identifier: Spanning Tree (0) -> Klasik STP

  • BPDU Type: Configuration (0x00)

  • BPDU Flags: 0x00 -> Diğer Switch'lere topoloji değişikliklerini bildirmek için kullanılır.
    • 0… …. = Topology Change Acknowledgment: No
    • …. …0 = Topology Change: No

  • Root Identifier: 32768
    • Root Bridge Priority: 32768
    • Root Bridge System ID Extension: 10 -> VLAN 10
    • Root Bridge System ID: aa:aa:aa:aa:aa:aa

    • Root Path Cost: 0 -> Bu Switch Root Bridge.

    • Bridge Identifier: 32768
      • Root Bridge Priority: 32768
      • Root Bridge System ID Extension: 10
      • Root Bridge System ID: aa:aa:aa:aa:aa:aa

    • Port Identifier: 0x8002 -> Port ID. 0x80 = 128, 0x02 = 2 -> 128.2

    • Message Age: 0
    • Max Age: 20
    • Hello Time: 2
    • Forward Delay: 15

    Root Bridge STP Timers, tüm ağ için STP Timer'ları belirler (diğer Switch'ler farklı şekilde yapılandırılsalar bile).

    Spanning Tree Optional Features (STP Toolkit)

    STP'nin işlevselliğini geliştirmek için etkinleştirilebilen özelliklerdir.

    PortFast

    stp portfast

    PortFast, Hostlara bağlı Portlarda etkinleştirilebilir. Bu Portlar Forwarding State / Designated Portlardır. 

    Switch ilk açıldığında veya PC'ye ilk kez bağlandığında, trafiği iletmeye başlamadan önce Listening ve Learning State'den geçmesi gerekir.  Ne kadar sürer? Listening için 15 Saniye ve Learning için 15 Saniye, yani toplamda 30 Saniye.

    packet tracer stp portfast

    Packet Tracer'da bir PC ile Switch'i bağladığımda, Switch Portundaki rengin turuncu olduğunu görüyoruz. Bunun nedeni, Portun henüz Forwarding State olmaması, Listening ve Learning State'den geçmesidir. Bağladıktan sonra tam 30 saniye sonra Switch Portu rengi yeşile dönmektedir.

    Bir Portu Forwarding State'e getirmeden önce STP'nin neden bu süreçten geçtiğini söyledik, bunun nedeni Layer 2 Loop'un bir ağ için çok tehlikeli olması ve Switch'in Portu Forwarding State'e geçirmeden önce, hiç bir Loop oluşmayacağından kesinlikle emin olmak istemesidir.

    Yalnızca başka bir Switch'e bağlanan Portlar Layer 2 Loop oluşturabilir. Bir Host ile Loop oluşturma riski yoktur.

    Öyleyse Hostlara bağlı bu Portlar (G0/2), Listening ve Learning State bypass geçilip 30 saniye beklemek zorunda kalmadan hemen Forwarding State'e geçse güzel olmaz mıydı? PortFast'in yaptığı bu.

    PortFast, bir Portun Listening ve Learning State atlayarak hemen Forwarding State'e geçmesine izin verir.

    Eğer kullanılırsa Yalnızca Hostlara bağlı Portlarda etkinleştirilmelidir. Başka bir Switch'e bağlı bir Portta etkinleştirilirse, Layer 2 Loop'a neden olabilir.

    PortFast Etkinleştirme Komutu (config-if): spanning-tree portfast

    spanning tree portfast

    Yukarda görüldüğü gibi PortFast etkinleştirdikten sonra uyarı veriliyor.

    PortFast, Yalnızca Access Portta etkili olur. Bunun nedeni Trunk Portların tipik olarak diğer Switch'e bağlı olmasıdır. PortFast'i yine de Trunk Portta yapılandırabilirsiniz, ancak etki etmez.

    PortFast'ı aşağıdaki komutla da etkinleştirebilirsiniz.

    Tüm Access Port'larda PortFast Etkinleştirme Komutu (config): spanning-tree portfast default

    PortFast, 30 saniye beklemek zorunda kalmadan hızlı bir şekilde Hostlara bağlanmak için harika bir özelliktir. Ancak yine de bir risk olabilir. Bir çalışan, ağa aşağıdaki şekilde başka bir Switch takarsa ne olur?

    stp portfast

    Bu çalışanın kötü niyetli olması gerekmez, tam olarak ne yaptıklarının farkında olmayabilirler.  PortFast bu Portları Forwarding duruma getirdiğinden, Layer 2 Loop oluşur. Ayrıca PortFast, ağ kablolaması dikkat gösterilmeden değiştirilirse Loop'lara neden olabilir, belki bir Host farklı bir Switch Portuna taşınır ve eski Porta Switch bağlanır. Mesele şu ki, PortFast kullanmanın bir riski var.

    BPDU Guard

    BPDU Guard etkinleştirilmiş bir Port, başka bir Switch'den BPDU alırsa, Loop oluşmasını önlemek için Port kapatılır (shutdown).

    BDPU Guard Etkinleştirme Komutu (config-if): spanning-tree bpduguard enable

    spanning tree bpduguard enable

    Tüm PortFast Etkinleştirilmiş Portlarda BDPU Guard Etkinleştirme Komutu (config): spanning-tree portfast bdpuguard default

    Örnek olarak BPDU Guard etkin olan bir Porta Switch bağladım ve Port kapatıldı (shutdown).

    bpdu guard port shutdown

    Portu tekrardan etkinleştirmek isterseniz ne olur?

    Port düzeyinde shutdown komutu ve no shutdown komutunu yazarak portu etkinleştirebilirsiniz. 

    Ancak sorunu gerçekten çözmediyseniz ve Port hala Switch'e bağlıysa, porta yeniden BPDU geldiğinde portun tekrar devre dışı bırakılacağını aşağıda görebilirsiniz.

    bpdu guard example

    Bu nedenle portu tekrar etkinleştirmeyi denemeden önce sorunu gerçekten çözdüğünüzden emin olun.

    ccna portfast

    STP'nin diğer Opsiyonel Özeliklerini, CCNA için bilmenize gerek yoktur.

    Ancak sadece ismini ve amacını belirten bir opsiyonel özelliği daha tanıtmama izin verin.

    Root Guard

    Bir Portta Root Guard etkinleştirirseniz, Port Superior BPDU (Lower Bridge ID) alsa bile Switch, yeni Switch'i Root Bridge olarak kabul etmeyecektir. Port devre dışı bırakılacaktır. Bu, birisi kötü niyetle veya belki de etkisini bilmeden ağa başka bir Switch bağlarsa, STP Topolojisinin korunmasına yardımcı olur.

    STP Mode Configuration (STP Mod Yapılandırması)

    STP Mode Yapılandırma Komutu: spanning-tree mode {mst | pvst | rapid-pvst}

    spanning tree mode

    MST (Multiple Spanning Tree), CCNA için bilmemize gerek yok.

    PVST, Klasik STP'dir, ancak Cisco'nun VLAN özelliğini eklemiş halidir (PVST+ (dot1q)).

    Rapid-PVST, bir sonraki derste göreceğimiz geliştirilmiş bir STP versiyonudur. 

    Modern Cisco cihazları, varsayılan olarak Rapid-PVST çalıştırır ve genellikle bunu değiştirmek için hiçbir neden yoktur. Ancak Klasik STP'yi LAB'da denemek istiyorsanız , spannig-tree mode pvst komutu ile etkinleştirebilirsiniz.

    Configure the Primary/Secondary Root Bridge

    Switch'in Bridge Priority değerini değiştirerek Root Bridge'i manuel olarak belirleyebilirsiniz.

    stp primary root bridge

    Bu MAC Adresleri ve varsayılan Bridge Priority değerleri ile SW1 Root Bridge'dir. Ancak SW3'ü Root Bridge olacak şekilde manuel olarak yapılandırabiliriz.

    Mevcut Root Bridge çökerse, yedek Root Bridge olacak olan Secondary Root Bridge yapılandırabiliriz.

    STP Primary Root Bridge Yapılandırma Komutu: spanning-tree vlan vlan-id root primary

    stp primary root bridge command

    Bu komut, STP Bridge Priority değerini 24576 olarak ayarlar.

    Başka bir Switch'in 24576'dan daha düşük bir Bridge Priority değeri varsa, 4096 daha az olarak ayarlanır. Böylece Switch'in en düşük Bridge Priority değerine sahip olmasını sağlayarak onu Root Bridge haline getirir.

    show running-config

    show running config stp bridge priority

    Gerçekte uygulanan komutun spanning-tree vlan 1 priority 24576 olduğunu görebilirsiniz.

    STP Bridge Priority Yapılandırma Komutu: spanning-tree vlan vlan-id priority bridge-priority-value -> Bridge Priority, 0-61440 aralığında 4096 artışlarla ayarlanmalıdır.

    stp vlan priority command

    STP Secondary Root Bridge Yapılandırma Komutu: spanning-tree vlan vlan-id root secondary

    stp root secondary

    Bu komut, STP Bridge Priority değerini 28672 olarak ayarlar.

    show running-config

    show running config stp root secondary

    Gerçekte uygulanan komutun spanning-tree vlan 1 priority 28672 olduğunu görebilirsiniz.

    STP Load-Balancing

    stp load-balancing

    SW3'ü manuel olarak Primary Root Bridge, SW2'yi manuel olarak Secondary Root Bridge ayarladık. Bu Topoloji PVST+ çalıştırıyor, yani aslında bu sadece VLAN 1'in topolojisidir.

    Belki bu topolojide başka bir VLAN, mesela VLAN 2 varsa, topoloji VLAN 2 için nasıl görünecek?

    stp load-balancing

    VLAN 2 için varsayılan topoloji yukarıdaki gibi görünecektir, çünkü yapılandırdığımız Root Bridge ayarları yalnızca VLAN 1 için geçerlidir. VLAN2'de SW1 ve SW2 arasındaki bağlantı devre dışı bırakılmaz, bunun yerine SW2 ve SW3 arasındaki bağlantı devre dışı bırakılır.

    Ağınızda birden fazla VLAN varsa, her VLAN'da aynı Portu engellemek (Blocking State) Bandwidth kaybıdır. Her VLAN için aynı Blocking State ayarlanan Port hiç birşey yapmayacak, yalnızca başka bir bağlantının başarısız olmasını bekleyerek Forwarding duruma geçecektir.

    Farklı VLAN'lar için farklı bir Root Bridge yapılandırırsanız, farklı VLAN'lar farklı Portları Blocking State yapar. Böylece STP Load-Balancing yapmış olursunuz.

    Spanning Tree Quiz 7

    spanning-tree-quiz

    Bu ağda 10 ve 20 olmak üzere iki VLAN etkindir. Varsayılan olarak SW3 her iki VLAN için de Root Bridge'dir. SW1'i VLAN10 için Primary Root Bridge ve VLAN 20 için Secondary Root Bridge olarak yapılandırın. SW2'yi VLAN20 için Primary Root Bridge ve VLAN10 için Secondary Root Bridge olarak yapılandırın. SW1 ve SW2'de hangi iki komutu vermelisiniz?

    SW1(config)# spannig-tree vlan 10 root primary
    SW1(config)# spannig-tree vlan 20 root secondary

    SW2(config)# spannig-tree vlan 20 root primary
    SW2(config)# spannig-tree vlan 10 root secondary

    SW1'i VLAN 10 için Primary Root Bridge ve VLAN20 için Secondary Root Bridge yaptık. Bu Switch VLAN20 için Yedek Root Bridge görevi görür.

    SW2'de ise tam tersini yaptık, VLAN20 için Primary Root Bridge ve VLAN10 için Secondary Root Bridge. SW2, VLAN10'da en düşük ikinci Bridge Priority değerine sahip olacak ve SW1 başarısız olursa, SW2 VLAN10'nun Root Bridge'i olacaktır.

    stp load-balancing example

    Yukarıdaki iki resimde VLAN10 ve VLAN20'nin farklı topolojiler kullandığını görüyoruz.

    Farklı VLAN'larda farklı bağlantılar kullanılır, trafik farklı Portlar arasında dengelenir, buna STP Load Balancing denir.

    Configure STP Port Settings

    STP Portunda yapılandırabileceğiniz iki ayar vardır: cost ve port-priority

    STP Port Root Cost Yapılandırma Komutu (config-if): spanning-tree vlan vlan-id cost cost-value

    STP Port Port ID Priority Yapılandırma Komutu (config-if): spanning-tree vlan vlan-id port-priority 0-224 (32'lik artışlarla - Varsayılan 128)

    İki komut da VLAN bazında yapılandırılır.

    cost: Root Cost (Fa Cost 19, Gi Cost 4, vb). Root Portu belirlemek için kullanılır. Ayrıca Designated ve Non-Designated Portların seçilmesinde dolaylı olarak bir etkisi vardır.

    port-priority: Port ID, Root Portun seçilmesinde üçüncü Tie-Braker olarak kullanılır.

    Portun Root Cost değerini yapılandırdım, gördüğünüz gibi aralık 1 ile 200 milyon arasında.

    stp port cost configuration

    Ardından, 32'lik artışlarla yapılandırılan Port ID Priority değerini 32'ye ayarladım (Varsayılan Port Priority ID = 128).

    stp port-priority configuration


    Spanning Tree Quizs

    spanning tree quizs


    Cevaplar Sırası ile: a ve c, c (Port ID'nin ilk yarısı, STP Port Priority değeridir. 0x80 = 128 (Decimal)), d (BPDU Guard, herhangi bir potansiyel Loop'u önlemek için Portta bir BPDU alındığında Portu kapacaktır. Hostlara bağlı PortFast özellikli Switch Portlarında etkinleştirilmelidir)

    LAB 2 - ANKI 2

    LAB 2 Çözümü

    İlk olarak LAB'ı kendiniz yapmayı deneyin. LAB'ı yaparken takılırsanız/yapamazsanız veya yaptığınız çözümü doğrulamak için buradaki çözümü inceleyebilirsiniz.

    spanning tree protocol packet tracer lab

    1.

    Switch'lerin Port Role/State bilgileri, show spanning-tree komut çıktısında görülebilir.

    SW2, hem VLAN1 hem de VLAN2 için Root Bridge'dir. Herhangi bir özel yapılandırma olmadan her VLAN aynı Root Bridge'i kullanacaktır.

    Şuanda VLAN1 ve VLAN 2 için Root Bridge aynı olduğundan SW4 F0/2 - SW1 F0/2 ve SW1 F0/1 - SW3 F0/1 bağlantıları kullanılmıyor.

    2.

    SW1
    SW1(config)#spanning-tree vlan 1 root primary 
    SW1(config)#spanning-tree vlan 2 root secondary 

    SW2
    SW2(config)#spanning-tree vlan 2 root primary 
    SW2(config)#spanning-tree vlan 1 root secondary 

    SW1; VLAN 1 için Primary Root Bridge, VLAN 2 için Secondary Root Bridge oldu.

    SW2; VLAN 2 için Primary Root Bridge, VLAN 1 için Secondary Root Bridge oldu.

    SW3 ve SW4

    VLAN1 Topoloji

    VLAN 1 için SW2 F0/2 - SW3 F0/2 ve SW2 F0/1 - SW4 F0/1 bağlantıları kullanılmıyor.

    VLAN2 Topoloji

    VLAN 2 için SW1 F0/1 - SW3 F0/1 ve SW1 F0/2 - SW4 F0/2 bağlantıları kullanılmıyor.

    Böylece STP Load Balancing yapmış olduk. Ağ Trafiğinin yükü dengeleniyor.

    3.

    SW4'ün VLAN1'deki Root Portu F0/2'dir. 

    SW4 Fa0/2 Portunun Toplam Root Cost Değerini show spanning-tree detail komutu ile öğrenebiliriz.

    SW4(config)# int f0/2
    SW4(config-if)# spanning-tree vlan 1 cost 100

    Görüldüğü gibi SW4'ün yeni Root Portu Fa0/1 oldu. Çünkü bu Portun Root Cost'u 38'dir. SW4 Fa0/2'nin ise Root Cost'unu 100 yapmıştık.

    4.

    SW1(config)#int f0/1
    SW1(config-if)#spanning-tree vlan 1 port-priority 240

    Port Priority (Port ID), Root Port seçilirken Root Cost ve Neighbor Bridge ID'den sonra gelen üçüncü tiebraker'dır. Bu nedenle SW3 Root Portuna bir etkisi olmaz.

    5.

    SW3
    SW3(config)#int f0/3
    SW3(config-if)#spanning-tree portfast 
    SW3(config-if)#spanning-tree bpduguard enable 

    SW4
    SW4(config)#int f0/3
    SW4(config-if)#spanning-tree portfast 
    SW4(config-if)#spanning-tree bpduguard enable 

    Örnek olarak SW4 F0/3 Portuna bir PC bağlarsam Port hemen aktif oluyor. SW4 F0/3 Portuna bir Switch bağlarsam Port kapatılıyor (shutdown). SW4 F0/3 Port Yapılandırmasına girip shutdown, daha sonra no shutdown komutunu yazıp Portu tekrar etkinleştiriyorum ve Porta yine bir PC bağlıyorum (F0/3 hemen aktif oluyor).

    Okuduğunuz için teşekkürler.

    Bu İçerikleri de Beğenebilirsiniz

    Yorum Gönder