一种快速更新地址解析协议的方法技术

技术编号:3546782 阅读:229 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开一种快速更新ARP的方法,该方法包括,在交换机的端口状态发生变化时,保留端口状态发生变化的交换机的ARP表项;该交换机获取与端口状态变化相关的设备的Mac地址以及Mac地址所携带的该交换机的端口信息;该交换机根据Mac地址查找有相同Mac地址信息的ARP表项,并用该端口信息更新ARP表项的端口信息。应用本发明专利技术提供的方法,可以节约CPU时间,提高ARP的收敛能力和效率,同时避免ARP主动触发请求造成的网络内广播报文的泛滥。

【技术实现步骤摘要】
一种快速更新地址解析协议的方法
本专利技术涉及网络通信技术,尤其涉及一种在网络拓扑结构发生变化的情况下快速更新地址解析协议(ARP,Address Resolution Protocol)的方法。
技术介绍
在以太网(Ethernet)中,多个网络设备通过交换机彼此相连并进行通信。交换机是由一个标准化机制的生成树协议(STP,Spanning Tree Protocol)来管理的。STP是一种二层管理协议,通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,从而有效地抑制广播风暴的产生。与此同时,STP还具备链路备份功能,当网络拓扑结构发生变化或网络发生故障时,可重新计算生成树信息并设置相应的交换机的端口状态。另外,在以太网中,一个网络设备要和另一个网络设备进行直接通信,除了需要知道目标设备的网络层逻辑地址外,例如IP地址,还要知道目标设备的第二层物理地址,例如Mac地址,ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的Mac地址,以保证通信的顺利进行。也就是说,ARP提供IP地址和硬件Mac地址之间的映射关系,这种映射关系可通过设备自身ARP报文的动态学习来获取。此外,对于当前很多支持虚拟局域网(VLAN,Virtual LAN)的三层交换机来说,ARP表项还包括VLAN以及以太网端口等信息在内的一些其它信息,也就是说,ARP表项还可以绑定交换机的端口信息。通常情况下,网络拓扑发生变化时,STP会重新计算生成树信息,于是交换机端口的状态会随之改变,由于ARP表项和端口绑定,所以网络设备学习到的动态ARP表项会变成无效的,于是端口收到STP网络拓扑改变的-->消息后,会将其它端口学习到的与状态改变的端口相关的ARP表项全部删除,同时将网络拓扑改变的消息向其它端口传播,由于ARP表项被删除,所以会立即主动触发动态ARP的重新学习和更新,然而其它端口随后又传来拓扑改变的消息,刚刚学习到的ARP表项又被全部删除,于是又会主动触发ARP的重新学习和更新,如此重复直至找到合适的交换机端口,建立重新稳定的通信为止。于是,交换机在这个过程中会频繁地收到拓扑改变的消息,动态ARP的表项也会被频繁删除,由于动态ARP的触发和学习都必须由CPU完成,如果ARP表项被频繁删除,那么重新触发和学习会占用交换机大量的CPU时间,而且受CPU处理能力的限制,在网络比较复杂的情况下,可能无法在短时间内学到所有的ARP表项,导致网络出现闪断。另外,由于ARP的主动请求是广播报文,在复杂的网络内,如果所有ARP都被删除,在短时间内会触发大量的ARP请求,从而导致网络内ARP广播报文的泛滥。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种快速更新ARP的方法,使用该方法可以改进在网络拓扑结构发生变化或网络发生故障时ARP的更新机制,节约CPU的时间,避免网络中广播报文的泛滥,从而提高ARP的收敛能力和网络稳定性。为了实现上述专利技术目的,本专利技术提供一种快速更新ARP的方法,在交换机的端口状态发生变化时,该方法包括:A、保留端口状态发生变化的交换机的ARP表项;B、该交换机获取与端口状态变化相关的设备的Mac地址以及Mac地址所携带的该交换机的端口信息;C、该交换机根据Mac地址查找有相同Mac地址信息的ARP表项,并用端口信息更新ARP表项的端口信息。所述步骤A可以进一步包括:-->将交换机上与端口状态变化相关的ARP表项设为不可用。所述步骤B可以包括:该交换机转发以太网报文时,获取报文所携带的Mac地址以及所经过的该交换机的端口信息。所述步骤B可以包括:交换机以与端口状态变化相关的设备的Mac地址为目的Mac地址,单播该目的Mac地址并采用广播发送的方式主动触发ARP请求,并获取应答消息中的Mac地址和应答消息所经过的该交换机的端口信息。所述步骤A可以进一步包括:对该交换机上与端口状态变化相关的ARP表项进行标记;所述交换机采用单播目的Mac地址、广播发送的方式主动触发ARP请求,可以包括:对有标记的ARP表项,交换机采用单播目的Mac地址、广播发送的方式主动触发有标记的ARP请求。所述步骤A还可以进一步包括:启动一个定时器;所述主动触发有标记的ARP请求,包括:以定时器的定时为时间间隔,分批主动触发有标记的ARP请求。以上所述交换机可以为分布式交换机。所述交换机为分布式交换机时,所述步骤A可以包括:保留主控板上的ARP表项,删除接口板上的ARP表项和Mac表项;所述步骤B可以包括:B1、接口板转发报文,对Mac进行学习,获取报文的Mac地址以及端口信息并发送给主控板;B2、主控板更新Mac表,并通知ARP,ARP根据更新消息中携带的Mac地址信息查找有相同Mac地址的ARP表项,并用端口信息更新ARP表项的端口信息。该方法还可以进一步包括:主控板更新ARP表项之后同步端口所在的接口板,接口板下发硬件Mac-->表并获取Mac索引,该索引与主控板传入的Mac索引值不一致时,同步主控板更新,主控板收到接口板更新消息,修改ARP表项的Mac索引,并更新主机路由,同步所有接口板。另外,所述步骤A可以包括:对主控板上与端口状态改变相关的ARP表项进行标记,同时启动定时器;所述步骤B可以包括:以定时器的定时为时间间隔,对主控板上有标记的ARP表项采用单播目的Mac、广播发送的方式主动触发ARP请求,接口板接到应答消息后,获取应答消息中的Mac地址和端口信息;所述步骤C包括:接口板根据应答消息用端口信息更新接口板和主控板的ARP表项的端口信息,同时清除标记。所述交换机还可以是集中式交换机。一种快速更新地址解析协议ARP表项的方法,在交换机的端口状态发生变化时,该方法包括:a.保留交换机上与端口状态变化相关的ARP表项,并将ARP表项设为不可用;b、该交换机转发以太网报文时,获取与端口状态变化相关的设备的Mac地址以及Mac地址所携带的该交换机的端口信息;c、该交换机根据Mac地址查找有相同Mac地址信息的ARP表项,并用Mac地址所携带的该交换机的端口信息更新该交换机的ARP表项的端口信息。一种快速更新地址解析协议ARP表项的方法,在交换机的端口状态发生变化时,该方法包括:I、保留交换机上的与端口状态变化相关的ARP表项,并对ARP表项设置标记,同时启动定时器;II、定时器超时时,交换机采用单播目的Mac地址、广播发送的方式主动触发有标记的ARP请求,并获取应答ARP请求的消息所经过的该交换机的端口信息;III、交换机根据目的Mac地址查找有相同Mac地址信息的ARP表项,并-->用Mac地址所携带的该交换机的端口信息更新交换机的ARP表项的端口信息。从以上技术方案可以看到,本专利技术所提供的一种快速更新ARP的方法具有以下有益效果:1、不直接删除动态ARP表项,避免短时问触发大量的ARP请求所造成的网络内广播报文的泛滥;2、通过Mac学习更新ARP表项,省略了主动触发ARP请求及接收ARP应答的处理流程,节约了CPU时间,并且Mac学习能力要强于ARP的学习能力,因此相比于ARP的主动触发请求,提高了更新效率和ARP的收敛能力,对于网络闪断的问题也有所缓解;3、对于不能通过Mac学习更新的ARP表项,采用单播目的Mac、本文档来自技高网
...

