端口角色

  1. 根端口(RP):

非根桥收到最优的BPDU配置信息的端口为根端口,(到根桥开销最小的端口),根桥没有根端口。

  1. 指定端口(DP):

两非根交换机之间连接的两个端口必有一个为指定端口,比较两个非根交换机的根端口到达根桥的链路开销,开销低的交换机的端口就是指定端口,开销一样比较桥ID。发送BPDU的口;根桥上所有端口都是指定端口。

  1. 替代端口(AP):

收到其他网桥更优的bpdu,然后进入阻塞状态的口,是根端口的备份端口,指定从桥到根的另一套条路。

  1. 备份端口(bp):

收到本地的更好的bpdu的口,是指定端口的备份端口,指定从根到桥的另一套条路。

端口状态

learing状态可丢弃(当双方协议都为RSTP可以丢弃,当一方为STP一方为RSTP会保存)

RSTP只有俩个状态:Forwarding,Discarding

配置BPDU - RST BPDU

 配置BPDU

1)拓扑稳定后,配置BPDU报文的发送方式

STP:拓扑稳定后,根桥按照Hello Time规定的时间间隔发送配置BPDU。其他非根桥设备在收到上游设备发送过来的配置BPDU后,才会触发发出配置BPDU,此方式使得STP计算复杂且缓慢。

RSTP:在拓扑稳定后,无论非根桥设备是否接收到根桥传来的配置BPDU报文,非根桥设备仍然按照Hello Time规定的时间间隔发送配置BPDU,该行为完全由每台设备自主进行。

(2)更短的BPDU超时时间

STP:BPDU超时时间20S

RSTP:超时时间6S(三个Hello Time时间)没有收到上游设备发送过来的配置BPDU,那么该设备认为与此邻居之间的协商失败。

(3)处理次优BPDU

STP:STP协议只有指定端口会立即处理次优BPDU。

RSTP:当一个端口收到上游的指定桥发来的RST BPDU报文时,该端口会将自身缓存的RST BPDU与收到的RST BPDU进行比较。(如果端口缓存的RST BPDU优于收到的RST BPDU,那么端口会直接丢弃收到的RST BPDU,立即回应自身缓存的RST BPDU,从而加快收敛速度)\

P/A机制

STP中,该端口至少要等待一个Forward Delay(Learning)时间才会进入到Forwarding状态

1,RSTP通过P/A机制加快了上游端口进入Forwarding状态的速度。

2,在RSTP中,当一个端口被选举成为指定端口之后,会先进入Discarding状态,再通过P/A机制快速进入Forwarding状态。

  例:

同步状态:收到根桥发来的P位置位后进入同步

意义:防止临时环路(P/A机制在1S内立刻完成容易引发临时环路)

拓扑变更机制

    拓扑变更:非边缘端口迁移到Forwarding

1,拓扑变化(链路故障)

2,开启计时器(2倍Hellow time),并清空Mac地址(保证Mac地址有效)

3,发TC置位

4,接受TC置位的端口除外,其他口清空Mac

5,同步2,3(RST BPDU泛洪)

学MAC:从帧的源Mac映射到接口端口

Mac不清空:1,包被丢弃 2,Mac地址错误

Mac不自动刷新,300S老化时间

RSTP保护

    BPDU保护:(100%EP,只能接主机)

  • 正常情况下,边缘端口不会收到RST BPDU。如果有人伪造RST BPDU恶意攻击交换设备,当边缘端口接收到RST BPDU时,交换设备会自动将边缘端口设置为非边缘端口,并重新进行生成树计算,从而引起网络震荡。
  • 交换设备上启动了BPDU保护功能后,如果边缘端口收到RST BPDU,边缘端口将被error-down,但是边缘端口属性不变,同时通知网管

根保护:

  • 启用根保护功能的指定端口收到优先级更高的RST BPDU时,端口将进入Discarding状态,不再转发报文。经过一段时间(通常为两倍的Forward Delay),如果端口一直没有再收到优先级较高的RST BPDU,端口会自动恢复到正常的Forwarding状态。
  • 根保护功能确保了根桥的角色不会因为一些网络问题而改变。
  • 根保护:

 环路保护:

  • 启动了环路保护功能后,如果根端口或Alternate端口长时间收不到来自上游设备的BPDU报文时,则向网管发出通知信息(此时根端口会进入Discarding状态,角色切换为指定端口),而Alternate端口则会一直保持在Discarding状态(角色也会切换为指定端口),不转发报文,从而不会在网络中形成环路。
  • 直到链路不再拥塞或单向链路故障恢复,端口重新收到BPDU报文进行协商,并恢复到链路拥塞或者单向链路故障前的角色和状态。

 防TC-BPDU攻击:

  • 启用防TC-BPDU报文攻击功能后,在单位时间内,交换设备处理TC BPDU报文的次数可配置。
  • 如果在单位时间内,交换设备在收到TC BPDU报文数量大于配置的阈值,那么设备只会处理阈值指定的次数。
  • 对于其他超出阈值的TC BPDU报文,定时器到期后设备只对其统一处理一次。这样可以避免频繁的删除MAC地址表项,从而达到保护设备的目的

配置命令:

 Stp  mode  rstp                    //改为rstp模式

Display  stp brief                  //查看端口状态

Stp priority o                       //改优先级为0(主根)

Stp  root   primary                     //改为主根

Stp   root  secondary                 //改为备根

Stp  priority 4096                      //改优先级为4096(备根)

Port link-type access               //设置端口链路类型为access

Stp  edged-port default         //配置EP,接口下配置只有接口生效,全局下所有端口生效

Stp edged-port disable         //在接口下配置,用于关掉全局下配置下变为EP的接口

