服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 编程技术 - 浅谈链路聚合,你学会了吗?

浅谈链路聚合,你学会了吗?

2024-02-28 15:50中兴文档 编程技术

静态聚合也称静态Trunk(On模式),用户需要手工配置聚合组号和端口成员,将多个物理端口直接加入聚合组,形成一个逻辑端口。

说起机场高速公路,大家都经常通过它往返于机场,也经常遇到堵车。实际上有的城市就会修第二机场高速,这时候相当于去机场的高速行车道拓宽了,堵车现象从而得到缓解,即使其中一条高速公路堵车,提前获知的司机也可以走另外一条高速公路。网络中也有类似多条机场高速公路的方式——链路聚合。今天文档君就来讲讲链路聚合。

浅谈链路聚合,你学会了吗?

一、什么是链路聚合?

链路聚合(Link Aggregation)是指将具有相同传输介质类型、相同传输速率的物理链路段“捆绑”在一起,在逻辑上看起来好像是一条链路。链路聚合又称中继(Trunking),它允许交换机之间或交换机和服务器之间的对等的物理链路同时成倍地增加带宽。

链路聚合模式分为静态聚合和动态聚合。

1.静态聚合

静态聚合也称静态Trunk(On模式),用户需要手工配置聚合组号和端口成员,将多个物理端口直接加入聚合组,形成一个逻辑端口。

静态聚合不运行LACP协议,由于无法检测到链路对端端口的状态,如果对端端口down,但只要本端端口up,仍然会往这个对端端口转发流量,可能会造成部分业务中断。

浅谈链路聚合,你学会了吗?图片

2.动态聚合

动态聚合运行基于IEEE802.3 ad的LACP协议。LACP(Link Aggregation Control Protocol)即链路聚合控制协议,是IEEE 802.3ad描述的标准协议。

LACP是一种实现链路动态汇聚的协议,简单的说,将多个物理端口动态聚合到Trunk组,以提高带宽和冗余性的协议。

LACP允许交换机之间通过报文进行协商,以确定哪些物理链路可以捆绑在一起,并设置相应的参数,如优先级、活动状态等。当多个物理链路捆绑成一个逻辑链路后,它们将共享相同的IP地址和MAC地址,从而形成一个逻辑上的高速通道。

浅谈链路聚合,你学会了吗?图片

二、LACP是如何工作的?

1.LACP动态模式聚合组建立过程

LACP通过LACPDU(链路聚合控制协议数据单元 Link Aggregation Control Protocol Data Unit )与对端交互信息。开启某端口的LACP协议后,LACPDU报文中包含设备的系统优先级、MAC地址、接口优先级、接口号和操作Key等信息,对端接收到这些信息后,将这些信息与其它端口所保存的信息比较以选择能够汇聚的端口,双方对端口加入或退出某个动态聚合组达成一致,确定承担业务流量的链路。

  • 两端互相发送LACPDU报文在两端设备创建链路聚合组,配置LACP模式,并配置成员接口。此时成员接口上便启用了LACP协议,两端互发LACPDU报文。LACPDU报文中包含设备的系统优先级、MAC地址、接口优先级、接口号和操作Key等信息。
  • 成员接口加入链路聚合组两端设备均会收到对端发来的LACPDU报文。两端查看并记录对端信息,将这些信息与聚合组的其它成员接口所保存的信息比较,以选择能够加入的链路聚合组。
  • 确定聚合组活动接口根据接口优先级来选择链路聚合组中的活动接口,从这些活动链路中以负载分担的方式转发数据。

2.LACP工作模式

LACP工作模式可分为主动模式和被动模式。

  • 在主动模式下,网络设备主动发送LACPDU,并等待对端设备的回应。如果对端设备也支持LACP,并且配置为被动模式,则会回应LACPDU来建立链路聚合。
  • 在被动模式下,网络设备只接收LACPDU,并根据请求进行相应的回应。被动模式的设备通常不主动。

若动态聚合组成员端口LACP工作模式为被动模式,且对端也是,则两端都不发送LACPDU。若双方任意一端LACP的工作模式为主动模式,则成员端口间LACPDU可以交互。

3.LACP超时模式

LACP超时模式包括长超时和短超时。

  • 长超时模式是慢速(30秒周期)发送LACPDU,且长超时为90秒超时。
  • 短超时模式是快速(1秒周期)发送LACPDU,且短超时为3秒超时。

默认LACP的超时时间模式为长超时,即发送周期为30秒发送一个LACP协议报文,且超过90秒未收到对端LACP协议报文即判定协商失败。

