数据中心横向虚拟化 M-LAG 技术

M-LAG

一、M-LAG概述

1、M-LAG定义:M-LAG(Multichassis Link Aggregation Group)是跨设备链路聚合组。可以将两台设备进行跨设备链路聚合,从而把链路的可靠性从单板机提高到了设备级。

在这里插入图片描述

2、优势:

(1)、M-LAG系统的两台设备在逻辑上被虚拟成一台设备,它本身提供了一种没有环路的二层拓扑,逻辑组网更清晰,链路利用更充分。
(2)、M-LAG两台设备可以独立升级,实现效率高,业务秒级中断的目标。

因此,针对对组网可靠性要求高,对升级过程业务中断时间要求高的场景推荐使用M-LAG。
3、术语:
(1)、LAG:Link Aggregation Group 链路端口组
(2)、M-LAG:Multichassis Link Aggregation Group 跨设备链路聚合组
(3)、DFS-Group:动态交换服务组DFS Group(Dynamic Fabric Service Group),进行M-LAG设备配对,协商出M-LAG主备设备和M-LAG成员口的主备状态,同时进行表项同步。

①、DFS-Group id:只能为1
②、DFS主master:通过peer-link交互信息,选择主设备
③、DFS备standby:通过peer-link交互信息,选择备设备
正常转发:主备管控双活,转发双活
故障发生(分裂):peer-link故障,主正常转发,备的业务接口error-down
故障恢复:主还是主,备还是备,主备抢占吗,保证主转发
④、peer-link:对等体链路,必须是LAG(业内一般以Eth-trunk0作为M-LAG)2层,默认允许所有vlan
用途:
a、管控:交换dfs-group信息,同步表项(arp表项,mac表项)
b、转发:当上行流量down,跨框流量转发
⑤、DAD链路:双主检测链路(HB:heart beat 心跳),必须是三层链路
三层接口指:
a、MGMT接口(管理口)
b、物理接口
c、Lookback 接口
建议使用lookback接口或管理口
用途:当peer-link链路down了,进行双主检测

(4)、M-LAG的成员接口:主备设备上连接用户侧的主机(或交换设备)的Eth-Trunk接口为M-LAG的成员接口

①、选举m-lag成员的主接口:端口谁先up,谁就是主,不抢占。
②、针对单播流量:没有影响,双活
③、针对三层组播流量:如果是奇数目的组IP,走主。如果是偶数目的组IP,走备。

在这里插入图片描述

二、M-LAG基本建立过程

1、M-LAG基本建立过程工作模式

在M-LAG基本建立过程中,根据主备M-LAG成员口产生方式的不同,将M-LAG工作模式分为2种:双活模式主备模式

2、双活模式下M-LAG的建立过程

双活模式:在两台独立的设备DeviceA和DeviceB上,建立一个跨设备的Eth-Trunk与用户侧设备DeviceC的普通Eth-Trunk并通过M-LAG机制进行对接,共同组成一个M-LAG系统。
在这里插入图片描述

(1)、DFS Group配对

DFS Group是动态交换服务组,主要用于实现DeviceA和DeviceB设备之间的配对。当M-LAG两端设备完成配置后,设备首先通过peer-link链路(必须为聚合链路)发送DFS Group的Hello报文。当设备收到对端的Hello报文后,会判断报文中携带的DFS Group编号是否和本端相同,如果两台设备的DFS Group编号相同,则两台设备DFS Group配对成功。

(2)、DFS Group协商主备

①、 DFS Group配对配对成功后,两台设备会向对端发送DFS Group的设备信息报文,设备根据报文中携带的DFS Group优先级以及系统MAC地址确定出DFS Group的主备状态。
②、DFS Group角色分为:DFS主设备(M-LAG主设备)和DFS备设备(M-LAG备设备)
③、主备设备选举:a.优选优先级大的(默认优先级为100) b.如果优先级相同,优选MAC地址小的

(3)、M-LAG成员接口协商主备

①、 在DFSGroup协商出主备状态后,M-LAG的两台设备会通过peer-link链路发送M-LAG设备信息报文,报文中携带了M-LAG成员口的配置信息。在成员口信息同步完成后,确定M-LAG成员口的主备状态。
②、成员接口的主备选举:a.优选先UP的接口为主成员接口,后UP的接口为备成员接口
③、成员接口的主备不抢占:如果M-LAG成员口状态为主的设备故障,则对端对应的M-LAG成员口从备状态升级为主状态;当M-LAG成员口状态为主的设备故障恢复后,先前由备状态升级为主状态的接口仍保持主状态,恢复故障的M-LAG成员口状态为备。

(4)、双主检测

①、协商出M-LAG主备设备后,两台设备之间会通过双主检测链路(心跳链路,又称为DAD link,是一条三层互通链路。)
②、检测周期:1s发送一次M-LAG双主检测报文。 一旦设备感知peer-link故障,会在双主检测延时时间(缺省值为3s)后,按照200ms的周期发送三个双主检测链路报文进行加速检测,防止误触发双主加速检测,导致一端M-LAG设备端口被Error-Down。
③、注意事项:双主检测链路和peer-link链路不能共用,若双主检测报文通过peer-link链路转发,peer-link链路Down时,双主检测不能进行,无法触发一端M-LAG设备端口Error Down,可能会导致流量转发异常。

(5)、M-LAG同步信息

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

3、主备模式下M-LAG的建立过程

主备模式:在两台独立的设备DeviceA和DeviceB上,建立一个跨设备的Eth-Trunk与用户侧服务器Server并通过M-LAG机制进行对接,共同组成一个M-LAG系统。
在这里插入图片描述
与双活模式类似,主备模式下M-LAG的建立过程也分为如下几个步骤:
(1)、DFS Group配对
(2)、DFS Group协商主备
(3)、M-LAG成员接口选举主备
(4)、双主检测
(5)、M-LAG同步信息

与双活模式的唯一区别:

主备M-LAG成员口的产生方式上与双活模式不同:M-LAG设备根据服务器主网卡发出的协议报文(即选主报文)进行M-LAG成员口的主备选举,与主网卡对接的M-LAG成员口成为主M-LAG成员口,对端对应的M-LAG成员口为备M-LAG成员口(即与备网卡对接的M-LAG成员口成为备M-LAG成员口)。

三、M-LAG防环机制

1、防环机制

M-LAG本身具有防环机制,可以构造出一个无环网络。当流量通过peer-link链路广播到对端M-LAG设备,在peer-link链路与M-LAG成员口之间设置单方向的流量隔离,即从peer-link口进来的流量不会再从M-LAG口转发出去,所以不会形成环路,这就是M-LAG单向隔离机制。

2、单向隔离机制

(1)、单向隔离机制生效前提:

当M-LAG两台设备协商出M-LAG主备后,系统通过M-LAG同步报文判断接入设备是否双活接入:

①、若接入设备双活接入M-LAG系统,则M-LAG两台设备下发对应M-LAG成员口的单向隔离配置,来隔离由peer-link口发往M-LAG成员口的流量。
②、若接入设备单归接入M-LAG系统,则M-LAG系统不会下发对应M-LAG成员口的单向隔离配置。
③、主备模式下,M-LAG系统不会下发对应M-LAG成员口的单向隔离配置。

(2)、单向隔离机制实现原理

在设备双活接入M-LAG场景下,设备通过端口隔离功能实现peer-link接口与M-LAG成员口之间的单向隔离,隔离由peer-link接口发往M-LAG成员口的广播等泛洪流量。
M-LAG两台设备会自动下发对应M-LAG成员口的单向隔离配置,无需用户手工配置,同一端口隔离组内的端口之间无法互通。当M-LAG设备感知到本端的M-LAG成员口状态为Down时,会通过peer-link发送M-LAG同步报文,通知对端设备自动将相应的M-LAG成员口从隔离组中清除。

四、M-LAG缺省配置

参数缺省值
LACP M-LAG的系统优先级32768
LACP M-LAG的系统ID设备的以太口MAC地址
M-LAG成员接口上报Up状态的延时时间240秒
M-LAG成员接口延迟自动恢复时间0秒
peer-link接口不允许通过的VLAN所有VLAN都允许通过
DFS Group的优先级100
LACP M-LAG的系统ID延迟切换时间0秒

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/678231.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

golang界面设计器,全网少见

今天登录govcl的网站,无意中看到有个简易UI设计器。 对于golang的UI专用设计器,还没在网上真正见过。 之前也用govcl来做过两三个桌面应用,好用是好用,不过要安装Lazarus的IDE来拖动设计UI,还要配置很多东西&#xff0…

淘宝评论API调用指南,让你购物不再困扰

一、淘宝评论API概述 淘宝评论API是淘宝开放平台提供的一种服务,它允许开发者通过调用API接口获取淘宝商品评论数据,联讯数据从而为用户提供更加丰富和实用的购物决策信息。通过使用淘宝评论API,开发者可以轻松地实现以下功能: …

AMEYA360:申矽凌推出系统级热管理芯片CTF230X系列 助力WiFi市场换代

办公、刷剧、网购、手游...2022年,蓬勃的全球数字经济活动,总共产生了近100ZB的数据,其中相当比例终端流量是通过无线连接传输,WiFi更是其中的“主渠道”。旺盛的需求,带动WiFi设备年出货量达到40亿台量级,…

VMware 三种网络模式

