M-LAG技术详解

这篇具有很好参考价值的文章主要介绍了M-LAG技术详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

M-LAG简介

定义

M-LAG(Multichassis Link Aggregation Group)即跨设备链路聚合组,是一种实现跨设备链路聚合的机制,如图1所示,将SwitchA和SwitchB通过peer-link链路连接并以同一个状态和Switch进行链路聚合协商,从而把链路可靠性从单板级提高到了设备级。

图1 M-LAG示意图

M-LAG技术详解

 文章来源地址https://www.toymoban.com/news/detail-449130.html

目的

M-LAG作为一种跨设备链路聚合的技术,除了具备增加带宽、提高链路可靠性、负载分担的优势外,还具备以下优势:

  • 更高的可靠性

    把链路可靠性从单板级提高到了设备级。

  • 简化组网及配置

    可以将M-LAG理解为一种横向虚拟化技术,将双归接入的两台设备在逻辑上虚拟成一台设备。M-LAG本身提供了一个没有环路的二层拓扑同时实现冗余备份,极大的简化了组网及配置。

  • 独立升级

    两台设备可以分别进行升级,保证有一台设备正常工作即可,对正在运行的业务几乎没有影响。

M-LAG的基本概念

如图1所示,用户侧设备Switch(可以是交换机或主机)通过M-LAG机制与另外两台设备(SwitchA和SwitchB)进行跨设备链路聚合,共同组成一个双活系统。这样可以实现SwitchA和SwitchB共同进行流量转发的功能,保证网络的可靠性。

图1 M-LAG基本拓扑

M-LAG技术详解

 

下面介绍下M-LAG涉及的相关概念,如表1所示。

表1 M-LAG基本概念

概念

说明

DFS Group

动态交换服务组DFS Group(Dynamic Fabric Service Group),主要用于部署M-LAG设备之间的配对,M-LAG双归设备之间的接口状态,表项等信息同步需要依赖DFS Group协议进行同步。

DFS主设备

部署M-LAG且状态为主的设备,通常也称为M-LAG主设备。

DFS备设备

部署M-LAG且状态为备的设备,通常也称为M-LAG备设备。

说明:

DFS Group的角色区分为主和备,正常情况下,主设备和备设备同时进行业务流量的转发,转发行为没有区别,仅在故障场景下,主备设备的行为会有差别。

双主检测链路

双主检测链路,又称为心跳链路,是一条三层互通链路,用于M-LAG主备设备间发送双主检测报文。

说明:

正常情况下,双主检测链路不会参与M-LAG的任何转发行为,只在故障场景下,用于检查是否出现双主的情况。双主检测链路可以通过外部网络承载(比如,如果M-LAG上行接入IP网络,那么两台双归设备通过IP网络可以互通,那么互通的链路就可以作为双主检测链路)。也可以单独配置一条三层可达的链路来作为双主检测链路(比如通过管理口)。

peer-link接口

peer-link链路两端直连的接口均为peer-link接口。

peer-link链路

peer-link链路是一条直连链路且必须做链路聚合,用于交换协商报文及传输部分流量。接口配置为peer-link接口后,该接口上不能再配置其它业务。

为了增加peer-link链路的可靠性,推荐采用多条链路做链路聚合。

HB DFS主设备

通过心跳链路来协商的状态为主的设备。

说明:

通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响,仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。

HB DFS备设备

通过心跳链路来协商的状态为备的设备。

说明:

通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响,仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。

M-LAG成员接口

M-LAG主备设备上连接用户侧主机(或交换设备)的Eth-Trunk接口。

为了增加可靠性,推荐链路聚合配置为LACP模式。

M-LAG成员接口角色也区分主和备,与对端同步成员口信息时,状态由Down先变为Up的M-LAG成员接口成为主M-LAG成员口,对端对应的M-LAG成员口为备。

说明:

仅在M-LAG接入组播场景下,M-LAG成员接口的主备角色存在转发行为差异。

 

M-LAG协议交互原理

基于M-LAG组成的双活系统提供了设备级的可靠性,那么M-LAG是如何建立的?如图 M-LAG的建立所示,M-LAG的建立过程有如下几个步骤:

图1 M-LAG的建立

