[发明专利]维护多播计数器的计数值的方法及装置有效
申请号: | 201010158691.X | 申请日: | 2010-04-26 |
公开(公告)号: | CN101848150A | 公开(公告)日: | 2010-09-29 |
发明(设计)人: | 卞云峰;罗海燕;郑勤;段有杰;程柏;罗柳柱;王磊 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 北京凯特来知识产权代理有限公司 11260 | 代理人: | 郑立明;焦丽 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 维护 计数器 数值 方法 装置 | ||
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种维护多播计数器的计数值的方法及装置。
背景技术
目前,在通信芯片的多播过程中,通常是在创建多播PD(packetdiscriptor,报文描述符)的时候把片外的多播计数器的计数值置为0,将多播报文复制成若干不确定的份数以后,再把复制份数加到多播计数器上。上述复制后的各个多播报文具有相同的指针,上述复制后的多播报文每出队一次,对多播计数器的计数值做减1操作。
对多播计数器的计数值进行一次完整的加/减操作的过程主要包括:向通信芯片中的读仲裁器发出读片外的多播计数器的读请求,在接收到读仲裁器返回的响应后,从片外多播PD中读出多播计数器的计数值。然后,将读出的上述计数值和需要写入的值进行加/减操作,再将得到的结果再写回到多播计数器的计数值。
由于上述多播计数器存放在片外同步静态存储器,例如QDR2 SRAM(Dynamic Random Access Memory,同步静态存储器),从发出读请求到返回多播计数器的计数值之间的延时可达到10个周期左右,将最后得到的结果写回多播计数器中也需要延时,因此对多播计数器一个完整的加/减操作至少需要十几个周期的延时才能完成。
常用的片外QDR2 SRAM的时钟频率为250MHz-400MHz,按照250MHz时钟频率计算,多播计数器的处理速率最多只有250MHz/18=13.888MPPS。在现在网络应用中,4×10G以太网报文的处理要求已经达到60MPPS,POS(SDH上传送IP,IP over SDH)报文达到100MPPS,远大于上面多播计数器的处理速率。所以,上述对多播计数器的计数值进行加/减操作的比较长的延时将造成通信芯片的报文出队性能受到限制。
为解决上述通信芯片的报文出队性能受到限制的问题,现有技术中的一种维护多播计数器的计数值的方法为:利用片内存储器访问快的特点,将多播计数器的计数值缓存在片内。
在实现本发明过程中,发明人发现该方法存在如下问题:由于片内存储器容量受到限制,该方法不能适应多播报文数量大、速率快的情况。
现有技术中的另一种维护多播计数器的计数值的方法为:对同一个多播计数器的计数值进行加/减操作不允许并行交织处理,只有在上一个加/减操作完成以后,才能进行下一个加/减操作。
在实现本发明过程中,发明人发现该方法存在如下问题:在实际应用中,同一个多播报文有可能复制到不同的队列,完全可能并行出队,要是出于对多播计数器维护简单而串行处理,就会把通信芯片的多播报文的转发性能减到非常低,无法满足性能要求。
发明内容
本发明的实施例提供了一种维护多播计数器的计数值的方法及装置,以适应多播报文数量大、速率快的情况,并且系统的多播报文的转发性能。
一种维护多播计数器的计数值的方法,包括:
获得待出队的多播报文;
为所述待出队的多播报文分配引擎,并记录操作值,所述操作值用于记录多播报文的出队的数量信息;
根据其它的多播报文的出队情况更新所述操作值;
根据所述操作值更新多播计数器的计数值。
一种维护多播计数器的计数值的装置,包括:
引擎分配模块,用于获得待出队的多播报文,为所述待出队的多播报文分配引擎;
操作值累加模块,用于给所述待出队的多播报文记录操作值,根据其它的多播报文的出队情况更新所述操作值,所述操作值用于记录多播报文的出队数量的信息;
操作值写入模块,用于根据所述操作值来更新多播计数器的计数值。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例通过将具有相同指针的多个多播报文对同一个多播计数器的计数值的操作值进行累加,可以在一定程度上缓解数量大、速率快的多播报文对QDR、DDR等通用高速存储器带宽的冲击,并且能够保证系统的报文转发性能。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种维护多播计数器的计数值的方法的处理流程图;
图2为本发明实施例二提供的一种维护多播计数器的计数值的方法的处理流程图;
图3为本发明实施例提供了一种维护多播计数器的计数值的装置的具体实现结构图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010158691.X/2.html,转载请声明来源钻瓜专利网。