STP - Spanning Tree Protocol - Layer 2 Switching

2008-12-07 18:08:00
LAYER 2 SWITCHING

Layer 2 switching teknolojisi donanıma dayalıdır. Bu nedenle host üzerindeki MAC adresini kullanarak networkü filtreler. Switchlerde filter tablolarını oluşturmak için ASIC (Application Specific Integrated Circuits) yöntemini kullanırlar.cisco switchlerde default olarak enable durumdadir.

Layer 2 switch aygıtları paketleri (frame) donanım adreslerine göre gönderdikleri için hızlıdırlar. Layer 2 özelliklerini şu şekilde özetleyebiliriz:

Donanım temelli köprü (bridging) / Hız / Düşük maliyet.

LAYER 2 SWITCH FONKSİYONLARI

Layer 2 switching sürecinde üç işlem yerine getirilir:

Adres öğrenme (address learning)

Yönledirme / filtreleme (forward/filtering)

Döngü önleme (loop avaidance)

Adres öğrenme işlemi her paketin MAC adresinin bir MAC veritabanına tutulmasıyla sağlanır. Yönlendirme işlemi ise alına paketin hedef adresinin bulunmasını sağlar. Döngü önleme özelliği ise, switchler arasında birden çok bağlantının olduğu durumlarda fazlalık (redundancy) oluşursa, bu özellik döngüyü önler. Döngü önlemede STP (Spanning Tree Protocol) kullanılır.

STP (Spanning Tree Protocol)

STP (Spanning Tree Protocol), DEC tarafından geliştirilmiş ve IEEE tarafından 802.1 olarak kabul edilmiş bir protokoldür. STP'nin ana görevi Layer 2 networklerinde oluşan döngüleri durdurmaktır. STP sürekli olarak networkü izler ve gereksiz hatları kapatarak döngü oluşmamasını sağlar.

STP network üzerindeki bütün bağlantıları bulur ve fazla (gereksiz) bağlantıları kapatır. Bu işlem network üzerinde bir root bridge seçilmesiyle olur. Bir networkte yalnız bir root bridge vardır. Diğer swtichler ise nonroot bridge olarak adlandırılır.

SWITCH' ler hiç bir yönlendirme protokolu kullanmazlar, Her switch BPDU ( Bridge Protocol Data Unit ) mesajı yayını yaparak kendisinin root olduğunu söyler, önceliği düşük olan root seçilir, eşittlik durumunda ise düşük ID' li (veya düşük MAC adrese sahip olan) olan Root seçilir. Root olan switch' in tüm portları her zaman açıktır ve yedek bağlantıları ve asıl bağlantıları belirler.

NOT: If version 12.0 is used, enter the following:
Switch(config)# spanning-tree priority 1
Switch(config)# exit

Bpdu paketleri her 2 sn de bir diğer switch' lere gönderilir .
Bridge Id ; Bridge Priority ve Mac Adress inden oluşur ve 8 Bytedir.

BPDU

Bridge Priority default olarak 32768 degerindedir ve bizim tarafimizdan manuel olarak degiştirilebilir. Root id leri aynıysa Root Bridge seçimi için Mac Adress bilgisine bakacaklardır.Mac Adresi en küçük olan Bridge Root Bridge olacaktır.

Spanning Tree çalışma prensibi içerisinde 4 adımdan bahsedebiliriz bunlar ;

Root Bridge seçimi yapılır

Switch' lerin Root Portları belirlenir.

Switch' lerin Designated Portları belirlenir.

Diğer Portlar Block durumda olacaklardır.

Root Bridge seçimini tamamladık, şimdi Switchlerde Root Portlar nasıl seçilir bundan bahsedelim.

Root Portlar her switch için 1 tane olabilir ! ve Root bridge e olan yakınlığına göre bir port root port olur.Burada yakınlıktan kastettigim cost degeridir. Cost degeri 2 switch arasındaki hattın hızıyla orantılı olup sabit degerlerle ifade edilir.

1000/Bandwith olarak hesaplanir ancak, IEEE nin çok kullanilan bant genislikleri için yayinladigi cost degerleri asagidaki tablodaki gibidir.

Switch Bandwith

Root bridge e cost u en düşük olan root port olacaktır. Switch root bridge e 2 yoldan erişiyor ve costlari eşit olduğu bir durumda ise ; switchin port id' sine bakılır.Port numarası küçük olan port ( örnek ; Fastethernet 0/1 port numarası Fastethernet 0/2 den küçüktür.) Root portolacaktır.Bir Birdge üzerinde yalnızca bir tane Root port olabilir

SPT

Şekildeki yapıda Root Bridge hangisi olacaktır.3 Bridge imiz var ve Bridge Id leri BID= 31.768.XXXX seklinde 3 bridge için de bize sunulmuş. Daha önce belirttigimiz gibi Bridge Id' si en küçük olan Bridge Root Bridge olacaktır.Yani Cat-A Root Bridge dir .

Şimdiye kadar Root Bridge seçimini ve Root Port seçimlerini ögrendik , Stp nin çalışmasındaki 4 adımdan 3.sü yani Designated port seçimlerinde sıra olacaktır. Designated port seçimine geçmeden önce bir kavramı açıklamakta yarar görürüyorum.

Segment ; 2 switch arasındaki yola segment adını veriyoruz.

Designated port seçimi yaparken her segment için yalnızca bir tane designated port olacagını unutmamalıyız. Ayrıca Root Bridge in tüm portları Designated Port durumundadır ve forwarding state olmalıdır.(Stp statelerinde ayrıntılı anlatılacaktır.) . Designated port bir switch için birden fazla olabilir.(Root Port yalnızca 1 tane olabilir).

