首页 > 其他分享 >06、M-LAG正常工作场景流量转发

06、M-LAG正常工作场景流量转发

时间:2024-04-15 17:37:36浏览次数:32  
标签:组播 06 接入 LAG 流量 转发 设备

M-LAG正常工作场景流量转发

M-LAG双活系统建立成功后即进入正常的工作,M-LAG主备设备负载分担共同进行流量的转发,转发行为没有区别。下面介绍M-LAG在正常工作情况下是如何进行流量转发的。

单播流量转发

单播流量转发包括二层已知单播转发和三层单播转发。

图1所示,M-LAG双活系统在接入设备双归接入场景下的已知单播流量转发:

对于南北向单播流量,在M-LAG接入侧,M-LAG的成员设备接收到接入设备通过链路捆绑负载分担发送的流量后,共同进行流量转发。到达M-LAG主备设备发往网络侧的流量则根据路由表转发流量。

对于东西向单播流量,在全部组建M-LAG,没有孤立端口的场景下,二层流量通过M-LAG本地优先转发,三层流量通过双活网关转发,都不经过peer-Link链路,直接由M-LAG主备设备转发至对应成员口。

图1 M-LAG已知单播流量转发示意图

组播流量转发

  • M-LAG接入二层网络

    M-LAG上行接入二层网络,那么二层网络必须要保证发往M-LAG的流量只有一份,否则会有成环的风险。如图2所示,假设右侧M-LAG上行接口被STP协议阻塞:

    在ServerB作为组播源、ServerA作为组播组成员时,M-LAG主备都可以转发组播流量,在网络侧只引流一份流量的情况下,接收到流量的设备直接转发到本地的M-LAG成员口。如果本地M-LAG成员口故障,则组播流量如图3所示会从peer-link绕行,转发至M-LAG系统另一台设备的成员口进行转发。

    在ServerA作为组播源、ServerB作为组播组成员时,组播源的流量通过负载分担发送至M-LAG主备设备,由于右端M-LAG设备的上行接口被阻塞,那么右端设备的组播出接口指向peer-link链路。

    图2 M-LAG接入二层网络组播流量转发示意图

    图3 M-LAG接入二层网络组播流量成员口故障转发示意图

  • M-LAG接入三层网络

    M-LAG上行接入三层网络,M-LAG系统成员设备需要支持二三层组播混跑。如图4所示,M-LAG双活系统在接入设备双归接入场景下的组播流量转发(假设图中M-LAG主设备的成员口状态为主,M-LAG备设备的成员口状态为备):

    在ServerB作为组播源、ServerA作为组播组成员时,M-LAG主备设备都从组播源引流,且按照以下规则由M-LAG主备设备在本地查找组播表后将流量负载分担转发至组播组成员:
    • 若组播组地址最后一位为奇数(例如225.1.1.1或FF1E::1、FF1E::B),则由M-LAG成员口状态为主的设备转发至组播组成员;
    • 若组播组地址最后一位为偶数(例如225.1.1.2或FF1E::2、FF1E::A),则由M-LAG成员口状态为备的设备转发至组播组成员;

    对于V200R003C00之前的版本,仅M-LAG成员口状态为主的设备转发组播流量到接收者,从V200R003C00版本开始,M-LAG成员口状态为主备的设备均可以转发组播流量到接收者,实现负载分担。当M-LAG系统两台设备版本不一致时,组播流量转发规则以低版本为准。

    在ServerA作为组播源、ServerB作为组播组成员,且M-LAG设备无下挂其他组播组成员时,组播源发出的流量负载分担到M-LAG系统主备设备,收到流量后在本地查找组播表将报文发送出去。

    图4 M-LAG接入三层网络组播流量转发示意图

    区别于单播流量,由组播流量转发示意图可以看出,M-LAG系统在转发组播流量时需要在M-LAG两台设备间配置一条独立三层链路。因为在故障场景下,可能出现网络侧只有单链路上行,此时M-LAG主备设备间部署一条独立的单独L3链路可以用来传输组播报文。如图5所示,在网络侧只有单链路上行的故障场景下,由peer-link接口转发的组播报文由于单向隔离无法转发至指定的M-LAG成员口,只能由独立三层链路转发至该设备。当组播组地址最后一位为奇数,由M-LAG成员口状态为主的设备(假设图中M-LAG主设备的成员口状态为主)转发至组播组成员;当组播组地址最后一位为偶数,由M-LAG成员口状态为备的设备(假设图中M-LAG备设备的成员口状态为备)转发至组播组成员。

    图5 M-LAG接入三层网络(单链路上行)组播流量转发示意图