Stp bpdu-protection             //BPDU保护(EP收到BPDU立刻shutdown)

Restart                                    //用于打开BPDU保护下导致关闭的接口

Stp root-protection             //保护根不变(如果新接入的SW会成为新的根那么会丢弃接口)

Stp tc-protection  threshold  x    //系统视图配置,限制每一次2S收到的tc数量为x,超过的忽略

Stp loop-protection            //开启环路保护

HCIP-RSTP的更多相关文章

  1. Android视频直播解决方案(rstp、udp)

    做局域网视频直播有两种方案,通过rstp或udp协议. 1.rstp协议,网络上有个开源项目,基于Android,且这个项目也是一个服务端,里面也集成了http访问页面,可以通过http或者rstp直 ...

  2. iOS使用ffmpeg播放rstp实时监控视频数据流

    一.编译针对iOS平台的ffmpeg库(kxmovie) 最近有一个项目.须要播放各种格式的音频.视频以及网络摄像头实时监控的视频流数据,经过多种折腾之后,最后选择了kxmovie,kxmovie项目 ...

  3. 配置STP、RSTP以及负载均衡

    生成树协议是一种二层管理协议,它通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,同时具备链路的备份功能. 每个VLAN都生成一棵树是一种比较直接,而且最简单的解决方法.它能够保证每一个VL ...

  4. STP RSTP

    一.透明网桥 1.对于一般的透明网桥来说,通常都具有以下的特点: +拓展LAN的能力 +自主动态学习站点的地址信息 当网桥的某个端口上收到含有某个源MAC地址的数据帧时,它就把该MAC地址和接收该数据 ...

  5. BPDU报文(RSTP)

    与STP 的BPDU报文格式相同,就是在flags字段报文中间几位得到应用 主要原理:利用flages位中的Proposal与Agreement来进行协商,从而快速从 discarding 转成 fo ...

  6. RSTP介绍

    1. 介绍 RSTP(Rapid Spanning Tree Protocol),快速生成树协议,标准为802.1w(已合入802.1D-2004)RSTP是对STP技术的修改和补充,最大特点就是快速 ...

  7. STP-9-处理RSTP中的拓扑变化

    STP能识别四种不同的拓扑变化事件, 而RSTP只有当非边界端口从非转发状态变为转发状态才认为发生了拓扑变化事件 因为刚变为转发状态的端口可以为一些mac地址提供比之前更好的路径,CAM表需要更新.失 ...

  8. 华为eNSP路由交换实验-生成树之RSTP

    RSTP基础配置 实验拓扑图 实验步骤 1.基本配置 根据实验编址表进行相应的基本IP配置. 2.配置RSTP基本功能. (1)把生成树模式由默认的MSTP(华为交换机默认开启)改为RSTP. [FW ...

  9. RSTP基本配置

    1.用四台S3700交换机,2台PC机,一台HUB,组建网络拓扑 2.测试主机间的连通性 3.配置rstp基本功能 (1)把交换机stp模式由默认的mstp变为rstp.在华为交换机上默认开启了mst ...

  10. 实验之RSTP基础配置

    STP升级版之RSTP 实验环境 实验拓扑图 实验编址 实验步骤 1.基本配置配置PC端 测试i相通性 2.配置RSTP基本功能在S1-S4上都使用命令stp mode rstp更改生成树模式(因为华 ...

随机推荐

  1. 聚类算法与K-means实现

    聚类算法与K-means实现 一.聚类算法的数学描述: 区别于监督学习的算法(回归,分类,预测等),无监督学习就是指训练样本的 label 未知,只能通过对无标记的训练样本的学习来揭示数据的内在规律和 ...

  2. VSCode——滚动鼠标控制字体大小

    第一步:找到设置 文件-->首选项-->设置 第二步:打开settings.json文件 第三步:在settings.json文件中添加 "editor.mouseWheelZo ...

  3. Selenium系列(22) - 通过selenium控制浏览器滚动条的几种方式

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  4. JS020. Array map()函数查到需要的元素时跳出遍历循环,不再执行到数组边界

    Array.prototype.map() map( )  方法创建一个 新数组 *,其结果是该数组中的每个元素是调用一次提供的 函数后的返回值 *.[ MDN / RUNOOB ] * map 添加 ...

  5. npm 设置同时从多个包源加载包的方法

    随着前后端分离技术的发展成熟,越来越来越多的后台系统甚至前端系统采用前后端分离方式,在大型前后端分离系统中,前端往往包含大量的第三方js 包的引用,各个第三方包又可能依赖另外一个第三方包,因此急需要一 ...

  6. RabbitMQ核心知识总结!

    本文已经收录到github仓库,此仓库用于分享Java相关知识总结,包括Java基础.MySQL.Spring Boot.MyBatis.Redis.RabbitMQ.计算机网络.数据结构与算法等等, ...

  7. JNDI注入基础

    JNDI注入基础 一.简介 JNDI(The Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API,命名服务 ...

  8. Windows难民安装docker的注意事项

    Windows下如何安装docker,这个没啥可说的,一直下一步就ok Windows  docker 下载地址: https://download.docker.com/win/stable/Doc ...

  9. PHP设计模式之模板方法模式

    模板方法模式,也是我们经常会在不经意间有会用到的模式之一.这个模式是对继承的最好诠释.当子类中有重复的动作时,将他们提取出来,放在父类中进行统一的处理,这就是模板方法模式的最简单通俗的解释.就像我们平 ...

  10. 创建一个Orchard Core CMS 应用程序

    开始使用Orchard Core作为NuGet软件包 在本文中,我们将看到使用Orchard Core提供的NuGet包创建CMS Web应用程序是多么容易. 你可以在这里找到Chris Payne写 ...