0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从单链路到MC-LAG

中兴文档 来源:中兴文档 作者:中兴文档 2022-08-30 09:57 次阅读

“一箭易断,十箭难折。” 这是小时候常常听到的谚语故事,字面意思是一支箭很容易折断,多支箭捆在一起则难以被摧毁,这告诉了我们“团结合作”的重要性。 在承载领域,也有这则故事的妙用,让我们一起来看看吧~

单链路一箭易断

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

cb5b349c-2805-11ed-ba43-dac502259ad0.png

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

存在带宽瓶颈,设备A、B之间的总带宽等于这条单链路的带宽。

链路没有冗余备份,这条链路一旦出现问题,设备A、B之间可能会出现通信中断。

即使单链路有着明显的缺陷,但在那个对网络要求不高的年代,依然可以满足大众需求。 随着网络规模的发展,单链路已经无法满足网络对带宽和可靠性的要求,人们想到了将多条链路像“箭”那样进行“捆绑”。由此,链路聚合技术应运而生。

链路聚合十箭难折

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

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

cb77e74a-2805-11ed-ba43-dac502259ad0.png

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

增加了网络带宽

将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技术组成跨设备链路聚合组。

cb9b53e2-2805-11ed-ba43-dac502259ad0.png

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

MC-LAG工作过程

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

cbbf7b1e-2805-11ed-ba43-dac502259ad0.png

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个步骤。

cbcc41dc-2805-11ed-ba43-dac502259ad0.png

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转发。

cbe66468-2805-11ed-ba43-dac502259ad0.png

如果上面网络出现故障,MC-LAG又是如何保护网络正常工作呢?成员接口链路故障 如果MC-LAG某成员接口故障,例如,设备B的成员接口出现故障。接入侧设备C感知到设备B成员接口故障,将所有上行流量均发送给设备A,由设备A转发。 设备B收到从网络侧发往接入侧设备C的流量,会通过Peer-link将流量交给正常工作的设备A转发到接入侧设备C。

cc007bf0-2805-11ed-ba43-dac502259ad0.png

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

cc1a2514-2805-11ed-ba43-dac502259ad0.png

Peer-link出现故障 如果发生Peer-link故障,这时设备A、B不能同时转发流量,否则会导致广播风暴、MAC漂移等一系列问题,所以只允许一台设备转发流量。 此时,MC-LAG的备设备(这里是设备B)会将自己除了Peer-link接口和管理网口之外的所有物理接口进行Error-down处理。此时,所有流量都只会通过MC-LAG主设备进行转发。

cc26a2e4-2805-11ed-ba43-dac502259ad0.png

结语

通过前面的介绍,可以了解到MC-LAG技术相对于传统链路聚合技术有更多的优势,在增强了网络可靠性的同时,简化了组网,实现了设备级的高可用冗余保护以及多路径转发。 此外,MC-LAG两台网络设备独立运行,可以分别进行升级,升级过程只要保证一台设备正常工作,对运行的业务几乎不会产生影响。 目前,MC-LAG技术在新型IP城域网和云数据中心正被广泛使用,可以在采用Spine-Leaf网络架构的同时,部署MC-LAG来保证网络的可靠性。 在5G的演进过程中,MC-LAG技术必将为IP承载网络提供更加可靠的保障。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 组网
    +关注

    关注

    1

    文章

    301

    浏览量

    21952
  • 链路
    +关注

    关注

    1

    文章

    61

    浏览量

    13930
  • lag
    lag
    +关注

    关注

    0

    文章

    3

    浏览量

    1119

原文标题:“一箭易断,十箭难折”——从单链路到MC-LAG

