LAN&WAN?技術(shù)?
1、交換機的端口類型存在哪幾種,有什么特點缘缚?
在802.1Q中定義VLAN幀后,設(shè)備的有些接口可以識別VLAN幀钧唐,有些接口則?
不能識別VLAN幀忙灼。根據(jù)對VLAN幀的識別情況,將接口分為4類,特點如下:?
(1)Access接口:Access接口是交換機上用來連接用戶主機的接口该园,它只能鏈接接入鏈路酸舍。僅僅允許唯一的VLAN ID通過本接口,這個VLAN ID與接口的?
缺省VLAN ID相同(PVID)里初,Access接口發(fā)往對端設(shè)備的以太網(wǎng)幀永遠(yuǎn)是不?
帶標(biāo)簽的幀啃勉。?
(2)Trunk接口:Trunk接口是交換機上用來和其他交換機連接的接口,它只能連接干道鏈路双妨,允許多個VLAN的幀(帶Tag標(biāo)記)通過淮阐。換而言之,除了與?
pvid一致的vlan幀從trunk接口發(fā)送出去剝離tag外刁品,其他幀全帶tag泣特。?
(3)Hybrid接口:Hybrid接口是交換機上既可以連接用戶主機,又可以連接其他交換機的接口挑随。Hybrid接口既可以連接接入鏈路又可以連接干道鏈路状您。?Hybrid接口允許多個VLAN的幀通過,并可以在出接口方向?qū)⒛承¬LAN幀的?
Tag剝離兜挨。換而言之膏孟,就是可以在接口進(jìn)行配置,使得出這個接口的幀可以部分打tag拌汇,部分不打tag柒桑,可以做到靈活控制。?
(4)QinQ接口:QinQ(802.1Q-in-802.1Q)接口是使用QinQ協(xié)議的接口噪舀。QinQ接口可以給幀加上雙重Tag魁淳,即在原來Tag的基礎(chǔ)上,給幀加上一個新的Tag傅联,從而可以支持多達(dá)4094×4094個VLAN(不同的產(chǎn)品支持不同的規(guī)格)先改,滿足網(wǎng)絡(luò)對VLAN數(shù)量的需求。外層的標(biāo)簽通常被稱作公網(wǎng)Tag蒸走,用來存放公網(wǎng)的VLAN ID。內(nèi)層標(biāo)簽通常被稱作私網(wǎng)Tag貌嫡,用來存放私網(wǎng)的VLAN ID比驻。?
2、交換機的不同端口類型對數(shù)據(jù)幀的處理方式岛抄?
為了提高處理效率别惦,交換機內(nèi)部的數(shù)據(jù)幀一律都帶有VLAN Tag,以統(tǒng)一方?
式處理夫椭。當(dāng)一個數(shù)據(jù)幀進(jìn)入交換機接口時掸掸,如果沒有帶VLAN Tag,且該接口上配置了PVID(Port Default VLAN ID),那么該數(shù)據(jù)幀就會被標(biāo)記上接口的PVID扰付。?
各種類型接口對數(shù)據(jù)幀的處理方式如下圖所示:?
拓展問題1:什么情況下一定要用Hybrid端口堤撵??
當(dāng)接口需要允許多個VLAN的數(shù)據(jù)幀不帶TAG發(fā)出時,如:?
(1)使用靈活QINQ時羽莺;?
(2)使用基于MAC实昨、子網(wǎng)、協(xié)議(type)盐固、策略的劃分方式VLAN時荒给;
拓展問題2:Hybrid端口什么時候使用?什么時候打tag刁卜?什么時候不打tag志电??
使用場景:?
(1)使用靈活QinQ時;?
(2)使用其他方式(除基于端口)劃分vlan時蛔趴;?
(3)實現(xiàn)不同vlan溪北,并且相同網(wǎng)段進(jìn)行互訪時使用;(場景如下)
(1)什么時候打夺脾、什么時候不打tag之拨,主要看端口的配置:?
①數(shù)據(jù)幀進(jìn)入交換機時,一定會打tag:?
②如果收到數(shù)據(jù)幀不帶標(biāo)簽咧叭,根據(jù)PVID打上蚀乔,在根據(jù)端口的收發(fā)列表決定?
是否接收;?
(2)數(shù)據(jù)幀發(fā)出交換機時菲茬,根據(jù)端口的配置決定是否需要剝離tag吉挣;
如圖所示,表示接口發(fā)出VLAN10的數(shù)據(jù)幀是tag發(fā)送婉弹,發(fā)出VLAN20的數(shù)據(jù)?
幀時不帶tag發(fā)送睬魂;(tagged/untagged的VLAN合并起來為該hybrid端口的允許收發(fā)列表)一般情況下對端為交換機時,一般都帶tag發(fā)出镀赌,對端為主機氯哮,路由器等終端設(shè)備時是不帶tag發(fā)出;?
擴(kuò)展問題3:ACCESS接口收到一個帶tag數(shù)據(jù)幀如何處理商佛??
比較tag的VLAN-id和接口的pvid是否一致喉钢,一致則接收,不一致則丟棄良姆;?
擴(kuò)展問題4:交換機之間trunk接口PVID不一致帶來的問題肠虽??
導(dǎo)致相同VLAN之間不能互訪。
場景解釋:?
如上圖:PC1能訪問PC2玛追,但是不能訪問PC3税课。?
分析:?PC1發(fā)出的數(shù)據(jù)幀在SW1的g0/0/2接口打上了VLAN 5?的tag?闲延,從?
g0/0/1接口發(fā)出的時候剝離了tag,sw2的g0/0/1收到?jīng)]有tag的數(shù)據(jù)幀后韩玩,打上接口相應(yīng)的pvid?(vlan 10)垒玲,最終導(dǎo)致vlan 5?的數(shù)據(jù)幀發(fā)送到vlan 10?的終端上。
擴(kuò)展問題5:交換機端口PVID作用啸如??
每種端口類型的接口都存在PVID侍匙,默認(rèn)都為VLAN 1;?
當(dāng)接口收到不帶tag的數(shù)據(jù)幀叮雳,如果無法根據(jù)其他的方式劃分VLAN(基于?
MAC想暗、子網(wǎng)等)時,則根據(jù)接口的PVID打上TAG帘不;?
當(dāng)接口發(fā)出數(shù)據(jù)時说莫,每種端口對PVID的處理方式不一致(詳見各種類型接?
口對數(shù)據(jù)幀的處理方式表)。?
擴(kuò)展問題6:實現(xiàn)QINQ的方式寞焙??
(1)基于端口QinQ:對進(jìn)入二層QinQ接口的所有幀都加上相同的外層Tag储狭。基?
于接口的封裝是指進(jìn)入一個接口的所有流量全部封裝一個相同的外層VLAN?
Tag捣郊,封裝方式不夠靈活辽狈,用戶業(yè)務(wù)區(qū)分不夠細(xì)致,這種封裝方式也稱作QinQ?
二層隧道呛牲。?
(2)靈活QinQ:對進(jìn)入二層QinQ接口的幀刮萌,可以根據(jù)不同的內(nèi)層Tag而加上不
同的外層Tag,對于用戶VLAN的劃分更加細(xì)致娘扩∽湃祝基于流的QinQ封裝可以對?
進(jìn)入接口的數(shù)據(jù)首先進(jìn)行流分類,然后對于不同的數(shù)據(jù)流選擇是否封裝外層?
Tag琐旁、封裝何種外層Tag涮阔,因此這種封裝方式也稱作二層靈活QinQ。(PS:?
配置靈活QinQ時灰殴,接口類型一定要用hybrid敬特,因為靈活QINQ的端口需要允?
許多個VLAN剝離外層標(biāo)簽發(fā)送)?
舉場景時,可以使用如下案例:
擴(kuò)展問題7:VLAN劃分方式有哪些验懊??
可以基于接口擅羞、MAC地址、子網(wǎng)义图、網(wǎng)絡(luò)層協(xié)議、匹配策略方式來劃分VLAN召烂。?(詳細(xì)請看華為產(chǎn)品文檔VLAN劃分方式差異表)?
若入方向untagged報文同時匹配多種劃分VLAN的方式碱工,則優(yōu)先級順序從高?
至低依次是:?
(1)基于匹配策略劃分VLAN->基于MAC地址劃分VLAN或基于子網(wǎng)劃分VLAN->?基于協(xié)議劃分VLAN->基于接口劃分VLAN?
(2)缺省情況下,優(yōu)先基于MAC地址劃分VLAN∨屡瘢可以通過命令改變基于MAC地址劃分VLAN和基于子網(wǎng)劃分VLAN的優(yōu)先級历筝,從而決定優(yōu)先劃分VLAN的方式。?
(3)基于接口劃分VLAN的優(yōu)先級最低廊谓,但是最常用的VLAN劃分方式梳猪。
STP
1.STP/RSTP?區(qū)別??
(1)端口角色:?通過端口角色的增補蒸痹,簡化了生成樹協(xié)議的理解及部署保留STP的RP春弥、DP端口,將STP中的blocking port(BP?阻塞端口)進(jìn)行細(xì)分叠荠,分為backup por(t BP?備份端口)和?alternate port(AP?交替端口)匿沛。AP?以及?BP?的特點:?
①AP:?阻塞狀態(tài),不轉(zhuǎn)發(fā)?BPDU榛鼎,存儲?BPDU逃呼,做為?RP?的備份,當(dāng)?RP?
故障者娱,AP?轉(zhuǎn)化為?RP?時抡笼,無需等待?30S?的轉(zhuǎn)發(fā)延遲,直接進(jìn)入轉(zhuǎn)發(fā)黄鳍。?
②BP:阻塞狀態(tài)推姻,不轉(zhuǎn)發(fā)?BPDU,存儲?BPDU际起,作為?DP?的備份拾碌,BP?在?
一個網(wǎng)段中作為到根橋的備份路徑,當(dāng)?DP?故障之后街望,BP?需要等待老化時間才會成會?DP校翔,成為?DP?之后需要等待轉(zhuǎn)發(fā)延遲時間才進(jìn)入轉(zhuǎn)發(fā)。?
從配置?BPDU?報文發(fā)送角度來看:?
①Alternate?端口就是由于學(xué)習(xí)到其它網(wǎng)橋發(fā)送的配置?BPDU?報文而阻塞的端口灾前。?
②Backup?端口就是由于學(xué)習(xí)到自己發(fā)送的配置?BPDU?報文而阻塞的端口?
(2)端口狀態(tài)?
RSTP?的狀態(tài)規(guī)范把原來的?5?種狀態(tài)縮減為?3?種防症。?
根據(jù)端口是否轉(zhuǎn)發(fā)用戶流量和學(xué)習(xí)?MAC?地址來劃分:?
①如果不轉(zhuǎn)發(fā)用戶流量也不學(xué)習(xí)?MAC?地址,那么端口狀態(tài)就是Discarding?狀態(tài)哎甲。?
②如果不轉(zhuǎn)發(fā)用戶流量但是學(xué)習(xí)?MAC?地址蔫敲,那么端口狀態(tài)就是Learning?狀態(tài)。?
③ 如 果 既 轉(zhuǎn) 發(fā) 用 戶 流 量 又 學(xué) 習(xí)?MAC?地 址 炭玫, 那 么 端 口 狀 態(tài) 就 是?
Forwarding?狀態(tài)奈嘿。
說明:端口狀態(tài)和端口角色是沒有必然聯(lián)系的,上表顯示了各種端口角色能夠具有的端口狀態(tài)吞加。?
(3)BPDU?不同?
①類型不同:只存在一種?BPDU裙犹,RSTP BPDU尽狠,相當(dāng)于?STP?配置?BPDU。?
②配置?BPDU?格式的改變叶圃,充分利用了?STP?協(xié)議報文中的?Flag?字段袄膏。
Flags?字段,充分利用了原來保留的中間?6?位掺冠,如圖所示:
③配置?BPDU?的處理發(fā)生變化 :
a)拓?fù)浞€(wěn)定后沉馆,配置?BPDU?報文的發(fā)送方式:?
STP?中其他非根橋設(shè)備在收到上游設(shè)備發(fā)送過來的配置?BPDU?后,才會觸發(fā)?
發(fā)出配置?BPDU德崭,此方式使得?STP?協(xié)議計算復(fù)雜且緩慢斥黑。RSTP?對此進(jìn)行了?
改進(jìn),即在拓?fù)浞€(wěn)定后接癌,無論非根橋設(shè)備是否接收到根橋傳來的配置?BPDU?
25報文心赶,非根橋設(shè)備仍然按照?Hello Timer?規(guī)定的時間間隔發(fā)送配置?BPDU,?
該行為完全由每臺設(shè)備自主進(jìn)行缺猛。?
b)更短的?BPDU?超時計時?
如果一個端口在超時時間(超時時間=Hello Time?×?3?×?Timer Factor)?
內(nèi)沒有收到上游設(shè)備發(fā)送過來的配置?BPDU缨叫,那么該設(shè)備認(rèn)為與此鄰居之間?
的協(xié)商失敗。而不像?STP?那樣需要先等待一個?Max Age荔燎。?
c)對次優(yōu)?BPDU?的處理方式?
當(dāng)一個端口收到上游的指定橋發(fā)來的?RST BPDU?報文時耻姥,該端口會將自身存?
儲的?RST BPDU?與收到的?RST BPDU?進(jìn)行比較。如果該端口存儲的?RST BPDU?的優(yōu)先級高于收到的?RST BPDU有咨,那么該端口會直接丟棄收到的?RST BPDU琐簇,立即回應(yīng)自身存儲的?RST BPDU。當(dāng)上游設(shè)備收到下游設(shè)備回應(yīng)的?RST BPDU?后座享,上游設(shè)備會根據(jù)收到的?RST BPDU?報文中相應(yīng)的字段立即更新自己存儲的?RST BPDU婉商。由此,RSTP?處理次等?BPDU?報文不再依賴于任何定時器通過超時解決拓?fù)涫諗吭眩瑥亩涌炝送負(fù)涫諗俊?
(4)加速收斂?
STP?在任何的情況端口從阻塞到轉(zhuǎn)發(fā)最少需要?30S丈秩。RSTP?在以下的場景下,端口從阻塞到轉(zhuǎn)發(fā)不需要轉(zhuǎn)發(fā)延遲:?
①根端口快速切換機制?
如果網(wǎng)絡(luò)中一個根端口失效淳衙,那么網(wǎng)絡(luò)中最優(yōu)的?Alternate?端口將成為根端?
口蘑秽,直接進(jìn)入?Forwarding?狀態(tài),無需任何轉(zhuǎn)發(fā)延遲箫攀。?
②邊緣端口機制?
邊緣端口不參與?RSTP?運算蜡吧,可以由?Disable?直接轉(zhuǎn)到?Forwarding?狀態(tài)炕置,且?
不經(jīng)歷時延。?
③Proposal/Agreement?機制?
當(dāng)一個端口被選舉成為指定端口之后掌挚,在?STP?中钥庇,該端口至少要等待一個?
Forward Delay(Learning)時間才會遷移到?Forwarding?狀態(tài)策吠。而在?RSTP?中,此端口會先進(jìn)入?Discarding?狀態(tài),再通過?Proposal/Agreement?機制快速進(jìn)入?Forwarding?狀態(tài)严拒。這種機制必須在點到點全雙工鏈路上使用扬绪。?
(5)拓?fù)渥兓幚淼姆绞讲煌?
在標(biāo)準(zhǔn)?STP?中檢測拓?fù)涫欠癜l(fā)生變化的標(biāo)準(zhǔn)為有端口?down/Up竖独,而在?RSTP?中檢測拓?fù)涫欠癜l(fā)生變化只有一個標(biāo)準(zhǔn):一個非邊緣端口遷移到?Forwarding?狀態(tài)。標(biāo)準(zhǔn)?STP?一旦檢測到拓?fù)浒l(fā)生變化挤牛,非根橋交換機先觸發(fā)?TCN?給到根橋交換機莹痢,在由根橋交換機觸發(fā)?TC,此機制過于繁瑣并且效率低下墓赴。而?RSTP?一旦檢測到拓?fù)浒l(fā)生變化竞膳,將進(jìn)行如下處理:?
①為本交換設(shè)備的所有非邊緣指定端口啟動一個?TC While Timer,該計時器值是26Hello Time?的兩倍(4s)诫硕。在這個時間內(nèi)坦辟,清空狀態(tài)從?Discarding?到Forwarding?的端口上學(xué)習(xí)到的?MAC?地址。?
②同時章办,由這些端口向外發(fā)送?RST BPDU锉走,其中?TC?置位。一旦?TC While Timer超時藕届,則停止發(fā)送?RST BPDU挪蹭。?
③其他交換設(shè)備接收到?RST BPDU?后,清空所有端口學(xué)習(xí)到?MAC?地址休偶,除了收到?RST BPDU?的端口梁厉。同時也為自己所有的非邊緣指定端口和根端口啟動?TC While Timer,重復(fù)上述過程踏兜。?
(6)保護(hù)功能RSTP?提供的保護(hù)功能有:?
①BPDU?保護(hù)?
使用場景:正常情況下词顾,邊緣端口不會收到?RST BPDU。如果有人偽造?RST?
BPDU?惡意攻擊交換設(shè)備碱妆,當(dāng)邊緣端口接收到?RST BPDU?時肉盹,交換設(shè)備會自?
動將邊緣端口設(shè)置為非邊緣端口,并重新進(jìn)行生成樹計算山橄,從而引起網(wǎng)絡(luò)震?
蕩垮媒。
保護(hù)動作:交換設(shè)備上啟動了?BPDU?保護(hù)功能后,如果邊緣端口收到?RST?
BPDU航棱,邊緣端口將被?error-down睡雇,但是邊緣端口屬性不變,同時通知網(wǎng)管?
系統(tǒng)饮醇。?
說明:BPDU?保護(hù)功能在系統(tǒng)視圖配置它抱,但是只對邊緣端口生效。?
②根保護(hù)?
使用場景:由于維護(hù)人員的錯誤配置或網(wǎng)絡(luò)中的惡意攻擊朴艰,網(wǎng)絡(luò)中合法根橋?
有可能會收到優(yōu)先級更高的?RST BPDU观蓄,使得合法根橋失去根地位混移,從而引?
起網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的錯誤變動。這種不合法的拓?fù)渥兓甏瑫?dǎo)致原來應(yīng)該通過?
高速鏈路的流量被牽引到低速鏈路上歌径,造成網(wǎng)絡(luò)擁塞。?
保護(hù)動作:對于啟用?Root?保護(hù)功能的指定端口亲茅,其端口角色只能保持為指?
定端口回铛。一旦啟用?Root?保護(hù)功能的指定端口收到優(yōu)先級更高的?RST BPDU?
時,端口狀態(tài)將進(jìn)入?Discarding?狀態(tài)克锣,不再轉(zhuǎn)發(fā)報文茵肃。在經(jīng)過一段時間(通?
常為兩倍的?Forward Delay),如果端口一直沒有再收到優(yōu)先級較高的?RST?
BPDU袭祟,端口會自動恢復(fù)到正常的?Forwarding?狀態(tài)验残。?
說明:Root?保護(hù)功能只能在指定端口上配置生效。?
③環(huán)路保護(hù)?
使用場景:在運行?RSTP?協(xié)議的網(wǎng)絡(luò)中巾乳,根端口和其他阻塞端口狀態(tài)是依靠?
不斷接收來自上游交換設(shè)備的?RST BPDU?維持您没。當(dāng)由于鏈路擁塞或者單向鏈?
路故障導(dǎo)致這些端口收不到來自上游交換設(shè)備的?RST BPDU?時,此時交換設(shè)?
備會重新選擇根端口想鹰。原先的根端口會轉(zhuǎn)變?yōu)橹付ǘ丝谖赏瘢鹊淖枞丝?
會遷移到轉(zhuǎn)發(fā)狀態(tài),從而造成交換網(wǎng)絡(luò)中可能產(chǎn)生環(huán)路辑舷。?
當(dāng)?BP2-CP1?之間的鏈路發(fā)生擁塞時喻犁,DeviceC?由于根端口?CP1?在超時時間內(nèi)收不到來自上游設(shè)備的?BPDU?報文,Alternate?端口?CP2?放開轉(zhuǎn)?
變成了根端口何缓,根端口?CP1?轉(zhuǎn)變成指定端口肢础,從而形成了環(huán)路。?
保護(hù)動作:在啟動了環(huán)路保護(hù)功能后碌廓,如果根端口或?Alternate?端口長時間?
收不到來自上游設(shè)備的?BPDU?報 文時传轰,則向網(wǎng)管發(fā)出通知信息(此時根端?
口會進(jìn)入?Discarding?狀態(tài),角色切換為指定端口)谷婆,而?Alternate?端口則會?
一直保持在阻塞狀態(tài)(角色也會切換為指定端口)慨蛙,不轉(zhuǎn)發(fā)報文,從而不會?
在網(wǎng)絡(luò)中形成環(huán)路纪挎。直到鏈路不再擁塞或單向鏈路故障恢復(fù)期贫,端口重新收到?
BPDU?報文進(jìn)行協(xié)商,并恢復(fù)到鏈路擁塞或者單向鏈路故障前的角色和狀態(tài)异袄。?
說明:環(huán)路保護(hù)功能只能在根端口或?Alternate?端口(存儲?BPDU?來維護(hù)端?
口角色)上配置生效通砍。?
○4?防?TC-BPDU?攻擊?
使用場景:交換設(shè)備在接收到?TC BPDU?報文后,會執(zhí)行?MAC?地址表項和?ARP表項的刪除操作。如果有人偽造?TC BPDU?報文惡意攻擊交換設(shè)備時封孙,交換設(shè)備短時間內(nèi)會收到很多?TC BPDU?報文迹冤,頻繁的刪除操作會給設(shè)備造成很大的負(fù)擔(dān),給網(wǎng)絡(luò)的穩(wěn)定帶來很大隱患虎忌。?
保護(hù)動作:啟用防?TC-BPDU?報文攻擊功能后泡徙,在單位時間內(nèi),交換設(shè)備處?
理?TC BPDU?報文的次數(shù)可配置呐籽。如果在單位時間內(nèi)锋勺,交換設(shè)備在收到?TC?
BPDU?報文數(shù)量大于配置的閾值,那么設(shè)備只會處理閾值指定的次數(shù)狡蝶。對于?
其他超出閾值的?TC BPDU?報文,定時器到期后設(shè)備只對其統(tǒng)一處理一次贮勃。這?
樣可以避免頻繁的刪除?MAC?地址表項和?ARP?表項贪惹,從而達(dá)到保護(hù)設(shè)備的目?
的。?
擴(kuò)展問題1:STP選舉四要素寂嘉??
根橋ID(Root ID=根橋的優(yōu)先級+mac地址)?
2.根路徑開銷(RPC:根據(jù)接口的帶寬計算)?
3.發(fā)送者橋ID(Bridge ID=發(fā)送者交換機的優(yōu)先級+mac地址)?
4.發(fā)送者端口ID(Port ID=發(fā)送端口的優(yōu)先級+端口編號)?
若以上四個比較不出來:?
5.接收端口的ID?(接收端口優(yōu)先級+端口編號)?
擴(kuò)展問題2:STP的各位狀態(tài)是如何處理BPDU奏瞬??
STP端口狀態(tài):?
Forwarding:若是RP端口則接收BPDU,若是DP端口則發(fā)送泉孩。?
Learning:若是RP端口則接收BPDU硼端,若是DP端口則發(fā)送。?
Listening:若是RP端口則接收BPDU寓搬,若是DP端口則發(fā)送珍昨。?
Blocking:端口僅接收并處理BPDU。?
Disabled:端口不處理BPDU報文句喷。?
RSTP/MSTP端口狀態(tài):?
擴(kuò)展問題3:華為交換機如果接口關(guān)閉了STP镣典,收到BPDU會如何處理??
BPDU報文發(fā)送的目的地址為01-80-C2-00-00-00唾琼,華為交換機如果接口關(guān)閉了STP兄春,收到目的MAC地址為:01-80-C2-00-00-00組播數(shù)據(jù)幀會接收不處理。?
說明:開啟了STP的交換機收到01-80-C2-00-00-00組播數(shù)據(jù)幀會進(jìn)行STP的計算不會泛洪锡溯,計算完成之后(修改bpdu的發(fā)送者橋ID以及相應(yīng)的根路徑開銷)赶舆,再從DP端口發(fā)出。?
擴(kuò)展問題4:邊緣端口的端口角色是什么角色祭饭??
DP端口芜茵,因為該端口沒有收到更優(yōu)的BPDU,當(dāng)一臺運行STP的交換機剛啟動甜癞,端口的角色為DP端口夕晓,只有收到比該端口優(yōu)的BPDU才會遷移成其他的角色,邊緣端口一般用于連接終端設(shè)備悠咱,不會收到BPDU蒸辆,即端口角色為DP端口征炼。?
擴(kuò)展問題5:如果一個端口收到比自己還要差的BPDU會怎么處理??
華為將這種BPDU稱為次優(yōu)BPDU躬贡,華為交換機收到次優(yōu)BPDU會丟棄該BPDU谆奥,并發(fā)送自己接口的最優(yōu)的BPDU(stp與rstp處理行為一致)。?
如果標(biāo)準(zhǔn)的STP拂玻,收到次優(yōu)BPDU會直接丟棄酸些。?
擴(kuò)展問題6:STP中為什么要設(shè)計轉(zhuǎn)發(fā)延遲時間??
STP如果沒有forwarding delay可能會帶來的臨時環(huán)路問題:?
如下圖檐蚜,初始狀態(tài)下SWA為根交換機魄懂,所有的交換機端口中,只有SWD的E0/2端口為Alternate Port闯第,處于不轉(zhuǎn)發(fā)狀態(tài)市栗。假設(shè)修改SWC的優(yōu)先級,使SWC成為新的根交換機咳短,SWD的E0/2接口成為新的根端口填帽,進(jìn)入轉(zhuǎn)發(fā)狀態(tài),E0/1接口成為新的指定端口咙好,處于轉(zhuǎn)發(fā)狀態(tài)篡腌,SWB的E0/2應(yīng)當(dāng)成為新的Alternate Port,進(jìn)入不轉(zhuǎn)發(fā)狀態(tài)勾效。如果在SWB的E0/2在從轉(zhuǎn)發(fā)狀態(tài)進(jìn)入不轉(zhuǎn)發(fā)狀態(tài)之前嘹悼,SWD的E0/2就從不轉(zhuǎn)發(fā)狀態(tài)進(jìn)入轉(zhuǎn)發(fā)狀態(tài),則網(wǎng)絡(luò)中會出現(xiàn)臨時環(huán)路葵第。?
解決臨時環(huán)路的方法是:在一個端口從不轉(zhuǎn)發(fā)狀態(tài)進(jìn)入轉(zhuǎn)發(fā)狀態(tài)之前(例如SWD的E0/2端口)绘迁,需要等待一個足夠長的時間,以使需要進(jìn)入不轉(zhuǎn)發(fā)狀態(tài)的端口有足夠時間完成生成樹計算卒密,并進(jìn)入不轉(zhuǎn)發(fā)狀態(tài)說明:RSTP采用同步機制缀台,避免臨時環(huán)路問題。?
擴(kuò)展問題7:運行STP的交換機是怎么感知拓?fù)浒l(fā)送變化的哮奇,為什么要發(fā)送TC?
BPDU膛腐,不發(fā)會怎么樣??
標(biāo)準(zhǔn)的STP中當(dāng)一個接口DOWN/UP則認(rèn)為拓?fù)浒l(fā)生鼎俘。拓?fù)浒l(fā)生變化之后哲身,原有的MAC地址表是不能正確引導(dǎo)數(shù)據(jù)轉(zhuǎn)發(fā)的,如果不發(fā)TCBPDU刷新MAC地址表贸伐,會導(dǎo)致數(shù)據(jù)流量無法正常轉(zhuǎn)發(fā)勘天,要等300S的MAC地址表老化時間后,才會刷新MAC地址表。?
擴(kuò)展問題8:什么情況下會觸發(fā)P/A協(xié)商脯丝??
點到點全雙工鏈路商膊。?
擴(kuò)展問題9:P/A協(xié)商過程??
新鏈路連接成功后宠进,P/A機制協(xié)商過程如下:?
<1>p0和p1兩個端口馬上都先成為指定端口晕拆,發(fā)送RST BPDU 。
<2>S2的p1口收到更優(yōu)的RST BPDU材蹬,意識到自己不是指定端口实幕,S2停止發(fā)送RSTBPDU 。
<3>S1的p0進(jìn)入Discarding狀態(tài)堤器,發(fā)送的RST BPDU中把proposal置1 昆庇。
<4>S2收到根橋發(fā)送來的攜帶proposal置位的BPDU時,開始將自己的所有端口入sync變量置位(RP阻塞其他非邊緣端口吼旧,自己轉(zhuǎn)為forwarding狀態(tài))凰锡。?
<5>p2已經(jīng)阻塞,狀態(tài)不變圈暗;p4是邊緣端口,不參與運算裕膀;所以只需要阻塞非邊緣指定端口p3 员串。
<6>除了邊緣端口的其他端口都進(jìn)入Discarding狀態(tài)之后,各端口的synced變量置位昼扛。當(dāng)所有的端口都設(shè)置為synced后寸齐,根端口p1的synced也置位,便向S1返回Agreement位置位的RST BPDU并進(jìn)入forwarding狀態(tài)抄谐。該RST BPDU攜帶和剛才根橋發(fā)過來的BPDU一樣的信息渺鹦,除了Agreement位置位(Proposal位清零) 。
<7>當(dāng)S1判斷出這是對剛剛發(fā)出的Proposal的回應(yīng)蛹含,端口p0馬上進(jìn)入Fowarding狀態(tài)以上P/A過程可以向下游繼續(xù)傳遞 毅厚。
說明:P/A機制要求兩臺交換設(shè)備之間鏈路必須是點對點的全雙工模式。一旦P/A協(xié)商不成功浦箱,指定端口的選擇就需要等待兩個Forward Delay吸耿,協(xié)商過程與STP一樣。
擴(kuò)展問題10:rstp比stp收斂快酷窥,快在哪里??
1咽安、P/A協(xié)商機制
2、AP端口備份機制?
3蓬推、邊緣端口?
擴(kuò)展問題11:為什么P/A機制的協(xié)商一定是點到點的全雙工上才能發(fā)生妆棒??
不是點到點可能會出現(xiàn)臨時環(huán)路并且P/A協(xié)商機制會復(fù)雜。?
A and SW link?未連接時,A糕珊,B动分,D,F(xiàn)間是forwarding放接,當(dāng)A?和SW?連上時刺啦,A?和C P/A協(xié)商后,都forwarding纠脾,A玛瘸,B,D苟蹈,F(xiàn)?間臨時環(huán)路糊渊。當(dāng)B sync后,會回Agreement給A后慧脱,不影響A C的結(jié)果,環(huán)路消失渺绒。?
通過自動協(xié)商,得知端口是不是點到點全雙工(命令: stp point-to-point {auto |force-false | force-true })菱鸥。?
可以強制半雙工鏈路啟用802.1w的場景如下: