1.概述
IRF(Intelligent Resilient Framework,智能弹性架构)。核心思想是将多台设备通过物理 IRF 端口连接在一起,进行必要的配置后,虚拟化成一台“虚拟设备”,通过该“虚拟设备”来实现多台设备的协同工作、统一管理和不间断维护。也即IRF是一种实现网络高可用、冗余备份的技术。
注意:堆叠技术是私有技术,所以配置堆叠技术需要设备是同一系列
1. 1技术优点
- 优化网络:包括简化管理和简化网络运行。
- 简化管理:IRF 形成之后,用户通过任意成员设备的任意端口均可以登录 到整个IRF 系统,对 IRF 内所有成员设备进行统一管理。而不用物理连接到每台成员设备上分别对它们进行配置和管理。
- 简化运行:IRF 形成的虚拟设备中运行的各种协议也是作为单一设备运行的,例如路由协议会作为单一设备进行计算。省去了设备间大量协议报文的交互,简化了网络运行。
假设IRF设备左侧网络使用的是RIP路由协议,右侧网络使用的是OSPF路由协议。当Master收到邻居路由器发送过来的Update报文时,一方面它会更新本地的路由表,同时它会立即将更新的路由表项以及协议状态信息发给其它所有成员设备(其他设备收到更新报文,路由的跳数不管经过多少设备,始终为1),其它成员设备收到后会立即更新本地的路由表及协议状态,以保证IRF系统中各个物理设备上路由相关信息的严格同步。当Master故障时,新选举的Master可以无缝的接手旧Master的工作,新的Master接收到邻居路由器过来的OSPF报文后,会将更新的路由表项以及协议状态信息发给其它所有成员设备,并不会影响IRF中OSPF协议的运行。
- 高可靠性:IRF 的高可靠性体现在多个方面
- 成员设备之间 IRF 物理端口支持聚合功能, IRF 系统和上、下层设备之间的物理连接也支持聚合功能,这样通过多链路冗余备份,提高了 IRF 系统的可靠性。
- IRF 系统由多台成员设备组成, Master 设备负责 IRF 系统的运行、管理和维护, Slave 设备在作为备份的同时也可以处理业务,一旦 Master 设备故障,系统会迅速自动选举新的 Master,以保证通过 IRF 系统的业务不中断,从而实现了设备的 1:N 备份。
IRF可以跨设备配置链路备份,用户可以将不同成员设备上的物理以太网端口配置成一个聚合端口,这样即使某些端口所在的设备出现故障,也不会导致聚合链路完全失效,其它正常工作的成员设备会继续管理和维护剩下的聚合端口。进一步消除了聚合设备单点失效的问题,还极大提高全网的可用性。
IRF采用聚合技术来实现IRF端口的冗余备份。 IRF端口的连接可以由多条IRF物理链路聚合而成 ,多条IRF物理链路之间可以对流量进行负载分担,这样能够有效提高带宽,增强性能;同时,多条IRF物理链路之间互为备份,保证即使其中一条IRF物理链路出现故障(只在环形拓扑下才可以),也不影响IRF功能,从而提高了设备的可靠性。
2. 基本概念
2.1 运行模式
设备支持两种运行模式:
- 独立运行模式:处于该模式下的设备只能单机运行,不能与别的设备形成 IRF。
- IRF 模式:处于该模式下的设备可以与其它设备互连形成 IRF。两种模式之间通过命令行进行切换
2.2 角色
- Master:负责管理整个 IRF
- Slave:作为 Master 的备份设备运行。当 Master 故障时,系统会自动从 Slave 中选举一个新的 Master 接替原 Master 工作。
Master和Slave均由角色选举产生。一个IRF中同时只能存在一台Master,其它成员设备都是Slave。
2.2 IRF端口
一种专用于 IRF 的逻辑接口,分为 IRF-Port1 和 IRF-Port2,需要和 IRF 物理端口绑定之后才能生效
2.3 IRF物理端口
设备上可以用于 IRF 连接的物理端口。 IRF 物理端口可能是 IRF 专用接口、以太网接口或者光口。通常情况下,以太网接口和光口负责转发业务报文,当它们与 IRF端口绑定后就作为 IRF 物理端口。可转发包括 IRF相关的协商报文以及需要跨成员设备转发的业务报文。
在独立运行模式下,IRF 端口分为 IRF-Port1 和 IRF-Port2;在 IRF 模式下,IRF 端口分为 IRF-Portn/1和 IRF-Portn/2,其中 n 为设备的成员编号。
2.4 IRF合并
两个IRF各自已经稳定运行,通过物理连接和必要的配置,形成一个IRF。
2.5 IRF分裂
一个IRF形成后,由于IRF链路故障,导致IRF中两相邻成员设备物理上不连通,一个IRF变成两个IRF,
2.6 成员优先级
主要用于角色选举过程中确定成员设备的角色。设备的缺省优先级均为 1,优先级可以手动提高
3 IRF的形成
IRF的生命周期分为:物理连接、拓扑收集、角色选举、 IRF的管理与维护四个阶段。 成员设备之间需要先建立IRF物理连接,然后会自动进行拓扑收集和角色选举,处理成功后, IRF系统正常运行,进入IRF管理和维护阶段
3.1 IRF物理连接
3.1.1 连接介质
- 使用 IRF 专用接口作为 IRF 物理端口,则需要使用 IRF 专用线缆连接 IRF 物理端口。
- 使用以太网接口作为 IRF 物理端口,则使用交叉网线连接 IRF 物理端口即可。
- 如果使用光口,则使用光纤连接 IRF 物理端口。这种连接方式可以将距离很远的物理设备连接组成 IRF。
3.1.2 连接要求
本设备上与IRF-Port1 绑定的端口只能和邻居成员设备IRF-Port2 口上绑定的端口相连,本设备上与IRF-Port2 口绑定的端口只能和邻居成员设备IRF-Port1 口上绑定的端口相连,否则,不能形成IRF。
一个 IRF 端口可以跟一个 IRF 物理端口绑定,也可以跟多个 IRF 物理端口绑定,以提高IRF 链路的带宽以及可靠性。
3.1.3 连接拓扑
IRF的连接拓扑有两种:链形连接和环形连接,
- 相比环形连接,链形连接对成员设备的物理位置要求更低,主要用于成员设备物理位置分散的组网。
- 环形连接比链形连接更可靠。因为当链形连接中出现链路故障时,会引起 IRF 分裂;而环形连接中某条链路故障时,会形成链形连接, IRF 的业务不会受到影响。
3.2 IRF角色选举
角色选举会在拓扑变更的情况下产生,比如 IRF 建立、新设备加入、 Master 设备离开或者故障、两个 IRF 合并等。角色选举规则如下:
- 当前 Master 优先( IRF 系统形成时,没有 Master 设备, 所有加入的设备都认为自己是 Master,会跳转到第二条规则继续比较)
- 成员优先级大的优先
- 系统运行时间长的优先(信息是通过IRF Hello报文传递的)
- 桥 MAC 地址小的优先
IRF 合并的情况下,两个 IRF 会进行 IRF 竞选,竞选仍然遵循角色选举的规则,竞选失败方的所有成员设备重启后均以 Slave 的角色加入获胜方,最终合并为一个 IRF。
3.3 IRF的管理与维护
角色选举完成之后, IRF 形成,所有的成员设备组成一台虚拟设备存在于网络中,所有成员设备上的资源归该虚拟设备拥有并由 Master 统一管理。例如:
- 盒式设备虚拟化形成的IRF相当于一台框式分布式设备, Master相当于IRF的主用主控板,Slave设备相当于备用主控板(同时担任接口板的角色)
- 框式设备虚拟化形成的IRF也相当于一台框式设备,只是该虚拟的框式分布式设备拥有更多的备用主控板和接口板。 Master的主用主控板相当于IRF的主用主控板, Master的备用主控板以及Slave的主用、备用主控板均相当于IRF的备用主控板(同时担任接口板的
角色)
3.1.1 配置同步
IRF 的配置同步包括两个步骤:初始化时的批量同步和稳定运行时的实时同步。
- 批量同步
当多台设备组合形成 IRF 时,先选举出 Master 设备。 Master 设备使用自己的启动配置文件启动, Master 设备启动完成后,将配置批量同步给所有 Slave 设备,Slave 设备完成初始化, IRF 形成;
在 IRF 运行过程中,有新的成员设备加入时,也会进行批量同步。**新设备重启(新加入的设备在配置完加入时会重启,所以需要在加入前保存此前的IRF配置,否则重启后配置丢失,还是以独立的网络设备在运行,而不是IRF的成员设备)**以Slave 的身份加入 IRF, Mater 会将当前的配置(路由信息、端口vlan、端口地址)批量同步给新设备。新设备以同步过来的配置完成初始化,而不再读取本地的启动配置文件。
- 实时同步
所有设备初始化完成后, IRF 作为单一网络设备在网络中运行。用户使用 Console口或者 Telnet 方式登录到 IRF 中任意一台成员设备,都可以对整个 IRF 进行管理和配置。
Master 设备作为 IRF 系统的管理中枢,负责响应用户的登录请求,即用户无论使用什么方式,通过哪台成员设备登录 IRF,最终都是对 Master 设备进行配置。Master 设备负责将用户的配置同步给各个 Slave 设备,从而使 IRF 内各设备的配置随时保持高度统一。
实时同步可以理解为IRF形成并运行后,对IRF的某个设备进行配置,而该配置会在IRF的所有设备上进行同步。
批量同步可以理解为整个IRF还未形成并运行,是对某个设备进行配置,从而形成 或 ** 加入 **IRF
3.1.1 成员编号
在运行过程中, IRF 使用成员编号( Member ID)来标志和管理成员设备。并且IRF 中接口的编号会加入成员编号信息。例如:
- 对于盒式设备单机运行时,接口编号第一维参数的值通常为 1,加入 IRF 后,接口编号第一维参数的值会变成成员编号的值;
- 对于框式设备单机运行时,接口编号采用三维格式(如 GigabitEthernet3/0/1),加入 IRF 后,接口编号变成四维格式,第一维表示成员编号(如 GigabitEthernet2/3/0/1)。
在 IRF 中必须保证所有设备成员编号的唯一性。如果建立 IRF 时成员设备的编号不唯一(即存在编号相同的成员设备),则不能建立 IRF;如果新设备加入 IRF,但是该设备与已有成员设备的编号冲突,则该设备不能加入 IRF。所以在建立 IRF 前,需统一规划各成员设备的编号,并逐一进行手工配置,以保证各设备成员编号的唯一性。
3.1.1 IRF拓扑维护
3.1.1.1 成员加入
- 新加入的设备本身未形成 IRF(比如,新加入的设备配置了 IRF 功能,之后断电,再使用 IRF 电缆连接到已有 IRF 系统,上电重启),则该设备会被选为 Slave(根据前面的角色选择规则,重启的设备运行时长小于未重启的,因此为Slave)。新加入的设备配置完后,加入IRF时无需手动,本身就会重启,所以在加入时注意保存此前的配置,否则重启后配置会丢失,加入IRF失败。
- 加入的设备本身已经形成了 IRF(比如,新加入的设备配置了 IRF 功能,已经作为IRF 系统运行,之后使用 IRF 连接到已有 IRF 系统),此时相当于两个 IRF 合并( merge)(请注意,通常情况下,不建议使用这种方式形成 IRF)。在这种情况下,两个 IRF 会进行竞选,竞选仍然遵循角色选举的规则,竞选失败方重启后所有成员设备均以 Slave 的角色重新加入 IRF。
成员设备加入可能原因有:人为增加 IRF 系统中的成员以提高IRF系统的性能;故障恢复,当设备故障或链路故障恢复时,恢复的设备会重新加入 IRF
3.1.1.2 成员离开
- 对于邻居设备直连的情况,成员设备 A down 或者 IRF 链路 down,其直接邻居设备 B 能迅速感知设备 A 的离开(不用等到 IRF Hello 报文超时),会立即将“成员设备 A 离开”的信息广播通知给 IRF 中的其它设备。
- 对于邻居设备非直连的情况(即两成员设备中间跨接了其它设备,该设备不属于IRF),成员设备 A down 或者 IRF 链路 down,其邻居设备 B 不能迅速感知。但邻居设备 B 能够通过 IRF Hello 报文超时机制发觉设备 A 的离开,并将“成员设备A 离开”的信息广播通知 IRF 中的其它设备。
获取到离开消息的成员设备会根据本地维护的 IRF 拓扑信息表来判断离开的是 Master还是 Slave,如果离开的是 Master,则触发新的角色选举,再更新本地的 IRF 拓扑;如果离开的是 Slave,则直接更新本地的 IRF 拓扑,以保证 IRF 拓扑能迅速收敛。
3.1.2 多IRF冲突检测(MAD功能)
IRF 链路故障会导致一个 IRF 变成两个新的 IRF。这两个 IRF 拥有相同的 IP 地址等三层配置,会引起地址冲突,导致故障在网络中扩大。为了提高系统的可用性,当 IRF 分裂时我们就需要一种机制,能够检测出网络中同时存在多个 IRF,并进行相应的处理尽量降低 IRF 分裂对业务的影响。 MAD( Multi-Active Detection,多 Active 检测)就是这样一种检测和处理机制。它主要提供以下功能:
- 分裂检测:通过 LACP( Link Aggregation Control Protocol,链路聚合控制协议)、 BFD( Bidirectional Forwarding Detection,双向转发检测)或者免费 ARP( Gratuitous AddressResolution Protocol)来检测网络中是否存在多个 IRF;
- 冲突处理:当检测到网络中存在多个 IRF 时,让 Master 成员编号最小的 IRF 继续正常工作(维持 Active 状态),其它 IRF 会迁移到 Recovery 状态(表示 IRF 处于禁用状态),并关闭 Recovery状态 IRF 中所有成员设备上除保留端口以外的其它所有物理端口(通常为业务接口),以保证该 IRF 不能再转发业务报文;
- MAD 故障恢复: IRF 通过日志提示用户多 Active 冲突。此时设备会尝试自动修复 IRF 链路,如果修复失败的话,需要用户手工修复。 IRF 链路修复后,分裂的 IRF 会重新合并, Recovery状态 IRF 会自动恢复到 Active 状态,被关闭的物理端口将自动恢复转发能力。异常情况下(比如 Active 状态的 IRF 断电或者故障等),可以通过命令行启用 Recovery 状态的 IRF, Recovery状态的 IRF 会恢复到 Active 状态,被关闭的物理端口也会恢复转发能力。
IRF支持的MAD检测:LACP MAD检测、BFD MAD检测、ARP MAD检测、ND MAD检测。
LACP MAD下会将接口up最多的设备设为Active 其它的为Recovery
4.IRF报文转发原理
IRF 系统中的每个成员设备都有完整的二/三层转发能力,当它收到待转发的二/三层报文时,可以通过查询本机的二/三层转发表得到报文的出接口(以及下一跳),然后将报文从正确的出接口送出去,这个出接口可以在本机上也可以在其它成员设备上,并且将报文从本机送到另外一个成员设备是一个纯粹内部的实现,对外界是完全屏蔽的,即对于三层报文来说,不管它在 IRF 系统内部穿过了多少成员设备,在跳数上只增加 1,即表现为只经过了一个网络设备。
当Slave 1 收到报文后,查找本地转发表,发现出接口就在本机上,则Slave 1 直接将报文从这个出接口发送出去。当Slave 1 收到报文后,查找本地转发表,发现出接口在Master上,则Slave 1 按照最优路径先将报文转发给Master, Master通过出接口将报文转发给最终用户。
5.IRF典型组网方式
5.1 使用IRF扩展端口数量
当接入的用户数增加到原交换机端口密度不能满足接入需求时,可以通过在原有的IRF系统中增加新的交换机而得到满足。
5.2使用IRF扩展系统处理能力
当中心的交换机转发能力不能满足需求时,可以增加新交换机与原交换机组成IRF系统来实现。若一台交换机转发能力为 64M PPS,则通过增加一台交换机进行扩展后,整个IRF设备的转发能力为 128M PPS。需要强调的是,是整个IRF设备的转发能力整体提高,而不是单个交换机的转发能力提高。
5.3 使用IRF扩展带宽
当边缘交换机上行带宽增加时,可以增加新交换机与原交换机组成IRF系统来实现。将成员设备的多条物理链路配置成一个聚合组,可以增加到中心交换机的带宽。而对中心交换机的而言,边缘交换机的数量并没有变化,物理上的两台交换机看起来就是一台交换机,原有交换机会将当前的配置批量备份到新加入的交换机。因此,这种变化对网络规划和配置影响很小。
5.4 跨越空间使用IRF
每个楼层的用户通过楼道交换机接入外部网络,现使用光纤将各楼道交换机连接起来形成一个IRF设备,这样,相当于每个楼只有一个接入设备,网络结构变得更加简单;每个楼层有多条链路到达核心网络,网络变得更加健壮、可靠;对多台楼道交换机的配置简化成对对IRF系统的配置,降低了管理和维护的成本。
5.5 使用IRF简化组网
使用 IRF 后,汇聚层的多个设备成为了一个单一的逻辑设备,接入设备直接连接到虚拟设备。这个简化后的组网不再需要使用 MSTP、 VRRP 协议,简化了网络配置。同时依靠跨设备的链路聚合,在成员出现故障时不再依赖 MSTP、 VRRP 等协议的收敛,提高了可靠性。