了解 ACX 系列路由器上的以太网链路聚合
以太网链路聚合是一种将多个全双工同速点到点以太网链路捆绑或组合到单个虚拟链路中来线性增加带宽和提高以太网链路弹性的机制。虚拟链路接口称为链路聚合组 (LAG) 或聚合以太网 (AE) 接口。LAG 可以平衡聚合以太网捆绑包中跨成员链路的流量,并有效地增加上行链路带宽。链路聚合的另一个优势是可用性提高,因为 LAG 由多个成员链路组成。如果一个成员链路发生故障,LAG 将继续在剩余链路上承载流量。
ACX 系列路由器在具有 100 毫秒或更高连续性检查间隔的聚合以太网接口上支持连接故障管理 (CFM)。
ACX5048 和 ACX5096 路由器在聚合以太网接口上支持连接故障管理 (CFM),连续性检查间隔为 1 秒或更高。
与其他 ACX 系列路由器相比,ACX5048 和 ACX5096 路由器的以太网选项配置有所不同。有关更多信息,请参阅 ACX 系列的第 2 层新一代模式。
在 ACX 系列路由器上,最多可创建 128 个 AE 接口,每个 AE 接口最多可容纳 8 个物理接口。可以在机箱上的 PIC 和固定端口之间创建 AE 接口。
在 ACX5048 和 ACX5096 路由器上,最多可创建 64 个 AE 接口,每个 AE 接口最多可容纳 16 个物理接口。
ACX 系列路由器不支持聚合以太网接口的统计信息。但是,可以检索成员接口的统计信息。
要配置聚合以太网接口:
指定要创建的聚合以太网接口数量:
[edit chassis] user@host#
set aggregated-devices ethernet device-count number
指定要标记为“up”的聚合以太网接口 (aex) 的最小链路数,即定义的捆绑包:
注:默认情况下,对于标记为“up”的捆绑包,只需有一个链路正常运行。
[edit interfaces] user@host#
set ae0 aggregated-ether-options minimum-links number (1 — 8)
指定聚合以太网捆绑包的链路速度:
[edit interfaces] user@host#
set ae0 aggregated-ether-options link-speed speed (10g | 1g | 100m)
指定要包含在聚合以太网捆绑包中的成员:
[edit interfaces] user@host#
set ge-1/0/0 gigether-options 802.3ad ae0
user@host#set ge-1/0/1 gigether-options 802.3ad ae0
为聚合以太网捆绑包指定接口家族:
[edit interfaces] user@host#
set ae0 unit 0 family inet address ip-address
以上过程会创建一个 AE 接口,并且它们已启动并准备好运行在 AE 逻辑接口上定义的服务。
AE 接口可以是 VLAN 标记的,也可以是未标记的。您可以在 AE 接口上配置灵活 VLAN 标记、本机 VLAN-ID 和双标记。
只要有配置更改(AE 接口改为千兆以太网接口,反之亦然),都需要删除现有配置,执行提交,然后添加新配置,然后再次提交配置。
要删除聚合以太网接口:
删除聚合以太网配置。
这一步将接口状态更改为关闭,并删除与 aex 相关的配置语句。
[edit] user@host#
delete interfaces aex
从设备计数中删除接口。
[edit] user@host#
delete chassis aggregated-devices ethernet device-count
对于聚合以太网接口,您可以配置链路聚合控制协议 (LACP)。LACP 是一种捆绑多个物理接口以形成一个逻辑接口的方法。您可以配置 VLAN 标记的聚合以太网和未标记的聚合以太网,且支持或不支持 LACP。
负载平衡
JUNOS 基于数据包中的第 3 层信息,在 AE 捆绑包中跨成员链路的流量进行负载均衡。您可以全局配置哪些字段用于 inet 和 MPLS 的负载平衡
在 ACX 系列路由器上,INET 系列旋钮在 PIC 级别可用。您可以配置要用于负载平衡的 inet 系列第 3 层和第 4 层字段。对于网桥系列,用于负载平衡的第 2 层、第 3 层和第 4 层字段。
ACX 系列路由器还支持使用第 2 层源 MAC 地址和/或目标 MAC 地址跨成员链路进行负载平衡。这可以在层级进行 [edit forwarding-options hash-key family multiservice]
配置。第 2 层源 MAC 地址和目标 MAC 地址用作哈希密钥以实现负载平衡。
[edit] forwarding-options { hash-key { family multiservice { destination-mac; source-mac; } } }
对于 IP 第 2 层数据包,仅 IP 字段用于跨成员链路的负载平衡。源 MAC 地址和目标 MAC 地址不用于负载平衡。
对于非 IP 第 2 层数据包,源 MAC 地址或目标 MAC 地址均用作哈希密钥以实现负载平衡。
如果要基于第 2 层字段进行散列,则需要配置
multiservice
。如果要基于第 3 层和第 4 层字段进行散列,则需要配置
family (inet | inet6)
LACP 监控
参与者和合作伙伴之间进行 LACP 交换。角色是 LACP 交换中的本地接口。合作伙伴是 LACP 交换中的远程接口。
LACP 在 IEEE 802.3ad( 多链路分段聚合)中定义。
LACP 旨在实现以下目标:
自动添加和删除指向聚合捆绑包的单个链接,无需用户干预
链路监控,以检查捆绑包的两端是否连接到了正确的组
LACP 的 Junos OS 实施提供链路监控,但不会自动添加和删除链路。
LACP 监控可以是分布式的,也可以是集中式的。默认为分布式,可以通过使用 LACP 协议配置集中式旋钮来覆盖。参与者和合作伙伴之间进行 LACP 交换。角色是 LACP 交换中的本地接口。合作伙伴是 LACP 交换中的远程接口。
默认情况下,LACP 不会启动 LACP PDU 交换。LACP 数据包可配置为以每秒 1 个数据包的速率或低速 1 个数据包的速率交换 30 秒的 LACP PDU。
LACP 模式可以是主动的,也可以是被动的。如果执行方和合作伙伴均处于被动模式,则它们不会交换 LACP 数据包,这将导致聚合以太网链路不正常。如果执行方或合作伙伴处于活动状态,则它们会交换 LACP 数据包。默认情况下,在聚合以太网接口上,LACP 处于关闭状态。如果配置了 LACP,则默认处于被动模式。要开始传输 LACP 数据包并响应 LACP 数据包,必须在活动模式下配置 LACP。
要启用 LACP 主动模式,请在 lacp
层级包括语句 [edit interfaces interface-name aggregated-ether-options]
,并指定 active 选项:
[edit interfaces interface-name aggregated-ether-options] lacp { active; }
只有当系统以主动或被动 LACP 模式配置系统时,系统中才会存在 LACP 进程。
要恢复默认行为,请在 lacp
层级包括语句 [edit interfaces interface-name aggregated-ether-options] ,并指定 passive 选项:
[edit interfaces interface-name aggregated-ether-options] lacp { passive; }
链路保护
可以在 AE 接口上配置链路保护,以使用 LACP 提供 1:1 的链路弹性。主链路和备用链路可以在一个 AE 捆绑包中配置。主链路用于所有传输流量和主机生成的流量。当主链路发生故障时,将使用备份链路。
只有当 AE 捆绑包的成员链路(一个主链路和另一个备份链路)不超过 2 个时,才支持链路保护。默认情况下,LACP 在恢复链路保护模式下工作,可配置为在非恢复模式下工作。
并非所有 ACX 系列路由器都支持不带 LACP(AE 接口上的静态链路保护)。当 AE 捆绑包上配置的 LACP 时,链路保护按预期工作。
为聚合以太网接口配置链路保护
聚合以太网接口支持链路保护,以确保接口上的 QoS。
要配置链路保护:
配置聚合以太网接口的选项。
user@host# edit interfaces aex aggregated-ether-options
配置链路保护模式。
[edit interfaces aex aggregated-ether-options] user@host# set link-protection
禁用聚合以太网接口的链路保护
要禁用链路保护,请发出 delete interface revert aex 配置命令。
user@host# delete interfaces aex aggregated-ether-options link-protection
了解用于对 LAG 束进行散列的算法
ACX 系列路由器使用散列算法来确定如何通过链路聚合组 (LAG) 捆绑包转发流量。
散列算法根据各种数据包字段中的值以及源端口 ID 和源设备 ID 等一些内部值做出散列决策。您可以配置散列算法使用的一些字段。
散列算法用于对进入 LAG 束的流量做出流量转发决策。
对于 LAG 束,散列算法决定了如何将进入 LAG 捆绑包的流量放置在捆绑包的成员链路上。散列算法尝试通过均衡捆绑包中成员链路上的所有传入流量负载来管理带宽。
散列算法根据各种数据包字段中的值以及源端口 ID 和源设备 ID 等一些内部值做出散列决策。散列算法使用的数据包字段因数据包的 EtherType 而异,在某些情况下,因路由器上的配置而异。散列算法可识别以下 EtherType:
IPv4
MPLS
未识别为属于上述任何 EtherType 的流量会基于第 2 层标头进行散列处理。当用户将散列模式配置为第 2 层标头时,IP 和 MPLS 流量也会基于第 2 层标头进行散列。
您可以配置散列算法用来做出流量转发决策的某些字段。但是,您无法配置散列算法如何使用标头中的某些值。
有关散列算法,请注意以下几点:
选择用于散列的字段仅基于数据包类型。这些字段不基于任何其他参数,包括转发决策(桥接或路由)或出口 LAG 捆绑配置(第 2 层或 3 层)。
相同的字段用于对单播和组播数据包进行散列。但是,单播和组播数据包的散列方式不同。
表 1 介绍了按第 2 层服务进行散列的字段。该表根据在第 2 层服务上接收的流量类型解释了默认行为和可配置字段
流量类型 |
默认散列字段 |
可配置字段(散列密钥) |
---|---|---|
2 层 |
无 |
源 MAC 地址 目标 MAC 源 MAC 和目标 MAC |
IP |
源 IP 和目标 IP |
源 MAC 地址 目标 MAC 源 MAC 和目标 MAC |
MPLS |
MPLS 标签 1 和 MPLS 标签 2 |
源 MAC 地址 目标 MAC 源 MAC 和目标 MAC |
表 2 介绍了按第 3 层服务进行散列的字段。该表根据在第 3 层服务上接收的流量类型解释了默认行为和可配置字段
流量类型 |
默认散列字段 |
可配置字段(散列密钥) |
---|---|---|
IP |
源 IP 和目标 IP |
第 3 层(源 IP 和/或|目标 IP) 第 4 层(UDP/TCP 源端口和 UDP/TCP 目标端口) |