CN103188155B - 一种基于分布式系统的arp实现方法 - Google Patents

一种基于分布式系统的arp实现方法 Download PDF

Info

Publication number
CN103188155B
CN103188155B CN201110445916.4A CN201110445916A CN103188155B CN 103188155 B CN103188155 B CN 103188155B CN 201110445916 A CN201110445916 A CN 201110445916A CN 103188155 B CN103188155 B CN 103188155B
Authority
CN
China
Prior art keywords
arp
line card
destination
request
local
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110445916.4A
Other languages
English (en)
Other versions
CN103188155A (zh
Inventor
汪革
彭双庭
蒋晓刚
陈少春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI BAUD DATA COMMUNICATION CO Ltd
Original Assignee
SHANGHAI BAUD DATA COMMUNICATION CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI BAUD DATA COMMUNICATION CO Ltd filed Critical SHANGHAI BAUD DATA COMMUNICATION CO Ltd
Priority to CN201110445916.4A priority Critical patent/CN103188155B/zh
Publication of CN103188155A publication Critical patent/CN103188155A/zh
Application granted granted Critical
Publication of CN103188155B publication Critical patent/CN103188155B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种基于分布式系统的ARP实现方法,该方法中当线卡需要跨线卡解析ARP时,直接向目的线卡请求ARP表项;如果目的线卡存在该ARP表项,则直接将ARP表项返回给请求线卡;否则,目的线卡将发送ARP请求,进行ARP解析,并将解析到的ARP表项同步给其他线卡。本发明采用直接向目的线卡请求ARP的方法避免给主控造成压力,其与现有技术相比,ARP解析效率得到了极大的提高,并且还使主控的稳定性得到提高。

Description

一种基于分布式系统的ARP实现方法
技术领域
本发明涉及网络数据传输技术,具体涉及一种分布式系统数据处理技术。
背景技术
在分布式系统上,当收到跨线卡转发的报文时,为了提高整机的处理性能,通常会考虑由入口线卡完成整个转发工作。因此,要求在入口线卡上,能够查询到出口线卡的ARP信息。通常情况下,首先线卡可以将学习到的ARP表项同步到主控,然后,当其他线卡需要跨线卡解析ARP时,再将主控上的ARP表项同步到线卡上。但是,如果主控上也没有该ARP表项,主控将向目的线卡请求,然后目的线卡再发送ARP请求。
这样这样的处理机制带来的问题就是效率不高,需要多次板间通信才能完成整个ARP学习过程,而当遇到突发流量时,将对主控和板间通信造成很大的压力。
发明内容
本发明针对上述现有方案中分布式系统在处理ARP信息时,间接向主控请求ARP所存在的效率低下,且当遇到突发流量时,将对主控和线板间通信造成压力等问题,而提供一种新型的基于分布式系统的ARP实现方法。该方法能够大大简化和加速分布式系统的ARP解析过程。
为了达到上述目的,本发明采用如下的技术方案:
一种基于分布式系统的ARP实现方法,该方法中当线卡需要跨线卡解析ARP时,直接向目的线卡请求ARP表项;如果目的线卡存在该ARP表项,则直接将ARP表项返回给请求线卡;否则,目的线卡将发送ARP请求,进行ARP解析,并将解析到的ARP表项同步给其他线卡。
在本发明的实例中,所述ARP实现过程中线卡ARP解析的步骤如下:
1)首先在本地线卡ARP表中生成一条不完整的ARP表项,并将报文缓存在ARP表项下;
(2)如果目的端口是本地端口,直接发送ARP请求,等待ARP回应;否则,则转步骤4;
(3)如果ARP请求超时,则转步骤8;否则,向其他线卡同步ARP表项,并进行关联,接着转步骤7;
(4)如果目的端口不是本地端口,则向目的线卡请求ARP表项,如果目的线卡存在该ARP表项,则该ARP表项关联请求线卡,并转步骤7;否则,则在目的线卡ARP表项中生成一条不完整的ARP表项,并发送ARP请求;
(5)如果ARP请求超时,则转步骤9;否则,先完成目的线卡ARP表项,再向其他线卡同步ARP表项,并进行关联;
(7)完成线卡ARP表项,并发送缓存的报文(结束);
(8)删除线卡ARP表项,并释放缓存的报文(结束);
(9)删除目的线卡ARP表项(结束);。
在本发明的实例中,所述ARP实现过程中ARP的查询过程是当线卡收到转发报文时,只需要查询本地线卡ARP表项,如果存在该ARP表项,返回查询结果,否则返回查询失败。
在本发明的实例中,所述ARP实现过程中ARP表项的老化步骤如下:
首先,线卡删除本地的ARP表项;
然后,通知目的线卡取消与该ARP表项的关联;
接着,目的线卡检查该ARP表项的关联关系;
最后,如果目的线卡发现该ARP表项没有任何关联,将删除该ARP表项。
在本发明的实例中,所述ARP实现过程中ARP的更新步骤如下:
首先,更新本地线卡的ARP表项;
然后,通知当前关联该ARP表项的线卡,更新相应的ARP表项。
本发明采用直接向目的线卡请求ARP的方法避免给主控造成压力,其与现有技术相比,ARP解析效率得到了极大的提高,并且还使主控的稳定性得到提高。
附图说明
以下结合附图和具体实施方式来进一步说明本发明。
图1为基于本发明实施的ARP解析流程图。
图2为基于本发明实施的ARP查询流程图。
图3为基于本发明实施的ARP老化流程图。
图4为基于本发明实施的ARP更新流程图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
针对现有技术中采用间接向主控请求ARP的方案所存在的效率低下,当遇到突发流量时,将对主控和板间通信造成压力等问题,本发为简化和加速分布式系统的ARP解析过程,提供一种直接向目的线卡请求ARP的方法避免给主控造成压力,其具体过程是:当线卡需要跨线卡解析ARP时,直接向目的线卡请求ARP表项;如果目的线卡存在该ARP表项,则直接将ARP表项返回给请求线卡;否则,目的线卡将发送ARP请求,进行ARP解析,并将解析到的ARP表项同步给其他线卡。
基于上述原理,本发明的具体实施如下:
每块线卡都维护着两种ARP表项:本地ARP表项和非本地ARP表项。本地ARP表项是本线卡通过发送ARP请求解析到的,而非本地ARP表项是向目的线卡请求ARP获得的。
每个本地ARP表项都有一个Slot_Mask,每1bit代表一块线卡,表示与其他线卡之间的关联关系。当其他线卡从本线卡学习到ARP时,就会建立与该ARP表项的关联关系(相应bit置位)。
当非本地ARP表项老化后,需要通知目的线卡,取消与该ARP表项的关联关系(相应bit清除)。而目的线卡将检查该ARP表项的关联关系,当没有任何关联时,将删除该ARP表项。
当本地ARP有更新时,根据当前关联关系,向相关线卡同步ARP表项,而无需向所有线卡全部同步。
ARP同步有两种方式:即时同步与批量同步。对于其他线卡请求的ARP表项以及有更新的ARP表项,需要及时通知其他线卡,因此采用即时同步方式;而对于本地主动解析到的ARP表项,则采用批量同步的方式。批量同步使用一个定时器,当定时器超时的时候,将需要同步的ARP表项一次性批量同步给其他线卡,从而达到减少线卡间通信次数的目的。
1、ARPresolve
参见图1,线卡ARP解析包括本地和非本地端口的ARP解析。
其中,本地端口的ARP解析与单板相同,从本地端口发送ARP请求,当收到ARP回应后,将完成本地ARP表项,并向其他线卡进行同步ARP表项。而非本地端口的ARP解析,需要从目的线卡获取ARP表项。如果,目的线卡有该表项,则将表项返回给线卡;否则,目的线卡需要发送ARP请求进行解析。
具体步骤如下:
(1)首先在本地线卡ARP表中生成一条不完整的ARP表项,并将报文缓存在ARP表项下。
(2)如果目的端口是本地端口,直接发送ARP请求,等待ARP回应;否则,则转步骤4。
(3)如果ARP请求超时,则转步骤8;否则,向其他线卡同步ARP表项,并进行关联,接着转步骤7。
(4)如果目的端口不是本地端口,则向目的线卡请求ARP表项。如果目的线卡存在该ARP表项,则该ARP表项关联请求线卡,并转步骤7;否则,则在目的线卡ARP表项中生成一条不完整的ARP表项,并发送ARP请求。
(5)如果ARP请求超时,则转步骤9;否则,先完成目的线卡ARP表项,再向其他线卡同步ARP表项,并进行关联。
(7)完成线卡ARP表项,并发送缓存的报文(结束)。
(8)删除线卡ARP表项,并释放缓存的报文(结束)。
(9)删除目的线卡ARP表项(结束)。
2、ARPlookup
参见图2,由于线卡上有本线卡及其他线卡的ARP表项,因此在线卡收到转发报文时,只需要查询本地线卡ARP表项,如果存在该ARP表项,返回查询结果并结束查询;如果不存在该ARP表项,同样返回查询结果并结束查询。其查询过程与单板无异。
3、ARPaging
参见图3,各线卡分别对ARP表项进行老化,而线卡老化后需要通知目的线卡“取消与该ARP表项的关联”。步骤如下:首先,线卡删除本地的ARP表项;然后,通知目的线卡取消与该ARP表项的关联;接着,目的线卡检查该ARP表项的关联关系;最后,如果目的线卡发现该ARP表项没有任何关联,将删除该ARP表项。
4、ARPupdate
参见图4,当线卡收到免费ARP,需要更新系统的ARP表项。步骤如下:首先,更新本地线卡的ARP表项;然后,通知当前关联该ARP表项的线卡,更新相应的ARP表项。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (4)