文章出处:【微信号:ztedoc,微信公众号:中兴文档】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    用STM8S003单片机做2ADC实验,次模式可以分别读取2ADC吗?

    请问下大神们,我用STM8S003单片机做2ADC实验,次模式可以分别读取2ADC吗?
    发表于 04-29 09:08

    A9680采集低频信号时 发生204B断开的问题

    )采集的波形十分完美,204B稳定 2、当输入正弦波频率降低到50K时,开始会有解码错误 3、当输入正弦波频率降到30K及以下时,204B
    发表于 04-09 08:15

    ADuC7060如何使用四端通道?

    请教:ADuC7060只有两个ADC,但是每个ADC都有多个通道,我想使用四端通道,不知道怎样实现方法最好
    发表于 01-15 07:40

    要搭一个传输,前后的ADC和DAC采样率和位数是否要完全相等?

    请问,要搭一个传输中的ADC和DAC的参数,比如:采样率和分辨率一定要一样吗? 中频模拟信号,先模数转换数字化进行传输,之后需要数模转换,前后的ADC和DAC采样率和位数是
    发表于 12-12 06:21

    AD5422菊花模式下如果只想设置某一的输出范围,而不设置其他的范围程序要如何操作?

    假设我有4个AD5422采用菊花方式连接,当前状态输出电流都为10mA,现在想改变第3个的电流输出为5mA,不改变其他的输出电流值。 问题1:那前24个时钟(即操作第4个AD5422的时钟
    发表于 12-11 07:56

    AD9136的JESD204B无法建立是怎么回事?

    使用内部PLL,输入参考频率为100MHz。在采样率时钟设置为1GHz时,DAC的JESD204B能建立,但是当频率改为1.5GHz时,SYNC一直为低。其他相关寄存器都已经修改,serdes
    发表于 12-05 08:17

    ADSP sharp213/4xx问题求解

    做一个项目: 1、主要三个音频输入: ①、模拟,经由ADC转换在数安:ADC_FS, ADC_BCLK,ADC_DA_I; ②、SPDIF输入; ③、四I2S输入: 考虑输入源
    发表于 11-30 06:09

    AD8014可以输入两差分信号使其输出一端信号吗?

    AD8014可以输入两差分信号使其输出一端信号吗?
    发表于 11-15 06:33

    C语言或Matlab如何实现FF调度器仿真?

    C语言或Matlab如何实现FF调度器仿真
    发表于 10-18 06:12

    C语言或matlab如何实现ff调速器仿真?

    C语言或matlab如何实现ff调速器仿真
    发表于 10-17 07:34

    柔性电子供应企业的机会与挑战

    、PCB设计、PCB制造、BOM配、电子装联(PCBA)和测试验证等多个环节,不同的环节的特点和需求不同,对电子供应企业有不同的要求。整体来说,电子供应呈上游集中、下游分散、品
    发表于 09-15 11:37

    有人将xtensa工具移植gcc-5.3吗?

    。不幸的是,我在编译器中遇到了一些问题,我不得不切换到 gcc-5.3。有人将 xtensa 工具移植 gcc-5.3 吗?还有其他人对用 Ada 编程 ESP8266 感兴趣吗?如果我能将移植结果集成通用工具
    发表于 06-12 06:34

    【感芯科技MC3172开发板体验】MC3172初体验

    运行的体验。同时MC3172具有100%周期指令,coremark可以达到3.37/MHz(指标来看确实达到cortex-m4水平,还未测试),并集成了多打12的多功能通信接口,
    发表于 05-29 10:31

    【RISC-V开发板】并行多线程处理器MC3172开发资料集合

    厦门感芯科技多线程处理器MC3172开发板 ,64线程同步并行运行,各个线程速度可按需配置,硬件级实时响应,无需中断服务程序,无需实时操作系统。RISC-V RV32IMC 指令集,100%周期
    发表于 05-23 11:44

    采用modbus的串口,这3个设备公用一条,该如何设设置?

    采用modbus的串口,这3个设备公用一条,该如何设设置?有一个主控屏,一台pc上位机,和一个受控设备.PC远控端,屏近地控制
    发表于 05-05 16:17