M-LAG技术详解

 

  1. DFS Group配对

    当设备完成M-LAG配置后,设备首先通过peer-link链路发送DFS Group的Hello报文。当设备收到对端的Hello报文后,会判断报文中携带的DFS Group编号是否和本端相同,如果两台设备的DFS Group编号相同,则两台设备DFS Group配对成功。

  2. DFS Group协商主备

    配对成功后,两台设备会向对端发送DFS Group的设备信息报文,设备根据报文中携带的DFS Group优先级以及系统MAC地址确定出DFS Group的主备状态。

    以SwitchB为例,当SwitchB收到SwitchA发送的报文时,SwitchB会查看并记录对端信息,然后比较DFS Group的优先级,如果SwitchA的DFS Group优先级高于本端的DFS Group优先级,则确定SwitchA为DFS主设备,SwitchB为DFS备设备。如果SwitchA和SwitchB的DFS Group优先级相同,比较两台设备的MAC地址,确定MAC地址小的一端为DFS主设备。

    DFS Group的角色区分为主和备,正常情况下,主设备和备设备同时进行业务流量的转发,转发行为没有区别,仅在故障场景下,主备设备的行为会有差别。

  3. M-LAG成员接口协商主备

    在DFS Group协商出主备状态后,M-LAG的两台设备会通过peer-link链路发送M-LAG设备信息报文,报文中携带了M-LAG成员接口的配置信息。在成员口信息同步完成后,确定M-LAG成员接口的主备状态。

    与对端同步成员口信息时,状态由Down先变为Up的M-LAG成员接口成为主M-LAG成员口,对端对应的M-LAG成员口为备,且主备状态默认不回切,即:当M-LAG成员接口状态为主的设备故障恢复后,先前由备状态升级为主状态的接口仍保持主状态,恢复故障的M-LAG成员接口状态为备,此处与DFS Group协商主备状态不一致。

  4. 双主检测

    协商出M-LAG主备后,两台设备之间会通过双主检测链路每1s发送一个M-LAG双主检测报文,15s为一个周期,若三个周期内两台设备均能够收到对端发送的双主检测报文,双活系统即开始正常的工作;若三个周期内未收到双主检测报文则心跳超时。一旦设备感知到peer-link故障,设备会按照每100ms发送三个双主检测链路报文,加速检测。

    在DFS Group配对失败或者peer-link故障场景下,双主检测链路用于检查是否出现双主的情况。双主检测链路可以通过外部网络承载(比如,如果M-LAG上行接入IP网络,那么两台双归设备通过IP网络可以互通,那么互通的链路就可以作为双主检测链路)。也可以单独配置一条三层可达的链路来作为双主检测链路(比如通过管理口)。

    1. 双主检测链路通过管理网口互通,DFS Group绑定的管理网口IP地址要保证可以相互通信,管理网口下绑定VPN实例,保证双主检测报文与业务流量隔离。

    2. 双主检测链路通过业务网络互通,DFS Group绑定的IP地址要保证可以三层互通。如果peer-link接口之间建立路由邻居关系,则业务网络双主检测报文会直接通过最优路由经peer-link链路传输。一旦peer-link故障,路由收敛期间,双主检测报文通过次优路径传输到对端,双主检测时间会慢0.5秒或者1秒的时间。

  5. M-LAG同步信息

    正常工作后,两台设备之间会通过peer-link链路发送M-LAG同步报文实时同步对端的信息,M-LAG同步报文中主要包括MAC表项、ARP以及STP等,并发送M-LAG成员端口的状态,这样任意一台设备故障都不会影响流量的转发,保证正常的业务不会中断。

    用户可以通过display fei m-lag synchronization packet statistics查看支持的具体报文类型。

M-LAG应用场景

M-LAG特性主要应用于将服务器或交换机双归接入普通以太网络、TRILL(Transparent Interconnection of Lots of Links)、VXLAN(Virtual eXtensible Local Area Network)和IP网络。一方面可以起到负载分担流量的作用,另一方面可以起到备份保护的作用。由于M-LAG支持多级互联,M-LAG的组网可以分为单级M-LAG和多级M-LAG。

单级M-LAG场景

  • 交换机的双归接入

    如图1所示,为了保证可靠性,交换机在接入网络时需要考虑链路的冗余备份,采用部署MSTP等破环协议的方式可以实现,但是这种方式下链路的利用率很低,浪费大量的带宽资源。为了实现冗余备份同时提高链路的利用率,在SwitchA与SwitchB之间部署M-LAG,实现Switch的双归接入。这样SwitchA与SwitchB形成负载分担,共同进行流量转发,当其中一台设备发生故障时,流量可以快速切换到另一台设备,保证业务的正常运行。

    图1 交换机双归接入应用组网图

  • M-LAG技术详解

     

  • 服务器的双归接入

    如图2所示,为了保证可靠性,服务器一般采用链路聚合的方式接入网络,如果服务器接入的设备故障将导致业务的中断。为了避免这个问题的发生,服务器可以采用跨设备链路聚合的方式接入网络,在SwitchA与SwitchB之间部署M-LAG,实现服务器的双归接入。SwitchA与SwitchB形成负载分担,共同进行流量转发,当其中一台设备发生故障时,流量可以快速切换到另一台设备,保证业务的正常运行。

    服务器双归接入时的配置和一般的链路聚合配置没有差异,必须保证服务器侧和交换机侧的链路聚合模式一致,推荐两端均配置为LACP模式。

    图2 服务器双归接入应用组网图

  • M-LAG技术详解

     