1.一种基于分布式系统的ARP实现方法,其特征在于,所述方法中当线卡需要跨线卡解析ARP时,直接向目的线卡请求ARP表项;如果目的线卡存在该ARP表项,则直接将ARP表项返回给请求线卡;否则,目的线卡将发送ARP请求,进行ARP解析,并将解析到的ARP表项同步给其他线卡;
所述ARP实现过程中ARP的查询过程是当线卡收到转发报文时,只需要查询本地线卡ARP表项,如果存在该ARP表项,则返回查询结果;否则,返回查询失败。
2.根据权利要求1所述的一种基于分布式系统的ARP实现方法,其特征在于,所述ARP实现过程中线卡ARP解析的步骤如下:
(1)首先在本地线卡ARP表中生成一条不完整的ARP表项,并将报文缓存在ARP表项下;
(2)如果目的端口是本地端口,直接发送ARP请求,等待ARP回应;否则,则转步骤4;
(3)如果ARP请求超时,则转步骤8;否则,向其他线卡同步ARP表项,并进行关联,接着转步骤7;
(4)如果目的端口不是本地端口,则向目的线卡请求ARP表项,如果目的线卡存在该ARP表项,则该ARP表项关联请求线卡,并转步骤7;否则,则在目的线卡ARP表项中生成一条不完整的ARP表项,并发送ARP请求;
(5)如果ARP请求超时,则转步骤9;否则,先完成目的线卡ARP表项,再向其他线卡同步ARP表项,并进行关联;
(7)完成线卡ARP表项,并发送缓存的报文,结束解析;
(8)删除线卡ARP表项,并释放缓存的报文,结束解析;
(9)删除目的线卡ARP表项,结束解析。
3.根据权利要求1所述的一种基于分布式系统的ARP实现方法,其特征在于,所述ARP实现过程中ARP表项的老化步骤如下:
首先,线卡删除本地的ARP表项;
然后,通知目的线卡取消与该ARP表项的关联;
接着,目的线卡检查该ARP表项的关联关系;
最后,如果目的线卡发现该ARP表项没有任何关联,将删除该ARP表项。
4.根据权利要求1所述的一种基于分布式系统的ARP实现方法,其特征在于,所述ARP实现过程中ARP的更新步骤如下:
首先,更新本地线卡的ARP表项;
然后,通知当前关联该ARP表项的线卡,更新相应的ARP表项。
CN201110445916.4A 2011-12-27 2011-12-27 一种基于分布式系统的arp实现方法 Active CN103188155B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110445916.4A CN103188155B (zh) 2011-12-27 2011-12-27 一种基于分布式系统的arp实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110445916.4A CN103188155B (zh) 2011-12-27 2011-12-27 一种基于分布式系统的arp实现方法

