[发明专利]降低报文转发延时的方法及系统有效
申请号: | 201510993048.1 | 申请日: | 2015-12-25 |
公开(公告)号: | CN105610814B | 公开(公告)日: | 2018-09-21 |
发明(设计)人: | 夏杰;徐子轩 | 申请(专利权)人: | 盛科网络(苏州)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/861 |
代理公司: | 苏州威世朋知识产权代理事务所(普通合伙) 32235 | 代理人: | 杨林洁 |
地址: | 215021 江苏省苏州市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 降低 报文 转发 延时 方法 系统 | ||
本发明提供一种降低报文转发延时的方法及系统,所述方法包括:接收来自于各个数据通道的数据,并将其存储至一级缓存器;根据所述一级缓存器的当前存储状态以及所述数据携带的属性信息,对所述一级缓存器中的数据生成一级调度请求命令和/或生成一级解析请求命令;若接收一级调度请求命令,则将当前所述一级缓存器中的全部数据转存至一级调度缓存器;若接收一级解析请求命令,则对当前一级缓存器中的数据进行解析,并将解析结果存储至一级解析缓存器;将所述一级调度缓存器中存储的数据和所述一级解析缓存器中存储的数据的解析结果进行匹配,并根据每个数据的属性以及匹配结果决定是否当前数据进行二级调度。本发明降低了报文转发延时。
技术领域
本发明涉及网络通信领域,尤其涉及一种降低报文转发延时的方法及系统。
背景技术
传输延时是网络芯片的关键参数之一,低延时是网络芯片设计的重要参考性能。在高密度网络芯片中,多通道的数据汇聚到数据接收模块并调度至芯片内部进行处理,最后将数据处理结果连同数据本身一起存储在数据存储模块中。
传统的处理流程如图1所示,数据接收模块外接多个数据通道组,通道组之间的控制、存储逻辑相互独立;每个数据通道组包含多个数据通道,数据通道的位宽为W,每个数据通道组使用一块位宽为n×W的1读1写的存储器缓存数据,通过数据拼接逻辑,将通道中原始n个宽度为W的串行数据拼接成一个宽度为n×W的数据,拼接后的数据可表示为:Datan×W={Data1,Data2,…Datan}。
当某个通道中的数据位于报文的结尾或者拼满一个n×W的数据时,产生调度该数据的请求。待调度仲裁选中该数据时,从存储器中读出数据发送给数据存储模块。如果调度出来的数据位于报文起始位置,则需要将该数据额外发送给报文解析模块,待产生分析结果后,连同缓存在存储器中的数据一起写进下一级存储器等待进一步处理,上述数据处理过程中,由于因为报文解析延时很长,需要在数据存储模块的入口处先缓存数据。
在上述架构中,一个长度为n×W的报文从开始接收数据到最终写进数据存储模块的存储器需要的时间为:
T总延时 = T数据汇聚+T数据接收模块内部延时+T报文解析模块内部延时+T数据存储模块内部延时;通过对上述架构的剖析,数据在现有架构中的转发延时较长。
发明内容
本发明的目的在于提供一种降低报文转发延时的的方法及系统。
为实现上述发明目的之一,本发明一实施方式提供了一种降低报文转发延时的方法,所述方法包括:
S1、将多个报文分别分解为若干个位宽相同的数据段,每个报文串行通过多个数据通道中的一个数据通道传输;
S2、接收来自于各个数据通道的数据,并将其存储至一级缓存器,所述一级缓存器的位宽为每个数据通道位宽的整数倍;
S3、根据所述一级缓存器的当前存储状态以及所述数据携带的属性信息,对所述一级缓存器中的数据生成一级调度请求命令和/或生成一级解析请求命令;
所述数据携带的属性信息包括:数据为报头信息或数据为报尾信息;
S4、若接收一级调度请求命令,则将当前所述一级缓存器中的全部数据转存至一级调度缓存器;
若接收一级解析请求命令,则对当前一级缓存器中的数据进行解析,并将解析结果存储至一级解析缓存器;
S5、将所述一级调度缓存器中存储的数据和所述一级解析缓存器中存储的数据的解析结果进行匹配,并根据每个数据的属性以及匹配结果决定是否当前数据进行二级调度。
作为本发明一实施方式的进一步改进,所述方法还包括:
配置一调度计数器;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛科网络(苏州)有限公司,未经盛科网络(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510993048.1/2.html,转载请声明来源钻瓜专利网。