目录 一、网卡、路由器、交换机 二、虚拟网络编辑器 三、网络模式 1.桥接模式 通信方式 特点 配置 连通情况 使用场景 2.NAT模式 通信方式 特点 配置 连通情况 使用场景 3.仅主机 通信方式 特点 配置 连通情况 使用场景 一、网卡、路由器、交换机 网卡(Ne…

【数据结构】 排序算法总结,直接选择排序详解!

文章目录 1. 排序几个重点概念的理解2. 排序算法的分析🐧3.直接选择排序 1. 排序几个重点概念的理解 2. 排序算法的分析🐧 3.直接选择排序 🐧 begin 有可能就是 maxi ,所以交换的时候,要及时更新 maxi 🍎…

JVM学习-监控工具(三)

jconsole 从Java5开始,在JDK中自带的java监控和管理控制台用于对JVM中内存、线程、和类等的监控,是一个基本JMX(java management extendsions)的GUI性能监控工具 三种连接方式 Local:使用JConsole连接是一个正在本地系统运行的JVM&#xf…

你真的会做抖音小店吗?这三个“流量密码”还有谁不知道!

哈喽~我是电商月月 互联网时代,电商无疑是当前阶段最赚钱的项目了 而互联网变现的关键因素就是:流量, 选择在抖音做店的原因之一,不外乎就是商家,看中了抖音内部的流量 但现实就是,有好多伙伴做店根本拿…

vscode 运行和调试

vscode使用断点 1.安装并激活扩展 Debugger for Chrome (弃用 --> JavaScript Debugger)Debugger for Firefox 2. 配置config文件 打开 config/index.js 并找到 devtool property。将其更新为: 如果你使用的是 Vue CLI 2,请设置并更新 config/in…

Linux环境下安装MySQL详细教程(手把手附图安装!!!)

目录 一、前言 二、安装前的环境检查 三、下载官方的 MySQL 安装包 四、开始安装 MySQL 五、尝试初次启动 MySQL 六、给MySQL 做一些简单的小配置 七、共勉 一、前言 本次专题将带大家进入一个新的专题 ---- MySQL。作为本次专题的第一篇博客,肯定是带大家一起…

Python魔法之旅-魔法方法(14)

目录 一、概述 1、定义 2、作用 二、应用场景 1、构造和析构 2、操作符重载 3、字符串和表示 4、容器管理 5、可调用对象 6、上下文管理 7、属性访问和描述符 8、迭代器和生成器 9、数值类型 10、复制和序列化 11、自定义元类行为 12、自定义类行为 13、类型检…

[数据集][目标检测]红外兔子检测数据集VOC+YOLO格式96张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):96 标注数量(xml文件个数):96 标注数量(txt文件个数):96 标注类别数…

mysql的binlog占用大量磁盘空间的解决方法

查看当前日志保存天数: mysql> show variables like %expire_logs_days%; ------------------------- | Variable_name | Value | ------------------------- | expire_logs_days | 0 | ------------------------- 1 row in set (0.08 sec) 默认是0&…

调用万维易源API生成AI艺术二维码

目录 1. 作者介绍2. 艺术二维码2.1 艺术二维码的作用2.2 艺术二维码的应用场景2.3调用万维易源API生成AI艺术二维码 3. 实验过程3.1算法流程3.2完整代码3.3测试结果 1. 作者介绍 韩阳,男,西安工程大学电子信息学院,2023级研究生 研究方向&am…

165.二叉树:对称二叉树(力扣)

代码解决 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* Tre…

精酿啤酒:品质与口感在啤酒创新与研发中的重要性

在啤酒行业中,创新与研发是推动品牌持续发展的重要动力。而品质与口感作为啤酒的核心要素,在啤酒创新与研发中具有不可忽视的重要性。对于Fendi club啤酒而言,其卓着的品质和与众不同的口感在创新与研发中发挥了关键作用。 品质是啤酒创新与研…

【mysql】ssl_choose_client_version:unsupported protocol

起因:项目上的DolphinScheduler连接不上数据库,查看worker日志提到SSL协议问题: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failureCaused by: java.io.EOFException: SSL peer shut down incorrectly 我…

4. MySQL 约束

文章目录 【 1. 主键约束 PRIMARY KEY 】1.1 在创建表时设置主键约束设置单字段主键在创建表时设置联合主键 1.2 在修改表时添加主键约束1.3 删除主键约束1.4 主键自增长 AUTO_INCREMENT指定自增字段初始值自增字段不连续 【 2. 外键约束 FOREIGN KEY 】2.1 在创建表时设置外键…

使用大模型解析用户问题

前文 我在问答业务中遇到了这样的问题,用户的提问方式是千变万化的,有一种可能就是用户会为了节省时间,同时在一句话里面包含了多个问题,如用户输入“查询上城区管龄大于10年,管材是PE管的管线信息,再帮我…

kafka-集群-生产消费测试

文章目录 1、集群生产消费测试1.1、消费者消费消息1.2、生产者生产消息 1、集群生产消费测试 1.1、消费者消费消息 [rootlocalhost ~]# kafka-console-consumer.sh --bootstrap-server 192.168.74.148:9095,192.168.74.148:9096,192.168.74.148:9097 --topic my_topic11.2、生…

windows开机进入grub引导

电脑上只装了一个windows7,突然有一天有人为了排查一个问题,激活了windows,关机重启以后就进入grub的引导启动了 用启动盘尝试过修复引导,使用启动盘里的分区工具重置启动引导,easyBCD都试过了,都只生效一次…