CN103888377A - 报文缓存方法及装置 - Google Patents
报文缓存方法及装置 Download PDFInfo
- Publication number
- CN103888377A CN103888377A CN201410122899.4A CN201410122899A CN103888377A CN 103888377 A CN103888377 A CN 103888377A CN 201410122899 A CN201410122899 A CN 201410122899A CN 103888377 A CN103888377 A CN 103888377A
- Authority
- CN
- China
- Prior art keywords
- queue
- sheet
- buffer memory
- message
- storage ratio
- 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.)
- Withdrawn
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本发明实施例公开了报文缓存方法及装置。方法包括:接收待缓存报文;确定待缓存报文所属的队列;获取队列的预设存储比;计算队列的实际存储比;若实际存储比大于等于预设存储比,那么将待缓存报文缓存至片外存储;否则,将待缓存报文缓存至片内存储。装置包括:接收单元,确定单元,获取单元,计算单元,存储单元。本发明实施例,可以将同一队列的报文交替缓存至片内存储与片外存储,每一个队列的报文都只能占用片内存储内的部分资源,当某一队列发生业务拥塞时,不影响将其他队列报文缓存至片内存储,防止片内存储读写频率低而片外存储读写频繁的情况,从而提高片内存储的利用率,提高报文缓存速度,降低报文缓存功耗。
Description
技术领域
本发明涉及通信处理领域,尤其涉及报文缓存方法及装置。
背景技术
网络芯片,又被称为网络处理器(NP,NETWORK PROCESSOR),是一种应用于通信领域各种任务处理的可编程器件。网络芯片能够直接完成网络数据处理的一般性任务,比如包处理、协议分析、路由查找、声音/数据的汇聚、防火墙、网络服务质量(QoS,Qualityof Service)等。
网络芯片在对报文进行各种处理之前,需要对报文进行缓存。随着网络芯片的规模越来越大以及用户对带宽的要求越来越高,用户对缓存报文的带宽要求也越来越高,仅仅使用网络芯片自带的片内存储对报文进行缓存已经远远不能满足实际需要。为满足报文进行缓存的实际需要,在实际使用中通常会为网络芯片增加片外存储。对报文进行缓存时,报文优先都存入网络芯片的片内存储中,当片内存储中可用空间不足时,再将报文存储在片外存储中。
由于报文的类型通常有多种,每种类型的报文都对应处理方式也不尽相同。为便于报文的后续处理,网络芯片在缓存报文前,通常预先设置若干个队列,同一类型的报文放入同一个队列中进行处理。采用现有报文缓存方法,若某一个队列发生业务拥塞,一方面会导致该队列的报文长时间占用片内存储的存储空间得不到处理,另一方面会导致该队列的报文占用片内存储的存储空间越来越多,从而导致片内存储读写频率低而片外存储读写频繁。由于片内存储的读写速度通常高于片外存储的读写速度,对片内存储进行读写的功耗也通常小于对片外存储空间进行读写的功耗。因此采用现有报文缓存方式,若某一个队列发生业务拥塞,容易导致报文缓存速度整体变慢,报文缓存功耗增大。
发明内容
本发明实施例提供了报文缓存方法及装置,以解决现有报文缓存方法,在发生业务拥塞时,会导致报文缓存速度整体变慢、功耗增大问题。
第一方面,本发明实施例提供了一种报文缓存方法,该方法包括:接收待缓存报文;确定所述待缓存报文所属的队列;获取所述队列的预设存储比;计算所述队列的实际存储比;若所述实际存储比大于等于所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。
结合第一方面,在第一方面第一种可能的实现方式中,所述确定所述待缓存报文所属的队列包括:若片内存储的可用空间小于第一预设值,确定所述待缓存报文所属的队列。
结合第一方面或第一方面第一种可能的实现方式,在第一方面第二种可能的实现方式中,所述获取所述队列的预设存储比包括:计算所述队列的片内存储数据量;若所述片内存储数据量小于所述第二预设值,获取与所述片内存储数据量对应的预设存储比。
结合第一方面或第一方面第二种可能的实现方式,在第一方面第三种可能的实现方式中,所述获取与所述片内存储数据量对应的预设存储比包括:确定所述片内存储数据量所属的阈值范围;将与所述阈值范围对应的预设值作为预设存储比。
结合第一方面第二种可能的实现方式或第一方面第三种可能的实现方式,在第一方面第四种可能的实现方式中,在所述计算所述队列的片内存储数据量之后还包括:若所述片内存储数据量大于等于所述第二预设值,将所述报待缓存报文缓存至片外存储。
结合第一方面、第一方面第一种可能的实现方式、第一方面第二种可能的实现方式、第一方面第三种可能的实现方式或第一方面第四种可能的实现方式,在第一方面第五种可能的实现方式中,所述计算所述队列的实际存储比包括:从与所述队列对应的缓存记录中读取片内存储计数量与总计数量;计算所述片内存储计数量与所述总计数量之间的所述实际存储比。
结合第一方面第五种可能的实现方式,在第一方面第六种可能的实现方式中,所述方法还包括:在所述待缓存报文缓存完成后,更新所述缓存记录。
结合第一方面第六种可能的实现方式,在第一方面第七种可能的实现方式中,所述更新所述缓存记录包括:若所述待缓存报文存入片内存储,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量;若所述待缓存报文存入片外存储,将所述待缓存报文的数据量加入所述总计数量。
结合第一方面第七种可能的实现方式,在第一方面第八种可能的实现方式中,在所述对总计数量进行更新之后还包括:若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
结合第一方面、第一方面第一种可能的实现方式、第一方面第二种可能的实现方式、第一方面第三种可能的实现方式或第一方面第四种可能的实现方式,在第一方面第九种可能的实现方式中,所述计算所述队列的实际存储比包括:计算所述片内存储数据量与总数据量之间的所述实际存储比。
第二方面,本发明实施例提供了一种报文缓存装置,该装置包括:接收单元,用于接收待缓存报文;确定单元,用于确定所述接收单元接收到的所述待缓存报文所属的队列;获取单元,用于获取所述确定单元确定的所述队列的预设存储比;计算单元,用于计算所述确定单元确定的所述队列的实际存储比;存储单元,用于若所述计算单元计算得出的所述实际存储比大于等于所述获取单元获取到的所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。
结合第二方面,在第二方面第一种可能的实现方式中,所述确定单元,还用于若片内存储的可用空间小于第一预设值,确定所述待缓存报文所属的队列。
结合第二方面或第二方面第一种可能的实现方式,在第二方面第二种可能的实现方式中,所述获取单元包括:计算子单元,用于计算所述队列的片内存储数据量;获取子单元,用于若所述计算子单元计算得出所述片内存储数据量小于所述第二预设值,获取与所述片内存储数据量对应的预设存储比。
结合第二方面或第二方面第二种可能的实现方式,在第二方面第三种可能的实现方式中,所述获取子单元包括:范围确定子单元,用于确定所述片内存储数据量所属的阈值范围;存储比获取子单元,用于将与所述范围确定子单元确定的所述阈值范围对应的预设值作为预设存储比。
结合第二方面第二种可能的实现方式或第二方面第三种可能的实现方式,在第二方面第四种可能的实现方式中,所述存储单元,还用于若所述片内存储数据量大于等于所述第二预设值,将所述报待缓存报文缓存至片外存储。
结合第二方面、第二方面第一种可能的实现方式、第二方面第二种可能的实现方式、第二方面第三种可能的实现方式或第二方面第四种可能的实现方式,在第二方面第五种可能的实现方式中,所述计算单元包括:读取子单元,用于从与所述队列对应的缓存记录中读取片内存储计数量与总计数量;计算子单元,用于计算所述读取单元读取到的所述片内存储计数量与所述总计数量之间的所述实际存储比。
结合第二方面第五种可能的实现方式,在第二方面第六种可能的实现方式中,所述装置还包括:更新单元,用于在所述待缓存报文缓存完成后,更新所述缓存记录。
结合第二方面第六种可能的实现方式,在第二方面第七种可能的实现方式中,所述更新单元,还用于若所述待缓存报文存入片内存储,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量;或者,若所述待缓存报文存入片外存储,将所述待缓存报文的数据量加入所述总计数量。
结合第二方面第七种可能的实现方式,在第二方面第八种可能的实现方式中,所述装置还包括:清除单元,用于若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
结合第二方面、第二方面第一种可能的实现方式、第二方面第二种可能的实现方式、第二方面第三种可能的实现方式或第二方面第四种可能的实现方式,在第二方面第九种可能的实现方式中,所述计算单元,还用于计算所述片内存储数据量与总数据量之间的所述实际存储比。
本发明实施例,接收待缓存报文;确定所述待缓存报文所属的队列;获取所述队列的预设存储比;计算所述队列的实际存储比;若所述实际存储比大于等于所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。采用本发明实施例,可以将同一队列的报文交替缓存至片内存储与片外存储,每一个队列的报文都只能占用片内存储内的部分资源,当某一队列发生业务拥塞时,不影响将其他队列报文缓存至片内存储,防止片内存储读写频率低而片外存储读写频繁的情况,从而提高片内存储的利用率,提高报文缓存速度,降低报文缓存功耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明报文缓存方法一个实施例的流程图;
图2为本发明报文缓存方法另一个实施例的流程图;
图3为本发明报文缓存方法另一个实施例的流程图;
图4A为本发明报文缓存装置一个实施例的框图;
图4B为本发明报文缓存装置获取单元一个实施例的框图;
图4C为本发明报文缓存装置计算单元一个实施例的框图;
图4D为本发明报文缓存装置另一个实施例的框图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
参见图1,为本发明报文缓存方法一个实施例的流程图,该实施例包括如下步骤:
步骤101,接收待缓存报文。
网络芯片首先接收待缓存报文。不同的报文可能具有不同的长度,但每一个报文都由一个或多个基本单元CELL构成。
步骤102,确定所述待缓存报文所属的队列。
由于报文的类型通常有多种,每种类型的报文都对应处理方式也不尽相同。为便于报文的后续处理,网络芯片在缓存报文前,通常预先设置若干个队列。网络芯片在接收到待缓存报文后,首先根据报文的类型等特征确定待缓存报文所属的队列,然后再进行缓存。
由于网络芯片片内存储的读写速度通常比片外存储的读写速度快。为充分利用片内存储,提高报文缓存速度,在确定所述待缓存报文所属的队列之前,可以首先判断片内存储的可用空间是否大于第一预设值。当所述片内存储的可用空间大于等于第一预设值时,说明片内存储内可用空间充足,此时不论待缓存报文属于哪一个队列,都可以将所述报文存入所述片内存储,从而可以提高片内存储的利用效率;当所述片内存储的可用空间小于第一预设值时,说明片内存储内可用空间不足,需要将报文分别缓存至片内存储及片外存储。其中,第一预设值的大小可以由技术人员根据实际使用环境预先设定。
步骤103,获取所述队列的预设存储比。
所述存储比可以为一个固定的预设值,也可以与所述片内存储数据量对应的预设值。其中,所述队列的片内存储数据量是指缓存在片内存储且属于所述队列的报文的数据量。例如,若缓存在片内存储的报文中有n个报文属于所述队列,那么该n个报文的总CELL数即为所述队列的片内存储数据量。
在获取所述队列的预设存储比时,可以先计算所述队列的片内存储数据量;然后获取与所述片内存储数据量对应的预设存储比。
在获取与所述片内存储数据量对应的预设存储比之前,还可以判断所述队列的片内存储数据量是否小于第二预设值。若所述队列的片内存储数据量大于等于第二预设值,那么说明该队列中已有较多的报文缓存在片内存储中,为防止该队列发生业务拥塞导致片内存储利用率低下,可以将待缓存报文缓存至片外存储。若所述队列的片内存储数据量小于第二预设值,那么说明该队列中只有较少的报文缓存在片内存储中,可以根据预先保存对应关系,获取与所述队列的片内存储数据量相对应的预设值作为预设存储比。其中,第二预设值的大小可以由技术人员根据实际使用环境预先设定。
在实际使用中,为加快预设存储比的获取速度,可以预先为片内存储数据量设定若干阈值范围,并为每一个阈值范围设定一个对应的预设值。在获取预设存储比时,首先确定所述片内存储数据量所属的阈值范围;然后将所述阈值范围对应的预设值作为预设存储比。
步骤104,计算所述队列的实际存储比。
在实际应用中,可以将所述队列的所述片内存储数据量与所述队列的总数据量之间的比值作为所述实际存储比。其中,所述队列的总数据量是指当前缓存的所有报文中属于所述队列的报文的数据量。例如,若缓存在片内存储的报文中有n个报文属于所述队列,缓存在片外存储的报文中有m个报文属于所述队列,那么该n+m个报文的总CELL数即为所述队列的片内存储数据量。
或者,也可以将所述队列的片内存储计数量与所述队列的总计数量之间的比值作为所述实际存储比。所述片内存储计数量可以是所述片内存储数据量,也可以是在一定周期内,缓存至片内存储的数据量;所述片总计数量可以是所述总数据量,也可以是在一定周期内,缓存的总数据量。
例如,可以将存储1000个CELL作为一个计数周期,片内存储计数量用来记载此周期内缓存至片内存储的CELL的数量,总计数量用来记载此周期内缓存的CELL的总数量,若缓存的CELL的总数量达到1000,则将片内存储计数量及总计数量清零,重新开始计数。
所述片内存储计数量及所述总计数量保存在与所述队列相对应的缓存记录中。在计算实际存储比时,从与所述队列对应的缓存记录中读取片内存储计数量与总计数量;计算所述片内存储计数量与所述总计数量之间的所述实际存储比。
步骤105,若所述实际存储比大于等于所述预设存储比,那么将所述待缓存报文存片外存储;否则,将所述待缓存报文存片内存储。
若所述实际存储比大于等于所述预设存储比,说明该队列中已经有超过预定比例的报文保存在片内存储中,占用片内存储空间已经较多,为防止该队列发生业务拥塞导致报文缓存速度整体变慢,报文缓存功耗增大,即便片内存储中尚有可用空间,也需要将待存储报文保存在片外存储中。
若所述实际存储比小于所述预设存储比,说明该队列中只有较小比例的报文保存在片内存储中,占用片内存储空间较少,即便该队列发生业务拥塞,对其他队列的影响也较小,此时,为重复利用片内存储中的可用空间,可以将待存储报文保存在片内存储中。
在此需要说明的是,若将所述队列的片内存储计数量与所述队列的总计数量之间的比值作为所述实际存储比。那么在所述待缓存报文缓存完成后,需要更新所述缓存记录。以便于缓存下一个待缓存报文。
具体来说,若所述待缓存报文存入片内存储,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量;若所述待缓存报文存入片外存储,将所述待缓存报文的数据量加入所述总计数量。例如,若待缓存报文由k个CELL构成,那么若待缓存报文缓存在片内存储,那么将缓存记录中片内存储CELL的计数值增加k,并且将缓存记录中总CELL的计数值增加k;若待缓存报文缓存在片外存储,那么只将缓存记录中总CELL的计数值增加k。
为保证待缓存报文均匀的缓存至片内存储与片外存储,还可以预先设定一个第三预定值,在所述存储记录更新后,判断总计数量是否大于等于第三预定值,若大于,则将所述片内存储计数量及所述总计数量清零,重新开始计数。例如,若将存储1000个CELL作为一个计数周期,那么在待缓存报文缓存结束后,判断总计数量是否已经达到1000,若总计数量已经达到1000,则将片内存储计数量及总计数量清零,重新开始计数。
从上述实施例可以看出,接收待缓存报文;确定所述待缓存报文所属的队列;获取所述队列的预设存储比;计算所述队列的实际存储比;若所述实际存储比大于等于所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。采用本发明实施例,可以将同一队列的报文交替缓存至片内存储与片外存储,每一个队列的报文都只能占用片内存储内的部分资源,当某一队列发生业务拥塞时,不影响将其他队列报文缓存至片内存储,防止片内存储读写频率低而片外存储读写频繁的情况,从而提高片内存储的利用率,提高报文缓存速度,降低报文缓存功耗。
参见图2,为本发明报文缓存方法另一个实施例的流程图,该实施例包括如下步骤:
步骤201,接收待缓存报文。
步骤202,若片内存储的可用空间小于第一预设值,确定所述待缓存报文所属的队列。
若片内存储的可用空间大于等于第一预设值,则可以将所述待缓存报文缓存至所述片内存储。
步骤203,计算所述队列的片内存储数据量。
步骤204,若所述片内存储数据量小于所述第二预设值,确定所述片内存储数据量所属的阈值范围。
若所述片内存储数据量大于等于所述第二预设值,则可以将所述待缓存报文缓存至片外存储。
步骤205,将与所述阈值范围对应的预设值作为预设存储比。
步骤206,从与所述队列对应的缓存记录中读取片内存储计数量与总计数量。
步骤207,计算所述片内存储计数量与所述总计数量之间的所述实际存储比。
步骤208,若所述实际存储比小于所述预设存储比,将所述待缓存报文缓存至片内存储。
步骤209,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量。
步骤210,若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
将所述待缓存报文的数据量加入所述总计数量后,若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
从上述实施例可以看出,采用本发明实施例,可以将同一队列的报文交替缓存至片内存储与片外存储,每一个队列的报文都只能占用片内存储内的部分资源,当某一队列发生业务拥塞时,不影响将其他队列报文缓存至片内存储,防止片内存储读写频率低而片外存储读写频繁的情况,从而提高片内存储的利用率,提高报文缓存速度,降低报文缓存功耗。
参见图3,为本发明报文缓存方法另一个实施例的流程图,该实施例包括如下步骤:
步骤301,接收待缓存报文。
步骤302,确定所述待缓存报文所属的队列。
步骤303,计算所述队列的片内存储数据量。
步骤304,若所述片内存储数据量小于所述第二预设值,将与所述片内存储数据量对应的预设值作为预设存储比。
步骤305,计算所述片内存储数据量与所述总数据量之间的所述实际存储比。
步骤306,若所述实际存储比大于等于所述预设存储比,将所述待缓存报文缓存至片外存储。
从上述实施例可以看出,采用本发明实施例,可以将同一队列的报文交替缓存至片内存储与片外存储,每一个队列的报文都只能占用片内存储内的部分资源,当某一队列发生业务拥塞时,不影响将其他队列报文缓存至片内存储,防止片内存储读写频率低而片外存储读写频繁的情况,从而提高片内存储的利用率,提高报文缓存速度,降低报文缓存功耗。
与本发明报文缓存方法相对应,本发明还提供了报文缓存装置。
参见图4A,为本发明报文缓存装置的一个实施例的框图。
该报文缓存装置包括:接收单元401,确定单元402,获取单元403,计算单元404,存储单元405。
其中,所述接收单元401,用于接收待缓存报文。
所述确定单元402,用于确定所述接收单元401接收到的所述待缓存报文所属的队列。在实际使用中,所述确定单元402还用于若片内存储的可用空间小于第一预设值,确定所述待缓存报文所属的队列。
所述获取单元403,用于获取所述确定单元402确定的所述队列的预设存储比。
如图4B所示,所述获取单元403可以包括:计算子单元4031,用于计算所述队列的片内存储数据量;获取子单元4032,用于若所述计算子单元计算得出所述片内存储数据量小于所述第二预设值,获取与所述片内存储数据量对应的预设存储比。其中,所述获取子单元4032,可以包括范围确定子单元,用于确定所述片内存储数据量所属的阈值范围;存储比获取子单元,用于将与所述范围确定子单元确定的所述阈值范围对应的预设值作为预设存储比。
所述计算单元404,用于计算所述确定单元402确定的所述队列的实际存储比。
如图4C所示,所述计算单元404可以包括:读取子单元4041,用于从与所述队列对应的缓存记录中读取片内存储计数量与总计数量;计算子单元4042,用于计算所述读取单元读取到的所述片内存储计数量与所述总计数量之间的所述实际存储比。
所述存储单元405,用于若所述计算单元404计算得出的所述实际存储比大于等于所述获取单元403获取到的所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。所述存储单元405,还用于若所述片内存储数据量大于等于所述第二预设值,将所述报待缓存报文缓存至片外存储。
如图4D所示,所述报文缓存装置还可以包括:更新单元406,用于在所述待缓存报文缓存完成后,更新所述缓存记录。具体来说,所述更新单元406用于若所述待缓存报文存入片内存储,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量;或者,若所述待缓存报文存入片外存储,将所述待缓存报文的数据量加入所述总计数量。
如图4D所示,所述报文缓存装置还可以包括:清除单元407,用于若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
从上述实施例可以看出,采用本发明实施例,可以将同一队列的报文交替缓存至片内存储与片外存储,每一个队列的报文都只能占用片内存储内的部分资源,当某一队列发生业务拥塞时,不影响将其他队列报文缓存至片内存储,防止片内存储读写频率低而片外存储读写频繁的情况,从而提高片内存储的利用率,提高报文缓存速度,降低报文缓存功耗。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/片内存储、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种报文缓存方法,其特征在于,包括:
接收待缓存报文;
确定所述待缓存报文所属的队列;
获取所述队列的预设存储比;
计算所述队列的实际存储比;
若所述实际存储比大于等于所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。
2.如权利要求1所述的方法,其特征在于,所述确定所述待缓存报文所属的队列包括:
若片内存储的可用空间小于第一预设值,确定所述待缓存报文所属的队列。
3.如权利要求1或2所述的方法,其特征在于,所述获取所述队列的预设存储比包括:
计算所述队列的片内存储数据量;
若所述片内存储数据量小于所述第二预设值,获取与所述片内存储数据量对应的预设存储比。
4.如权利要求3所述的方法,其特征在于,所述获取与所述片内存储数据量对应的预设存储比包括:
确定所述片内存储数据量所属的阈值范围;
将与所述阈值范围对应的预设值作为预设存储比。
5.如权利要求3或4所述的方法,其特征在于,在所述计算所述队列的片内存储数据量之后还包括:
若所述片内存储数据量大于等于所述第二预设值,将所述报待缓存报文缓存至片外存储。
6.如权利要求1至5任一所述的方法,其特征在于,所述计算所述队列的实际存储比包括:
从与所述队列对应的缓存记录中读取片内存储计数量与总计数量;
计算所述片内存储计数量与所述总计数量之间的所述实际存储比。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
在所述待缓存报文缓存完成后,更新所述缓存记录。
8.如权利要求7所述的方法,其特征在于,所述更新所述缓存记录包括:
若所述待缓存报文存入片内存储,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量;
若所述待缓存报文存入片外存储,将所述待缓存报文的数据量加入所述总计数量。
9.如权利要求8所述的方法,其特征在于,在所述对总计数量进行更新之后还包括:
若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
10.如权利要求1至5任一所述的方法,其特征在于,所述计算所述队列的实际存储比包括:
计算所述片内存储数据量与总数据量之间的所述实际存储比。
11.一种报文缓存装置,其特征在于,包括:
接收单元,用于接收待缓存报文;
确定单元,用于确定所述接收单元接收到的所述待缓存报文所属的队列;
获取单元,用于获取所述确定单元确定的所述队列的预设存储比;
计算单元,用于计算所述确定单元确定的所述队列的实际存储比;
存储单元,用于若所述计算单元计算得出的所述实际存储比大于等于所述获取单元获取到的所述预设存储比,那么将所述待缓存报文缓存至片外存储;否则,将所述待缓存报文缓存至片内存储。
12.如权利要求11所述的装置,其特征在于,
所述确定单元,还用于若片内存储的可用空间小于第一预设值,确定所述待缓存报文所属的队列。
13.如权利要求11或12所述的装置,其特征在于,所述获取单元包括:
计算子单元,用于计算所述队列的片内存储数据量;
获取子单元,用于若所述计算子单元计算得出所述片内存储数据量小于所述第二预设值,获取与所述片内存储数据量对应的预设存储比。
14.如权利要求13所述的装置,其特征在于,所述获取子单元包括:
范围确定子单元,用于确定所述片内存储数据量所属的阈值范围;
存储比获取子单元,用于将与所述范围确定子单元确定的所述阈值范围对应的预设值作为预设存储比。
15.如权利要求13或14所述的装置,其特征在于,
所述存储单元,还用于若所述片内存储数据量大于等于所述第二预设值,将所述报待缓存报文缓存至片外存储。
16.如权利要求11至15任一所述的装置,其特征在于,所述计算单元包括:
读取子单元,用于从与所述队列对应的缓存记录中读取片内存储计数量与总计数量;
计算子单元,用于计算所述读取单元读取到的所述片内存储计数量与所述总计数量之间的所述实际存储比。
17.如权利要求16所述的装置,其特征在于,还包括:
更新单元,用于在所述待缓存报文缓存完成后,更新所述缓存记录。
18.如权利要求17所述的装置,其特征在于,
所述更新单元,还用于若所述待缓存报文存入片内存储,将所述待缓存报文的数据量加入所述片内存储计数量及所述总计数量;或者,
若所述待缓存报文存入片外存储,将所述待缓存报文的数据量加入所述总计数量。
19.如权利要求18所述的装置,其特征在于,还包括:
清除单元,用于若所述总计数量的当前值大于等于第三预定值,将所述片内存储数据量及所述总数据量清零。
20.如权利要求11至15任一所述的装置,其特征在于,
所述计算单元,还用于计算所述片内存储数据量与总数据量之间的所述实际存储比。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410122899.4A CN103888377A (zh) | 2014-03-28 | 2014-03-28 | 报文缓存方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410122899.4A CN103888377A (zh) | 2014-03-28 | 2014-03-28 | 报文缓存方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103888377A true CN103888377A (zh) | 2014-06-25 |
Family
ID=50957101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410122899.4A Withdrawn CN103888377A (zh) | 2014-03-28 | 2014-03-28 | 报文缓存方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103888377A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104394453A (zh) * | 2014-11-21 | 2015-03-04 | 深圳市华宝电子科技有限公司 | 视频预录方法及装置 |
CN105743810A (zh) * | 2014-12-12 | 2016-07-06 | 北京永安信通科技有限公司 | 基于前向阀门的数据包传输调度方法和装置 |
CN106681995A (zh) * | 2015-11-05 | 2017-05-17 | 阿里巴巴集团控股有限公司 | 数据缓存方法、数据查询方法及装置 |
CN108965161A (zh) * | 2018-06-11 | 2018-12-07 | 联想(北京)有限公司 | 信息处理方法和电子设备 |
WO2019029220A1 (zh) * | 2017-08-10 | 2019-02-14 | 华为技术有限公司 | 网络设备 |
CN109688070A (zh) * | 2018-12-13 | 2019-04-26 | 迈普通信技术股份有限公司 | 一种数据调度方法、网络设备及转发单元 |
CN109729014A (zh) * | 2017-10-31 | 2019-05-07 | 深圳市中兴微电子技术有限公司 | 一种报文存储方法和装置 |
CN111147397A (zh) * | 2019-12-25 | 2020-05-12 | 视联动力信息技术股份有限公司 | 一种报文片的处理方法及终端 |
CN112804156A (zh) * | 2019-11-13 | 2021-05-14 | 深圳市中兴微电子技术有限公司 | 一种拥塞避免方法和装置及计算机可读存储介质 |
WO2021259321A1 (zh) * | 2020-06-23 | 2021-12-30 | 中兴通讯股份有限公司 | 存储调度方法、设备和存储介质 |
CN114766090A (zh) * | 2019-12-25 | 2022-07-19 | 华为技术有限公司 | 一种报文缓存方法、集成电路系统及存储介质 |
-
2014
- 2014-03-28 CN CN201410122899.4A patent/CN103888377A/zh not_active Withdrawn
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104394453A (zh) * | 2014-11-21 | 2015-03-04 | 深圳市华宝电子科技有限公司 | 视频预录方法及装置 |
CN104394453B (zh) * | 2014-11-21 | 2018-05-29 | 深圳市华宝电子科技有限公司 | 视频预录方法及装置 |
CN105743810A (zh) * | 2014-12-12 | 2016-07-06 | 北京永安信通科技有限公司 | 基于前向阀门的数据包传输调度方法和装置 |
CN105743810B (zh) * | 2014-12-12 | 2018-09-14 | 北京永安信通科技股份有限公司 | 基于前向阀门的数据包传输调度方法和装置 |
CN106681995A (zh) * | 2015-11-05 | 2017-05-17 | 阿里巴巴集团控股有限公司 | 数据缓存方法、数据查询方法及装置 |
WO2019029220A1 (zh) * | 2017-08-10 | 2019-02-14 | 华为技术有限公司 | 网络设备 |
US11165710B2 (en) | 2017-08-10 | 2021-11-02 | Huawei Technologies Co., Ltd. | Network device with less buffer pressure |
CN109729014A (zh) * | 2017-10-31 | 2019-05-07 | 深圳市中兴微电子技术有限公司 | 一种报文存储方法和装置 |
CN108965161A (zh) * | 2018-06-11 | 2018-12-07 | 联想(北京)有限公司 | 信息处理方法和电子设备 |
CN109688070A (zh) * | 2018-12-13 | 2019-04-26 | 迈普通信技术股份有限公司 | 一种数据调度方法、网络设备及转发单元 |
CN112804156A (zh) * | 2019-11-13 | 2021-05-14 | 深圳市中兴微电子技术有限公司 | 一种拥塞避免方法和装置及计算机可读存储介质 |
CN111147397A (zh) * | 2019-12-25 | 2020-05-12 | 视联动力信息技术股份有限公司 | 一种报文片的处理方法及终端 |
CN114766090A (zh) * | 2019-12-25 | 2022-07-19 | 华为技术有限公司 | 一种报文缓存方法、集成电路系统及存储介质 |
WO2021259321A1 (zh) * | 2020-06-23 | 2021-12-30 | 中兴通讯股份有限公司 | 存储调度方法、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103888377A (zh) | 报文缓存方法及装置 | |
CN111159436B (zh) | 一种推荐多媒体内容的方法、装置及计算设备 | |
CN111049756B (zh) | 请求响应方法、装置、电子设备及计算机可读存储介质 | |
CN111245732B (zh) | 一种流量控制方法、装置及设备 | |
CN105264509A (zh) | 融合网络中的自适应中断联合 | |
US10740241B2 (en) | Method and devices for managing cache | |
CN105335097B (zh) | 基于剩余授权在闪存设备之间控制磨损 | |
US20230004321A1 (en) | Storage device throttling amount of communicated data depending on suspension frequency of operation | |
CN104699422A (zh) | 缓存数据的确定方法及装置 | |
CN115102908B (zh) | 基于带宽控制的网络报文生成的方法以及相关装置 | |
CN109660468A (zh) | 一种端口拥塞管理方法、装置和设备 | |
CN110019386A (zh) | 一种流数据处理方法及设备 | |
CN104486442B (zh) | 分布式存储系统的数据传输方法、装置 | |
CN107896196B (zh) | 一种分配报文的方法和装置 | |
CN105094742B (zh) | 一种写数据的方法和设备 | |
CN114070798B (zh) | 一种报文传输方法、装置及设备 | |
CN113590017A (zh) | 用于处理数据的方法、电子设备和计算机程序产品 | |
CN101576865B (zh) | 保证存储器读交易带宽的方法和装置 | |
CN109597577A (zh) | 一种处理nvme协议读写命令的方法、系统及相关装置 | |
CN111654886B (zh) | 一种限制用户带宽的方法和装置 | |
CN110381537B (zh) | 一种基于QoE的带宽限速方法、装置、设备及存储介质 | |
US10564895B2 (en) | I/O performance enhancement of solid-state data storage devices | |
CN108304252B (zh) | 一种任务调度方法及装置 | |
CN113742131A (zh) | 用于存储管理的方法、电子设备和计算机程序产品 | |
CN111970206A (zh) | 一种fc网络流量控制方法、装置及相关组件 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C04 | Withdrawal of patent application after publication (patent law 2001) | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20140625 |