【技术保护点】
一种快速更新地址解析协议ARP表项的方法,其特征在于,在交换机的端口状态发生变化时,该方法包括:A、保留端口状态发生变化的交换机的ARP表项;B、该交换机获取与端口状态变化相关的设备的Mac地址以及Mac地址所携带的该交换机 的端口信息;C、该交换机根据Mac地址查找有相同Mac地址信息的ARP表项,并用端口信息更新ARP表项的端口信息。

【技术特征摘要】
1、一种快速更新地址解析协议ARP表项的方法,其特征在于,在交换机的端口状态发生变化时,该方法包括:A、保留端口状态发生变化的交换机的ARP表项;B、该交换机获取与端口状态变化相关的设备的Mac地址以及Mac地址所携带的该交换机的端口信息;C、该交换机根据Mac地址查找有相同Mac地址信息的ARP表项,并用端口信息更新ARP表项的端口信息。2、根据权利要求1所述的方法,其特征在于,所述步骤A进一步包括:将交换机上与端口状态变化相关的ARP表项设为不可用。3、根据权利要求1所述的方法,其特征在于,所述步骤B包括:该交换机转发以太网报文时,获取报文所携带的Mac地址以及所经过的该交换机的端口信息。4、根据权利要求1所述的方法,其特征在于,所述步骤B包括:交换机以与端口状态变化相关的设备的Mac地址为目的Mac地址,单播该目的Mac地址并采用广播发送的方式主动触发ARP请求,并获取应答消息中的Mac地址和应答消息所经过的该交换机的端口信息。5、根据权利要求4所述的方法,其特征在于,所述步骤A进一步包括:对该交换机上与端口状态变化相关的ARP表项进行标记;对有标记的ARP表项,交换机采用单播目的Mac地址、广播发送的方式主动触发。6、根据权利要求5所述的方法,其特征在于,所述步骤A进一步包括:启动一个定时器;以定时器的定时为时间间隔,分批主动触发有标记的ARP请求。7、根据权利要求1所述的方法,其特征在于,所述交换机为分布式交换机。8、根据权利要求7所述的方法,其特征在于,所述步骤A包括:保留主控板上的ARP表项,删除接口板上的ARP表项和Mac表项;所述步骤B包括:B1、接口板转发报文,对Mac进行学习,获取报文的Mac地址以及端口信息并发送给主控板;B2、主控板更新Mac表,并通知ARP,ARP根据更新消息中携带的Mac地址信息查找有相同Mac地址的ARP表项,并用端口信息更新ARP表项的端口信息。9、根据权利要求8所述的方法,其...

【专利技术属性】
技术研发人员:滕利明
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86[中国|杭州]

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

1