博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

H3C IRF MAD检测原理及相关问题验证

Posted on 2019-03-06 10:56  skytwen  阅读(11456)  评论(0编辑  收藏  举报

一、IRF简介

  IRF(Intelligent Resilient Framework,智能弹性架构)是H3C自主研发的软件虚拟化技术。它的核心思想是将多台设备通过IRF物理端口连接在一起,进行必要的配置后,虚拟化成一台“分布式设备”。使用这种虚拟化技术可以集合多台设备的硬件资源和软件处理能力,实现多台设备的协同工作、统一管理和不间断维护。

  

二、多IRF冲突检测(MAD功能)

2.1 机制介绍

  IRF链路故障会导致一个IRF变成两个新的IRF。这两个IRF拥有相同的IP地址等三层配置,会引起地址冲突,导致故障在网络中扩大。为了提高系统的可用性,当IRF分裂时我们就需要一种机制,能够检测出网络中同时存在多个IRF,并进行相应的处理尽量降低IRF分裂对业务的影响。MAD(Multi-Active Detection,多Active检测)就是这样一种检测和处理机制。它主要提供以下功能:

(1)分裂检测

  通过LACP(Link Aggregation Control Protocol,链路聚合控制协议)、BFD(Bidirectional Forwarding Detection,双向转发检测)或者免费ARP(GratuitousAddress Resolution Protocol)来检测网络中是否存在多个IRF。

(2)冲突处理

  IRF分裂后,通过分裂检测机制IRF会检测到网络中存在其它处理Active状态(表示IRF处于正常工作状态)的IRF。冲突处理会让Master成员编号最小的IRF继续正常工作(维持Active状态),其它IRF会迁移到Recovery状态(表示IRF处于禁用状态),并关闭Recovery状态IRF中所有成员设备上除保留端口以外的其它所有物理端口(通常为业务接口),以保证该IRF不能再转发业务报文。(缺省情况下,只有IRF物理商品是保留商品,如果要将其它端口,比如用于远程登录的商品,也作为保留端口,需要使用命令行进行手工配置。

(3)MAD故障恢复

  IRF链路故障导致IRF分裂,从而引起多Active冲突。因此修复故障的IRF链路,让冲突的IRF重新合并为一个IRF,就能恢复MAD故障。如果在MAD故障恢复前,处于Recovery状态的IRF也出现了故障,则需要将故障IRF和故障链路都修复后,才能让冲突的IRF重新合并为一个IRF,恢复MAD故障;如果在MAD故障恢复前,故障的是Active状态的IRF,则可以通过命令行先启用Recovery状态的IRF,让它接替原IRF工作,以便保证业务尽量少受影响,再恢复MAD故障。

2.2 原理介绍

  IRF支持的MAD检测方式有:LACP MAD检测、BFD MAD检测和ARP MAD检测。三种检测方式虽然原理不同但是功能效果相同,能够满足不同组网需求。

  • LACP MAD检测用于基于LACP的组网检测需求;
  • BFD MAD检测用于基于BFD的组网需求;
  • ARP MAD检测用于基于非聚合场合的Resilient ARP的组网检测需求。

  这三种方式独立工作,彼此之间互不干扰。因此,同一IRF内可以配置多种MAD检测方式。

2.2.1 LACP MAD

(1)LACP MAD检测原理

  LACP MAD检测是通过扩展LACP协议报文内容实现的,即在LACP协议报文的扩展字段内定义一个新的TLV(Type/Length/Value,类型/长度/值)数据域——用于交互IRF的DomainID(域编号)和ActiveD。当网络中同时存在多个IRF时(比如IRF级联的组网情况),DomainID用于区别不同的IRF。当某个IRF分裂时,ActiveID用于MAD检测,用IRF中Master设备的成员编号来表示。

  使能LACP MAD检测后,成员设备通过LACP协议报文和其它成员设备交互DomainID和ActiveID信息。

  • 当成员设备收到LACP协议报文后,先比较DomainID。如果DomainID相同,再较ActiveID;如果DomainID不同,则认为报文来自不同IRF,不再进行MAD处理。
  • 如果ActiveID相同,则表示IRF正常运行,没有发生多Active冲突;如果ActiveID值不同,则表示IRF分裂,检测到多Active冲突。

  

(2)LACP MAD检测组网要求

  LACP MAD检测方式组网中需要使用中间设备,支持LACP协议扩展功能的H3C设备都能作为中间设备。

(3)配置LACP MAD检测

  LACP MAD检测的配置步骤为:

  • 配置IRF域编号;
  • 创建聚合接口;(中间设备上也需要进行该项配置)
  • 将聚合接口的工作模式配置为动态聚合模式;(中间设备上也需要进行该项配置)
  • 在动态聚合接口下使能LACP MAD检测功能;
  • 给聚合组添加成员端口。(中间设备上也需要进行该项配置)

2.2.2 BFD MAD

  (1)BFD MAD检测原理

  BFD MAD检测是通过BFD协议来实现的。要使BFD MAD检测功能正常运行,除在三层接口下使能BFD MAD检测功能外,还需要在该接口上配置MAD地址。MAD IP地址与普通IP地址不同的地方在于MAD IP地址与成员设备是绑定的,IRF中的每个成员设备上都需要配置,且必须属于同一网段。

  • 当IRF正常运行时,只有Master上配置的MAD IP地址生效,Slave设备上配置的MAD IP地址不生效,BFD会话处于down状态;(使用display bfd session命令查看BFD会话的状态。如果Session State显示为Up,则表示激活状态;如果显示为Down,则表示处于down状态)
  • 当IRF分裂后会形成多个IRF,不同IRF中Master上配置的MAD IP地址均会生效,BFD会话被激活,此时会检测到多Active冲突。

  (2)BFD MAD检测组网要求

  BFD MAD检测方式可以使用中间设备来进行连接,也可以不使用中间设备。所有成员设备之间必须有一条BFD MAD检测链路,这些链路连接的接口必须属于同一VLAN,在该VLAN接口视图下给不同成员设备配置同一网段下不同IP地址。

  (3)配置BFD检测

  BFD MAD检测功能的配置顺序为:

  • 创建一个新VLAN,专用于BFD MAD检测;(如果用到中间设备组网,中间设备上也需要进行该项配置)
  • 确定使用哪些物理端口用作BFD MAD检测(每台成员设备上至少一个),并将这些端口都添加到BFD MAD检测专用VLAN中;(如果用到中间设备组网,中间设备上也需要进行该项配置)
  • 为BFD MAD检测专用VLAN创建VLAN接口,在接口下使能BFD MAD检测功能,并配置MAD IP地址。

2.2.3 ARP MAD

  (1)ARP MAD检测原理

  ARP MAD检测是通过扩展免费ARP协议报文内容实现的,即使用免费ARP协议报文中未使用的字段来交互IRF的DomainID和ActiveID。DomainID和ActiveID的定义及比较方法同LACP MAD检测相同。使能ARP MAD检测后,成员设备可以通过免费ARP协议报文和其它成员设备交互DomainID和ActiveID信息。ARP MAD适用于使用MSTP双上行的组网。

  • 当IRF正常运行时,MSTP功能会阻塞某条链路,使免费ARP报文无法到达另一台成员设备,不会发生多Active冲突。
  • 当IRF分裂后会形成两个或个IRF,MSTP将重新计算拓扑,原先阻塞的链路被打开,不同IRF中的成员设备便可以接收到另一个IRF发送的免费ARP协议报文,从而检测到多Active冲突。

  (2)ARP MAD检测组网要求

  ARP MAD检测方式可以使用中间设备来进行连接,也可以不使用中间设备。成员设备之间通过两台上行设备交互免费ARP报文,Device、Master和Slave上都要配置生成树功能,以防止形成环路。

三、实验

  参考本博客另外两篇文章:

  • H3C交换机IRF典型配置举例LACP MAD检测方式:https://www.cnblogs.com/sky5hat/p/10477569.htm

  • H3C BFD MAD检测方式的IRF典型配置举例:https://www.cnblogs.com/sky5hat/p/10477308.html

四、相关问题验证

1)IRF合并时,两台IRF会遵照角色选举的规则进行竞选,竞选失败方IRF的所有成员设备需要重启才能加入获胜方IRF,在此期间,竞选获胜的设备需不需要重启?竞选失败方自动重启有什么条件?

答:经验证竞选获胜的设备不需要重启,竞选失败方需配置irf auto-merge enable后才会自动重启,否则需要用户根据系统提示手工完成重启。

2)两个S12500堆叠,启用LACP MAD检测或者BFD检测,IRF堆叠链路故障导致IRF分裂,slave设备进入recovery状态,手工重启处于recovery状态的设备后会是什么状态?

答:经验证,IRF链路不修复,处于recovery状态的设备通过console口手动重启,重启后会再一次进入recovery状态。
LACP MAD或者BFD MAD效果一样,重启后MAD检测机制仍然在每一个设备上生效,不会因为分裂消失。