广播流量转发

  • M-LAG接入二层网络

    M-LAG上行接入二层网络,那么二层网络必须要保证发往M-LAG的流量只有一份,否则会有成环的风险。此处以M-LAG主设备的转发为例,如图6所示,假设右侧M-LAG上行接口被STP协议阻塞,M-LAG主设备收到广播流量后向各个下一跳转发,当流量到达M-LAG备设备时,由于peer-link与M-LAG成员接口存在单向隔离机制,到达备设备的流量不会向S-1转发。 图6 M-LAG接入二层网络广播流量转发示意图

  • M-LAG接入三层网络

    此处以M-LAG备设备的转发为例,如图7所示,M-LAG备设备收到广播流量后向各个下一跳转发,当流量到达M-LAG主设备时,由于peer-link与M-LAG成员接口存在单向隔离机制,到达主设备的流量不会向S-1转发。 图7 M-LAG接入三层网络广播流量转发示意图

     

标签:组播,06,接入,LAG,流量,转发,设备
From: https://www.cnblogs.com/laixufei/p/18136536

相关文章

  • 07、M-LAG故障场景流量转发
    M-LAG故障场景流量转发M-LAG作为一种跨设备链路聚合的技术,把链路可靠性从单板级提高到了设备级。如果出现故障(不管是链路故障、设备故障还是peer-link故障),M-LAG都能够保证正常的业务不受影响,下面介绍M-LAG在故障情况下是如何保障业务的正常运行的。上行链路故障图1 上行链......
  • 08、M-LAG维护模式升级原理
    M-LAG维护模式升级原理M-LAG维护模式下的升级的基本原理是在维护模式下,通过OSPF/OSPFv3/BGP/BGP4+和LACP命令将流量先切换到备份链路上,再升级设备。升级完成后,依次删除LACP和OSPF/OSPFv3/BGP/BGP4+命令将流量回切,再退出维护模式。整个维护模式下的升级过程相对传统的升级方式提......
  • 09、M-LAG Lite原理
    M-LAGLite原理对于前面讲述的链路聚合都是单设备与单设备之间的对接。如果Eth-Trunk出现故障或者对端设备故障,交换机或者服务器将无法与对端设备继续进行通信。使用跨设备链路聚合后,交换机或者服务器可以双归到两台设备上,从而把链路可靠性从单板级提高到了设备级。根据上行设......
  • 01、M-LAG简介
    M-LAG简介定义M-LAG(MultichassisLinkAggregationGroup)即跨设备链路聚合组,是一种实现跨设备链路聚合的机制,如图1所示,将SwitchA和SwitchB通过peer-link链路连接并以同一个状态和Switch进行链路聚合协商,从而把链路可靠性从单板级提高到了设备级。图1 M-LAG示意图目的......
  • 02、M-LAG的基本概念
    M-LAG的基本概念如图1所示,用户侧设备Switch(可以是交换机或主机)通过M-LAG机制与另外两台设备(SwitchA和SwitchB)进行跨设备链路聚合,共同组成一个双活系统。这样可以实现SwitchA和SwitchB共同进行流量转发的功能,保证网络的可靠性。图1 M-LAG基本拓扑下面介绍下M-LAG涉及的相关......
  • 06、OSPF NSSA
    OSPFNSSA 定义OSPF规定STUB区域是不能引入外部路由的,这样可以避免大量外部路由对STUB区域路由器带宽和存储资源的消耗。对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,STUB区域就不再满足需求了。因此产生了NSSA区域。OSPFNSSA区域(Not-So-StubbyArea)是OSP......
  • day06_我的Java学习笔记 (综合应用专题课)
    专题课(综合案例)案例一:买飞机票案例二:找素数上述老师代码有点问题,即:j<i/2;应为j<=i/2;见如下判断:其实出问题的点,只会在i=4时,因为当i=4时,j<i/2:不成立,直接跳过该循环,执行步骤3的操作了。(当范围不是101-200,而是包含了4,则会出现上述的现象,因4不满......
  • httprunner 4.x学习 - 06辅助函数(debugtalk)的使用
    前言支持go语言和python语言写辅助函数debugtalk辅助函数在根目录编辑debugtalk.py文件写辅助函数实现自动化生成动态参数。 如下两个int相加和获取登录用用户名函数defsum_two_int(a:int,b:int)->int:returna+b defget_longin_name():retur......
  • 闫忠奥202383310064
    实验1#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN5intmain(){ intnumber; inti; srand(time(0)); for(i=0;i<N;++i) { number=rand()%65+1; printf("20238331%04d\n",number); } return0;}......
  • LeetCode 面试经典150题---006
    玩了一天多,两天没写了,下次绝对不摆了(最多摆一天)。####42.接雨水给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。n==height.length1<=n<=2*1040<=height[i]<=105不用头想都知道这个题肯定只能用线性复杂度做,至于怎......