CN105591793B - 一种快转表项老化方法和装置 - Google Patents
一种快转表项老化方法和装置 Download PDFInfo
- Publication number
- CN105591793B CN105591793B CN201510401255.3A CN201510401255A CN105591793B CN 105591793 B CN105591793 B CN 105591793B CN 201510401255 A CN201510401255 A CN 201510401255A CN 105591793 B CN105591793 B CN 105591793B
- Authority
- CN
- China
- Prior art keywords
- fast
- list item
- turn construction
- construction list
- time
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种快转表项老化方法和装置,技术方案为:接收一数据流的报文,将接收所述报文的时间写入所述数据流对应的快转表项的时间戳time_stamp;以轮询方式遍历所有快转表项,遍历到任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。本发明能够提高设备的快转性能。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种快转表项老化方法和装置。
背景技术
快速转发采用高速缓存来处理报文,即采用基于数据流的技术。Internet上的数据基本上都是基于数据流,一般用五元组来描述一个数据流:源IP地址、源端口号、目的IP地址、目的端口号、协议号。当报文第一次通过快转处理单元转发时会上送平台处理,平台根据报文的五元组信息在表项存储单元上建立快转表项,后续具有相同五元组的报文命中快转表项并通过快转处理单元转发,不需要再次上送平台处理。
快转表项有一定生存时间,达到快转表项的生存时间后,需要删除快转表项,如果没有达到快转表项的生存时间,则需要更新快转表项的时间戳(time_stamp)。
现有快转表项老化的方法是回写time_stamp,根据老化周期(aging_cycle)和快转表项数量N计算出操作每个快转表项的时间t,t=aging_cycle÷N。老化处理单元在时间t内将快转表项从表项存储单元中读出,将快转表项中的time_stamp与快转表项的生存时间比较,如果超过生存时间(即快转表项的time_stamp>=快转表项的生存时间),则需要删除快转表项,否则,更新快转表项的time_stamp(也即执行如下操作:更新后的time_stamp=更新前的time_stamp+aging_cycle),并将更新后的time_stamp回写至表项存储单元。
可以看出,现有快转表项老化的方法中,老化处理单元对表项存储单元进行大量的读写切换动作,造成快转处理单元对表项存储单元的读写性能比较低,从而导致整体快转性能不高。另一方面,由于老化处理单元与快转处理单元可能同时在操作(此处操作为:写操作)同一个快转表项,为了防止两者同时操作同一个快转表项,老化处理单元和快转处理单元需争夺快转表项的使用权,即申请快转表项对应的锁id,这也会造成快转处理单元的性能降低,从而快转整体性能不高。
发明内容
有鉴于此,本发明的目的在于提供一种快转表项老化方法和装置,能够提高设备的快转性能。
为了达到上述目的,本发明提供了如下技术方案:
一种快转表项老化方法,包括:
接收一数据流的报文,将接收所述报文的时间写入所述数据流对应的快转表项的时间戳time_stamp;
以轮询方式遍历所有快转表项,遍历到任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。
一种快转表项老化装置,包括:报文处理单元、表项建立单元、表项老化单元;
所述报文处理单元,用于接收任一数据流的报文;
所述表项建立单元、用于报文处理单元接收到一数据流的报文时,将报文处理单元接收该报文的时间写入该数据流对应的快转表项的时间戳time_stamp;
所述表项老化单元,用于以轮询方式遍历所有快转表项,遍历到的任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。
由上面的技术方案可知,本发明中,只在接收到任一数据流的报文时,才对该数据流对应的快转表项的time_stamp进行更新,这样就避免了每轮遍历时都要更新各快转表项的time_stamp的操作,大大减少了对各快转表项的读写切换,因而能够有效提高设备的快转性能。
附图说明
图1是本发明实施例快转表项老化方法流程图;
图2是本发明实施例快转表项老化装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
参见图1,图1是本发明实施例快转表项老化方法流程图,如图1所示,预先设置一同步计时器,该同步计时器作为衡量时间的基准时钟,该方法主要包括以下步骤:
步骤101、接收一数据流的报文,将接收该报文的时间(也即同步计时器的当前时间)写入该数据流对应的快转表项的time_stamp。
现有技术中,每次遍历到一个数据流对应的快转表项时,都需要回写(也即更新)该快转表项的time_stamp,这是导致设备的快转性能降低的根本原因。为了避免每轮遍历时更新各快转表项的time_stamp导致的设备快转性能降低,本实施例中,对于任一数据流,只有在接收到该数据流的报文的情况下,才更新该数据流对应的快转表项的time_stamp。
步骤102、以轮询方式遍历所有快转表项,遍历到任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间(也即同步计时器的当前时间)确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。
这里,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项的方法具体可以为:将遍历到该快转表项的时间减去该快转表项的time_stamp,将其差值与该快转表项的生存时间进行比较,就可以确定是否需要老化该快转表项,如果其差值小于该快转表项的生存时间,则可确定不需要老化该快转表项,否则可确定需要老化该快转表项。
在一个例子中,在接收到某一数据流的报文之后,将接收报文的时间写入该数据流对应的快转表项之前,需要判断是否已经存在该数据流对应的快转表项,存在该数据流对应的快转表项时,才可以执行写入该快转表项的time_stamp的操作。
接收到一数据流的报文时,该数据流对应的快转表项不存在的情况有以下两种:
一、接收到的报文是该数据流的首报文时,此时不存在该数据流对应的快转表项,需要基于该数据流的五元组建立该数据流对应的快转表项。此后的每个轮询周期内都要遍历一次该快转表项以确定该快转表项是否需要被老化,直到该数据流对应的快转表项被老化。
二、接收到的报文不是该数据流的首报文,但是该数据流对应的快转表项已经被老化时,此时不存在该数据流对应的快转表项,需要基于该数据流的五元组重新建立该数据流对应的快转表项。此后的每个轮询周期内都要遍历一次该快转表项以确定该快转表项是否需要被老化,直到该数据流对应的快转表项被老化。
以上对本发明优化快转表项老化的方法进行了详细说明,本发明还提供了一种优化快转表项老化的装置,下面结合图2进行说明。
参见图2,图2是本发明实施例快转表项老化装置的结构示意图,如图2所示,该装置包括:报文处理单元201、表项建立单元202、表项老化单元203;其中,
报文处理单元201,用于接收任一数据流的报文;
表项建立单元202、用于报文处理单元201接收到一数据流的报文时,将报文处理单元201接收到该报文的时间写入该数据流对应的快转表项的时间戳time_stamp;
表项老化单元203,用于以轮询方式遍历所有快转表项,遍历到的任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。
图2所示装置中,
所述表项建立单元202,在将报文处理单元201接收该报文的时间写入该数据流对应的快转表项的time_stamp之前,进一步用于:如果该报文是该数据流的首报文,则建立该数据流对应的快转表项。
图2所示装置中,
所述表项建立单元202,在将报文处理单元201接收该报文的时间写入该数据流对应的快转表项的time_stamp之前,进一步用于:如果该报文不是该数据流的首报文且该数据流对应的快转表项已被老化,则重新建立该数据流对应的快转表项。
图2所示装置中,
所述表项老化单元203根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项时,用于:计算遍历到该快转表项的时间与该快转表项的time_stamp的差值,如果差值小于该快转表项的生存时间,则确定不需要老化该快转表项,否则,确定需要老化该快转表项。
图2所示装置还包括配置单元204;
所述配置单元204,用于预先设置一同步计时器,所述同步计时器作为衡量时间的基准时钟。
可以看出,在本发明的技术方案中,只有当接收到某一数据流的报文时,才会对该数据流对应的快转表项的time_stamp进行更新,而在每轮轮询中,当遍历到该快转表项时不需要更新其time_stamp的,因此轮询过程中,老化处理单元对所有快转表项只涉及读操作,相对于现有技术中频繁的读写切换,可有效避免因读写性能低下而导致的快转性能不高;另外,由于老化处理单元对快转表项的读操作不需要申请快转表项对应的锁id,不需要和快转处理单元争夺操作快转表项的使用权,因此可以减小快转处理单元申请锁id的冲突概率,提高快转处理性能。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种快转表项老化方法,其特征在于,该方法包括:
接收一数据流的报文,如果存在该数据流对应的快转表项,则将接收所述报文的时间写入所述数据流对应的快转表项的时间戳time_stamp;
以轮询方式遍历所有快转表项,遍历到任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。
2.根据权利要求1所述的方法,其特征在于,
如果所述报文是所述数据流的首报文,则在将接收所述报文的时间写入所述数据流对应的快转表项的time_stamp之前,进一步包括:建立所述数据流对应的快转表项。
3.根据权利要求2所述的方法,其特征在于,
如果所述报文不是所述数据流的首报文且所述数据流对应的快转表项已被老化,则在将接收所述报文的时间写入所述数据流对应的快转表项的time_stamp之前,进一步包括:重新建立所述数据流对应的快转表项。
4.根据权利要求1、2、或3所述的方法,其特征在于,
根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项的方法为:计算遍历到该快转表项的时间与该快转表项的time_stamp的差值,如果差值小于该快转表项的生存时间,则确定不需要老化该快转表项,否则,确定需要老化该快转表项。
5.根据权利要求1、2、或3所述的方法,其特征在于,
预先设置一同步计时器,所述同步计时器作为衡量时间的基准时钟。
6.一种快转表项老化装置,其特征在于,该装置包括:报文处理单元、表项建立单元、表项老化单元;
所述报文处理单元,用于接收任一数据流的报文;
所述表项建立单元、用于报文处理单元接收到一数据流的报文时,如果存在该数据流对应的快转表项,则将报文处理单元接收该报文的时间写入该数据流对应的快转表项的时间戳time_stamp;
所述表项老化单元,用于以轮询方式遍历所有快转表项,遍历到的任一快转表项时,根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项,如果是,则对该快转表项进行老化处理。
7.根据权利要求6所述的装置,其特征在于,
所述表项建立单元,在将报文处理单元接收该报文的时间写入该数据流对应的快转表项的time_stamp之前,进一步用于:如果该报文是该数据流的首报文,则建立该数据流对应的快转表项。
8.根据权利要求7所述的装置,其特征在于,
所述表项建立单元,在将报文处理单元接收该报文的时间写入该数据流对应的快转表项的time_stamp之前,进一步用于:如果该报文不是该数据流的首报文且该数据流对应的快转表项已被老化,则重新建立该数据流对应的快转表项。
9.根据权利要求6、7、或8所述的装置,其特征在于,
所述表项老化单元根据该快转表项的time_stamp和遍历到该快转表项的时间确定是否需要老化该快转表项时,用于:计算遍历到该快转表项的时间与该快转表项的time_stamp的差值,如果差值小于该快转表项的生存时间,则确定不需要老化该快转表项,否则,确定需要老化该快转表项。
10.根据权利要求6、7、或8所述的装置,其特征在于,
该装置还包括配置单元,用于预先设置一同步计时器,所述同步计时器作为衡量时间的基准时钟。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510401255.3A CN105591793B (zh) | 2015-07-07 | 2015-07-07 | 一种快转表项老化方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510401255.3A CN105591793B (zh) | 2015-07-07 | 2015-07-07 | 一种快转表项老化方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105591793A CN105591793A (zh) | 2016-05-18 |
CN105591793B true CN105591793B (zh) | 2019-01-18 |
Family
ID=55931052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510401255.3A Active CN105591793B (zh) | 2015-07-07 | 2015-07-07 | 一种快转表项老化方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105591793B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1996948A (zh) * | 2006-12-28 | 2007-07-11 | 杭州华为三康技术有限公司 | 基于媒体访问控制层的报文转发方法和装置 |
US7609689B1 (en) * | 2001-09-27 | 2009-10-27 | Cisco Technology, Inc. | System and method for mapping an index into an IPv6 address |
CN101820392A (zh) * | 2010-03-26 | 2010-09-01 | 中兴通讯股份有限公司 | 一种实现多业务转发的方法和网络处理器 |
CN102136986A (zh) * | 2010-01-22 | 2011-07-27 | 杭州华三通信技术有限公司 | 一种负载分担方法和交换设备 |
CN103384221A (zh) * | 2013-06-26 | 2013-11-06 | 汉柏科技有限公司 | 一种业务优先报文快转优化方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100393072C (zh) * | 2006-02-20 | 2008-06-04 | 杭州华三通信技术有限公司 | 一种表项的存储方法、装置及查询方法 |
CN100591044C (zh) * | 2006-10-16 | 2010-02-17 | 华为技术有限公司 | 建立转发过滤表的方法与装置 |
CN100531146C (zh) * | 2007-01-25 | 2009-08-19 | 华为技术有限公司 | 基于流转发的更新流转发表项内容的方法及设备 |
CN100587694C (zh) * | 2008-03-19 | 2010-02-03 | 杭州华三通信技术有限公司 | 一种维护表项的方法和装置 |
WO2011120461A2 (zh) * | 2011-05-06 | 2011-10-06 | 华为技术有限公司 | 提高转发表访问性能的方法和装置 |
-
2015
- 2015-07-07 CN CN201510401255.3A patent/CN105591793B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7609689B1 (en) * | 2001-09-27 | 2009-10-27 | Cisco Technology, Inc. | System and method for mapping an index into an IPv6 address |
CN1996948A (zh) * | 2006-12-28 | 2007-07-11 | 杭州华为三康技术有限公司 | 基于媒体访问控制层的报文转发方法和装置 |
CN102136986A (zh) * | 2010-01-22 | 2011-07-27 | 杭州华三通信技术有限公司 | 一种负载分担方法和交换设备 |
CN101820392A (zh) * | 2010-03-26 | 2010-09-01 | 中兴通讯股份有限公司 | 一种实现多业务转发的方法和网络处理器 |
CN103384221A (zh) * | 2013-06-26 | 2013-11-06 | 汉柏科技有限公司 | 一种业务优先报文快转优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105591793A (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9473373B2 (en) | Method and system for storing packet flows | |
US9154397B2 (en) | Methods and computer program products for transaction relationships between application servers | |
US8121043B2 (en) | Approach for managing the consumption of resources using adaptive random sampling | |
CN112866111B (zh) | 流表管理的方法和装置 | |
CN107786450B (zh) | 一种数据报文传输方法、装置及机器可读存储介质 | |
CN105684382A (zh) | 报文的控制方法、交换机及控制器 | |
US20110145842A1 (en) | Systems, Methods and Computer Readable Media for Routing Requests from an Application | |
EP3068083B1 (en) | Method and apparatus for remaining lifetime aging | |
CN103546467A (zh) | 在TCP/IP网络上传输Modbus RTU协议的方法 | |
CN107276916B (zh) | 基于协议无感知转发技术的交换机流表管理方法 | |
US20150271252A1 (en) | Rule distribution server, event processing system and method, and program | |
CN107896141B (zh) | 一种fc-ae-asm网络数据冗余方法 | |
US20240106751A1 (en) | Method and apparatus for processing detnet data packet | |
CN105099916A (zh) | 开放流路由交换设备及其对数据报文的处理方法 | |
CN105227348A (zh) | 一种基于ip五元组的哈希存储方法 | |
CN101232508B (zh) | 加速多生成树协议网络拓扑收敛的方法及设备 | |
CN104702530B (zh) | 一种环网中Goose报文的发送方法及装置 | |
US20170064489A1 (en) | Network system, method for determining communication quality, and analysis apparatus | |
CN116938777B (zh) | 网络遥测的方法及装置、电子设备和存储介质 | |
CN105591793B (zh) | 一种快转表项老化方法和装置 | |
US10904150B1 (en) | Distributed dynamic load balancing in network systems | |
CN105634999B (zh) | 一种介质访问控制地址的老化方法及装置 | |
CN108111420B (zh) | 一种流表项管理方法、装置、电子设备及存储介质 | |
CN116015796A (zh) | 一种流表更新方法、装置、防火墙设备及存储介质 | |
CN107547390B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |