STP详解-STP、RSTP、MSTP

发布时间:2021-11-29 03:26:41

STP详解
冗余链路中存在的问题


如图所示LSW1和LSW2之间有两条线路相连,它们之间任何一条链路出现故障另外一条线路可以马上顶替出现故障的那条链路,这样可以很好的解决单链路故障引起的网络中断,但在此之前有下面三个问题需要考虑。


广播风暴
以太网交换机传送的第二层数据帧不像路由器传送的第三层数据包有TTL(Time To Live),如果有环路存在第二层帧不能被适当的终止,他们将在交换机之间永无止境的传递下去。结合交换机的工作原理,来看一下上面这张*酥泄悴シ绫┦侨绾涡纬傻:

1、PC1发出一个广播帧(可能是一个ARP查询),LSW1收到这个广播帧,LSW1将这个广播帧从除接收端口的其他端口转发出去(即发往G0/0/2、G0/0/3、G0/0/4)。
2、LSW2从自己的G0/0/1和G0/0/2都会收到SW1发过来的相同的广播帧,LSW2再将这个广播帧从除接收端口外的所有其他接口发送出去(LSW2将从G0/0/2接收的广播帧发往其他三个端口G0/0/1、G0/0/3、G0/0/4,从fa0/24接收到的也会发往其他三个端口G0/0/1、G0/0/3、G0/0/4)。
3、这样这个广播帧又从G0/0/1以及G0/0/2传回了LSW1,LSW1再用相同的方法传回LSW2,除非物理线路被破坏,否则PC1-4将不停的接收到广播帧,最终造成网络的拥塞甚至瘫痪。


MAC地址表不稳定
广播风暴除了会产生大量的流量外,还会造成MAC地址表的不稳定,在广播风暴形成过程中:
1、PC1发出的广播帧到达LSW1,LSW1将根据源MAC进行学*,LSW1将PC1的MAC和对应端口G0/0/1写入MAC缓存表中。
2、LSW1将这个广播帧从除接收端口之外的其他端口转发出去,LSW2接收到两个来自LSW1的广播(从G0/0/1和G0/0/2),假设G0/0/2首先收到这个广播帧,LSW2根据源MAC进行学*,将PC1的MAC和接收端口G0/0/2存入自己的MAC缓存表,但是这时候又从G0/0/1收到了这个广播帧,LSW1将PC1的MAC和对应的G0/0/1接口存入自己的MAC缓存表。
3、LSW2分别从自己的这两个接口再将这个广播帧发回给LSW1,这样PC1的MAC地址会不停的在两台交换机的G0/0/1和G0/0/2(G0/0/3、G0/0/4)之间波动,MAC地址缓存表也不断的被刷新,影响交换机的性能。

重复帧拷贝
冗余*顺嘶岽垂悴シ绫┮约癕AC地址的不稳定,还会造成重复的帧拷贝:


1、假设PC1发送一个单播帧给PC3,这个单播帧到达LSW1,假设LSW1上还没有PC3的MAC地址,根据交换机的原理,对未知单播帧进行泛洪转发,即发往除接收端口外的所有其他端口(fa0/2、fa0/23、fa0/24)。
2、LSW2分从自己的G0/0/1和G0/0/2接收到这个单播帧,LSW2知道PC3连接在自己的G0/0/4接口上,所以LSW1将这两个单播帧都转发给PC3。
3、PC1只发送了一个单播帧,PC3却收到了两个单播帧,这会给某些网络环境比如流量统计带来不精确计算等问题。


STP介绍

基于冗余链路中存在的这些问题STP被设计出来用来解决这些问题,下面介绍STP的工作原理。


交换机上有默认的stp版本为mstp (多实例生成树)stp (生成树)rstp (快速生成树)


1、工作原理

STP通过拥塞冗余路径上的一些端口,确保到达任何目标地址只有一条逻辑路径,STP借用交换BPDU(Bridge Protocol Data Unit,桥接数据单元)来阻止环路,BPDU中包含BID(Bridge ID,桥ID)用来识别是哪台计算机发出的BPDU。在STP运行的情况下,虽然逻辑上没有了环路,但是物理线上还是存在环路的,只是物理线路的一些端口被禁用以阻止环路的发生,如果正在使用的链路出现故障,STP重新计算,部分被禁用的端口重新启用来提供冗余


STP使用STA(Spanning Tree Algorithm,生成树算法)来决定交换机上的哪些端口被堵塞用来阻止环路的发生,STA选择一台交换机作为根交换机,称作根桥(Root Bridge),以该交换机作为参考点计算所有路径。


2、选举:根网桥、根端口、指定端口、非指定端口

1)根网桥(根交换机)?在一棵生成树实例中,有且仅有一台交换机为root
选举:
比较每台交换机的网桥id (优先级+MAC地址) 越小越优先
默认优先级:32768
修改优先级的时候要改成4096的倍数
[系统]stp mode stp 修改stp的模式
Stp priority 4096 修改优先级


2)根端口?在每台非根网桥上,有且仅有一个接口;本地离根网桥最*的接口(最短、星型),接收来自根网桥的BPDU,转发用户的流量(该接口不阻塞)
选举:
1 路径开销值:比较从根网桥发出后,通过该接口进入时最小的cost值;
2 对端网桥id:入向cost值相同,比较该接口对端设备的BID,小优
3 对端端口id:对端BID也相同,比较该接口对端设备的接口的PID
4 本端端口id(hub):小优
端口ID 接口优先级(0-240,步长16,默认128)接口编号


3)指定端口?在每一段存在STP的物理链路上,有且仅有一个;转发来自根网桥的BPDU,同时可以转发用户流量(不阻塞);默认根网桥上所有接口为指定端口;
选举:
1 路径开销:比较从根网桥发出后,通过该接口进入这段链路时的cost值最小(出向)
2 本端网桥id
3 本端端口id (端口优先级和端口编号)端口优先级默认是128 接口编号
4 本地端口id,相同,直接阻塞该端口;


4)非指定端口? 剩下的端口就叫做阻塞端口 该接口逻辑阻塞,实际可以接收到信息,但不转发;


3、STP中的报文交互

BPDU 桥协议数据单元


两种BPDU:
1 配置BPDU
作用:用于角色(端口)选举
维护网络* 2秒1次 最多20秒 20秒没有根的回应,则认为根down掉


只有根网桥可以发送,在交换网络初始状态时,所有交换机均定义本地为根网桥,进行BPDU的发送;使得网络所有交换机均收到其他设备的BPDU,之后基于数据中的参数进行比对,选举出根网桥;再所有非根网桥不再发送BPDU,而是仅接收和转发根网桥的BPDU;周期2s发送,hold time 20s;


2 TCN BPDU?*吮浠痓pdu
作用:当*朔⑸浠保岱cn bpdu


本地交换机链路故障后,STP重新收敛,为了快速刷新全网所有交换机的MAC表,将向本地所有STP接口发送TCN(标记位中的TCN位置1),邻居交换机收到TCN后,先标记为ACK位为回复,用于可靠传输消息;之后将TCN逐级转发到根网桥处,由根网桥回复TC消息来逐级回复到所有交换机;使所有交换机临时将MAC表的老换时间修改为15s(默认的,转发延时)


4、BPDU字段


1 BPDU Flags 标识字段
Tca位 *吮浠啡衔
Tc位 *吮浠
发生变化时置1
2 root identifier 根网桥id (Root ID)
3 cost of path 到达根的开销值
4 Bridge ID 本交换机的网桥ID
5 Port ID 端口ID
0x8001 前面的80 代表优先级128 , 01代表端口号
6 message age 消息寿命 每经过一台交换机 message age+1
7 max age 最大寿命 20秒
8 hello time 2秒
9 forward delay 转发延迟15秒


BPDU的时间有三种,Hello Time、Max Age、Forward Delay:


    Hello时间控制了发送配置BPDU的时间间隔,默认2秒。这是根交换机生成BPDU并向非根交换机发送的间隔。非根交换机接收到根交换机发送来的BPDU,再从除接收端口以外的其他端口转发出去,如果在2-20秒里面由于网络故障没有新的BPDU从根交换机发送过来,非根交换机将停止向外发送从根交换机接收到的BPDU。如果这种情况持续20秒,也就是最大存活期,非根交换机就使原储存的BPDU无效,并开始寻找新的根端口。所谓最大存活期就是非根交换机丢弃BPDU前用来备份储存它的时间。转发延时是交换机在侦听状态到学*状态所花的时间,默认是15秒。

5、端口的状态变化

1 disable 开启stp时 特点:不进行stp计算
2 blocking 阻塞端口直接进入blocking 状态
3 listening 非阻塞端口才进入侦听状态 特点:加速mac地址表老化
所有交换机进行BPDU收发,选举所有角色;接口角色为非指定端口直接进入阻塞状态;若为指定端口和根端口进入下一状态;
中间有15秒的间隔时间,目的是为了加速mac地址表老化,mac地址表老化时间300秒
4 learning 学*状态
指定端口和根端口学*所有接口连接设备的MAC地址,生成MAC表;之后进入下一状态
中间有相隔15秒的时间,加速mac地址表的学*
5 forwarding 转发状态


注:只有到接口进入到转发状态后,才能为用户转发数据报文,之前的30s不能转发任何 数据;


收敛时间:
初次收敛?30s = 15侦听+15s学*


结构变化:
1 存在直连检测:
本地存在阻塞端口,若其他端口断开,该阻塞端口马上进入15是侦听(选举);结果若为启用,那么将再进入15s学*?总30s


当阻塞端口感觉到*朔⑸浠⑺蛅cn BPDU
对端会回复一条tca=1*吮浠啡
当交换机收到根交换机范洪的网络变化tc=1的配置BPDU才能老化原来的路径,学*新的路径


2 没有直连检测:
本地不存在阻塞端口,若某个端口断开,将发送次优BPDU(以本地为根)给其他邻居交换机,其他交换机无视该数据,进行20s hold time计时,到时时阻塞接口进入15s侦听,15s学*=总50s


由于线路故障,Sw2 20s后老化了源路径,认为自己是根,向sw3发送bpdu,sw3收到两条bpdu,因此会检测到链路变化,由于链接s1的路径最优,所以向s1发送tcnBPDU,s1回复一条tc=1的配置bpdu,交换机将原来的路径老化,并学*新的路径


6、STP的缺点

1 收敛慢
learning到forwarding需要15s学*mac地址
Listening到learning需要15s 加速老化时间
无论上述用了多少秒,最大等待时间总是15s
发送tcnBPDU的时间过长
2 链路利用率低


RSTP 快速生成树


备份端口只在华为中提出
备份端口备份成为指定端口
预备端口将来预备成为根端口
预备端口和备份端口的相同点,正常情况下都不进行数据转发


RSTP中端口状态变成了三种,将stp状态前三种合成一种,因为不学*mac也不转发数据
三种状态:


    discarding 不学*mac也不转发数据learning 不转发数据但是学*macforwarding 即学*mac也转发数据

BPDU stp和rstp的区别:
stp: 配置BPDU TCN BPDU
rstp:RST BPDU(快速生成树bpdu)


标志位


    Tca 位(topology change acknowledgement) *吮浠啡衔煌馕唬╝greement)转发位(Forwarding)学*状态(learning ) 中间有相隔15秒的时间,加速mac地址表的学*端口角色(port role)端口角色是11,证明这个端口是指定端口,如果是10则代表是根端口,01代表预备端口或者备份端口,00代表保留提议位(proposal)*吮浠唬╰opology change)

RSTP快速生成树:
收敛速度快:


    边缘端口:连接终端设备的端口
    优点:不会进行端口角色计算,直接变成forwarding状态
    配置边缘端口
    Interface g0/0/3
    Stp edged-port enableP/A机制 提议/同意机制
    前提条件:点到点链路(全双工链路)交换机先发送一个RST BPDU给根,根收到后作比较,将自己的发给交换机,交换机发现网桥id比自己小比自己优先,就会发一个同意位给根交换机,根交换机上的接口变为指定接口,并直接变为forwarding状态

Sw3当网络发生变化,马上启动一个 TC while 计时器:2倍的hellp时间,直接发送tcBPDU 给s2,四秒内,老化原来的mac地址,形成新的地址,s2收到后重复上述动作直到发给根交换机。


MSTP多实例生成树

多个rstp的集合就是mstp
Instance 实例:rstp


单个实例树的弊端:


    一部分vlan路径不同无法使用流量分担会产生次优的二层路径


建立两棵树,pc1发数据时,lsw4是根,pc2发数据时,lsw5是根从而解决单个实例树的弊端


配置步骤


    创建vlan基本操作修改stp版本Stp region-configuration 创建域的范围Region-name Huawei 域的名字Revision-level 1(保证都相同)Instance 1 vlan 10Instance 2 vlan 20Active region-configuration激活mstp的配置每台交换机上都要配置只要修改就要重新激活设置实例的根Stp instance 1 root primary/secondary(主根/备份根)

默认交换机上有实例0
Mstp和arrp做联动时,mstp的主根一定是arrp的主


当网络中有mstp,stp rstp时,最后会以stp运行,他们的模式依旧是mstp和rstp,但是发的bpdu报文是stp


当mstp的交换机和stp的交换机相连时,发送的是stp的报文,当stp迁移走了,换了一个mstp的交换机时,不会自动回到mstp
【swb】stp mcheck手动迁移回mstp


配置mstp最大跳数
默认最大跳数20跳
Stu max-hops 30 修改最大跳数


四个保护


    边缘端口保护(BPDU保护)
    为什么会有BPDU保护-----从边缘端口收到bpdu,会直接将边缘端口阻塞掉

【系统】Stp bpdu-protection(stp,bpdu保护开启)


    指定端口保护(根的保护)
    从指定接口收到一个优先级比指定端口还低的端口pbdu,则交换机进入阻塞状态,保护自己永远为根
    【指定接口】Stp root-portection 在指定端口下开启根的保护

    环路保护
    三个交换机之间使用光钎连接,由于光纤是由两条线路构成,一条收一条发,一旦收的根端口down掉,发的线路没有问题,此时阻塞端口启用,会形成环路。

    解决方法,长时间收不到bpdu ,就把该端口阻塞掉

    TC-BPDU保护 TC
    如果恶意用户一直发送tc-bpdu,那么链路中的路径就会一直老化,此时设置一个阈值,超过上限就会丢弃该bpdu
    默认接受tc上限为1
    修改命令:stp tc-portection threshold 2