三、链路聚合带来什么好处?

  • 增加链路带宽链路聚合能够增加网络带宽。链路聚合通过将多个物理端口聚合在一起形成一个逻辑上的接口,链路聚合接口的最大带宽可以达到各成员接口带宽之和;从而实现对等的物理链路同时成倍地增加带宽。
  • 提高网络的可靠性链路聚合实现链路冗余备份。配置链路聚合的情况下,当某条活动链路出现故障时,流量可以切换到其他可用的成员链路上,从而提高链路聚合接口的可靠性,实现链路的冗余。比如在跨槽位的链路聚合情况下,可以很好地避免单槽位故障引起的业务中断。
  • 实现流量的负载分担在一个链路聚合组内,流量可以基于一定的规则分担到所有成员链路中,比如五元组包括源IP、目的IP等,从而实现出/入负荷在各成员链路上的负载分担,减少单一链路压力。

四、链路聚合有哪些使用场景?

1.固网家庭宽带&园区网络接入场景

随着固网业务包括家宽,IPTV等流量增加,OLT的接入带宽压力逐步增大,通过链路聚合可以实现快速和便利的宽带成倍增加。另外园区网络接入流量增加也存在一样迅速增长情况,链路聚合也大量应用于园区网络交换机连接上。

浅谈链路聚合,你学会了吗?图片

2.移动承载接入场景

随着5G业务比如数据,高清视频业务的迅猛增长,移动承载网络对大带宽和高可靠性的要求也明显提高,实际上链路聚合技术大量的部署在移动回传IPRAN网络,既实现10GE/100GE链路带宽扩容,还保证链路冗余,实现高可靠性的业务保障。

浅谈链路聚合,你学会了吗?图片

3.BRAS网络场景

BRAS是固网业务认证鉴权的核心设备,无论是接入用户流量增加,还是链路安全可靠性保障,都有非常高的要求。链路聚合在BRAS网络的部署,具备带宽扩容的灵活性,可以随着接入用户流量增加,增加链路聚合组成员,从而动态调整链路聚合链路的带宽;同时通过链路聚合跨板捆绑,保障了每个单板数以万计的用户的可靠性。

浅谈链路聚合,你学会了吗?图片

4.数据中心场景

数据中心比如5G电信云网络,对于移动业务来说是最核心和关键的网络,链路聚合的大量应用,保证了移动业务在数据中心的带宽扩容,链路可靠性,同时链路聚合的负荷分担可以有效利用链路组的各个成员链路,保证了效率。

浅谈链路聚合,你学会了吗?图片

原文地址:https://mp.weixin.qq.com/s/s4kCESoj2osbv86_yBkHhg

延伸 · 阅读

精彩推荐
  • 编程技术Windows 系统下的 Git 2.7 最新下载及安装教程图文详解

    Windows 系统下的 Git 2.7 最新下载及安装教程图文详解

    这篇文章主要介绍了Windows 系统下的 Git 2.7 最新下载及安装教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴...

    Oblning3742020-09-03
  • 编程技术完整的数据分析全流程,不容错过!

    完整的数据分析全流程,不容错过!

    采集到细节数据后,可以计算每日的收支情况,如下表所示。这个过程叫:数据计算(俗称:取数)。取数的复杂程度,和数据计算的复杂度有直接关系,...

    接地气的陈老师10372024-01-31
  • 编程技术VS2019中QT连接及使用的方法步骤

    VS2019中QT连接及使用的方法步骤

    这篇文章主要介绍了VS2019中QT连接及使用的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们...

    57one5522020-08-04
  • 编程技术vscode入门教程之页面启动与代码调试

    vscode入门教程之页面启动与代码调试

    VScode是微软推出的一款轻量级的编辑器,采用了和VS相同的UI界面。今天小编给大家带来一篇如何使用vscode来进行最基本的工作的小教程,希望大家能够喜欢...

    一叶、知秋3972020-08-21
  • 编程技术Git版本管理总有问题,建议使用Git Flow

    Git版本管理总有问题,建议使用Git Flow

    Git 是用于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的...

    今日头条5082020-11-23
  • 编程技术笛卡尔乘积介绍

    笛卡尔乘积介绍

    笛卡尔(Descartes)乘积又叫直积。假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1), (b,2)}...

    编程技术网10072022-08-28
  • 编程技术10种编程语言实现Y组合子

    10种编程语言实现Y组合子

    Y组合子是Lambda演算的一部分,也是函数式编程的理论基础。它是一种方法/技巧,在没有赋值语句的前提下定义递归的匿名函数。即仅仅通过Lambda表达式这...

    阿里技术7872021-04-13
  • 编程技术分享10个程序员常用的的代码文本编辑器

    分享10个程序员常用的的代码文本编辑器

    通常操作系统和软件开发包中都包含文本编辑器,可以用来编辑配置文件,文档文件和源代码,这里分享一下程序员常用的代码编辑器,需要的朋友可以参考...

    码农网4102020-08-01