【STP生成树】(桥ID、根桥、cost、RPC、接口ID、BPDU报文格式、端口选举举例) |
您所在的位置:网站首页 › 交换机标识的两个组成部分 › 【STP生成树】(桥ID、根桥、cost、RPC、接口ID、BPDU报文格式、端口选举举例) |
目录 一、生成树STP技术背景 1.前言 2.二层交换机的冗余性与环路 二、生成树协议 1.生成树协议 2.生成树能动态感知网络拓扑的变化,调整阻塞或放行端口 生成树: 通过交互报文感知网络拓扑的变化 ospf:通过hello报文感知网络的变化 三、生成树基本概念(术语) 1.桥ID(BID) BID=桥优先级+Mac地址 2.根桥(根交换机) 1)通过比较桥ID大小,选出根桥。先比较优先级,在比较mac地址。 2)根桥具备抢占性; 3.cost 4.RPC(根路径开销) PRC=根桥到非根桥经过所有的入方向接口的cost累加 5.接口id(Port ID) PID接口ID:由优先级和接口编号构成 四、BPDU(网桥协议数据单元) 1.BPDU基本概念 1)BPDU:是stp交换机之间的交互的报文,通过BPDU 感知网络的拓扑 2)BPDU分为两种类型: 2.配置BPDU的报文格式 3.BPDU报文核心字段 4.配置BPDU的比较原则 1)STP协议选举机制 5)端口选举例子 1. 2. 3. 5.stp接口状态 6. 拓扑变化-恢复故障的过程 1)根桥故障 -需要30s的恢复 2)直连链路故障 -需要30s的恢复 3)非直连链路故障 -需要50s的恢复 7.拓扑变更后,发送TCN BPDU 五、STP基础配置 思考题 1. 根据BID比较出,sw3的g0/0/2为阻塞端口 2.带宽变小了开销会变大,所以 sw3的g0/0/1为阻塞端口 3. 4. 一、生成树STP技术背景 1.前言
二层交换机在实际应用中,是需要这样的冗余的,因为避免单点故障,并且可以提高链路的可靠性,保证上层的服务正常运行。 很多时候,因为网络施工时将网线多插了,或者插错位置了,就会导致环路 三层里有TTL防止环路,255条,必死; 但是二层环路一旦形成,将是无休止的,直到消耗完设备资源,重启关机。 二、生成树协议 1.生成树协议![]() ![]() 桥ID(BID):有桥优先级和桥Mac地址构成 BID=桥优先级+Mac地址每一个台运行STP 的交换机都拥有一台唯一的根桥 根桥的桥ID:RID 2.根桥(根交换机)![]() 桥优先级值越小,越优,成为根桥;优先级相同,比较mac地址 (优先级可以手动修改) mac地址越小,越小,成为根桥; 2)根桥具备抢占性; 3.cost1)每一个stp的接口都有一个cost值 2)根桥会根据每一个非根桥的cost,计算到根的开销 3)接口带宽越大,cost越小 4)cost计算方法不同,cost也不相同。默认使用的是IEEE 802.11标准。 ![]() 例如:接在g0/0/1接口上的Port ID:128.1 端口id的优先级可以修改,修改范围在,默认优先级为128 1.配置BPDU (交互桥ID、cost、PRC等信息;判断网络发生故障;拓扑计算,选举出阻塞的端口;计算哪些端口收、哪些端口发) 2.TCN BPDU (topology change notification) 当拓扑发生变更时,才会出现 黑色的是TCN BPDU,灰色的是BPDU 2.配置BPDU的报文格式![]() 不是只有根桥才发送BPDU,当非根桥收到根桥的BPDU 的时候,也会准发给其他的非根桥。 FLAG: TC TCA 1、RID 当前交换网络中根桥的桥ID。2、RPC 根路径开销,到达根桥的开销值开销值如何计算: 从根桥计算,到达该接口所经过的,所有入方向的开销值累加,开销值三种计算方式。3、BID 自身发送该BPDu的桥IDBID=桥优先级(0-61440,优先级必须取4096的倍数)+MAc地址。4、Port ID 发送该BPDU的接口的ID,由接口优先级+接口号组成。 ----------------- 根据以上四个核心字段,选出指定端口、根端口。 ---------------------------message age 消息时间/生存时间,从根桥发出为0,每经过一台交换机+1smax age 最大生存时间――默认情况下20s,如果message age = max age,则该BPDU失效。 (max-age最大40s 当max-age小于24s时,每经过一台设备message age +1 当max age在24-39s之间时,每经过一台设备+2当max age等于40s时,每经过一台设备+3 ) hello time 发送bpdu的间隔,默认2sforward delay 转发延迟,默认15s 4.配置BPDU的比较原则![]() BPDU转发时,唯一不变的是根桥的ID 交换机只有在发送BPDU时,才会算上自己的cost‘;接受BPDU时,不会算上自己的cost 指定端口(DP):发送最优的BPDU 根端口(RP):收最优的BPDU 阻塞端口(AP):既不是指定端口,又不是跟端口,则为阻塞端口 ![]() LSW 5 收到来自LSW 2的 BPDU 【RID 0 RPC 20000 B0-ID 4096 PID g0/0/2】 收到来自LSW 3的 BPDU 【RID 0 RPC 20000 BID 8192 PID g0/0/2】 故: LSW 5 收到来自LSW 2的 BPDU最优,则 LSW 5的g0/0/1为RP,G0/0/2为AP 2.LSW 8 收到来自LSW 7的 左边 BPDU 【RID 0 RPC 20000 BID 8192 PID g0/0/2】 右边 BPDU 【RID 0 RPC 20000 BID 8192 PID g0/0/6】 故: LSW 5 收到来自LSW 7的 左边BPDU 最优,则 LSW 5的g0/0/2为RP,G0/0/12为AP 3.LSW 11收到来自LSW 10 的 左边 BPDU 【RID 0 RPC 20000 BID 8192 PID g0/0/2】 右边 BPDU 【RID 0 RPC 20000 BID 8192 PID g0/0/2】 因为无法用BPDU的核心字段来比较,所以比较自身设备的接口号 故: LSW 5 收到来自LSW 7的 左边BPDU最优,则 LSW 5的g0/0/1为RP,G0/0/2为AP 5.stp接口状态1.禁用(disable):不能收发BPDU,不能收发业务数据帧。(在接口处于down状态或者禁用时,为disable) 2.阻塞(blocking):只会侦听BPDU,但不能收发业务数据帧,不会学习mac地址。(收BPDU是因为,即使是阻塞了,也需要动态感知整个网络的拓扑,以便未来放行该端口。并且假如,收发 业务数据帧就意味着它能学习mac地址了,这样一来,就不是阻塞端口了) 3.侦听(listening):可以收发BPDU,不能收发业务数据帧,不会学习mac地址。(此时只是初步认定为根端口或者指定端口,还处于STP计算) 4.学习(learning):可以收业务数据帧,但不能转发,进行mac地址学习。 5.转发(forwording):可以收业务数据帧,也能发送业务数据帧。 *端口从阻塞状态到转发状态,需要两个BPDU转发延迟,经历侦听状态BPDU转发1延迟5s,学习状态BPDU转发延迟15s,一共20s 当根桥SW1故障,SW2变成根桥, 此时根桥SW2给SW3发送的BPDU里【RID 102b RPC 0 BID 102b PID 3端口 】 而在根桥故障前SW3的接受的BPDU【RID 102a RPC 20000 BID 102a PID 3端口 】 在两边BPDU不一致的情况下,SW3等待原来根桥SW1的max-age最大生存时间20s,20s内没有收到来自原根桥的BPDU,则认为SW2为根桥;接着,在将自己AP端口由阻塞状态经过两个BPDU转发延迟30s,转变为转发状态。 所以,根桥故障一共需要50s的恢复; 2)直连链路故障 -需要30s的恢复![]() 直连链路故障,非根交换机能直接感知到,所以不需要等待BPDU老化的20s,直接由AP端口由阻塞状态经过两个BPDU转发延迟30s,转变为转发状态。 所以,直连链路故障需要30s的恢复; 3)非直连链路故障 -需要50s的恢复![]()
故TCN BPDU的作用,就是在网络发生变更的时候,新的根桥立刻发送 TCN BPDU,强制将非根桥的Mac地址刷新时间边为15s,然后非根桥向新根桥回复TCA确认后,向原来的根桥转发这个新根桥发送的TCN BPDU,原根桥回复TC ,再由这个给根桥转发给新根桥,完成mac地址的刷新。 ![]() 例如: 【SW1】 stp mode stp stp priority 0 dis stp b 【SW2】 stp mode stp dis stp b 所以我的推断是正确的,sw2的e0/0/2是AP,阻塞了 【SW1】 stp mode stp stp priority 4096 dis stp b a 1. 根据BID比较出,sw3的g0/0/2为阻塞端口sw1:g0/0/0 DP ;g0/0/1 DP sw2:g0/0/1 RP ; g0/0/2 DP sw3:g0/0/1 DP ; g0/0/2 RP sw4:g0/0/1 RP ; g0/0/2 AP sw1:g0/0/0 DP ;g0/0/1 DP sw2:g0/0/1 RP ; g0/0/2 AP |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |