STP生成树协议
l 环状的物理链路能够为网络提供备份线路,增强网络的可靠性。但环路会产生网络风暴,
STP协议可以在逻辑上断开环路,以防止广播风暴的产生。它并不是断掉物理链路。
1, STP简介:
STP(Spanning Tree Protocol,生成树协议),即把一个环状的网络变成树状的网络。
STP协议就是用来将物理上存在环路的网络, 通过一种算法,在逻辑上阻塞一些端口,来生成一个逻辑上的树形结构。
在冗余链路的交换环境中,逻辑上阻断环路,防止广播风暴,当活动链发生故障,逻辑上被阻断的链路重新激活,起备份线路的作用。
2, STP工作原理:
(1),生成树算法:
生成树协议运行生成树算法(STA),过程:
1,选择根网桥(Root Bridge)
2,选择根端口(Root Ports)
3,选择指定端口(Designated Ports)
小知识点:
BPDU:(Bridge Protocol Data Unit,桥接数据单元)
STP借助交换BPDU来阻止环路,BPDU包括:BID(Bridge ID,桥ID)BID是用来识别是哪台交换机发出的BPDU。
当一个网桥开始变为活动时,它的每个端口都是每2s(使用缺省定时值时)发送一个BPDU。然而,如果一个端口收到另外一个网桥发送过来的BPDU,而这个BPDU比它正在发送的BPDU更优,则本地端口会停止发送BPDU。如果在一段时间(缺省为20s)后它不再接收到邻居的更优的BPDU,则本地端口会再次发送BPDU。
网桥有三种典型的方式:透明桥、源路由桥与源路由透明桥。
网桥典型地连接两个用同样介质存取控制方法的网段,IEEE 802.1d规范(此规范是为所有的802介质存取方法开发的)定义了透明桥。源路由桥是由IBM公司为它的令牌环网络开发的;而源路由透明桥则是透明桥和源路由桥的组合。桥两边的网段分属于不同的冲突域,但却属于同一个广播域。
生成树协议是一种桥嵌套协议,在
IEEE 802.1d
规范里定义,可以用来消除桥回路。它的工作原理是这样的:生成树协议定义了一个数据包,叫做桥
协议数据单元BPDU(Bridge Protocol Data Unit)。网桥用BPDU来相互通信,并用BPDU的相关机能来动态选择
根桥和备份桥。但是因为从中心桥到任何网段只有一个路径存在,所以桥回路被消除。
在一个生成树环境里,桥不会立即开始转发功能,它们必须首先选择一个桥为根桥,然后建立一个指定路径。在一个网络里边拥有最低桥
ID
的将变成一个根桥,全部的生成树网络里面只有一个根桥。根桥的主要职责是定期发送配置信息,然后这种配置信息将会被所有的指定桥发送。这在生成树网络里面是一种机制,一旦网络结构发生变化,网络状态将会重新配置。
当选定根桥之后,在转发数据包之前,它们必须决定每一个网段的指定桥,运用生成树的这种算法,根桥每隔
2
秒钟从它所有的端口发送
BPDU
包,
BPDU
包被所有的桥从它们的根端口复制过来,根端口是接根桥的那些桥端口。
BPDU
包括的信息叫做端口的
COST
,网络管理员分配端口的
COST
到所有的桥端口,当根桥发送
BPDU
的时候,根桥设置它的端口值为零。然后沿着这条路径,下一个桥增加它的配置端口
COST
为一个值,这个值是它接收和转发数据包到下一个网段的值。这样每一个桥都增加它的端口的
COST
值为它所接收的
BPDU
的包的
COST
值,所有的桥都检测它们的端口的
COST
值,拥有最低端口的
COST
值的桥就变为了指定的桥。拥有比较高端口
COST
值的桥置它的端口进入
阻塞状态,变为了备份桥。在阻塞状态,一个桥停止了转发,但是它会继续接收和处理BPDU数据包。
1. 根网桥的选举:
l 网桥ID是8字节的字段,前两个字节的十进制数成为网桥优先级,后六个字节是网桥的MAC地址。(网桥优先级是用于衡量网桥在生成树算法中优先级的十进制数,取值范围是0 ~ 65535,默认值是32768 )
l
网桥ID中的MAC地址是交换机自身的MAC地址。可使用 show Version 在交换机版本信息中查看交换机自身的MAC地址。
l 选择根网桥的时候,比较的方式是: 看哪台交换机的网桥ID的值最小,优先级小的被选择为根网桥,在优先级相同的情况下,MAC地址小的为根网桥。
2.选择根端口:
选择了根网桥后,网络中的每台交换机必须和根网桥建立某种关联,因此,STP将开始选择根端口。
l 根端口位于非根网桥上,需要在每个非根网桥上选择一个根端口。
l 选择根端口的依据:
1, 到根网桥最低的根路径成本。
2,
直连的网桥ID最小。
3,
直连的端口ID最小。
链路带宽(Mb/s)
|
路径成本
|
10
|
100
|
16
|
62
|
45
|
39
|
100
|
19
|
155
|
14
|
622
|
6
|
1000
|
4
|
10000
|
2
|
端口ID是一个二字节的STP参数,由一个字节的端口优先级和一个字节的端口编号组成,端口优先级是一个可配置的STP参数,默认值是128.
l 根路径成本是两个网桥之间的路径上所有链路的成本之和,也就是某个网桥到达根网桥的中间所有链路的路径成本之和。
3
选择指定端口:
选择制定端口的依据:
1, 根路径成本较低。
2, 所在的交换机的网桥ID的值较小。
3, 端口ID值较小。
l 在STP选择指定端口的时候,首先比较同一网段上端口中根路径成本最低的,也就是将到达根网桥最近的端口作为指定端口;当根路径成本相同的时候,
比较这个端口所在的交换机的网桥ID值,选择一个网桥ID值小的交换机的端口作为指定端口,当网桥ID相同时候, 也就是说, 有几个位于同一交换机上的端口时,比较端口ID值,选择较小的作为指定端口。(
和选择根端口不同,在比较端口
ID
时,比较的是自身的端口ID
值。)
根网桥上的接口都是指定端口,因为根网桥上端口的根路径成本为0 。
转载于:https://blog.51cto.com/1192198405/717930