相关文档

  • 学前英语常用词汇:形容词的比较级
  • 爱尔兰留学费用基本常识
  • 工作杂谈: 程序猿想要一个什么样的工作环境
  • 四年级语文教学工作自我总结
  • 2021年6月车间生产工作计划
  • 表达我很想你的句子精选
  • 线程安全的Map??ConcurrentHashMap如何保证线程安全?
  • 小学的教育教学工作计划格式
  • 影响股利政策的因素
  • 合作意向书怎么写
  • 小米机器人虚拟墙设置_禁区功能让我不折腾!石头扫地机器人T6体验:虚拟墙也好用...
  • 睡觉做梦是什么原因
  • 遥感原理与应用孙家炳_武汉大学遥感信息工程学院考研专业目录与参考教材
  • 中秋节有趣灯谜及答案
  • 文件上传 ,图片回显
  • 老年人用药事项
  • 闲来无事随感
  • vector反转reverse
  • 北京歌华有线营业厅
  • 高清视频实时对讲SDK源码
  • 医院人力资源部工作总结
  • 黑马JavaEE云计算大数据全套视频 JavaEE云计算开发全套视频教程 超全精华班 82G
  • 写酒的文章
  • 青春的励志句子图片
  • 稚子弄冰古诗的意思翻译 稚子弄冰古诗的意思翻译五年级
  • 一份真诚的礼物
  • GitHub宣布已将所有代码永久封存于北极地底1000年!网友炸锅了:我写的bug终于能流传永世了!
  • 【冥王神话】马尼戈特的几种积尸气都有什么作用啊
  • 五行缺金男孩取名方法
  • 女人励志的话语
  • 猜你喜欢

  • 山东海化纯碱厂MES的实施与应用
  • 【精】七年级音乐上册第五单元《槐花几时开》教案湘艺版
  • 五福中心校学生宿舍管理一览表
  • 汽车维修中级工试题及答案02
  • 康县玉米测土配方施肥“3414”田间试验研究
  • 春雨白皙蜂蜜面膜真假辨别图使用方法功效
  • 【最新2018】茶叶零售知识-word范文模板 (17页)
  • 幼儿园小班秋游活动方案【2篇】
  • 串口转USB芯片
  • 商务企业年度工作总结汇报计划报告经典高端创意展示PPT模板
  • SAT考试的作文真题
  • 假如我有一条孔雀的尾巴_二年级作文
  • 05 风管部件制作质量管理--001
  • 以亲情为话题的作文范文(精选5篇)
  • 2012年中级会计师考试中级会计实务第二章存货(2)
  • 宁夏智慧在线科技有限公司企业信用报告-天眼查
  • 【精选教育资料】季九年级化学下册第九单元溶液课题2溶解度9-2-2溶解度与溶解度曲线同步练*新版新人教版
  • 【网易云信】DNS 调度原理解析
  • ubuntu 18 安装YOLO V3并测试摄像头
  • C#的符号用法@ $?问号用法
  • 人教版初中语文八年级上册《5亲爱的爸爸妈妈》word教案 (1)
  • 保康县茶叶办公室企业信用报告-天眼查
  • 小学三年级英语下期末复习题
  • 酮?撤缌??幕?ㄉ?提升党建工作水*
  • 工作积极向上的句子97句
  • 蒙阴家家安工贸有限公司企业信用报告-天眼查
  • 二年级作文:四季的歌声作文400字
  • 读蜜蜂颂有感作文450字
  • 广东版开心英语三年级下册Unit 6《Outdoor Fun》课件
  • 宏观经济学复*提纲
  • 小学美术教师个人工作计划20XX年
  • 初二英语期中试题02
  • 关于青春的作文600字:青春的苦涩
  • 关于针对2006年高考地理试题分析及2007年备考建议
  • 上海巧路文化传播有限公司(企业信用报告)- 天眼查
  • 剥离表土要剥离多深哪里有规定可以看到啊
  • CSFB 呼叫流程
  • 【工程通用表格】其它证件
  • 【推荐】2019秋九年级物理全册第十五章电流和电路第2节电流和电路课件新版新人教版.ppt
  • 准妈妈吃什么养颜美容?10种养颜美食推荐
  • 2009年黑龙江省佳木斯初中毕业学业考试数学试卷及答案 word
  • 中小学作文素材:读《蜜蜂颂》有感400字
  • 电脑版