增强型ICMP重定向方法技术

技术编号:14253020 阅读:71 留言:0更新日期:2016-12-22 15:25
本发明专利技术公开了一种增强型ICMP重定向方法,涉及数据通信领域本发明专利技术改进了三个机制,分别是:网关地址附加MAC地址机制、使主机学习MAC地址机制和周期发送两种不同ENICMP重定向消息机制。ENICMP重定向的工作原理为:当指定网关收到数据包的入接口和路由后的出接口是同一个接口时,指定网关便向主机发送ENICMP重定向消息。主机收到后,便将原目的IP地址和接收到的MAC地址进行匹配,用来消除原ICMP重定向消息后主机中产生的主机路由表。那么,下次去往目的主机时,便可选择正确路径访问;同时,指定网关会向主机周期发送两种ENICMP重定向消息,目的是使主机能够周期检测指定网关上行链路是否恢复。若恢复,指定网关便停止发送ENICMP重定向消息给主机。

【技术实现步骤摘要】

本专利技术涉及数据通信领域,具体是一种增强型ICMP重定向方法
技术介绍
在传统的ICMP重定向过程中,整个过程的工作原理为:1.当指定网关收到数据包的入接口和路由后的出接口是同一个接口时,指定网关便向主机发送一个携带新网关IP地址的ICMP重定向消息;2.主机收到ICMP重定向消息后,便根据得到的新网关的IP地址,在本地生成一个本地主机路由表,用来查询转发数据包。并且会生成一个永久存在的重定向表,存储新网关的信息。如果有一台大型的服务器,要处理数十个子网下的数千台主机的业务,如果需要支持重定向,那么该服务器将会维护一个庞大的充满主机路由的路由表。这将是一笔很大的开销,将在很大程度上降低服务器的服务性能,甚至导致网络服务瘫痪;此外,传统ICMP重定向生成的永久性存在的重定向表将导致即使指定网关恢复后,也无法自动切换到该指定网关,必须管理员手动清除。很多情况下,管理员会选择关闭ICMP重定向,这样传统的ICMP就发挥不出它的作用了。
技术实现思路
为了克服解决当重定向后主机需维护主机路由表和上行链路恢复后无法自动切换回原网关的问题,本专利技术提供了一种增强型ICMP重定向方法,即通过三个机制的实现,消除主机中的本地主机路由表和周期性的测试,达到及时诊断指定网关的状态,并在指定网关恢复时恢复到最佳路径的效果。本专利技术是以如下技术方案实现的:一种增强型ICMP重定向方法,指定网关和备份网关构成了本地PC和外部主机通信的媒介;其特征在于:两个网关的内部端口连接到一个二层交换机上;这两个端口配置的IP地址分别为本地PC的指定网关和指定网关故障后本地PC所要切换到的网关地址;当指定网关出现问题时,将发送设置了三种新的机制的ICMP重定向消息,三种机制如下:网关地址附加MAC地址机制:ENICM重定向消息中包含的信息分为一类ENICMP重定向消息和二类ENICMP重定向消息;一类ENICMP重定向消息包括指定网关地址+指定网关MAC地址;二类ENICMP重定向消息包括指定网关地址+备份网关MAC地址两种类型。使本地PC学习MAC地址机制:ENICMP重定向消息到达本地PC后,会使本地PC拆开数据包,并将包中携带的MAC地址和目的IP地址进行匹配。周期发送两类不同ENICMP重定向消息机制:相同30S间隔内,每发送三个携带备份网关MAC地址的消息包就会发送一个携带指定网关MAC地址的数据包给本地PC。优选的,当指定网关上行链路正常时,具体流程为:(1)本地PC首先发送ARP协议包,目标地址为所要访问的不同网段的外部目的主机地址;(2)指定网关收到ARP请求后,发现自己内部接口的IP地址与本地PC指定网关地址相一致,便给本地PC回复此ARP请求;(3)备份网关收到ARP请求后,发现自己不是本地PC所指向的网关,不回复此ARP请求,主动发送ARP请求解析本地PC的MAC地址;(4)本地PC的ARP表中产生了一条外部主机地址和指定网关内部接口MAC地址对应的条目;(5)二层交换机中生成了一张CAM表,存放了三个接口各自对应的MAC地址信息;(6)本地PC访问外部主机时,根据携带的源、目的信息,经过二层交换机的转发,顺利通过指定网关路由后到达外部主机。优选的,当指定网关上行链路故障时,具体流程为:(1)当指定网关收到数据包进行路由后,发现出接口和收到数据包的入接口一致时,便向本地PC发送一个二类ENICMP重定向数据包;(2)本地PC收到指定网关的二类ENICMP重定向消息后,将其中包含的MAC地址和外部主机IP地址相匹配;(3)本地PC再次访问外部主机时,根据数据包中的目的MAC地址直接查询二层交换机的CAM表转发到备份网关上,发送出去;(4)备份网关将收到的数据包路由出去,到达目的地,即外部主机;(5)指定网关连续向本地PC发送了三个二类ENICMP重定向消息,30秒后会向本地PC发送一个一类ENICMP重定向消息;(6)本地PC接收到一类ENICMP消息后,将其中包含的MAC地址和外部主机IP地址相匹配;(7)本地PC再次访问外部主机时,根据数据包中的目的MAC地址直接查二层交换机的CAM表转发到指定网关上,发送出去;(8)指定网关收到数据包后,再次判断出接口和收到数据包的入接口是否一致,若一致,则重复步骤上述所有步骤;如果不一致,则表示指定网关上行链路已恢复,于是正常转发数据包,并停止向本地PC发送一类ENICMP重定消息;(9)此时,数据包恢复到了指定网关正常转发的状态。本专利技术的有益效果是:在原先ICMP重定向功能的基础上实现了本地PC路由表的消除,减轻了本地PC维护本地路由表的负担;并且可以周期性检测指定网关的状态,当指定网关恢复后主动恢复链路,自动切换到原先的路径。附图说明下面结合附图对本专利技术作进一步说明。图1为专利技术中网络架构整体示意图;图2为ENICMP重定向报文格式;图3为ENICMP重定向的工作流程示意图。具体实施方式如图1所示,指定网关和备份网关构成了本地PC和外部主机通信的媒介,本地PC以及传统以太网二层设备(交换机、网桥等)的工作原理保持不变。两个网关的内部端口连接到一个二层交换机上,这两个端口配置的IP地址分别为本地PC的指定网关以及指定网关故障后本地PC所要切换到的网关地址。当指定网关发生故障后,将发送设置了三种新的机制的ENICMP重定向消息,三种机制如下:网关地址附加MAC地址机制:ENICM重定向消息中包含的信息分为一类ENICMP重定向消息和二类ENICMP重定向消息;一类ENICMP重定向消息包括指定网关地址+指定网关MAC地址;二类ENICMP重定向消息包括指定网关地址+备份网关MAC地址两种类型。使本地PC学习MAC地址机制:ENICMP重定向消息到达本地PC后,会使本地PC拆开数据包,并将包中携带的MAC地址和目的IP地址进行匹配。周期发送两类不同ENICMP重定向消息机制:相同30S间隔内,每发送三个携带备份网关MAC地址的消息包就会发送一个携带指定网关MAC地址的数据包给本地PC。ENICMP重定向的工作原理为:当指定网关收到数据包的入接口和路由后的出接口是同一个接口时,指定网关透过二层交换机便向本地PC发送一个ENICMP重定向消息,该消息分为一类ENICMP重定向消息和二类ENICMP重定向消息两种;一类ENICMP重定向消息携带指定网关IP地址和指定网关MAC地址,用来使本地PC周期检测指定网关状态,自动恢复链路;二类ENICMP重定向消息携带指定网关IP地址和备份网关MAC地址,用来“欺骗”本地PC直接选择备份网关,并不生成本地PC路由表。本地PC收到后,便将原目的IP地址和接收到的MAC地址进行匹配,用来消除原ICMP重定向消息后本地PC中产生的主机路由表。那么,下次去往外部主机时,便可选择正确路径访问;同时,指定网关会向主机周期发送两种ENICMP重定向消息,目的是使主机能够周期检测指定网关上行链路是否恢复;若恢复,指定网关便停止发送ENICMP重定向消息给本地PC。如图2所示,ENICMP重定向数据包中增加了48bit位的网关MAC地址。如图3所示,增强型ICMP重定向方法的工作流程为:当指定网关上行链路正常时,具体流程为:(1)本地PC首先发送ARP协议包本文档来自技高网...
增强型ICMP重定向方法

