一种is-is协议触发arp学习的方法
【技术领域】
[0001]本发明涉及一种运行IS-1S即就是中间系统到中间系统的路由协议与ARP即地址解析协议的网络设备,尤其涉及了一种IS-1S协议触发ARP学习的方法。
【背景技术】
[0002]中间系统到中间系统路由协议即IS-1S路由协议是一种动态的、基于链路状态的内部网关协议IGP,IS-1S协议通过hello报文交互协商建立邻居后,每一个中间系统IS都产生链路状态协议数据包LSP描述本中间系统IS的链路状态信息,并发生到网络中,并且也会存储网络拓扑上所有中间系统IS设备发送过来的LSP,形成链路状态数据库LSDB,IS-1S就是使用链路数据库LSDB通过最短路径优先算法SPF计算出到达目的地址的最佳路由。
[0003]地址解析协议,即ARPAddress Resolut1n Protocol,是根据IP地址获取物理地址的一个TCP/IP协议,当一个中间系统IS需要从一个接口发送数据报文到下一个中间系统IS时,就必须知道从这个接口出去对于下一跳网关IP地址对应的MAC,否则数据流量不通。
[0004]通常情况下,IS-1S已经在两个IS中间系统之间建立了邻居,并且为目的路由计算出了从建立邻居的接口的下一跳信息。这时,中间系统IS就会往这个下一跳出接口发生数据报文进行数据通讯了,但是,有些时候ARP还没有学习到,导致数据流量不通,直到ARP学习成功。
【发明内容】
[0005]本发明的目的就是消除在ISIS协议中路由计算成功但是ARP没有学习导致的流量中断,提供一种IS-1S协议触发ARP学习的方法。
[0006]为了解决上述技术问题,本发明通过下述技术方案得以解决:
一种IS-1S协议触发ARP学习的方法,包括以下步骤:
步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功;
步骤二:ARP学习成功并且对端的第二中间系统IS的邻居状态为down,将对端的第二中间系统IS的邻居状态设置为INIT ;
步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。
[0007]Hello报文是由活动路由器和备份路由器及处在竞选状态的路由器发送,向它们所在的那个组的成员通知它们的存在。Hello报文也包含配置参数,如IP地址和定时器值等。
[0008]一种IS-1S协议触发ARP学习的方法,包括以下步骤: 步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功;
步骤二:ARP学习成功并且将对端的第二中间系统IS的邻居状态设置为INIT并且满足IS-1S邻居协议UP条件,将对端的第二中间系统IS这个邻居状态设置为UP ;
步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。
[0009]本发明由于采用了以上技术方案,具有显著的技术效果:
本发明基于这种方法,可以消除在ISIS协议中路由计算成功但是ARP没有学习导致的流量中断,特别是在邻居建立最优路由切换的测试中。
【附图说明】
[0010]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0011]图1是本发明的拓扑图。
【具体实施方式】
[0012]下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
[0013]实施例1:
本发明系统组成,如图1所示,由路由器Rl与路由器R2以及测试仪组成的网络,路由器Rl和路由器R2之间存在两条平行链路。测试仪从路由器Rl往路由器R2方向发送流量。第一阶段,路由器Rl和路由器R2之间只有上面Iinkl链路建立了邻居关系,并且metric为10,路由器Rl到达路由器R2发现的数据流量走Iinkl链路;第二阶段,路由器Rl和路由器R2之间下面link2链路也建立了邻居关系,并且metric为5,路由器Rl到达路由器R2方向的数据流量切换到走代价比较小的下面的link2链路,切换过程要求流量不中断。
[0014]开始,第一阶段中,路由器Rl和路由器R2之间只有上面Iinkl链路建立了邻居关系,并且metric为10,路由器Rl到达路由器R2方向的数据流量走Iinkl链路,因为只有唯一的一条Iinkl的链路可以选择。第二阶段,路由器Rl和路由器R2之间下面link2链路也建立了邻居关系,并且metric为5,路由器Rl到达路由器R2方向的数量切换到代价比较小的下面的link2链路,切换过程中发生了流量中断。因为,IS-1S邻居建立后,IS-1S将路由切换到了下面代价比较小的metric 5的链路进行流量传输。但是,IS-1S邻居建立成功,路由也计算完成,但是路由器R2下面link2链路接口 IP地址的ARP还没有学习到,路由器Rl上没有下面link2链路的路由器R2接口 IP地址的ARP表,导致流量中断。在流量不能获取下一跳R2接口 IP地址的ARP表的情况下,流量触发了 ARP学习,直到ARP协议学习到了下一跳路由器R2接口 IP地址的ARP表,流量才恢复正常。
[0015]—种IS-1S协议触发ARP学习的方法,包括以下步骤: 步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功;
步骤二:ARP学习成功并且对端的第二中间系统IS的邻居状态为down,将对端的第二中间系统IS的邻居状态设置为INIT ;
步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。
[0016]Hello报文是由中间系统IS在所连接的链路上周期性发送,标识其在所连接链路上的存在。Hello报文也包含配置参数,如IP地址和定时器值等。
[0017]—种IS-1S协议触发ARP学习的方法,包括以下步骤:
步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功;
步骤二:ARP学习成功并且将对端的第二中间系统IS的邻居状态设置为INIT并且满足IS-1S邻居协议UP条件,将对端的第二中间系统IS这个邻居状态设置为UP ;
步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。
[0018]使用本发明方法后,路由器Rl和路由器R2在下面的link2链路上开始建立邻居,当路由器Rl收到路由器R2的hello报文,从hello报文中获取到路由器R2在下面link2链路接口的IP地址后,使用IP地址进行ARP查询,发现没有对应IP地址的ARP表,即触发ARP协议进行ARP学习。此时邻居状态设置为INIT。其后ARP开始学习并学习到了路由器R2在下面link2链路接口的IP地址所对应的MAC地址。当路由器Rl再次收到路由器R2的hello报文,从hello报文中获取到路由器R2在下面link2链路接口的IP地址后,使用IP地址进行ARP查询,发现已经学习到对应IP地址的A路由器RP表,在满足了 IS-1S协议邻居UP的情况下,邻居建立成功。这个过程中,由于IS-1S协议一直没有建立UP的邻居,所以也不会计算路由表而走下面的link2链路,仍然是走上面的链路,流量总是走了上面的Iinkl的链路并且始终畅通。在此之后,下面I ink2链路建立了邻居,并且ARP也已经学习成功了,路由器Rl就会计算路由表走了下面一条代价比较小的link2的链路,流量也就切换到了下面一条代价比较小link2的链路,整个过程中没有任何流量中断或丢包。
[0019]此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
【主权项】
1.一种IS-1S协议触发ARP学习的方法,其特征在于包括以下步骤: 步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功; 步骤二:ARP学习成功并且对端的第二中间系统IS的邻居状态为down,将对端的第二中间系统IS的邻居状态设置为INIT ; 步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。
2.—种IS-1S协议触发ARP学习的方法,其特征在于包括以下步骤: 步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功; 步骤二:ARP学习成功并且将对端的第二中间系统IS的邻居状态设置为INIT并且满足IS-1S邻居协议UP条件,将对端的第二中间系统IS这个邻居状态设置为UP ; 步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。
【专利摘要】本发明涉及一种运行IS-IS即就是中间系统到中间系统的路由协议与ARP即地址解析协议的网络设备,公开了一种IS-IS协议触发ARP学习的方法,包括以下步骤:步骤一:第一中间系统IS接收到对端第二中间系统IS的hello报文,第一中间系统IS从hello报文中获取对端的第二中间系统IS的IP接口地址,使用IP接口地址查询ARP表项是否ARP学习成功;步骤二:ARP学习成功并且对端的第二中间系统IS的邻居状态为down,将对端的第二中间系统IS的邻居状态设置为INIT;步骤三:ARP学习不成功则触发ARP进行学习,与此同时将对端的第二中间系统IS邻居状态设置为INIT。本发明基于这种方法,可以消除在ISIS协议中路由计算成功但是ARP没有学习导致的流量中断,特别是在邻居建立最优路由切换的测试中。
【IPC分类】H04L12-701, H04L29-12
【公开号】CN104796501
【申请号】CN201510201319
【发明人】周能强, 周光如, 陈晨, 庾婧, 伍克东
【申请人】安徽皖通邮电股份有限公司
【公开日】2015年7月22日
【申请日】2015年4月25日