1

“一箭易断,十箭难折”——从单链路到MC-LAG

 1 year ago
source link: https://www.51cto.com/article/717438.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

“一箭易断,十箭难折”——从单链路到MC-LAG

作者:中兴文档 2022-08-30 09:42:35
通过本文的介绍,可以了解到MC-LAG技术相对于传统链路聚合技术有更多的优势,在增强了网络可靠性的同时,简化了组网,实现了设备级的高可用冗余保护以及多路径转发。
01b7967072c2ae58e01786237a83ef423e70a2.jpg

​“一箭易断,十箭难折。”

这是小时候常常听到的谚语故事,字面意思是一支箭很容易折断,多支箭捆在一起则难以被摧毁,这告诉了我们“团结合作”的重要性。

在承载领域,也有这则故事的妙用,让我们一起来看看吧~

单链路  一箭易断 

​在IP网络发展的早期,两台网络设备(A和B)之间一般通过建立单条链路通信。​

图片

很明显,使用单链路连接有如下缺陷:

  • 存在带宽瓶颈,设备A、B之间的总带宽等于这条单链路的带宽。
  • 链路没有冗余备份,这条链路一旦出现问题,设备A、B之间可能会出现通信中断。

即使单链路有着明显的缺陷,但在那个对网络要求不高的年代,依然可以满足大众需求。

随着网络规模的发展,单链路已经无法满足网络对带宽和可靠性的要求,人们想到了将多条链路像“箭”那样进行“捆绑”。由此,链路聚合技术应运而生。

链路聚合  十箭难折 

链路聚合通过将两个设备之间的多条链路进行“捆绑”,形成一个聚合组,聚合组内的多条链路此时可以被看作一条逻辑链路。

此时,这两个设备间的流量就可以分担在聚合组内的各条链路上。

图片

​那么,链路聚合可以对网络带来哪些好处呢?

增加了网络带宽​

将A、B之间多条链路捆绑成为一条逻辑链路,捆绑后的带宽是所有链路的带宽总和。

举个例子,A、B之间有3条链路做链路聚合,每条链路带宽为10 Gbps,则此聚合组的带宽最大就可以达到30 Gpbs。

提高了网络连接的可靠性​

​假如A、B间有一条链路出现故障而中断,流量会自动在剩下链路间重新分配,不会引起A、B之间的流量中断。

实现流量的负载均衡​

链路聚合可以把A、B之间的流量平均分到所有成员链路中去,最大限度地降低了每个成员链路产生流量阻塞链路的风险。

避免产生二层环路​

当A、B之间链路采用链路聚合时,这些链路不再是单条链路独立工作,对外成为一条逻辑链路。因此,不使用STP(Spanning Tree Protocol,生成树协议)也不会产生环路,有效避免了A、B之间产生二层环路的风险。基于上述诸多优点,链路聚合在IP网络中得到了非常广泛的应用。

MC-LAG:更可靠的“捆绑”

进入移动互联时代,互联网与我们的日常生活越发密切,在我们享受网络便捷的同时,也给网络带来了海量数据的交互处理,对网络的带宽和可靠性提出了更高要求。

而传统的链路聚合技术仅限于一对一的两台设备之间,不能实现一对多台设备之间的链路聚合。

于是,为了提供更可靠的网络,MC-LAG(Multi-Chassis Link Aggregation Group,跨设备链路聚合组)产生了。

当一台接入设备(可以是服务器或交换机)与上层两台网络设备A和B对接时,可采用MC-LAG技术组成跨设备链路聚合组。

图片

MC-LAG的基本思想是让两台网络设备A、B以同一状态与接入设备进行链路聚合,在接入设备看来,就如同与同一台网络设备建立了链路聚合关系。这样就将链路聚合技术从一对一的设备对接,扩展到了可以同时接入对端两台设备,并组成了一个双活系统。

下面我们一起看这个双活系统是如何工作的?

MC-LAG工作过程

​了解MC-LAG工作过程之前,先学习一些MC-LAG技术涉及的基础概念。

图片

DFS Group即动态交换服务组(Dynamic Fabric Service Group),主要用于对组成MC-LAG的两台网络设备(图中A和B)之间的配对,对这两台设备的接口状态、表项等信息进行同步。

在DFS Group中,设备A和B的角色区分为主和备,在正常情况下,主备设备同时进行业务流量的转发。

Peer-link是两台MC-LAG设备A、B之间的直连二层链路,用于协商报文的交互以及部分流量的传输。

Keepalive是MC-LAG两台设备之间的心跳链路,承载心跳数据包,主要作用是在主备设备间发送双主检测报文,进行双主检测,防止设备A、B出现双主用的情况。

MC-LAG成员接口是两台网络设备A和B上连接接入设备的接口。

了解了MC-LAG基础概念之后,我们进一步了解MC-LAG的建立过程,包括如下5个步骤。

图片
  • MC-LAG两端设备在配置完成后,两端设备会通过Peer-link定期发送Hello报文,Hello报文中携带了各自的DFS Group ID、协议版本号、系统MAC等信息。
  • 在收到对端的Hello报文后,判断对端的DFS Group ID是否与自己相同,如果相同,则配对成功。
  • 配对成功后选举主/备设备。根据MC-LAG优先级进行选举,优先级高的为主;如果MC-LAG优先级相同则比较两台设备的系统MAC,MAC小的为主。
  • 主备设备间发送同步报文进行信息同步。
  • 主/备设备通过Keepalive链路发送心跳检测报文,主要是用于在Peer-link故障时进行双主检测。

完成了上述建立过程,MC-LAG就可以正常工作了。

MC-LAG流量转发

​MC-LAG主要应用于双归接入场景,即接入侧设备C通过MC-LAG技术,接入网络侧设备A和B。正常工作时,上行流量和下行流量采用负载均衡方式经设备A、B转发。

图片

​如果上面网络出现故障,MC-LAG又是如何保护网络正常工作呢?

成员接口链路故障

​如果MC-LAG某成员接口故障,例如,设备B的成员接口出现故障。接入侧设备C感知到设备B成员接口故障,将所有上行流量均发送给设备A,由设备A转发。

设备B收到从网络侧发往接入侧设备C的流量,会通过Peer-link将流量交给正常工作的设备A转发到接入侧设备C。

图片

MC-LAG设备故障

如果一台MC-LAG设备出现故障,例如,设备B出现故障。此时设备B无法进行流量转发,则所有流量均由设备A转发。

图片

Peer-link出现故障

​如果发生Peer-link故障,这时设备A、B不能同时转发流量,否则会导致广播风暴、MAC漂移等一系列问题,所以只允许一台设备转发流量。

此时,MC-LAG的备设备(这里是设备B)会将自己除了Peer-link接口和管理网口之外的所有物理接口进行Error-down处理。此时,所有流量都只会通过MC-LAG主设备进行转发。

图片

通过前面的介绍,可以了解到MC-LAG技术相对于传统链路聚合技术有更多的优势,在增强了网络可靠性的同时,简化了组网,实现了设备级的高可用冗余保护以及多路径转发。

此外,MC-LAG两台网络设备独立运行,可以分别进行升级,升级过程只要保证一台设备正常工作,对运行的业务几乎不会产生影响。

目前,MC-LAG技术在新型IP城域网和云数据中心正被广泛使用,可以在采用Spine-Leaf网络架构的同时,部署MC-LAG来保证网络的可靠性。

在5G的演进过程中,MC-LAG技术必将为IP承载网络提供更加可靠的保障。​

责任编辑:赵宁宁 来源: 中兴文档

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK