一:stp原理:
stp原理非常简单 就是在网桥之间传输特殊消息(BPDU,配置消息),包换足够的信息以后做以下的工作:
1.从网络中的所有网桥中,选出根网桥(root)
2.计算本网桥到根网桥的最短路径
3.对每个lan 选出离根桥最近的那个网桥作为指定网桥,负责所有的lan数据转发。
4.网桥选择一个根端口,该端口给出的路径是这个网桥到根网桥的最佳路径选择。
5.确定根端口之外的包含生成树上的所有端口BPDU。
二.作用
1.选举根桥
2.检查环路发生的位置
3.阻止环路发生
4.通告网络状态的改变
5.监听生成树状态
BPDU报文处理:
将各个端口收到的配置消息和自己的配置消息做比较,得出最优的配置消息。
四.mstp
1.概念:
每个实例中对应一个或者一组vlan
每个vlan只能对应一个实例
每台交换机可以配置多个实例
没有配置vlan与实例映射时,所有vlan映射到实例0
实例是mstp域的概念
2.工作原理:
每个实例中各种计算生成生成树,互相不打扰,算法与rstp相同,不同的实例有不同的根,不同的拓扑。每个实例都有自己的BPDU报文;每个实例的的拓扑可以通过人力来确定,每个端口在不同的实例中生成树的参数可以不同,角色,状态也不同。
3.mstp区域
每一个mstp域由一个或者几个具有相同的mstp配置id相连网桥组成,它们启用多个实例。
五配置实例:
配置vlan
sw1:
ZXR10(config)#switchvlan-configuration
ZXR10(config-swvlan)#vlan 10
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#vlan 20
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#vlan 30
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#interface gei-0/1/1/24
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport mode trunk
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 10
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 20
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 30
ZXR10(config-swvlan)#interface gei-0/1/1/23
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport mode trunk
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 10
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 20
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 30
sw2:
ZXR10(config)#switchvlan-configuration
ZXR10(config-swvlan)#vlan 10
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#vlan 20
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#vlan 30
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#interface gei-0/1/1/24
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport mode trunk
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 10
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 20
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 30
ZXR10(config-swvlan)#interface gei-0/1/1/23
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport mode trunk
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 10
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 20
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 30
sw3:
ZXR10(config)#switchvlan-configuration
ZXR10(config-swvlan)#vlan 10
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#vlan 20
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#vlan 30
ZXR10(config-swvlan-sub)#exit
ZXR10(config-swvlan)#interface gei-0/1/1/24
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport mode trunk
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 10
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 20
ZXR10(config-swvlan-if-gei-0/1/1/24)#switchport trunk vlan 30
ZXR10(config-swvlan)#interface gei-0/1/1/23
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport mode trunk
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 10
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 20
ZXR10(config-swvlan-if-gei-0/1/1/23)#switchport trunk vlan 30
mstp配置:
sw1:
ZXR10(config)stp //进入stp接口状态下
ZXR10(config-stp) enable //开启stp生成树协议
ZXR10(config-stp) mode mstp //选择为mstp协议
ZXR10(config-stp)mstp name mtp //为mstp协议添加名字
ZXR10(config-stp)mst revision 2 //选择mstp协议版本号。正常情况都是2
ZXR10(config-stp)mst priority 1 instance 1 //设置生成树优先级
ZXR10(config-stp)mst priorty 1 instance 1 //设置接口优先级
ZXR10(config-stp) mst vlans vlan10 instace 1 //将vlan 10 映射到实例1中
ZXR10(config-stp) mst vlans vlan20 instace 2 //将vlan 20 映射到实例2中
ZXR10(config-stp) mst vlans vlan30 instace 3 //将vlan 30 映射到实例3中
sw2配置:
ZXR10(config)stp //进入stp接口状态下
ZXR10(config-stp) enable //开启stp生成树协议
ZXR10(config-stp) mode mstp //选择为mstp协议
ZXR10(config-stp)mstp name mtp //为mstp协议添加名字
ZXR10(config-stp)mst revision 2 //选择mstp协议版本号。正常情况都是2
ZXR10(config-stp)mst priority 1 instance 1 //设置生成树优先级
ZXR10(config-stp)mst priorty 1 instance 1 //设置接口优先级
ZXR10(config-stp) mst vlans vlan10 instace 1 //将vlan 10 映射到实例1中
ZXR10(config-stp) mst vlans vlan20 instace 2 //将vlan 20 映射到实例2中
ZXR10(config-stp) mst vlans vlan30 instace 3 //将vlan 30 映射到实例3中
sw3配置:
ZXR10(config)stp //进入stp接口状态下
ZXR10(config-stp) enable //开启stp生成树协议
ZXR10(config-stp) mode mstp //选择为mstp协议
ZXR10(config-stp)mstp name mtp //为mstp协议添加名字
ZXR10(config-stp)mst revision 2 //选择mstp协议版本号。正常情况都是2
ZXR10(config-stp)mst priority 1 instance 1 //设置生成树优先级
ZXR10(config-stp)mst priorty 1 instance 1 //设置接口优先级
ZXR10(config-stp) mst vlans vlan10 instace 1 //将vlan 10 映射到实例1中
ZXR10(config-stp) mst vlans vlan20 instace 2 //将vlan 20 映射到实例2中
ZXR10(config-stp) mst vlans vlan30 instace 3 //将vlan 30 映射到实例3中