Publications (2)

Publication Number Publication Date
CN103188155A CN103188155A (zh) 2013-07-03
CN103188155B true CN103188155B (zh) 2016-04-06

Family

ID=48679126

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110445916.4A Active CN103188155B (zh) 2011-12-27 2011-12-27 一种基于分布式系统的arp实现方法

Country Status (1)

Country Link
CN (1) CN103188155B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107360268B (zh) * 2017-06-23 2020-11-06 北京奇艺世纪科技有限公司 一种数据包处理方法、装置及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829190A (zh) * 2005-03-01 2006-09-06 杭州华为三康技术有限公司 一种分布式arp实现方法
CN101335610A (zh) * 2007-06-27 2008-12-31 上海博达数据通信有限公司 一种高端以太网交换机中的arp同步方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829190A (zh) * 2005-03-01 2006-09-06 杭州华为三康技术有限公司 一种分布式arp实现方法
CN101335610A (zh) * 2007-06-27 2008-12-31 上海博达数据通信有限公司 一种高端以太网交换机中的arp同步方法

Also Published As

Publication number Publication date
CN103188155A (zh) 2013-07-03

Similar Documents

Publication Publication Date Title
CN100586108C (zh) 一种更新地址解析协议表中端口地址的方法和设备
CN105847456B (zh) 一种rs485自动分配地址方法、装置和系统
CN105491017B (zh) Rs485总线多设备多协议解析方法及系统
CN105430113A (zh) Sdn网络arp报文处理方法、系统、控制器及交换机
CN102752224A (zh) 一种交换机报文转发方法和装置
CN104333475A (zh) 一种基于sdn的网络拓扑发现方法及系统
CN104125128A (zh) Linux软桥支持VLAN的方法
CN104283891A (zh) 将业务功能节点接入业务链网络的方法和装置
CN102624943B (zh) 交换机对智能电子设备端口自动学习方法及系统
CN101562545B (zh) 网络唤醒的测试方法
CN101877803A (zh) 一种实现组播预览的方法、系统及装置
US20220263859A1 (en) Method and apparatus for defending against cyber attacks, receiving device and computer storage medium
CN107911764B (zh) 一种加快密集型epon onu业务管理的方法
CN104301428A (zh) 一种数据同步方法及服务器
CN1863193B (zh) 实现网络安全装置安全策略的方法
CN103188155B (zh) 一种基于分布式系统的arp实现方法
CN101583204A (zh) 一种实现通用联合电路卡多应用文件管理的方法及系统
CN101335610B (zh) 一种高端以太网交换机中的arp同步方法
CN110753135A (zh) 一种ip地址配置方法、配置设备及存储介质
CN111130872A (zh) 一种云计算中网络设备配置恢复方法
CN102594941A (zh) 楼宇对讲系统中设备接入和设备通信的方法
CN101159641B (zh) Can总线扩展方法
CN104125099A (zh) 一种epon系统远程配置管理方法
CN101656722A (zh) 动态主机配置协议窥探绑定信息的生成方法与装置
CN101677314B (zh) 一种同步数据操作的标识方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant