您的位置:首页 > 编程语言 > PHP开发

STP端口角色选举

2014-05-22 09:41 183 查看
STP是一种二层防环协议,该协议通过阻塞冗余链路达到二层防环作用,而如何阻塞有如下的规则:
一、一条链路上只能有一个DP端口,也就是链路对端端口要么是RP,要么就是NDP二、且非根桥只能有一个RP端口,根桥所有端口都处于DP三、RP对端一定是DP

选举步骤如下一、选举根桥二、选举RP三、选举DP四、选举NDP

对根桥的选举而言,比较简单,就不赘述,对于非根桥端口角色的选举有如下规则:RP选举①选择去往根桥Cost值最小的端口作为RP端口(即该端口入向接收BPDU时COP大小,小的成为RP)若相同则比较下一步②选择接收到BPDU数据包中BID最小的成为根端口,若相同③选择PID(链路对端发送BPDU的端口PID)小的成为RPRP选举完毕,接下来就是选择DP和NDP④比较入向接收到BPDU和该端口发送的BPDU中COP大小,小的成为DP,而大的成为NDP,若相同⑤比较比较入向接收到BPDU和该端口发送的BPDU中BID大小,小的成为DP,而大的成为NDP,若相同⑥比较比较入向接收到BPDU和该端口发送的BPDU中PID大小,小的成为DP,而大的成为NDP

接下来就上面的规则,我们举几个STP选举实例例1:


如图:根桥的是Switch0,很好分析,对Switch1和Switch2由规则步骤①知道Switch1的Fa0/1以及Switch2
的Fa0/1,而对于Switch3由步骤一比较不出来,因为他们从Switch1和Switch2接收到的BPDU中,COP大小相等,接下来从由步骤②知道Switch1的BID小于Switch2的BID,所以Switch3的Fa0/2成为RP,RP确定的瞬间,对端DP的角色已经确定。
接下来就是选举DP和NDP,在图中,就是选举Switch2(Fa0/1)--->Switch3(Fa0/1)之间的链路,我们就Switch3的端口Fa0/1进行分析,由步骤④得知,Switch3从Switch2接收到的BPDU中COP大小为19,而Switch3的Fa0/1出接口BPDU中COP的大小为38,所以Switch2的BDPU更优,该交换机的Fa0/2成为DP,而Switch3的Fa0/1的端口成为NDP
例2:



如图:根桥的为Switch4,该交换机的Fa0/1和Fa0/2为DP,而对于Switch5,步骤①和步骤②的比较均不可以确定RP的角色,因为他的接口入向接收到的BPDU中COP大小相等,BID也相等,而由步骤③得知,Switch4的Fa0/1发出的BPDU中PID要小于Fa0/2的PID(PID由端口优先级以及端口号组成),所以Switch5
的Fa0/2成为RP,而又由于一台交换只能有一个RP和一条链路上只能有一个DP判定Switch5的Fa0/1为NDP
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  STP DP RP NDP