[发明专利]网络设备中的地址解析协议表的老化更新方法和网络设备无效
申请号: | 201010254202.0 | 申请日: | 2010-08-13 |
公开(公告)号: | CN101909065A | 公开(公告)日: | 2010-12-08 |
发明(设计)人: | 贾林;朱建仪 | 申请(专利权)人: | 北京中创信测科技股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56;H04L29/12 |
代理公司: | 北京信远达知识产权代理事务所(普通合伙) 11304 | 代理人: | 王学强 |
地址: | 100081 北京市海淀区中关*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网络设备 中的 地址 解析 协议 老化 更新 方法 | ||
技术领域
本发明属于网络通信技术领域,尤其涉及一种网络设备中的地址解析协议表的老化更新方法。
背景技术
以太网交换器等设备中的ARP(地址解析协议)表用于存储主机IP地址和MAC(媒介访问控制)地址之间的对应关系,即存储主机IP地址和物理地址之间的对应关系。由于主机的IP地址和MAC地址的对应关系并不是一成不变的,当主机的网络IP地址被更换时,需要对ARP表中的相应表项进行更新,这就需要在网络设备中定期对ARP表项定期进行老化更新。
现有技术中对于ARP表项进行老化更新的一种方法是在每个ARP表项中加入时间戳,当存储ARP表的网络设备收到与该ARP表项对应的报文(即收到命中该ARP表项中的关键字)时,系统将当前时间更新为该被命中的ARP表项的时间戳。系统定期按照ARP表项的创建顺序轮询所有ARP表项,对于每个ARP表项,比较当前时间和每条ARP表项的时间戳,当两个时间的时间差超过老化时间时,将该ARP表项回收,实现对该ARP表项的老化操作。由此可见,现有技术中在进行ARP表项的老化操作时,不论ARP表项的时间戳的总体更新情况,都需要对整个APR表中的所有ARP表项进行轮询操作,这就造成了系统在对ARP进行老化更新时消耗的CPU的资源过大,尤其对于当一个网络设备中存储数百万级等庞大数量的ARP表项时,这个问题更为严重。
发明内容
有鉴于此,本发明的目的在于提供一种网络设备中的地址解析协议表的老化更新方法和网络设备。
为实现上述目的,本发明的一个实施例提供一种络设备中的地址解析协议表的老化更新方法,该方法包括:
在收到新报文时,将该新报文命中的ARP表项的时间戳更新为当前时间,并将该ARP表项的查询顺序调整为所有ARP表项中的最后一位;
在进行老化更新时,按照查询顺序从前向后轮询ARP表中的ARP表项,比较本次老化更新的启动时间与ARP表项的时间戳之间的时间差是否大于老化时间,如果是,则回收该ARP表项,如果否,则停止轮询过程。
优选地,ARP表中的ARP表项采用双向链表的方式进行存储管理,所述双向链表中的每个结点中的数据域中存储各自对应的ARP表项,所述双向链表中的与ARP表项相对应的结点的顺序与所述ARP表项的查询顺序相一致。
优选地,在收到新报文时,将新报文命中的ARP表项的查询顺序调整为所有ARP表项中的最后一位包括:将新报文命中的ARP表项相对应的双向链表中的结点调整为该双向链表中的尾结点。
优选地,所述按照查询顺序从前向后轮询ARP表项包括:按照双向链表中的结点的顺序,从头结点开始向后,轮询结点对应的ARP表项。
优选地,还包括:维护一尾指针和头指针,所述头指针指向双向链表的头结点,所述尾指针指向双向链表的尾结点;所述将新报文命中的ARP表项相对应的双向链表中的结点修改为该双向链表中的尾结点包括:
将该尾指针调整为指向该新报文命中的ARP表项对应的结点,并将调整前尾指针指向的结点的后指针修改为指向该新报文命中的ARP表项对应的结点,将该新报文命中的ARP表项对应的结点的前指针和后指针分别修改为指向该调整前尾指针指向的结点和置空。
另一方面,本发明实施例还提供一种网络设备,包括ARP表维护单元和老化更新单元;
所述ARP表维护单元用于维护APR表中的ARP表项及其查询顺序,并在收到新报文时,将该新报文命中的ARP表项的时间戳更新为当前时间,并将该ARP表项的查询顺序调整为所有ARP表项中的最后一位;
所述老化更新单元包括:轮询子单元、比较子单元和回收子单元;
所述轮询子单元用于在老化更新时,按照查询顺序从前向后轮询ARP表中的ARP表项;
所述比较子单元用于比较本次老化更新的启动时间与轮询子单元轮询到的ARP表项的时间戳之间的时间差是否大于老化时间,如果是,则触发回收子单元回收该ARP表项,如果否,则触发轮询子单元停止轮询过程。
优选地,所述ARP表维护单元采用双向链表的方式对ARP表中的ARP表项进行存储管理,所述双向链表中的每个结点中的数据域中存储各自对应的ARP表项,所述ARP表项的查询顺序与所述双向链表中的与ARP表项相对应的结点的顺序一致。
优选地,在收到新报文时,所述ARP表维护单元将报文命中的ARP表项相对应的双向链表中的结点修改为该双向链表中的尾结点。
优选地,所述轮询子单元具体用于按照双向链表中的结点的顺序,从头结点开始向后,轮询结点对应的ARP表项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中创信测科技股份有限公司,未经北京中创信测科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010254202.0/2.html,转载请声明来源钻瓜专利网。