STP(IEEE802.1D生成树协议)技术原理:
维护一个树状的网络拓扑,当交换机发现拓扑中有环时,就会逻辑的阻塞一个或更多冗余端口来实现无环拓扑,当网络拓扑发生变化时,运行STP的交换机会自动重新配置他的端口以避免环路产生或连接丢失。
STP算法分四个步骤:
步骤一:选举根网桥
判定对象:在所有运行STP协议的交换机上选举出一个唯一的根网桥。
判定条件:BPDU数据帧中网桥ID值最小的交换机将成为根网桥(BPDU数据帧中网桥ID有8个字节,它是由2个字节的网桥优先级和6个字节的背板MAC组成的,其中网桥优先级的取值范围是0-65535,缺省值是32768)
---在进行网桥ID比较时,先比较网桥优先级,优先级值小的为根网桥;当优先级值相等时,再比较背板MAC地址,MAC地址小的为根网桥。
步骤二:选举跟端口
判定对象:在所有非根网桥交换机上的不同端口之间选举出一个到根网桥最近的端口作为跟端口。
判定条件:
—1.端口到根网桥路径开销最小
—2.发送方网桥ID最小
—3.发送方端口ID最小(端口ID有16位,它是由8位端口优先级和8位端口编号组成的,其中端口优先级的取值范围是0-240,缺省值是128,可以修改,但必须是16的倍数)
步骤三:选举指定端口
判定对象:在每一个物理网段的不同端口之间选举出一个指定端口。
判定条件:
—1.网桥到根网桥路径开销最小
—2.发送方网桥ID最小
—3.发送方端口ID最小
步骤四:阻塞其它端口,形成无环拓扑
请看STP算法一实例:
拓扑图
步骤一:选举根网桥
—比较四个交换机(SW1、SW2、SW3和SW4)的网桥ID,四个交换机的优先级都是32768,优先级相等,再比较背板MAC,显然SW1的背板MAC最小,所以SW1的网桥ID最小,SW1是根网桥。
步骤二:选举跟端口
—在SW2上
端口到根网桥路径开销:0/1=19<0/2=19+19,所以0/1号端口是SW2的根端口。
—在SW3上
端口到根网桥路径开销:0/3=19<0/2=19+19,所以0/3号端口是SW3的根端口。
—在SW4上
端口到根网桥路径开销:0/1=19<0/2=19+19,所以0/1号端口是SW4的根端口。
步骤三:选举指定端口
—在SW1-SW2的物理网段上
SW1上的0/1号端口的网桥到根网桥的路径开销是0,而SW2上的0/1号端口的网桥到根网桥的路径开销是19,所以在SW1-SW2的物理网段上,SW1上的0/1号端口是指定端口。
—在SW1—SW3的物理网段上
SW1上的0/3号端口的网桥到根网桥的路径开销是0,而SW3上的0/3号端口的网桥到根网桥的路径开销是19,所以SW1—SW3的物理网段上,SW1上的0/3号端口是指定端口。
—在SW1—SW4的物理网段上
SW1上的0/2号端口的网桥到根网桥的路径开销是0,而SW4上的0/1号端口的网桥到根网桥的路径开销是19,所以在SW1-SW4的物理网段上,SW1上的0/2号端口是指定端口。
—在SW2—SW3的物理网段上
SW2上的0/2号端口和SW3上的0/2号端口的网桥到根网桥的路径开销都是19,再比较两端口的发送方网桥ID,SW2上的0/2号端口的发送方网桥是32768.000d.280c.b300,而SW3上的0/2号端口的发送方网桥是32768.000d.280b.b200,所以在SW2-SW3的物理网段上,SW2上的0/2号端口是指定端口。
—在SW3—SW4的物理网段上
SW3上的0/1号端口和SW4上的0/2号端口的网桥到根网桥的路径开销都是19,再比较两端口的发送方网桥ID,SW3上的0/1号端口的发送方网桥是32768.000d.280d.b100,而SW4上的0/2号端口的发送方网桥是32768.000d.280c.b300,所以在SW3-SW4的物理网段上,SW3上的0/1号端口是指定端口。
步骤四:阻塞端口(SW3上的0/2号端口和SW4上的0/2号端口)
最后的STP生成拓扑图
结论:在根网桥上的所有端口都是指定端口,同一个交换机(除了根网桥)上的端口只能属于一种端口,不可能是根端口同时兼指定端口