【技术保护点】
一种增强型ICMP重定向方法,指定网关和备份网关构成了本地PC和外部主机通信的媒介;其特征在于:两个网关的内部端口连接到一个二层交换机上;这两个端口配置的IP地址分别为本地PC的指定网关和指定网关故障后本地PC所要切换到的网关地址;当指定网关出现问题时,将发送设置了三种新的机制的ICMP重定向消息,三种机制如下:网关地址附加MAC地址机制:ENICM重定向消息中包含的信息分为一类ENICMP重定向消息和二类ENICMP重定向消息;一类ENICMP重定向消息包括指定网关地址+指定网关MAC地址;二类ENICMP重定向消息包括指定网关地址+备份网关MAC地址两种类型。使本地PC学习MAC地址机制:ENICMP重定向消息到达本地PC后,会使本地PC拆开数据包,并将包中携带的MAC地址和目的IP地址进行匹配。周期发送两类不同ENICMP重定向消息机制:相同30S间隔内,每发送三个携带备份网关MAC地址的消息包就会发送一个携带指定网关MAC地址的数据包给本地PC。

【技术特征摘要】
1.一种增强型ICMP重定向方法,指定网关和备份网关构成了本地PC和外部主机通信的媒介;其特征在于:两个网关的内部端口连接到一个二层交换机上;这两个端口配置的IP地址分别为本地PC的指定网关和指定网关故障后本地PC所要切换到的网关地址;当指定网关出现问题时,将发送设置了三种新的机制的ICMP重定向消息,三种机制如下:网关地址附加MAC地址机制:ENICM重定向消息中包含的信息分为一类ENICMP重定向消息和二类ENICMP重定向消息;一类ENICMP重定向消息包括指定网关地址+指定网关MAC地址;二类ENICMP重定向消息包括指定网关地址+备份网关MAC地址两种类型。使本地PC学习MAC地址机制:ENICMP重定向消息到达本地PC后,会使本地PC拆开数据包,并将包中携带的MAC地址和目的IP地址进行匹配。周期发送两类不同ENICMP重定向消息机制:相同30S间隔内,每发送三个携带备份网关MAC地址的消息包就会发送一个携带指定网关MAC地址的数据包给本地PC。2.根据权利要求1所述的增强型ICMP重定向方法,其特征在于:当指定网关上行链路正常时,具体流程为:(1)本地PC首先发送ARP协议包,目标地址为所要访问的不同网段的外部目的主机地址;(2)指定网关收到ARP请求后,发现自己内部接口的IP地址与本地PC指定网关地址相一致,便给本地PC回复此ARP请求;(3)备份网关收到ARP请求后,发现自己不是本地PC所指向的网关,不回复此ARP请求,主动发送ARP请求解析本地PC的MAC地址;(4)本地PC的ARP表中产生了一条外部...

【专利技术属性】
技术研发人员:张永福张会柱张传生王海君
申请(专利权)人:华洋通信科技股份有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1