Bu bilgiler ışıgında artık Designated portlarımızı belirleyebiliriz.

Designated Port

Şekilde Mac adress degerleri verilmiş Switchler den Cat-A Root Bridge olacaktır. Bridge priority degerleri default , Mac Adress’i en küçük olan Root Bridge olacaktır. Buna göre Cat-A için daha önce belirttigimiz gibi tüm portları Designated olacağıdan Segment 1 ve Segment 2 için Designated portlarımızı belirlemiş olduk. Bir segmentte yalnızca 1 tane Designated port olacagını biliyoruz.

Segment 1 ve Segment 2 ye baktıgımızda Cat-B ve Cat-C için Switch' lerinin 1/1 interfaceleri Root Port olmalıdır. Segment 3 için 1 tane Designated port olmalıdır. Burada Root port olamaz çünkü her iki Switch içinde Root portlar belirlendi. Bir switch üzerinde yalnızca 1 tane Root port olacağı bilgisini hatırlayalım. Cat-B Mac adresi Cat-C swithine göre daha küçük oldugu için Cat-B switch’inin ½ portu Segment 3 için Designated Port olacak ve Cat-C Switchinin ½ portuda Non-Designated port durumunda olacaktır.

Kontrol Komutları:
Switch# show spanning-tree

Switchler 4 farklı çalışma modunda olabilirler.Yani Spanning-Tree çalışan switchler 4 farklı modda olabilirler.

Bunlardan ilki Blocking mod ;

Switch bu moddayken port kapalı olarak düşünebiliriz (Switching loop engellenir) ancak unutmamalıyizki bu modda switch her 2 sn aralıklarla hello paketlerini alacaktır ve eğer 20 sn hello paketi alamazsa bir sonraki mod olan listening moduna gececektir.

Listening modunda switch bu moddan sonraki adımlara geçip geçemeyecegine karar verir learning ve Forwarding modlarına geçebilir veya Blocking duruma geri dönebilir bu mod içerisinde 15 sn bulunur ve devam ederse bir sonraki mod olan Learning moduna geçecektir

Learning modunda switch dinleme yapar diyebiliriz (iletişim olmaz) ve Mac address table ini oluşturur bu moddada 15 sn kaldıktan sonra Forwarding moduna geçecektir.

Forwarding modunda switch artık diger switchlerle haberleşme halinde( frame alımı ve gönderimi yapılır). Forwarding modu için söyleyecegimiz kritik bir not Root Bridge in bütün portları her zaman forwarding durumda olacaktır.

özetleyecek olursak bu 4 Mod :

1.Blocking

2.Listening

3.Learning

4.Forwarding

Switch' lerde Stp ile çalışırken cok sık karşınıza çıkacak 3 kavramdan bahsedecegim. Bunlar Stp Timers ‘ lar.

Hello Time : Bridge’ler tarafindan Bpdu paketlerinin 2 sn aralıklarla gönderileceginden bahsetmiştik.

Forward Delay : Forwarding state’ e geçilmeden önceki Listening ve Learning statelerinde geçen süredir.30sn dir.

Max Age Time : Bpdu paketleri default olarak 2 sn de bir gönderildigini biliyoruz.Bu Bpdu’ lar 20 sn süreyle saklanir.20 sn içerisinde Switch Bpdu paketi alamazsa Forwarding moddan Listening moda geçer.

Bpdu mesajları Blocking modda da alınır.Aksi takdir de forwarding durumdaki bir port Blocak oldugunda , daha önce Block durumdaki port Bpdu alamazsa durumdan haberi olmayacak ve haberleşme sağlanamayacaktır.

Toplamda spaning tree Blocking moddan Forwarding mod a kadar 50 sn süre içerisinde çalışacaktır.Switch – Switch bağlantıları için bu süre kaçınılmazdır.Ancak ; Switch' in diğer portlarına baglı bir host için hostun bu süreyi beklemesi zorunlu değildir. Bunun için switchler de portfast komutu çalıştırılır. Bu komutu global konfigurasyon modunda kullanabilecegimiz gibi interface altındada kullanabiliriz.Global konfigurasyon modunda kullanılması önerilmez.

Switch(config)#interface fastethernet 0/1

Switch(config-if)#spannig-tree portfast

Bu komutla interface’e uygulanabilir ve buraya Bpdu paketleri gitmeyecektir.

PVST (Per VLAN Spanning Tree)

Switch' lerde de Vlan lar kullanılması durumunda spanning tree nasıl çalışacak bizim bunun için neler yapmamız gerektigine bir göz atalım.

Networkumuz de vlan lar olabilir ve biz her vlan için ayrı bir root bridge atayabiliriz. Bu durum Switchlerde PVST (Per Vlan Spanning-Tree) olarak ifade edilir ve global konfigurasyon modunda ;

“Switch(config)#spanning-tree mode pvst “ komutuyla enable edilir.

“ Switch(config)#spanning-tree vlanid root priority “ . Bu komutu uyguladagımız switch bu vlan id ( vlan numarası ) için root bridge olacaktir ve yine yukarıda yazdigımiz her şey bu switch portları ve bu vlan için geçerli olacaktır.

Vlan bazında stp uygulamak yani PVST uygulamak bize bir swith üzerindeki bir portun devamlı olarak block durumda olmasını engellemek açısından faydali olacaktır.

Ayrıca ;

“ Switch(config)#spanning-tree vlanid root secondary “ komutuyla switch belirtilen vlan id için backup bridge olarak çalıştırılabilir.

Spaning Tree Switchlerde biz bir şey yapmasakda çalışır ama bunları Spanning-Tree’ yi bizim yönetebilmemiz için yani ona hükmetmek için bilmemiz gerektigini düşünüyorum.

0
0
0
Yorum Yaz