冗余组
以太网冗余接口
1、简介
以太网冗余接口(Redundant Ethernet,Reth)是一种三层虚拟接口。一个以太网冗余接口中包含两个成员接口,使用以太网冗余接口可以实现这两个接口之间的冗余备份。
2、以太网冗余接口的工作原理
以太网冗余接口的成员接口有两种状态:
- 激活状态:能够收发报文。
- 非激活状态:不能收发报文。
任意时刻,同一个以太网冗余接口内只有一个成员接口处于激活状态。
当两个成员接口的物理状态均为up时,优先级较高的成员接口处于激活状态,优先级较低的成员接口处于非激活状态。优先级可通过命令行配置。
当激活接口的链路变为down时,处于非激活状态的接口会自动激活,接替原激活接口收发报文,实现接口间的备份。
在上、下行设备看来,与其连接的是以太网冗余接口,学习到的是以太网冗余接口的MAC地址。成员接口的激活状态发生变化,不会影响上、下行设备。
冗余组
1、冗余组简介
冗余组功能仅在IRF模式下支持。在IRF组网环境中,冗余组用来实现业务报文的接收、处理、发送都在同一台成员设备上进行。
2、冗余组工作原理
一个冗余组包含:
- 冗余组节点。一个冗余组必须且最多包含两个冗余组节点。一个为主节点,一个为备节点。每个冗余组节点和一台IRF成员设备绑定。
- 冗余组成员:包括物理以太网接口、以太网冗余接口和备份组。冗余组成员部署在和冗余组节点绑定的IRF成员设备上。
冗余组节点的主、备状态决定冗余组成员的工作状态。正常情况下,位于主节点上的冗余组成员处于工作状态,位于备节点上的冗余组成员处于冗余备份状态。
当主节点故障,主节点变为备节点,冗余组会同时禁用原主节点上的成员,让位于新主节点上的成员工作。从而确保业务报文的接收、处理、发送都在同一台物理设备上进行,两台设备形成设备级备份。
如图所示,冗余组进行流量切换的步骤大致如下:
(1) 正常情况下,流量通过Device A转发,Device A上NAT等业务的表项和数据备份到Device B。
(2) Device A的上行接口故障。
(3) 冗余组关闭Device A的下行接口。
(4) 流量迁移到Device B,通过Device B转发。
3、冗余组节点的状态
冗余组节点有两个状态:主和备。和主节点绑定的IRF成员设备处理业务、转发报文。
冗余组节点的主备状态由以下因素决定:
-
当冗余组节点绑定的IRF成员设备均能正常工作时:
- 优先级高的为主节点。优先级可通过命令行配置。
- 当两个节点的优先级相等时,节点编号小的为主节点。节点编号可通过命令行配置。
-
当冗余组节点只绑定了一个IRF成员设备或者绑定的两个IRF成员设备中有一个不能正常工作时,则与能正常工作的IRF成员设备绑定的节点成为主节点。节点能否正常工作由监控机制决定。
4、冗余组成员
冗余组成员包括物理以太网接口、以太网冗余接口和备份组。
- 物理以太网接口和以太网冗余接口均用于实现流量迁移。两者适用的组网环境不同,根据实际环境选择使用一种即可。
接口类型 | 使用场景 | 其它说明 |
---|---|---|
物理以太网接口 | 适用于上行和下行设备运行动态路由协议的场景 | 加入冗余组的物理以太网接口的类型可以是二层以太网接口、三层以太网接口 |
以太网冗余接口 | 适用于上行和下行设备没有运行动态路由协议的场景 | 以太网冗余接口的成员接口的类型可以是三层以太网接口、三层聚合接口及上述接口的子接口 |
- 备份组用于实现两台设备间的业务备份。备份组下可以绑定两个CPU,这两个CPU上的数据进行备份。
5、冗余组成员区别
- 物理以太网接口
冗余组下可以配置节点,节点下可以绑定物理以太网接口。要使冗余组的流量正常切换,需要绑定两组物理以太网接口:
* 一组以太网接口和冗余组的主节点绑定,这组接口必须位于主节点上。该组接口至少需要包含两个物理以太网接口,分别用于上行和下行。
* 一组以太网接口和冗余组的备节点绑定,这组接口必须位于备节点上。该组接口至少需要包含两个物理以太网接口,分别用于上行和下行。
正常情况下,只有位于主节点上的这组接口转发报文,备节点上的这组接口作为主节点上接口组的备份。这两组接口的工作状态由冗余组节点的主备状态决定。如图2-2所示,正常情况下,流量通过主节点上的物理以太网接口(Interface A1和Interface A2)转发,不通过备节点上的物理以太网接口(Interface B1和Interface B2)转发。当主节点上的物理以太网接口(Interface A1)故障,备节点会立即切换成主节点接替原主节点工作,冗余组会关闭原主节点上的其它成员接口,使用新主节点上的成员接口转发报文,如图2-3所示。
图2-2 正常情况下,冗余组节点的成员接口工作原理示意图
图2-3 上行接口故障时,冗余组节点的成员接口工作原理示意图
- 以太网冗余接口
冗余组下可以配置以太网冗余接口,以太网冗余接口拥有两个成员接口,这两个成员接口分别位于两个冗余组节点上。一个冗余组需要绑定两个以太网冗余接口,一个用于上行数据迁移,一个用于下行数据迁移。
以太网冗余接口和冗余组节点的联动原理为:冗余组中的主节点正常工作时,以太网冗余接口下优先级高的成员接口处于激活状态。冗余组发生倒换,备节点切换成主节点接替原主节点工作时,以太网冗余接口也发生倒换,让以太网冗余接口下优先级高的成员接口处于非激活状态。
如图2-4所示,正常情况下,只有主节点上的以太网冗余接口的成员接口转发报文,备节点上以太网冗余接口的成员接口被冗余组模块关闭。当主节点上以太网冗余接口的成员接口故障,备节点会立即切换成主节点接替原主节点工作,冗余组会关闭原主节点上其它以太网冗余接口的成员接口,使用新主节点上所有以太网冗余接口的成员接口转发报文,如图2-5所示。
图2-4 正常情况下,冗余组和冗余接口联动原理示意图
图2-5 上行口故障时,冗余组和冗余接口联动原理示意图
- 备份组
冗余组下可以配置备份组作为成员,备份组绑定了主、备两个CPU成员,其中一个处于激活状态(处理业务报文),另一个处于非激活状态(不工作)。
当用户开启业务模块的业务备份功能后,设备会将激活状态的CPU成员上的业务数据备份到非激活状态的CPU成员上,从而协助实现这两个CPU上业务(比如NAT)的备份。
备份组和冗余组节点的联动原理为:
(1) 冗余组中的主节点正常工作时,备份组里的主CPU成员处于激活状态。
(2) 冗余组发生倒换,备节点切换成主节点接替原主节点工作时,备份组也发生倒换,让备份组的备CPU成员处于激活状态。
(3) 冗余组还能通过流量引导来保证倒换前主CPU成员处理的流量,倒换后会交给同一备份组中的备CPU成员处理,从而保证倒换前后,业务处理的连续性。
6、冗余组的倒换/倒回机制
冗余组的倒换是指系统检测到冗余组的主节点故障,备节点会立即切换成主节点,接替原主节点工作。通过和物理以太网接口、以太网冗余接口以及备份组联动,系统会将流量和业务迁移到新的主节点上处理。
冗余组的倒回是指原主节点故障恢复,系统将流量和业务迁移到原主节点上处理。
根据触发条件不同,冗余组的倒换/倒回机制不同,分为两种:
- 自动倒换/倒回:和Track联动来触发倒换和倒回。
- 手工倒换/倒回:由命令行触发倒换和倒回。
7、自动倒换/倒回定时器
- 保持定时器
当网络不稳定,监测接口/链路状态频繁改变,会导致Track项状态在短时间内频繁改变,从而导致冗余组不断地响应主备倒换事件。
使用保持定时器可以避免这种情况的发生。当节点完成主备倒换后,系统启动保持定时器。在保持时间内,不允许再次发生主备倒换。
- 倒回定时器
当冗余组内优先级高的节点倒回条件就绪时(譬如故障恢复),会触发倒回事件,并启动倒回定时器。由于需要整体倒回,在冗余组倒回的过程中会同时触发很多事件(比如接口状态变化等),这些事件的处理需要时间。
倒回定时器能够为冗余组提供一段时间,让节点准备完毕后,再将业务从优先级低的节点倒换到优先级高的节点。
8、 自动倒换/倒回机制
冗余组通过和Track联动来实现自动倒换和倒回。
每个冗余组节点都有权重,缺省值为255,每个冗余组节点必须关联至少一个Track项,每个Track项对应一个权重增量。
当Track项变为NotReady或Negative状态时,冗余组节点用当前权重减去对应的权重增量获得新的当前权重。
当Track项变为Positive时,冗余组节点用当前权重加上对应的权重增量获得新的当前权重。当前权重小于或等于0时,则认为该节点故障,无法正常工作,触发冗余组的倒换/倒回。
如果是将业务从优先级高的节点倒换到优先级低的节点,则系统收到倒换请求后,等到保持定时器超时后,进行主备倒换。
如果是优先级高的节点故障恢复,需要将业务从优先级低的节点倒回,则系统收到整体倒回请求后,等到保持定时器超时后,认为倒回条件就绪,并等到倒回定时器超时后,再进行倒回。
若Track模块尚未启动,则节点绑定的Track项状态始终为Positive。关于Track的详细介绍请参见“网络管理和监控配置指导”中的“Track”。
9、手工倒换/倒回机制
如果两个节点均能正常工作,但用户需要更换主节点上的硬件,此时,可手工触发倒换,让业务迁移到优先级低的节点。
当两个节点均能正常工作,但用户未配置Track项关联接口时,则系统不能自动倒回,可手工触发倒回,让业务迁移到优先级高的节点。
如果两个节点均能正常工作,但用户将倒回定时器配置为0,则不允许自动倒回,但可以手工倒回。
备份组
1、 备份组简介
备份组用于协助特定业务模块(例如NAT、负载均衡)实现业务数据在指定CPU(又称为“节点”)间的备份,为特定业务的可靠运行提供保障。
2、备份组工作机制
一个备份组由两个节点组成,一个为主节点,一个为备节点。
- 通常情况下,主节点处于激活状态,处理业务报文;
- 备节点处于非激活状态,不处理业务报文,为主节点提供冗余备份。
- 如果主节点故障,则备节点会变成激活状态,接替主节点工作。
业务模块引用备份组,并开启业务备份功能后,业务模块会将业务数据从激活状态的节点备份到非激活状态的节点。
3、备份组分类
备份组有两种:自动备份组和手动备份组。
- 自动备份组
当安全业务板插入设备时,系统自动为每块安全业务板上的安全引擎创建一个备份组,这种备份组称为自动备份组,这个安全引擎即为自动备份组的主节点。
正常情况下自动备份组没有备节点,不进行业务备份。当设备存在多个安全引擎时,通过指定自动备份组,用户可以让业务在指定的安全引擎上运行。
当安全引擎故障时,系统会自动将流量平均分配到同一安全引擎组内的其它安全引擎上处理。
- 手动备份组
用户通过命令行创建的备份组。
手动备份组的主节点和备节点可通过命令行配置。
配置手动备份组
(1) 进入系统视图。
system-view
(2) 创建备份组,并进入备份组视图。
failover group group-name
缺省情况下,存在自动备份组(名称以AutoBackup为前缀),不存在手动备份组。
(3) 将节点加入手动备份组。
(独立运行模式)
bind slot slot-number cpu cpu-number { primary | secondary }
(IRF模式)
bind chassis chassis-number slot slot-number cpu cpu-number { primary | secondary }
缺省情况下,备份组内不存在节点。
不同备份组的主节点不能相同,同一备份组的主节点和备节点不能相同。
冗余口&冗余组&备份组
- 冗余口和冗余组结合使用,如果只配置冗余组没配置冗余口,其实冗余组的配置没什么意义。
- 备份组,如果配置了备份组,建议将冗余口和冗余组都配置上,这是标准组网推荐。
- 会话同步,开启会话同步必须要配置备份组,否则会话无法同步,如果没有备份组,防火墙不知道会话应该往哪里进行同步
- 配置了冗余组和冗余口,但是没有配置备份组的情况,此场景不推荐,因为流量是全部被引流到了主框,但是主框接收到流量之后会根据五元组进行hash,是有可能hash到备框的业务板上去的,所以看上去外部流量全部被hash到了主框,但是内部处理流量的时候,主备两台设备都会处理。
命令
操作 | 命令 |
---|---|
显示以太网冗余接口的流量统计信息 | display counters { inbound |
显示最近一个统计周期内处于up状态的接口的报文速率统计信息 | display counters rate { inbound |
显示以太网冗余接口/以太网冗余子接口的相关信息 | display interface [ reth [ interface-number |
显示以太网冗余接口的成员接口的信息 | display reth interface interface-type interface-number |
清除以太网冗余接口的统计信息 | reset counters interface [ reth [ interface-number ] ] |
显示备份组的信息 | display failover group [ group-name ] |
显示冗余组的相关信息 | display redundancy group [ group-name ] |