多级M-LAG场景

如图3所示,SwitchA和SwitchB之间部署M-LAG后,在SwitchC和SwitchD之间部署M-LAG并与下层的M-LAG进行级联,这样不仅可以简化组网,而且在保证可靠性的同时可以扩展双归接入服务器的数量。多级M-LAG互联必须基于V-STP方式进行配置。

图3 多级M-LAG互联应用组网图

M-LAG技术详解

 

到了这里,关于M-LAG技术详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 华为ce12800交换机m-lag(V-STP模式)配置举例

    配置## 标题思路 采用如下的思路配置M-LAG双归接入IP网络: 1.在Switch上配置上行接口绑定在一个Eth-Trunk中。 2.分别在SwitchA和SwitchB上配置V-STP、DFS Group、peer-link和M-LAG接口。 3.分别在SwitchA和SwitchB上配置LACP M-LAG的系统优先级、系统ID。 4.分别在SwitchA和SwitchB上配置VLANIF接口IP地址

    2024年03月15日
    浏览(35)
  • Web3技术简介:重新定义互联网的未来

    在21世纪的数字时代,互联网已成为我们日常生活的不可或缺的一部分。然而,随着区块链和加密技术的快速发展,一个全新的互联网模型——Web3,正逐渐崭露头角。Web3不仅仅是技术的进步,它更是对传统互联网模型的挑战和革新,旨在构建一个更去中心化、安全、透明和用

    2024年04月27日
    浏览(31)
  • hive lag() 和lead()函数

    Hive 中的 LAG 和 LEAD 函数时,通常用于在结果集中获取同一列在前一行( LAG )或后一行( LEAD )的值。这在分析时间序列数据、计算变化率或查找趋势时非常有用。以下是这两个函数的用法示例: 1. LAG 函数: LAG 函数用于获取前一行的值。它的基本语法是: column_expression :

    2024年02月12日
    浏览(48)
  • Hive之窗口函数lag()/lead()

    lag()与lead函数是跟偏移量相关的两个分析函数 通过这两个函数可以在一次查询中取出同一字段的前N行的数据(lag)和后N行的数据(lead)作为独立的列,从而更方便地进行进行数据过滤,该操作可代替表的自联接,且效率更高 lag()/lead() lag(col,n,DEFAULT)用于统计窗口内往上第n行值  第

    2024年02月15日
    浏览(34)
  • Hive窗口函数-lead/lag函数

    前面我们学习的first_value和last_value 取的是排序后的数据截止当前行的第一行数据和最后一行数据 Lag和Lead分析函数可以在一次查询中取出当前行后N行和前N行的数据,虽然可以不用排序,但是往往只有在排序的场景下取前面或者后面N 行数据才有意义 这种操作可以代替表的自

    2024年02月16日
    浏览(50)
  • 【Kafka】Kafka consumer lag 为负数

    最近对Kafka 集群部署了 Kafka_exporter 监控,并集成了 granfana 图标展示。 发现 Consumer Group Lag 有时候为负数。 于是进行一番查询,并总结整理下。 从下图可以看出, consumer group 值有时候出现负数的情况。 消息过期了(超过默认7天),已经被清理掉了,这时候 topic 最新的 end

    2024年02月13日
    浏览(42)
  • 【Mysql系列】LAG与LEAD开窗函数

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年02月05日
    浏览(39)
  • Allan方差定义与计算方法简介

    Allan方差 最初由David W. Allan开发,用于测量精密仪器的频率稳定性。 它还可用于识别固定陀螺仪测量中存在的各种噪声源。 Allan 方差 主要可以辨识的噪声包括量化噪声、随机游走、零偏不稳定性、速率随机游走以及速率斜坡。 Allan方差 法是一种时域分析技术,对实际静态条

    2024年02月11日
    浏览(33)
  • AI人工智能简介和其定义

    全称:人工智能(Artificial Intelligence) 缩写:AI / ai        亦称智械、机器智能,指由人制造出来的可以表现出智能的机器。通常人工智能是指通过普通计算机程序来呈现人类智能的技术。该词也指出研究这样的智能系统是否能够实现,以及如何实现。人工智能于一般教材中

    2023年04月18日
    浏览(33)
  • Spring IOC 入门简介【自定义容器实例】

    目录 相关导读 1. Maven专栏系列文章 2. Mybatis专栏系列文章 3. Spring系列专栏文章 前言 Spring简介 Spring体系结构 一、IOC控制反转思想 二、IOC自定义对象容器 1. 创建实体类,Dao接口,实现类 2. 创建配置文件bean.properties 3. 创建容器管理类 4. 创建StudentService类 5. 测试方法 6. 测试结

    2023年04月21日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包