一种链路聚合路径的健康检查系统及方法

文档序号:9202535阅读:580来源:国知局
一种链路聚合路径的健康检查系统及方法
【技术领域】
[0001]本发明涉及网络应用交付控制领域,特别涉及一种链路聚合路径的健康检查系统及方法。
【背景技术】
[0002]链路聚合(Link Aggregat1n)是指将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽,提高链路冗余。链路聚合有两种模式,动态模式和静态模式。基于IEEE802.3ad标准的LACP (链路聚合控制协议)协议是一种实现链路动态聚合的协议,运行该协议的设备之间通过互发LACPDU (链路聚合控制协议数据单元)来交互链路聚合的相关信息。如果在超过规定的时间,本端成员端口仍未收到来自对端的LACPDU,则认为对端成员端口已失效,系统将不使用该端口发送数据报,实现了故障转移。在静态聚合模式下,聚合组内的成员端口上不启用LACP协议,其端口状态通过手工进行维护。在数据中心中,为了增加链路冗余,常常需要跨交换机做链路聚合,即本端聚合物理端口和对端聚合物理端口之间的链路经过了不同的交换机和不同的网络路径。而LACP协议不支持跨交换机连路聚合,所以只能采用静态聚合模式。在静态聚合模式下,若其中一条路径发生故障,系统不能自动故障转移,仍然会通过该路径发送数据报,从而造成数据报丢失。

【发明内容】

[0003]为克服已有技术中存在的问题,本发明的目的是提供一种可以实现故障自动转移的链路聚合路径健康检查系统及方法。
[0004]一种链路聚合路径的健康检查系统是由聚合物理端口、N (N > I)条交换机支路以及聚合交换机网络连接构成,其中所述的聚合物理端口是由M (M> I)个物理端口以及用户输入输出模块、报文发送模块、报文接收模块和超时检查模块组成。
[0005]所述的用户输入输出模块:用于接收并保存用户的输入,包括预设IP地址、报文发送时间间隔、超时时间、健康计数和故障计数,并用于查看健康检查结果和统计信息;
[0006]所述的报文发送模块:用于以预先配置的时间间隔向目的地址发送包含健康检查信息的报文,记录该报文所通过的物理端口标记,并用于成功发送报文后启动相应的定时器;
[0007]所述的报文接收模块:用于检查所有收到的报文,从其中的健康检查报文中提取对应物理端口标识,检查被标识的物理端口,若相应的定时器未超时、且健康计数已达到用户初始设定的门限,则标记该物理端口为健康,若相应的定时器已超时,则丢弃上述被标识物理端口传输的报文;
[0008]所述的超时检查模块:用于定期检查所有物理端口相应的定时器,若超时且故障的计数到达用户初始设定的门限,则标记对应的物理端口的检查结果为故障。
[0009]一种链路聚合路径的健康检查方法,包括以下步骤:
[0010]步骤一,预设聚合物理端口 IP地址、健康检查报文发送间隔、健康检查报文接收超时时间、检查结果未健康时应收到报文的次数,检查结果未故障时报文超时的次数和网关;
[0011]步骤二,通过每个物理端口发送健康检查报文,所述的健康检查报文中有其所通过的物理端口的标记;
[0012]进一步地,健康检查报文中还可以指定发送该报文所经过的网关,成功发送后启动超时定时器;
[0013]步骤三,检查所有收到的报文:如果是健康检查报文则从报文中提取出所对应的物理端口,检查该报文是否超时;如果没有超时,则停止相应定时器并且增加该物理端口健康的计数,清零故障计数,如果健康计数达到用户设定的门限,则该物理端口的最终检查结果为健康;如果已经超时,则丢弃该数据报文;
[0014]步骤四,定期检查所有定时器,如果已经超时,则找到对应的物理端口并且清零健康的计数,增加故障的计数,如果故障的计数到达用户设定的门限则标记该接口的检查结果为故障,物理端口在发送报文时将忽略标记为故障的物理端口,实现自动故障转移。
[0015]本发明在对静态链路聚合路径进行健康检查时,可检出故障的物理端口,使得系统工作时可忽略标记为故障的物理端口,实现故障自动转移,弥补了静态链路聚合的不足;本发明可以指定任意检查地址,并能指定发送网关,且配置简单,便于实施。
【附图说明】
[0016]图1是本发明设备的系统结构示意图;
[0017]图2是本发明聚合物理端口组成结构示意图;
[0018]图3是本发明报文接收模块工作流程图;
[0019]图4是本发明超时检查模块工作流程图;
[0020]图5是本发明一种实施例网络系统结构示意图。
【具体实施方式】
[0021]在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也是本申请各权利要求所要求保护的技术方案。
[0022]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
[0023]一种链路聚合路径健康检查系统是通过从指定的物理端口(构成逻辑聚合端口的物理端口,以下称聚合物理端口)向预设的目的地址发送报文,例如:聚合物理端口发送ICMP Echo Request (Internet Control Message Protocol, Internet 控制报文协议类型8)报文,如果能在规定的时间内收到对端发回的ICMP Echo Reply (控制报文协议类型0)报文,则说明该聚合物理端口所属的网络路径工作正常,否则说明该路径不通。
[0024]如图1所示:一种链路聚合路径的健康检查系统是由聚合物理端口 100,交换机支路200和交换机支路300,聚合交换机400网络连接构成,如图2所示,其中所述的聚合物理端口 100是由M (M> I)个物理端口以及用户输入输出模块101,报文发送模块102,报文接收模块103和超时检查模块104组成。
[0025]所述的用户输入输出模块:用于用户输入输出模块接收并保存用户的输入,包括预设健康检查目的地的IP地址、报文发送间隔、超时时间、检查结果未健康时需要收到的次数、检查结果未故障时需要超时的次数和网关等,且用于查看健康检查的结果和统计信息;
[0026]所述的报文发送模块:系统以用户配置的时间间隔向目的地址发送包含健康检查信息的报文,例如,发送ICMPEchoRequest报文。通过每个物理端口发送一个报文,即系统有多少个物理端口组成就需要发送多少个报文,也即每个报文通过不同的物理端口发送。由于报文返回时并不一定和发送时的路径相同,因此需要报文中标记出该报文是通过哪个物理端口发送的,用户还可以指定发送该报文所经过的网关,成功发送报文后启动超时定时器。
[0027]所述的报文接收模块:用于报文接收模块检查所有收到的报文,例如:接收ICMPEcho Reply报文。如果是健康检查报文则从报文中提取出其对应的物理端口标识(即找到该报文是从哪个物理端口发送出去的),并检查该报文是否超时。如果没有超时,则停止超时定时器并且增加该接口健康的计数,清零故障计数,如果健康计数达到用户设定的门限,则该接口的最终检查结果为健康;如果已经超时,则丢弃该数据报文,所述的报文接收工作流程如图3所示。
[0028]所述的超时检查模块:超时检查模块定期检查所有定时器,如果已经超时,则找到对应的物理端口并且清零健康的计数,增加故障的计数,如果故障的计数到达用户设定的门限则标记该接口的检查结果为故障。聚合物理端口在发送数据报时会忽略标记为故障的物理端口。所述的超时检查模块工作流程如图4所示。
[0029]一种链路聚合路径的健康检查方法,包括以下步骤:
[0030]步骤一,预设聚合物理端口 IP地址、健康检查报文发送间隔、健康检查报文接收超时时间、检查结果未健康时应收到报文的次数,检查结果未故障时报文超时的次数和网关,所述的网关就是系统默认的路由,即发送健康检查报文下一跳的地址,仅在健康检查目的地址和本机不在同一个网段时使用)
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1