思考题
根据BID比较出,sw3的g0/0/2为阻塞端口
带宽变小了开销会变大,所以sw3的g0/0/1为阻塞端口
生成树STP技术背景
交换机有多个接口,若两台交换机之间有多条链路相连,当交换机1发送数据帧是,另一个交换机收到未知单播帧,会泛洪;接着就会重复此操作,形成环路了。
二层交换机的冗余性与环路
二层交换机在实际应用中,是需要这样的冗余的,因为避免单点故障,并且可以提高链路的可靠性,保证上层的服务正常运行。很多时候,因为网络施工时将网线多插了,或者插错位置了,就会导致环路
三层里有TTL防止环路,255条,必死;
但是二层环路一旦形成,将是无休止的,直到消耗完设备资源,重启关机。
生成树协议
生成树协议
逻辑上将一个端口阻塞,使断开端口所在的链路,破除环路。当然能阻塞端口,同样在需要的时候,也可以放开端口,连通链路。
生成树能动态感知网络拓扑的变化,调整阻塞或放行端口
生成树:通过交互报文感知网络拓扑的变化
ospf:通过hello报文感知网络的变化
生成树基本概念
桥ID
桥ID:有桥优先级和桥Mac地址构成BID=桥优先级+Mac地址每一个台运行STP的交换机都拥有一台唯一的根桥根桥的桥ID:RID
根桥
通过比较桥ID大小,选出根桥。先比较优先级,在比较mac地址。桥优先级值越小,越优,成为根桥;优先级相同,比较mac地址mac地址越小,越小,成为根桥;根桥具备抢占性;
每一个stp的接口都有一个cost值根桥会根据每一个非根桥的cost,计算到根的开销接口带宽越大,cost越小cost计算方法不同,cost也不相同。默认使用的是IEEE8011标准。
RPC
PRC=根桥到非根桥经过所有的入方向接口的cost累加
接口id
PID接口ID:由优先级和接口编号构成例如:接在g0/0/1接口上的PortID:121端口id的优先级可以修改,修改范围在<0-240>,默认优先级为128
BPDU
BPDU基本概念
BPDU:是stp交换机之间的交互的报文,通过BPDU感知网络的拓扑BPDU分为两种类型:配置BPDUTCNBPDU当拓扑发生变更时,才会出现黑色的是TCNBPDU,灰色的是BPDU
配置BPDU的报文格式
BPDU报文核心字段
不是只有根桥才发送BPDU,当非根桥收到根桥的BPDU的时候,也会准发给其他的非根桥。
FLAG:TCTCARID当前交换网络中根桥的桥ID。RPC根路径开销,到达根桥的开销值开销值如何计算:从根桥计算,到达该接口所经过的,所有入方向的开销值累加,开销值三种计算方式。BID自身发送该BPDu的桥IDBID=桥优先级+MAc地址。PortID发送该BPDU的接口的ID,由接口优先级+接口号组成。-----------------根据以上四个核心字段,选出指定端口、根端口。---------------------------messageage消息时间/生存时间,从根桥发出为0,每经过一台交换机+1smaxage最大生存时间――默认情况下20s,如果messageage=maxage,则该BPDU失效。hellotime发送bpdu的间隔,默认2sforwarddelay转发延迟,默认15s
配置BPDU的比较原则
STP协议选举机制
BPDU转发时,唯一不变的是根桥的ID
交换机只有在发送BPDU时,才会算上自己的cost‘;接受BPDU时,不会算上自己的cost
指定端口(DP):发送最优的BPDU
根端口(RP):收最优的BPDU
阻塞端口:既不是指定端口,又不是跟端口,则为阻塞端口
端口选举例子
LSW5收到来自LSW2的BPDU【RID0RPC20000B0-ID4096PIDg0/0/2】收到来自LSW3的BPDU【RID0RPC20000BID8192PIDg0/0/2】故:LSW5收到来自LSW2的BPDU最优,则LSW5的g0/0/1为RP,G0/0/2为APLSW8收到来自LSW7的左边BPDU【RID0RPC20000BID8192PIDg0/0/2】右边BPDU【RID0RPC20000BID8192PIDg0/0/6】故:LSW5收到来自LSW7的左边BPDU最优,则LSW5的g0/0/2为RP,G0/0/12为APLSW11收到来自LSW10的左边BPDU【RID0RPC20000BID8192PIDg0/0/2】右边BPDU【RID0RPC20000BID8192PIDg0/0/2】因为无法用BPDU的核心字段来比较,所以比较自身设备的接口号故:LSW5收到来自LSW7的左边BPDU最优,则LSW5的g0/0/1为RP,G0/0/2为AP
stp接口状态
禁用:不能收发BPDU,不能收发业务数据帧。阻塞:只会侦听BPDU,但不能收发业务数据帧,不会学习mac地址。侦听:可以收发BPDU,不能收发业务数据帧,不会学习mac地址。学习:可以收业务数据帧,但不能转发,进行mac地址学习。转发:可以收业务数据帧,也能发送业务数据帧。*端口从阻塞状态到转发状态,需要两个BPDU转发延迟,经历侦听状态BPDU转发1延迟5s,学习状态BPDU转发延迟15s,一共20s
拓扑变化-恢复故障的过程
根桥故障-需要30s的恢复当根桥SW1故障,SW2变成根桥,此时根桥SW2给SW3发送的BPDU里【RID102bRPC0BID102bPID3端口】而在根桥故障前SW3的接受的BPDU【RID102aRPC20000BID102aPID3端口】在两边BPDU不一致的情况下,SW3等待原来根桥SW1的max-age最大生存时间20s,20s内没有收到来自原根桥的BPDU,则认为SW2为根桥;在将自己AP端口由阻塞状态经过两个BPDU转发延迟30s,转变为转发状态。根桥故障一共需要50s的恢复;直连链路故障-需要30s的恢复直连链路故障,非根交换机能直接感知到,所以不需要等待BPDU老化的20s,直接由AP端口由阻塞状态经过两个BPDU转发延迟30s,转变为转发状态。直连链路故障需要30s的恢复;非直连链路故障-需要50s的恢复
拓扑变更后,发送TCNBPDU
当网络拓扑发生变化后,主机A欲想经过SW2与主机B通信,需要查mac地址表,而根桥变更后,mac地址发生了变化,原本走g0/0/3到主机B,现在需要走g0/0/2到主机B,但是mac地址表刷新需要300s,这一时间太长了,影响网络;故TCNBPDU的作用,就是在网络发生变更的时候,新的根桥立刻发送TCNBPDU,强制将非根桥的Mac地址刷新时间边为15s,然后非根桥向新根桥回复TCA确认后,向原来的根桥转发这个新根桥发送的TCNBPDU,原根桥回复TC,再由这个给根桥转发给新根桥,完成mac地址的刷新。
STP基础配置
例如:【SW1】stpmodestpstppriority0disstpb【SW2】stpmodestpdisstpb所以我的推断是正确的,sw2的e0/0/2是AP,阻塞了【SW1】stpmodestpstppriority4096disstpb
思考题
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点