环路检测与预防技术白皮书
Copyright © 2022 新华三技术有限公司 版权所有,保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。
本文中的内容为通用性技术信息,某些信息可能不适用于您所购买的产品。
网络管理员通常会在网络的关键位置部署多条链路,来提高网络的可靠性,这种部署方式很容易产生二层环路,造成网络资源浪费、网络带宽急剧下降甚至网络不可用等问题。我司设备可以使用多种技术进行二层环路的检测、预防和消除,如STP、RRPP、ERPS、环路检测等,这些技术都能够有效避免广播风暴。
首先,本文将针对我司的各类二层防环协议,根据他们的技术特点以及应用场景进行归纳并进行横向比较,以帮助用户更好地应用这些协议。相关协议的详细原理以及作用机制,请参考该协议的技术白皮书。
在本文的最后,以我司提出的几种经典解决方案中的组网为案例,进行实际的应用分析,介绍各个组网中二层环路的发生情况以及适用的防环协议。
生成树通过选择性地阻塞网络中的冗余链路来消除二层环路。我司的生成树功能包括STP(Spanning Tree Protocol,生成树协议)、RSTP(Rapid Spanning Tree Protocol,快速生成树协议)、PVST(Per-VLAN Spanning Tree,每VLAN生成树)、MSTP(Multiple Spanning Tree Protocol,多生成树协议)四类生成树协议,四类生成树协议均能够消除二层环路,并且拥有不同的功能:
· STP:由IEEE制定的802.1D标准定义。运行该协议的设备通过彼此交互信息发现网络中的环路,并有选择地对某些端口进行阻塞,最终将环路网络结构修剪成无环路的树型网络结构,从而防止报文在环路网络中不断增生和无限循环,避免设备重复接收相同的报文,造成报文处理能力下降。
· RSTP:由IEEE制定的802.1w标准定义,它在STP基础上进行了改进,实现了网络拓扑的快速收敛。STP新选出的根端口和指定端口需要经过两倍的状态迁移延迟时间后才能进入转发状态;而RSTP更加“快速”,当一个端口被选为根端口和指定端口后,满足一定条件时,端口可以不经过等待、快速迁移至转发状态,从而缩短了网络最终达到拓扑稳定所需要的时间。
· PVST:STP和RSTP在局域网内的所有VLAN都共享一棵生成树,不能按VLAN阻塞冗余链路,所有VLAN的报文都沿着一棵生成树进行转发。而PVST则可以为每个VLAN计算一棵生成树,能够有效地提高链路带宽的利用率。PVST可以简单理解为在每个VLAN上运行一个RSTP协议,不同VLAN之间的生成树完全独立。通过为不同的VLAN计算不同的树状拓扑,还可以使得不同VLAN的流量沿着不同的路径转发,以实现业务数据的负载分担。
· MSTP:由IEEE制定的802.1s标准定义。MSTP把一个交换网络划分为多个域,每个域内形成多棵生成树,生成树之间彼此独立。每个域通过设置VLAN与生成树的对应关系,区分不同的树。与PVST不同的是,PVST会为每个VLAN单独计算生成树,在VLAN数量较多时,系统负担较重。而MSTP可以实现多个VLAN共享一棵树,或者一个VLAN单独计算一棵树,配置较灵活。通过为不同的VLAN计算不同的树状拓扑,还可以使得不同VLAN的流量沿着不同的路径转发,以实现业务数据的负载分担。
图2-1 生成树工作机制示意图
环路检测通过定期发送专门用于检测环路的报文来确认是否存在环路。若设备上的端口收到了由本设备发出的环路检测报文,就认定该端口所在链路存在环路。检测到环路后,环路检测功能可以生成日志信息来通知用户,并根据事先的配置来选择对出现环路的端口采取的措施(如阻塞、关闭端口等)。环路消失后,环路检测功能还可以将阻塞或关闭的端口自动恢复到正常转发状态。
图2-2 环路检测工作机制示意图
在工业级应用场景中,拓扑的稳定性要求高,生成树协议在大型网络中收敛速度较慢,无法满足要求。我司的私有协议RRPP(Rapid Ring Protection Protocol,快速环网保护协议)是一种收敛时间与网络直径无关的以太网防环链路层协议,可以实现50ms以内的收敛速度,在网络直径较大的网络中较生成树协议优势明显。
RRPP还具有如下特点:
· 在以太网环完整时能够防止数据环路引起的广播风暴,而当以太网环上的链路断开时能迅速启用备份链路恢复环网上各个节点之间的通信链路。
· 在相交环拓扑中,各个环路独立计算,一个环拓扑的变化不会引起其他环的拓扑震荡,数据传输稳定。
· 可以通过配置多个RRPP域,使得不同VLAN的数据流量在环网中沿着不同的路径转发,实现负载分担。
图2-3 RRPP&ERPS工作机制示意图
图2-4 RRPP&ERPS负载分担示意图
ERPS(Ethernet Ring Protection Switching,以太环网保护倒换)的防环思想、环路避免机制与RRPP类似,请参见“2.3 RRPP简介”。
ERPS与RRPP的区别在于:
· ERPS是ITU-T定义的标准协议,可以兼容其他厂商的设备。
· RRPP是我司私有协议,无法兼容不支持RRPP协议的设备。
Smart Link专用于在双上行组网中实现主备链路的冗余备份。Smart Link具有如下特点:
· 实现主备链路的快速切换,切换时间可小于1秒。
· Smart Link可以通过多Smart Link组的设置,使得不同的VLAN流量沿着不同的Smart Link组路径进行转发,实现负载分担。
如图2-5所示,Device C和Device D通过双上行链路连接上游设备。如果不使用Smart Link,Device C和Device D的上行端口均传递数据,会在Device C、Device B、Device A和Device E之间产生环路(Device D同理)。使用了Smart Link后,Device C和Device D的两个上行接口加入Smart Link组。正常情况下,Device C和Device D上的两个上行端口只有一个处于转发状态,另一个口被阻塞,处于待命状态,消除了环路。
处于转发状态的端口出现链路故障时,Smart Link会快速将原本处于待命状态的端口切换到转发状态,并阻塞出现链路故障的端口,实现转发链路的切换,如图2-6。
图2-6 Smart Link链路切换示意图
上述防环技术的技术优势、适用场景以及应用限制如表2-1所示。
协议类型 |
技术优势 |
适用场景 |
应用限制 |
生成树 |
· 生成树是IEEE的标准协议,兼容性好 · 生成树支持任意的物理拓扑,没有环网拓扑的模型限制 |
· 网络半径小、组网较为简单的场景 · 多厂商互通场景 |
· 物理拓扑变化后收敛时间较长(秒级),并且收敛时间会随着网络半径的增大而延长 · 仅PVST和MSTP可以实现负载分担,但是配置较复杂 |
RRPP |
· 拓扑收敛速度快,收敛时间可以小于50ms · 收敛时间与网络直径无关,适用于大规模网络 · 一个环的拓扑变化不会影响其他环的拓扑,数据传输较为稳定 |
· 网络半径较大、对收敛性能要求高的工业级场景 · 纯我司设备场景 |
· 支持的组网类型较固定 · 配置比较复杂 · 扩展性不佳,网络扩容时,容易引起断流或者环路 · 兼容性差,无法与不支持RRPP的设备互通 |
ERPS |
· 拓扑收敛速度快,收敛时间可以小于50ms · 收敛时间与网络直径无关,适用于大规模网络 · 一个环的拓扑变化不会影响其他环的拓扑,数据传输较为稳定 · EPRS是标准协议,可以和其他厂商的设备互通 |
· 网络半径较大、对收敛性能要求高的工业级场景 · 多厂商互通场景 |
· 支持的组网类型较固定 · 配置比较复杂 · 扩展性不佳,网络扩容时,容易引起断流或者环路 |
Smart Link |
· 主备链路切换速度快,切换速度可小于1秒 · 配置简单 · 负载分担实现简单,可充分利用上行带宽 |
· 拥有冗余备份的双上行链路,且需要进行主备链路快速切换的场景 |
· 只能用于双上行组网 · 缺少检测机制,上行链路的中间传输设备或传输链路发生故障时,无法自行检测出这些故障并进行链路切换,需要配合其他功能的检测机制才能完成链路切换 |
环路检测 |
支持多种环路处理方式,包括阻塞端口、断开链路、禁止MAC地址学习等 |
· VXLAN组网中,站点二层网络与VXLAN网络形成环路的场景,或站点内部存在环路的场景 · MPLS L2VPN以及VPLS组网中,站点二层网络与MPLS L2VPN网络或VPLS网络形成环路的场景,或站点内部存在环路的场景 · 组网简单的二层环路场景 |
· 环路检测功能不能与其他二层防环协议同时使用 · 使能多个VLAN的环路检测会加重系统的负担 · 环路检测功能需要先检测到环路才能消除环路,中间存在时间间隔,无法快速消除环路 |
图3-1为常见的Spine-Leaf数据中心组网架构,数据中心内部的接入用户通过VXLAN网络或VLAN网络实现互通。为了避免单点故障,与外部网络进行互通的Border设备以及数据中心内的Spine设备均设置了两台,并且部署了两台ED设备,使用VXLAN-DCI隧道与其他数据中心互联。在该网络中,由于Leaf设备连接的本地站点情况复杂,十分容易出现环路。
连接不同Leaf设备的CE 1和CE 2,除了通过Leaf设备经过VXLAN或VLAN网络进行互通,还可以通过直连的二层网络进行互通,VXLAN或VLAN网络与二层网络之间形成了环路,容易引起广播风暴。
在Leaf 1和Leaf 2上,开启环路检测功能后:
· 在VXLAN网络中,Leaf 1或Leaf 2会自动禁止出现环路的AC进行MAC地址学习,同时将其阻塞,以消除环路。
· 在VLAN网络中,Leaf 1或Leaf 2可以关闭、阻塞检测到环路的端口或禁止出现环路的端口进行MAC地址学习,以消除环路。
Leaf 3连接的站点内部,CE 3、CE 4和CE 5在二层网络中两两互联,形成环路,从而引起广播风暴,CE 3、CE 4和CE 5在互通时可能出现业务中断等风险。
可以通过以下防环技术消除Leaf 3站点内的环路:
· 在CE 3、CE 4和CE 5上,开启生成树协议,生成树协议能够识别环路并自动计算出阻塞的端口,通过阻塞端口实现环路的消除。
· 在CE 3、CE 4或CE 5任一设备上开启环路检测功能,环路检测功能会自动检测出现环路的端口并将其阻塞或关闭,以消除环路。
在Leaf 4上,从一个接口发往站点内的报文可能直接从另一个接口接收到,从而形成环路。在图3-1中将此情况简化为Leaf 4在站点内的两个接口直连。
在Leaf 4上可以开启环路检测功能。开启环路检测功能后,环路检测功能会自动检测出现环路的端口并将其阻塞或关闭,以消除环路。
如图4-1所示的园区接入网络中,汇聚设备和接入设备使用Spine-Leaf结构的VXLAN网络或VLAN网络进行部署,并部署一台核心设备作为园区的网关与外部网络进行通信。
连接不同接入设备的用户终端CE 1和CE 2,除了通过接入设备经过VXLAN或VLAN网络进行互通,还可以通过直连的二层网络进行互通,VXLAN或VLAN网络与二层网络之间形成了环路,容易引起广播风暴。
在接入设备一和接入设备二上,开启环路检测功能后:
· 在VXLAN网络中,接入设备一或接入设备二会自动禁止出现环路的AC进行MAC地址学习,同时将其阻塞,以消除环路。
· 在VLAN网络中,接入设备一或接入设备二可以关闭、阻塞检测到环路的端口或禁止出现环路的端口进行MAC地址学习,以消除环路。
接入设备三连接的站点内部,用户终端CE 3、CE 4和CE 5在二层网络中两两互联,形成环路,从而引起广播风暴。CE 3、CE 4和CE 5在互通时可能出现业务中断等风险。
可以通过以下防环技术消除接入设备三站点内的环路:
· 在CE 3、CE 4和CE 5上,开启生成树协议,生成树协议能够识别环路并自动计算出阻塞的端口,通过阻塞端口实现环路的消除。
· 在CE 3、CE 4或CE 5任一设备上开启环路检测功能,环路检测功能会自动检测出现环路的端口并将其阻塞或关闭,以消除环路。
在接入设备四上,从一个接口发往站点内的报文可能直接从另一个接口接收到,从而形成环路。在图4-1中将此情况简化为Leaf 4在站点内的两个接口直连。
在Leaf 4上可以开启环路检测功能。开启环路检测功能后,环路检测功能会自动检测出现环路的端口并将其阻塞或关闭,以消除环路。