链路聚合技术详解
链路聚合技术详解
一、什么是链路聚合?
链路聚合(Link Aggregation)是指将具有相同传输介质类型、相同传输速率的物理链路段“捆绑”在一起,在逻辑上看起来好像是一条链路。链路聚合又称中继(Trunking),它允许交换机之间或交换机和服务器之间的对等的物理链路同时成倍地增加带宽。 链路聚合模式分为静态聚合和动态聚合。
01、静态聚合
静态聚合也称静态Trunk(On模式),用户需要手工配置聚合组号和端口成员,将多个物理端口直接加入聚合组,形成一个逻辑端口。 静态聚合不运行LACP协议,由于无法检测到链路对端端口的状态,如果对端端口down,但只要本端端口up,仍然会往这个对端端口转发流量,可能会造成部分业务中断。
02、动态聚合
动态聚合运行基于IEEE802.3 ad的LACP协议。LACP(Link Aggregation Control Protocol)即链路聚合控制协议,是IEEE 802.3ad描述的标准协议。 LACP是一种实现链路动态汇聚的协议,简单的说,将多个物理端口动态聚合到Trunk组,以提高带宽和冗余性的协议。 LACP允许交换机之间通过报文进行协商,以确定哪些物理链路可以捆绑在一起,并设置相应的参数,如优先级、活动状态等。当多个物理链路捆绑成一个逻辑链路后,它们将共享相同的IP地址和MAC地址,从而形成一个逻辑上的高速通道。
二、LACP是如何工作的?
01、LACP动态模式聚合组建立过程
LACP通过LACPDU(链路聚合控制协议数据单元 Link Aggregation Control Protocol Data Unit )与对端交互信息。开启某端口的LACP协议后,LACPDU报文中包含设备的系统优先级、MAC地址、接口优先级、接口号和操作Key等信息,对端接收到这些信息后,将这些信息与其它端口所保存的信息比较以选择能够汇聚的端口,双方对端口加入或退出某个动态聚合组达成一致,确定承担业务流量的链路。
1、两端互相发送LACPDU报文
在两端设备创建链路聚合组,配置LACP模式,并配置成员接口。此时成员接口上便启用了LACP协议,两端互发LACPDU报文。LACPDU报文中包含设备的系统优先级、MAC地址、接口优先级、接口号和操作Key等信息。
2、成员接口加入链路聚合组
两端设备均会收到对端发来的LACPDU报文。两端查看并记录对端信息,将这些信息与聚合组的其它成员接口所保存的信息比较,以选择能够加入的链路聚合组。
3、确定聚合组活动接口
根据接口优先级来选择链路聚合组中的活动接口,从这些活动链路中以负载分担的方式转发数据。
02、LACP工作模式
LACP工作模式可分为主动模式和被动模式。
在主动模式下,网络设备主动发送LACPDU,并等待对端设备的回应。如果对端设备也支持LACP,并且配置为被动模式,则会回应LACPDU来建立链路聚合。
在被动模式下,网络设备只接收LACPDU,并根据请求进行相应的回应。被动模式的设备通常不主动。
若动态聚合组成员端口LACP工作模式为被动模式,且对端也是,则两端都不发送LACPDU。若双方任意一端LACP的工作模式为主动模式,则成员端口间LACPDU可以交互。
03、LACP超时模式
LACP超时模式包括长超时和短超时。
长超时模式是慢速(30秒周期)发送LACPDU,且长超时为90秒超时。
短超时模式是快速(1秒周期)发送LACPDU,且短超时为3秒超时。
默认LACP的超时时间模式为长超时,即发送周期为30秒发送一个LACP协议报文,且超过90秒未收到对端LACP协议报文即判定协商失败。
三、链路聚合带来什么好处?
增加链路带宽
链路聚合能够增加网络带宽。链路聚合通过将多个物理端口聚合在一起形成一个逻辑上的接口,链路聚合接口的最大带宽可以达到各成员接口带宽之和;从而实现对等的物理链路同时成倍地增加带宽。
提高网络的可靠性
链路聚合实现链路冗余备份。配置链路聚合的情况下,当某条活动链路出现故障时,流量可以切换到其他可用的成员链路上,从而提高链路聚合接口的可靠性,实现链路的冗余。
比如在跨槽位的链路聚合情况下,可以很好地避免单槽位故障引起的业务中断。
实现流量的负载分担
在一个链路聚合组内,流量可以基于一定的规则分担到所有成员链路中,比如五元组包括源IP、目的IP等,从而实现出/入负荷在各成员链路上的负载分担,减少单一链路压力。
四、链路聚合配置方法及步骤
以下是链路聚合的配置方法及步骤:
创建聚合组。首先,需要创建一个链路聚合组。这通常通过在交换机上配置一个特定的命令来完成,例如,在华为设备上使用“link-aggregation group 1 mode manual”命令来创建一个手动模式的聚合组。
将物理接口加入聚合组。将需要聚合的物理接口加入到创建的聚合组中。例如,将特定的以太网端口加入到聚合组1中。
配置聚合组的参数。根据需要配置聚合组的参数,如服务类型、负载均衡算法等。
验证和测试。配置完成后,应验证链路聚合是否正常工作。这可以通过检查物理链路的连接状态、使用网络测试工具来验证流量是否在多个链路之间平衡分布。
故障排除和维护。定期检查链路聚合的状态,确保所有物理链路正常运行。当链路出现故障时,应确保链路聚合能够自动切换到其他可用链路。
对于LACP模式的链路聚合,还需要在两端设备上配置LACP,并确保两端的配置一致,以便进行协商和建立聚合。
五、VRRP基本概念
如图1所示,HostA通过Switch1双归到SwitchA和SwitchB。在SwitchA和SwitchB上配置VRRP备份组,对外体现为一台虚拟路由器,实现冗余备份。
图1 VRRP备份组示意图
在如图1所示的网络中部署VRRP协议,下面结合该图介绍VRRP协议的基本概念:
VRRP路由器(VRRP Router):运行VRRP协议的设备。
虚拟路由器(Virtual Router):又称VRRP备份组,由一个Master设备和多个Backup设备组成,被当作一个共享局域网内主机的缺省网关。如SwitchA和SwitchB共同组成了一个虚拟路由器。
Master路由器(Virtual Router Master):承担转发报文任务的VRRP设备,如SwitchA。
Backup路由器(Virtual Router Backup):一组没有承担转发任务的VRRP设备,当Master设备出现故障时,它们将通过竞选成为新的Master设备,如SwitchB。
VRID:虚拟路由器的标识。如SwitchA和SwitchB组成的虚拟路由器的VRID为1。
虚拟IP地址(Virtual IP Address):虚拟路由器的IP地址,一个虚拟路由器可以有一个或多个IP地址,由用户配置。如SwitchA和SwitchB组成的虚拟路由器的虚拟IP地址为10.1.1.10/24。
IP地址拥有者(IP Address Owner):如果一个VRRP设备将虚拟路由器IP地址作为真实的接口地址,则该设备被称为IP地址拥有者。如果IP地址拥有者是可用的,通常它将成为Master。如SwitchA,其接口的IP地址与虚拟路由器的IP地址相同,均为10.1.1.10/24,因此它是这个VRRP备份组的IP地址拥有者。
虚拟MAC地址(Virtual MAC Address):虚拟路由器根据VRID生成的MAC地址。一个虚拟路由器拥有一个虚拟MAC地址,格式为:00-00-5E-00-01-{VRID}(VRRP for IPv4)或00-00-5E-00-02-{VRID}(VRRP for IPv6)。当虚拟路由器回应ARP请求时,使用虚拟MAC地址,而不是接口的真实MAC地址。如SwitchA和SwitchB组成的虚拟路由器的VRID为1,因此这个VRRP备份组的MAC地址为00-00-5E-00-01-01。