一、IRF是什么?
目前,网络中主要存在两种结构的通信设备,固定盒式设备和模块框式分布式设备。固定盒式设备成本低廉,但没有高可用性支持;模块框式分布式设备具有高可用性、高性能、高端口密度的优点,但投入成本高。针对盒式设备和模块框式分布式设备的这些特点,一种结合了两种设备优点的IRF虚拟化技术应运而生。
.
IRF称之为智能弹性架构,是H3C自主研发的硬件虚拟化技术,它的核心思想是将多台设备通过IRF物理端口连接在一起,进行必要的配置后,虚拟化成一台“分布式设备”。使用这种虚拟换技术可以集合多台设备的硬件资源和软件处理能力,实现多台设备的协同工作、统一管理和不间断维护(简单说,IRF技术就是“硬件虚拟化技术”,将多个硬件设备虚拟化出一台更大的硬件设备)。
二、IRF技术的优点
1、简化管理
IRF架构形成之后,可以连接到任何一台设备的任何一个端口就以登录统一的逻辑设备,通过对单台设备的配置达到管理整个智能弹性系统以及系统内所有成员设备的效果,而不用物理连接到每台成员设备上分别对它们进行配置和管理。
2、简化业务
IRF形成的逻辑设备中运行的各种控制协议也是作为单一设备统一运行的,例如路由协议会作为单一设备统一计算,而随着跨设备链路聚合技术的应用,可以替代原有的生成树协议,这样就可以省去了设备间大量协议报文的交互,简化了网络运行,缩短了网络动荡时的收敛时间。
3、弹性扩展
可以按照用户需求实现弹性扩展,保证用户投资。并且新增的设备加入或离开IRF架构时可以实现“热插拔”,不影响其他设备的正常运行。
4、高可靠
IRF的高可靠性体现在链路,设备和协议三个方面。成员设备之间物理端口支持聚合功能,IRF系统和上、下层设备之间的物理连接也支持聚合功能,这样通过多链路备份提高了链路的可靠性;IRF系统由多台成员设备组成,一旦Master设备故障,系统会迅速自动选举新的Master,以保证通过系统的业务不中断,从而实现了设备级的1:N备份;IRF系统会有实时的协议热备份功能负责将协议的配置信息备份到其他所有成员设备,从而实现1:N的协议可靠性。
5、高性能
对于高端交换机来说,性能和端口密度的提升会受到硬件结构的限制。而IRF系统的性能和端口密度是IRF内部所有设备性能和端口数量的总和。因此,IRF技术能够轻易的将设备的交换能力、用户端口的密度扩大数倍,从而大幅度提高了设备的性能。
三、IRF的相关基本概念
1、角色
IRF中每台设备都称为成员设备,成员设备按照功能不同,分为两种角色:
- master:负责管理整个IRF。
- slave:作为master的备份设备运行,当master故障时,系统会自动从slave中选举出一个新的master接替原master工作。
master和slave均由成员设备选举产生。一个IRF中同时只能存在一台master,其他成员设备都是slave。
**2、IRF端口:**一种专用于IRF的逻辑结构,分为IRF-port1和IRF-port2,需要和IRF物理端口绑定之后才能生效。
**3、IRF物理端口:**设备上可以用于IRF连接的物理端口。IRF物理端口可能是IRF专用接口,以太网接口或者光口(设备上哪些端口可用作IRF物理端口与设备型号有关,要以实际情况为准)。通常情况下,以太网接口和光口负责向网络中转发业务报文,当它们与IRF端口绑定后就成为了IRF物理端口,用于成员设备之间转发报文。可转发的报文包括IRF相关协商报文及需要跨成员设备转发的业务报文。
**4、IRF合并:**两个IRF各自已经稳定运行,通过物理连接和必要的配置,形成一个IRF,这个过程就是IRF合并。
**5、IRF分裂:**一个IRF形成后,由于IRF链路故障,IRF中两相邻成员设备物理上不连通,一个IRF变成两个IRF,这个过程就是IRF分裂。
**6、成员优先级:**成员优先级是成员设备的一个属性,主要用于角色选举过程中确定成员设备的角色。优先级越高当选master的可能性越大,设备的默认优先级为1,如果想让某台设备当选master,则在组建IRF前,可以通过命令行手动提高该设备的成员优先级。
四、IRF的运行模式与配置方式
IRF的运行模式分为IRF模式和独立运行模式,设备出厂时默认处于独立运行模式。若在本次运行过程中,没有修改设备的运行模式,则下次启动会继续使用本次启动的运行模式;若在本次运行过程中,修改了设备的运行模式,则设备会自动重启,切换到新的模式。
当设备从独立模式切换到IRF模式后,即使只有一台设备也会形成IRF,因为管理和维护IRF也需要耗费一定的系统资源,所以,如果当前组网设中设备不需要和别的设备组成IRF,建议将运行模式配置为独立运行模式。
chassis convert mode irf命令用来将设备的运行模式切换到IRF模式。
五、IRF的角色选举
确定成员设备角色为master或slave的过程称为角色选举,角色选举会在拓扑变更的情况下产生,如IRF建立、新设备加入、master设备离开或故障等。
角色选举规则如下:
- 当前master优先(IRF系统形成时,没有master设备,所有加入的设备都认为自己是master,会跳转到第二条规则继续比较)。
- 成员优先级大的优先。
- 系统运行时间长的优先。
- 桥(交换机设备)MAC地址小的优先。
从上面第一条开始判断,若判断的结果是多个最优,则继续判断下一条,直到找到唯一最优的成员设备才停止比较。此最优成员设备就是master,其他成员设备就都是slave咯。
关于IRF的相关理论知识还有它的工作原理、管理和维护及多IRF冲突检测(MAD功能)等等,这里就不说了(我懒),可以参考:https://wenku.baidu.com/view/de8c8bb469dc5022aaea007f.html ,这个链接上关于IRF介绍的很详细了。
下面来一个简单的网络环境应用一下IRF技术。
六、IRF技术的配置详解
1、环境如下:
2、需求分析:
(1)由于H3C模拟器中无法模拟PC机,所以使用路由器代替。
(2)PC1及PC2分别属于vlan2和vlan3中,其各自对应的网关分别为192.168.2.1及192.168.3.1。配置在SW1和SW2上(SW1及SW2使用IRF技术虚拟化为一台三层交换机)。
(3)最终实现效果为:SW1和SW2宕掉其中任何一台,都不会影响PC1和PC2的通信。
3、开始配置:
1、首先配置基础部分(PC1、PC2、SW3及SW4):
PC1配置如下:
<H3C>sys //进入系统视图
[H3C]in g0/0 //进入接口
[H3C-GigabitEthernet0/0]ip add 192.168.2.10 24 //配置IP地址
[H3C-GigabitEthernet0/0]quit
[H3C]ip route 0.0.0.0 0.0.0.0 192.168.2.1 //配置默认路由,相当于指定网关
PC2配置如下(相关配置和PC1类似,就不写注释了):
<H3C>sys
[H3C]in g0/0
[H3C-GigabitEthernet0/0]ip add 192.168.3.10 24
[H3C-GigabitEthernet0/0]quit
[H3C]ip route 0.0.0.0 0.0.0.0 192.168.3.1
SW3配置如下:
<SW3>sys
[SW3]int Bridge-Aggregation 2 //创建聚合链路(就是Cisco中的以太网通道)
[SW3-Bridge-Aggregation2]port link-type trunk //配置为trunk类型
[SW3-Bridge-Aggregation2]port trunk permit vlan all //允许所有vlan通过
[SW3-Bridge-Aggregation2]link-aggregation mode dynamic //模式为动态协商
[SW3-Bridge-Aggregation2]quit
[SW3]int range g1/0/1 to g1/0/2 //进入连续的这两个接口
[SW3-if-range]port link-aggregation group 2 //加入到聚合链路组,组号为2
[SW3-if-range]port link-type trunk //配置为trunk类型
[SW3-if-range]port trunk permit vlan all //允许所有vlan通过
[SW3-if-range]quit
[SW3]vlan 2 //创建vlan2
[[SW3-vlan2]]quit
[SW3]in g1/0/3 //进入指定接口
[SW3-GigabitEthernet1/0/3]port link-type access //改变接口类型为access
[SW3-GigabitEthernet1/0/3]port access vlan 2 //将接口添加至vlan 2
[SW3-GigabitEthernet1/0/3]quit
SW4配置如下(相关配置的含义请参考SW3):
[SW4]int Bridge-Aggregation 3
[SW4-Bridge-Aggregation3]port link-type trunk
[SW4-Bridge-Aggregation3]port trunk permit vlan all
[SW4-Bridge-Aggregation3]link-aggregation mode dynamic
[SW4-Bridge-Aggregation3]quit
[SW4]int range g1/0/1 to g1/0/2
[SW4-if-range]port link-aggregation group 3
[SW4-if-range]port link-type trunk
[SW4-if-range]port trunk permit vlan all
[SW4-if-range]quit
[SW4]vlan 3
[SW4-vlan3]quit
[SW4]in g1/0/3
[SW4-GigabitEthernet1/0/3]port link-type access
[SW4-GigabitEthernet1/0/3]port access vlan 3
[SW4-GigabitEthernet1/0/3]quit
至此,基础部分就配置完毕了,现在开始配置SW1和SW2,也是这篇文章的核心部分——IRF技术的配置实现。
由于两台交换机设备的接口编号一样,所以为了避免接口表号冲突,要更改其中一台设备的成员编号,原本接口编号是G1/0/1、G1/0/2…的话,更改后可以变成G2/0/1及G2/0/2…
SW2配置如下(由于设备需要重启几次,所以重启前保存配置很重要,切记):
[SW2]irf member 1 renumber 2 //将1改为2
Renumbering the member ID ...... e or loss. Continue?[Y/N]y //输入“y”确定
[SW2]quit
<SW2>save //保存配置
The current ...... . Are you sure? [Y/N]:y //输入“y”确定
Please input the file name(*.cfg)[flash:/startup.cfg]
(To leave the existing filename unchanged, press the enter key): //直接回车即可
Validating file. Please wait...
Saved the current configuration to mainboard device successfully.
<SW2>reboot //重启,只能在用户视图执行此命令
Start to check ......, please wait.........DONE!
This command will reboot the device. Continue? [Y/N]:y //输入“y”确定
//重启后开始配置IRF
[SW2]int Ten-GigabitEthernet 2/0/49 //由于上面的操作,将原本的G1/0/49改为了G2/0/49
[SW2-Ten-GigabitEthernet2/0/49]shutdown //关闭此接口
[SW2-Ten-GigabitEthernet2/0/49]quit
[SW2]irf-port 2/1 //创建irf端口1,其中“2”是之前更改的接口编号,是固定的,
//“1”是irf端口,在IRF组中是唯一的,不可冲突的
[SW2-irf-port2/1]port group interface Ten-GigabitEthernet2/0/49 //与物理接口G2/0/49绑定
//会出现下面三行提示信息
You must perform the following tasks for a successful IRF setup:
Save the configuration after completing IRF configuration.
Execute the "irf-port-configuration active" command to activate the IRF ports.
[SW2-irf-port2/1]quit
[SW2]int ten-g2/0/49 //进入物理接口
[SW2-Ten-GigabitEthernet2/0/49]undo shutdown //开启接口
[SW2-Ten-GigabitEthernet2/0/49]quit
[SW2]save //保存当前配置
The current configuration will be written to the device. Are you sure? [Y/N]:y //输入“y”确定
Please input the file name(*.cfg)[flash:/startup.cfg]
(To leave the existing filename unchanged, press the enter key): //直接回车即可
flash:/startup.cfg exists, overwrite? [Y/N]:y //输入“y”确定
Validating file. Please wait...
Saved the current configuration to mainboard device successfully.
[SW2]irf-port-configuration active
SW1配置如下:
//相关注释参考SW2,我就只将不同的配置注释写出来了
[SW1]irf member 1 priority 5 //将该设备的IRF优先级改为5
[SW1]int Ten-GigabitEthernet1/0/49
[SW1-Ten-GigabitEthernet1/0/49]shut
[SW1-Ten-GigabitEthernet1/0/49]quit
[SW1]irf-port 1/2
[SW1-irf-port1/2]port group int Ten-GigabitEthernet 1/0/49
You must perform the following tasks for a successful IRF setup:
Save the configuration after completing IRF configuration.
Execute the "irf-port-configuration active" command to activate the IRF ports.
[SW1-irf-port1/2]quit
[SW1]int te1/0/49
[SW1-Ten-GigabitEthernet1/0/49]undo shut
[SW1-Ten-GigabitEthernet1/0/49]quit
[SW1]irf-port-configuration active //激活IRF端口配置
当SW1设备激活IRF端口配置后,IRF组中优先级低的设备会自动重启,我这里激活后,大约三四十秒左右,SW2自动重启了。当SW2重启后,也就可以对这两台设备进行统一管理了,接下来的配置,在SW1或SW2上配置都可以,都是会同步的。并且可以在本地查看及配置对端的接口。
接下来在SW1或SW2任意一台设备上配置聚合链路,并开启LACP MAD检测功能:
[SW1]interface Bridge-Aggregation 2 //创建聚合链路,编号为2,与SW3的聚合链路对应
[SW1-Bridge-Aggregation2]port link-type trunk //配置为trunk类型
[SW1-Bridge-Aggregation2]port trunk permit vlan all //允许所有vlan通过
[SW1-Bridge-Aggregation2]link-aggregation mode dynamic //模式为动态协商
[SW1-Bridge-Aggregation2]mad enable //开启LACP MAD检测功能
You need to assign a domain ID (range: 0-4294967295)
[Current domain is: 0]: //输入IRF域ID,保持默认直接按“回车”键即可
The assigned domain ID is: 0
MAD LACP only enable on dynamic aggregation interface.
[SW1-Bridge-Aggregation2]quit
//下面是创建聚合链路3,对应的注释参考上面的即可
[SW1]interface Bridge-Aggregation 3 //创建聚合链路,编号为3,与SW4的聚合链路对应
[SW1-Bridge-Aggregation3]port link-type trunk
[SW1-Bridge-Aggregation3]port trunk permit vlan all
[SW1-Bridge-Aggregation3]link-aggregation mode dynamic
[SW1-Bridge-Aggregation3]mad enable
You need to assign a domain ID (range: 0-4294967295)
[Current domain is: 0]:
The assigned domain ID is: 0
MAD LACP only enable on dynamic aggregation interface.
[SW1-Bridge-Aggregation3]quit
将相应的端口添加至聚合链路中:
//下面是将SW1的端口加入到相应的聚合链路中,并配置为trunk类型
[SW1]in g1/0/1
[SW1-GigabitEthernet1/0/1]port link-type trunk
[SW1-GigabitEthernet1/0/1]port trunk permit vlan all
[SW1-GigabitEthernet1/0/1]port link-aggregation group 2
[SW1-GigabitEthernet1/0/1]in g1/0/2
[SW1-GigabitEthernet1/0/2]port link-type trunk
[SW1-GigabitEthernet1/0/2]port trunk permit vlan all
[SW1-GigabitEthernet1/0/2]port link-aggregation group 3
//下面是将SW2的端口加入到相应的聚合链路中,可以直接在SW1上进行配置
[SW1-GigabitEthernet1/0/2]in g2/0/1
[SW1-GigabitEthernet2/0/1]port link-type trunk
[SW1-GigabitEthernet2/0/1]port trunk permit vlan all
[SW1-GigabitEthernet2/0/1]port link-aggregation group 2
[SW1-GigabitEthernet2/0/1]in g2/0/2
[SW1-GigabitEthernet2/0/2]port link-type trunk
[SW1-GigabitEthernet2/0/2]port trunk permit vlan all
[SW1-GigabitEthernet2/0/2]port link-aggregation group 3
创建相应的vlan,并配置IP地址(IP地址为两台PC机的网关)
[SW1]vlan 2 to 3
[SW1]in vlan 2
[SW1-Vlan-interface2]ip add 192.168.2.1 24
[SW1-Vlan-interface2]in vlan 3
[SW1-Vlan-interface3]ip add 192.168.3.1 24
PC1和PC2进行测试
已经可以ping通了,现在IRF已经正常运行了,SW1或SW2 down掉其中任何一台,都不会影响PC1和PC2的通信。
七、IRF及MAD配置的显示及维护命令
附上一些关于IRF和MAD配置的显示和维护。
<SW1>dis irf //查看设备的IRF配置信息
MemberID Role Priority CPU-Mac Description
*+1 Master 5 2c63-c480-0300 ---
2 Standby 1 2c63-c8c5-0400 ---
--------------------------------------------------
* indicates the device is the master.
+ indicates the device through which the user logs in.
The Bridge MAC of the IRF is: 2c63-c480-0300
Auto upgrade : yes
Mac persistent : 6 min
Domain ID : 0
上述各字段含义如下:
<SW1>dis irf configuration //查看IRF的端口信息
MemberID NewID IRF-Port1 IRF-Port2
1 1 disable Ten-GigabitEthernet1/0/49
2 2 Ten-GigabitEthernet2/0/49 disable
上述各字段含义如下:
<SW1>dis irf topology //查看IRF的拓扑信息
Topology Info
-------------------------------------------------------------------------
IRF-Port1 IRF-Port2
MemberID Link neighbor Link neighbor Belong To
1 DIS --- UP 2 2c63-c480-0300
2 UP 1 DIS --- 2c63-c480-0300
<SW1>dis mad verbose //查看当前MAD的状态信息
Current MAD status: Detect
Excluded ports(configurable):
Excluded ports(can not be configured):
Ten-GigabitEthernet1/0/49
Ten-GigabitEthernet2/0/49
MAD ARP disabled.
MAD ND disabled.
MAD enabled aggregation port:
Bridge-Aggregation2
Bridge-Aggregation3
MAD BFD disabled.
<SW1>dis link-aggregation verbose //查看LACP的链路聚合信息
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing
Port Status: S -- Selected, U -- Unselected, I -- Individual
Flags: A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation,
D -- Synchronization, E -- Collecting, F -- Distributing,
G -- Defaulted, H -- Expired
Aggregate Interface: Bridge-Aggregation2
Aggregation Mode: Dynamic
Loadsharing Type: Shar
System ID: 0x8000, 2c63-c480-0300
Local:
Port Status Priority Oper-Key Flag
--------------------------------------------------------------------------------
GE1/0/1 S 32768 1 {ACDEF}
GE2/0/1 S 32768 1 {ACDEF}
Remote:
Actor Partner Priority Oper-Key SystemID Flag
--------------------------------------------------------------------------------
GE1/0/1 2 32768 1 0x8000, 2c63-d3d2-0500 {ACDEF}
GE2/0/1 3 32768 1 0x8000, 2c63-d3d2-0500 {ACDEF}
Aggregate Interface: Bridge-Aggregation3
Aggregation Mode: Dynamic
.....................//省略部分内容