网桥
使用珀尔曼博士发明的这种方法能够达到2层
路由
的理想境界:
冗余
和无
环路
运行。你可以把
生成树
协议设想为一个各
网桥
设备记在心里的用于进行优化和容错发送数据的过程的树型结构. 生成树协议(Spanning Tree)定义在 IEEE 802.1D 中,是一种链路管理协议,它为网络提供
路径
冗余
同时防止产生
环路
。为使
以太网
更好地工作,两个
工作站
之间只能有一条活动
路径
。
网络环路
的发生有多种原因,最常见的一种是有意生成的
冗余
- 万一一个链路或
交换机
失败,会有另一个链路或交换机替代。
①非扩展的:
网桥
优先级(2bytes)+ MAC地址
②扩展的:网桥优先级(4bits) + 系统标识(VLAN ID;12bits) + MAC地址
(2)
网桥协议数据单元
(BPDU):
①配置(CFG)BPDU: 初始时每个
网桥
都会发送,假设自己就是根网桥
收敛后,只从根
网桥
发出,其他网桥在根端口接收后向下中继。
②拓扑改变提示(
TCN
)BGDU:当拓扑发生变化时,其他
网桥
可以从根端口发出该BPDU,到达根网桥。
根
网桥
在配置BPDU中设定
TCN
位,提示其他网桥快速清理
MAC地址表
。
(3)时间值:
①HELLO间隔:2秒,CFG BPDU发送间隔
②MAX AGE: 20秒,CFG BPDU的保留时间
③FWD_DELAY: 15秒,监听(listening)和学习(learning)的时间
(4)
路径
代价:与链路速率相关,用于计算
网桥
间的距离
(5)端口状态:
①关闭(disable):端口处于管理关闭状态
②阻塞(blocking): 不能转发用户数据
③监听(listening): 接口开始启动
④学习(learning) : 学习MAC地址, 构建MAC表进程项
⑤转发(forwarding): 可以转发用户数据
(6)选择标准:
①最低的
网桥
标识号
②最低的路径代价到根
网桥
③最低的发送者的
网桥
标识号
④最低的端口标识号
2,选择操作顺序:
(1)选择一个根
网桥
:每一个网络选择一个
(2)选择一个根端口:每一个非根
网桥
选择一个
(3)选择一个指派端口:每一个网段选择一个
(4)非指派端口被放置在
阻塞状态
(1)每VLAN
生成树
协议(PVST):每一个VLAN有一个
生成树
的计算进程
(2)根
网桥
的选择:楼内分布层
交换机
应该成为根网桥,即避免访问层
交换机
成为根网桥
(3)生成树的
负载平衡
:配置不同的分布层
交换机
成为不同VLAN的根
网桥
2,配置根
网桥
:两种方式
(1)定义优先级:
(config)#spanning-tree vlan <vlan-id> priority <priority>
(2)定义交换机为根
网桥
:
(config)#spanning-tree vlan <vlan-id> root [primary|secondary]
(1)端口立即从
阻塞状态
进入转发状态,不经过监听和学习状态
(2)应该只将这一特性配置在连接
终端
主机的端口上,即不应配置在
交换机
间的端口上。
(3)配置命令:两种方式
①接口配置模式:
(config-if)#spanning-tree
portfast
②全局模式:对所有非骨干链路端口生效
(config)#spanning-tree
portfast
default
2,
快速生成树
协议(RSTP):
802.1w
(1)端口状态:
①丢弃(discarding):不能转发用户数据
②学习(learning):学习MAC地址, 构建MAC表进程项
③转发(forwarding): 可以转发用户数据
(2)端口类型:
①根(root)端口:与802.1D相同
②指派(designated)端口: 与802.1D相同
③预备(alternative)端口: 端口被阻塞,作为根端口的备份
④备份(backup)端口:(learning) : 端口被阻塞,作为指派端口的备份
(3)
网桥协议数据单元
:
①数据字段:增加了4个字段描述位,说明端口的状态和类型
②CFG BPDU:直接在两两
交换机
间交换,如果丢失3个BPDU,意味着链路拓扑发生改变。
③
TCN
BPDU:直接在
交换机
间
泛洪
。
(4)
快速收敛
机制:
①边缘(edge)端口: 连接
终端
主机的端口,自动实现端口快速特性
②点到点链路:即全双工链路,自动实现快速端口状态改变,不再有max-age和fwd-delay的延迟
(5)配置命令:
(config)#spanning-tree mode rapid-pvst
(6)校验命令:
#show spanning-tree vlan <vlan-id>
#debug spanning-tree
(1)定义:映射多个vlan
生成树
计算进程到一个MST的进程;减少PVST的计算负担;实现与CST域的互操作
(2)配置命令:
①进入MST配置模式:
(config)#spanning-tree mst configuration
②定义MST域名:
(config-mst)#name <name>
③定义MST的配置版本号:
(config-mst)#revision <num>
④映射多个VLAN到一个MST进程:
(config-mst)#instance <inst-num> vlan <vlan-range>
⑤定义根
网桥
:
(config-mst)#spanning-tree mst <inst-num> root [primary|secondary]
(3)校验命令:
#show spanning-tree mst configuration
#show spanning-tree mst <inst-num>
2,
以太通道
(etherchannel):
(1)定义:
①绑定多条相同的
以太网
链路作为一个逻辑的通道。
②
生成树
协议将其看作为一个端口的链路
③实现多链路上的
负载平衡
和
冗余
(2)配置二层的
以太通道
:
①指定要绑定的端口范围:
(config)#interface range <type slot/port - port>
②定义通道管理协议:
(config-if-range)#channel-protocol [pagp|lacp]
③定义端口到通道:
(config-if-range)#channel-group <group-num> mode on
④定义
负载平衡
模式:
(config)#port-channel load-banlance <mode>
(3)校验命令:
#show interfaces <num> etherchannel
#show etherchannel <group-num> port-channel
#show etherchannel <group-num> summary
错误:把
交换机
连接到了配置了“端口快速”的端口上,可能引起
环路
问题
(1)BPDU守卫(GUARD):
①定义:当配置了“端口快速”的端口接收到BPDU时,关闭该端口。
②配置命令:
(config)#spanning-tree
portfast
bpdu
guard
③校验命令:
#show spanning-tree summary totals
(2)BPDU过滤(filtering):
①定义:当配置了“端口快速”的端口接收到BPDU时,该端口失去“端口快速”特性。
②配置命令:
(config)#spanning-tree
portfast
bpdu
filter default
③校验命令:
#show spanning-tree summary totals
2,保护现有优化的根
网桥
:“根守卫”(root guard)
(1)定义:当端口收到一个具有更好的参数的
网桥协议数据单元
(superior
bpdu
)时,
将该端口放置在一个“根不一致(root-inconsistent)”状态,不转发这一BPDU。
(2)配置命令:
(config-if)#spanning-tree guard root
(3)校验命令:
#show spanning-tree inconsistentports
3,阻止可能的
生成树
的
环路
:
(1)单向链路检测(UDLD):
①定义: 通过发送检测消息发现物理链路出现单向中断时,关闭该链路端口。
②配置命令:
(config)#udld enable →在所有的光纤端口上启用
或(config-fi)#udld enable →在某一个光纤或非光线端口上启用
③校验命令:
#show udld interface <num>
(2)
环路
守卫(loop guard):
①定义: 当某一方向端口在MAX-AGE时间后没有收到BPDU时,
将该端口放置在一个“
环路
非一致(loop-inconsistent)”状态,
阻止该端口发送用户数据。
②配置命令:
(config-if)#spanning-tree guard loop
③校验命令:
#show spantree guard <int-num>
生成树协议拓扑结构
最新推荐文章于 2024-05-10 18:23:04 发布