[转载]交换机STP协议

注:之前做一个项目,测试部使用2个公司的交换机,H3C和H公司的,H公司的交换机是OEM H3C的交换机,正常来说两者使用没有区别。

但是使用中发现,如果设备的多个对外业务网口连接的交换机的聚合网口,启动过程中设备的业务网口尚未配置聚合,此时使用H3C交换机正常,但是使用H公司的交换机就出现网络风暴。

最后确认是因为H公司的交换机没有开启STP协议导致的回环。

 

交换机 STP 协议 (使用冗余交换机时,防止网络中出现环路造成广播风暴。Active/Standby 模式)

转自 http://sunxuewei.blog.51cto.com/902684/978573

需求

    在大型局域网中,为了维护网络的健壮性和可靠性,在核心层会采取多台设备进行冗余备份,而在汇聚层也会采取双归属或者环路来达到负载分担和冗余备份。因此在此类网络中从一点到达另一点可能会有多条路径可达。因而在报文转发时不可避免的会产生广播风暴。 STP的计算将错综复杂的物理网络整合成一棵逻辑转发树,将那些没有必要的链路阻塞。而当某些当前在用的链路发生故障时,又可以快速启用被阻塞的的链路来代替,保证网络的连通性。简单地说,想做冗余又怕环路所以用 STP 解决。

作用:

   交换机内的生成树算法(STA)使你可以创建一条备用链路(当网络中存在多台交换机时)。在主链路正常工作时,备用链路处于空闲状态(不工作);只有在主链路出现问题时,备用链路才不需要任何人工干预自动地接替主链路。这种自动重构的功能,使得网络上的用户能够最大限度地与网络保持正常的连接。

   STP协议在逻辑上断开网络的环路,防止广播风暴的产生,而一旦正在使用的线路出现故障,逻辑上被断开的线路又被连同,起到了冗余备份的作用。

原理

什么是STP协议?

STP(Spanning Tree Protocol)生成树协议

举例:当网络存在环路的时候,A查找MAC地址,不存在,那么它向B、C广播,B、C也不存在,那么它们也向外广播,这样一来,就会形成双向广播环,广播风暴最终会导致网络资源耗尽,交换机死机。

 

在这个时候,STP就起到作用了

stp协议是逻辑上断开环路,防止广播风暴的产生 当线路出现故障,断开的接口被激活,恢复通信,起备份线路的作用

STP将一个环形网络生成无环拓朴的步骤: 选择根网桥(Root Bridge) 选择根端口(Root Ports) 选择指定端口(Designated Ports)

网桥ID(BID) 网桥ID是唯一的,交换机之间选择BID值最小的交换机作为网络中的根网桥

取值范围:0 ~ 65535 缺省值:32768

 

 

交换机A的BID只最小(000d.2800.b100),所以它将被选为根网桥(root bridge)

下一步选择跟端口,

在非根网桥上选择一个到根网桥最近的端口作为根端口

选择根端口的依据是: 根路径成本最低  直连的网桥ID最小 端口ID最小  

根路径成本-是网桥到根网桥的路径上所有链路的成本之和

链路带宽(Mb/s) 路径成本 10                            100 16                             62 45                             39 100                           19 155                           14 622                           6 1000                         4 10000                       2

我们只需要记住3个路径成本就够了(100,19,4)这是比较常用的三个

 

 

 

指定端口

在每个网段上,选择1个指定端口  

根桥上的端口全是指定端口  

非根桥上的指定端口: 根路径成本最低 端口所在的网桥的ID值较小 端口ID值较小

接下来我做一个经过stp计算,最终形成无环拓扑结构的过程,看图

 

 

 

A很明显是根网桥

 

 

图没截好,BC上面的根端口 也已经出来了 (因为与根网桥直连的端口是根端口)

 

接下来,指定端口的选择

A是根网桥,所以它上面的所有端口都是指定端口

 

 

如图所说,B的网桥ID较小,所以B上面的端口为指定端口,

 

这样,经过stp计算,无环拓扑网络结构就出来了

 

 

好了 过程大家看明白了吧,但是有没有想过,交换机怎么知道其他交换机的网桥ID?怎么知道哪个端口的根路径成本最小?

这就涉及到BPDU(桥协议数据单元)

交换机之间使用BPDU来交换STP信息 BPDU Bridge Protocol Data Unit -桥协议数据单元 使用组播发送BPDU,组播地址为: 01-80-c2-00-00-00 BPDU分为2种类型: 配置BPDU - 用于生成树计算 拓朴变更通告(TCN)BPDU - 用于通告网络拓朴的变化

 

BPDU所包含的关键字

 

1,交换机启动时,假定自己是根网桥,在向外发送的BPDU中,根网桥ID字段填写自己的网桥ID,

2,当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到根网桥ID中

3,当全网所有的交换机接收到全部的BPDU并作比较后,就可以选择出唯一的一个根网桥

4,根网桥发送根路径成本为0的BPDU

5,其他交换机接收到根网桥的BPDU后,在根路径成本上添加接收接口的路径成本,然后转发

 

 

交换机的5种stp状态

状态                                 用途 转发(Forwarding) 发送和接收用户数据 学习(Learning) 构建网桥表 侦听(Listening) 构建“活动”拓朴 阻塞(Blocking) 只接收BPDU 禁用(Disable) 强制关闭

 

 

生成树计时器

交换机开机需要等待30秒时间开始转发数据 当某个正在使用的链路断掉,阻塞的端口需要50秒时间开始转发数据

0--------------20-----------15-----------15

阻断              倾听            学习              转发

 

OK,比较乱,认真看就明白了

转载于:https://www.cnblogs.com/FarmPick/p/9002618.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值