报文缓存方法、装置及设备制造方法及图纸

技术编号:13902677 阅读:147 留言:0更新日期:2016-10-25 22:55
本发明专利技术适用于通信技术领域,提供了一种报文缓存方法、装置及设备,所述方法包括:根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存,并记录所述报文的通路信息;获取所述通路信息,从所述通路信息对应的缓冲通路中读取报文,并输出所读取的报文。本发明专利技术实现了根据报文流量的拥塞情况动态调用不同缓冲容量的缓冲通路,且通过记录报文的通路信息保证了报文通过不同的缓冲通路传输时不会出现乱序;以及实现了缓冲存储器Buffer共享读写带宽,提高了缓冲存储器Buffer的利用效率,有利于防止报文在流量拥塞的情况下丢包的情况。

【技术实现步骤摘要】

本专利技术适用于通信
,提供了一种报文缓存方法、装置及设备
技术介绍
在网络处理器芯片中,报文流量具有波动性,在短时间内会出现流量突发,导致数据通道流量拥塞。为了保证报文不会因为流量拥塞而丢弃,需要对数据通道中的报文进行拥塞缓存。现有技术一般为芯片中的每个数据通道添加一个Buffer(即缓存存储器),Buffer的带宽大于或等于数据通道的输入带宽,并且Buffer是串接在数据通道中的,如果数据通道中报文的输入流量大于输出流量时,报文就会在Buffer中缓存;当数据通道中报文的输出流量大于输入流量时,Buffer中缓存的报文就会清空。然而,用作Buffer的芯片内置RAM或者芯片外挂的DDR等存储单元的容量和接口带宽增长速率赶不上网络流量的带宽增长速率。当一个网络处理器中包含很多需要添加Buffer的数据通道时,采用现有的将Buffer串接在数据通道中组成缓冲通路的方式,所需要的Buffer数量和Buffer的容量将难以接受;且不管是否发生拥塞,报文都需要经过Buffer所在的缓冲通路,造成存储空间的浪费。
技术实现思路
鉴于此,本专利技术实施例提供一种报文缓存方法、装置及设备,以根据报文流量大小动态调用不同缓冲容量的缓冲通路,提高了Buffer的利用效率。第一方面,提供了一种报文缓存方法,所述方法包括:根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存,并记录所述报文的通路信息;获取所述通路信息,从所述通路信息对应的缓冲通路中读取报文,并输出所读取的报文。第二方面,提供了一种报文缓存装置,所述装置包括:选通模块,用于根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存;记录模块,用于记录所述报文的通路信息;输出模块,用于获取所述通路信息,从所述通路信息对应的缓冲通路中读取报文,并输出所读取的报文。第三方面,提供了一种报文缓存设备,所述设备包括多个如上所述的报文缓存装置,以及物理存储设备和多通道控制单元;所述报文缓存装置中的第一缓存通路中的第一缓冲存储器通过所述多通道控制单元与所述物理存储设备连接。与现有技术相比,本专利技术实施例增加设置不同容量的缓冲通路用于传输报文,并根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存,并记录每一个报文的通路信息;以及根据所述通路信息从所述通路信息对应的缓冲通路读取报文,并输出所读取的报文;实现了根据报文流量的拥塞情况动态调用不同缓冲容量的缓冲通路;且通过记录报文的通路信息保证了报文通过不同的缓冲通路传输时不会出现乱序。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。图1是本专利技术实施例提供的报文缓存方法的实现流程图;图2是本专利技术实施例提供的报文缓存方法中步骤S101的具体实现流程;图3是本专利技术实施例提供的报文缓存装置的组成结构图;图4是本专利技术实施例提供的报文缓存设备的组成结构图;图5是本专利技术实施例提供的报文缓存设备的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例增加设置不同容量的缓冲通路用于传输报文,并根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存,并记录每一个报文的通路信息;以及根据所述通路信息从所述通路信息对应的缓冲通路读取报文,并输出所读取的报文;实现了根据报文流量的拥塞情况动态调用不同缓冲容量的缓冲通路;且通过记录报文的通路信息保证了报文通过不同的缓冲通路传输时不会出现乱序。本专利技术实施例还提供了相应的装置,以下分别进行详细的说明。实施例一图1示出了本专利技术实施例一提供的报文缓存方法的实现流程,为了便于说明,仅示出了与本专利技术相关的部分。如图1所示,所述方法包括:在步骤S101中,根据报文流量的大小调整报文的缓冲通路。在本专利技术实施例中,所述缓冲通路包括第一缓冲通路和第二缓冲通路,所述第一缓冲通路中包括第一缓冲存储器和第二缓冲存储器,所述第二缓冲通路中包括第三缓冲存储器,所述第一缓冲存储器为Buffer,所述第二缓冲存储器
和第三缓冲存储器为FIFO(先进先出的数据缓存器),所述第一缓冲存储器的缓冲容量均大于所述第二缓冲存储器和第三缓冲存储器的缓冲容量,所述第二缓冲存储器与所述第三缓冲存储器的缓冲容量相同。图2示出了本专利技术实施例提供的报文缓存方法中步骤S101的具体实现流程。参阅图2,步骤S101中包括:在步骤S201中,网络处理器初始化后,选通所述第二缓冲通路缓存报文。在步骤S202中,在第二缓冲通路处于选通状态时,若检测到所述第三缓冲存储器中的报文流量大于第一阈值,则断开所述第二缓冲通路,接合所述第一缓冲通路。在步骤S203中,在第一缓冲通路处于选通状态时,若检测到所述第一缓冲存储器中的报文流量小于第二阈值且所述第三缓冲存储器中不存在报文,则断开所述第一缓冲通路,接合所述第二缓冲通路。其中,所述第一阈值小于第三缓冲存储器的缓冲容量且大于第三缓冲存储器的缓冲容量的二分之一;所述第二阈值为所述第三缓冲存储器的缓冲容量的二分之一。由于网络处理器初始化后,报文传输一般没有出现拥塞,默认选择第二缓冲通路,即报文不经过第一缓冲存储器Buffer的缓存,由于第二缓冲通路中的第三缓冲存储器的缓冲容量下,即报文直接传输过去。示例性地,当所述第三缓冲存储器的缓冲容量为最大可同时缓存64个报文时,所述第一阈值可以为60,所述第二阈值可以为32。在报文的传输过程中,当在第二缓冲通路中的报文个数大于60时,表明第二缓冲通路的缓冲容量可能不适用于传输当前的报文流量,则切换为缓冲容量更大的第一缓冲通路;当在第一缓冲通路中的报文个数小于32时,表明第一缓冲通路中的数据传输流畅,则切换为缓冲容量较小的第二缓冲通路;从而实现了根据报文的流量大小动态调用不同缓冲容量的缓冲通路,防止数据通道因为流量拥塞而丢包,也使得报文在传输流畅时不必经过缓冲容量大的缓冲通路,且设置作为切换标准的第一阈值和第二阈值,可以避免两条缓冲通路切换过于频繁而导致的数据通道报文输出效率低的问题。在步骤S102中,通过调整后的缓冲通路对输入的报文进行缓存,并记录所述报文的通路信息。在本专利技术实施例中,当调整报文的缓冲通路后,报文将通过调整后的缓冲通路进行缓存及传输,同时,设置所述报文的通路信息为处于选通状态的缓冲通路,记录所述报文的通路信息。优选地,本专利技术实施例中,所述通路信息的大小为1bit(比特),当处于选通状态的缓冲通路为第一缓冲通路时,设置报文的通路信息为1;当处于选通状态的缓冲通路为第二缓冲通路时,设置报文的通路信息为0。进一步地,每一个报文对应一个通路信息,由于第一缓冲通路的缓冲容量很大,对应的值为1的通路信息的数量也很大,本专利技术采用计数器来计算值为1的连续通路信息的个数。若所记录的通路信息中,值为1的连续通路信息的个数满足本文档来自技高网
...

【技术保护点】
一种报文缓存方法,其特征在于,所述方法包括:根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存,并记录所述报文的通路信息;获取所述通路信息,从所述通路信息对应的缓冲通路中读取报文,并输出所读取的报文。

【技术特征摘要】
1.一种报文缓存方法,其特征在于,所述方法包括:根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存,并记录所述报文的通路信息;获取所述通路信息,从所述通路信息对应的缓冲通路中读取报文,并输出所读取的报文。2.如权利要求1所述的报文缓存方法,其特征在于,所述缓冲通路包括第一缓冲通路和第二缓冲通路;所述第一缓冲通路中包括第一缓冲存储器和第二缓冲存储器,所述第二缓冲通路中包括第三缓冲存储器;所述第一缓冲存储器为Buffer,所述第二缓冲存储器和第三缓冲存储器为FIFO,所述第一缓冲存储器的缓冲容量均大于所述第二缓冲存储器和第三缓冲存储器的缓冲容量,所述第二缓冲存储器与所述第三缓冲存储器的缓冲容量相同。3.如权利要求2所述的报文缓存方法,其特征在于,所述根据报文流量的大小调整报文的缓冲通路包括:在网络处理器初始化后,选通所述第二缓冲通路缓存报文;在第二缓冲通路处于选通状态时,若检测到所述第三缓冲存储器中的报文流量大于第一阈值,则断开所述第二缓冲通路,接合所述第一缓冲通路;在第一缓冲通路处于选通状态时,若检测到所述第一缓冲存储器中的报文流量小于第二阈值且所述第三缓冲存储器中不存在报文,则断开所述第一缓冲通路,接合所述第二缓冲通路。4.如权利要求3所述的缓存装置,其特征在于,所述第一阈值小于第三缓冲存储器的缓冲容量且大于第三缓冲存储器的缓冲容量的二分之一;所述第二阈值为所述第三缓冲存储器的缓冲容量的二分之一。5.如权利要求3或4所述的报文缓存方法,其特征在于,所述记录所述报
\t文的通路信息包括:设置报文的通路信息为处于选通状态的缓冲通路,记录每一个报文的通路信息;其中,所述通路信息的大小为1bit,当处于选通状态的缓冲通路为第一缓冲通路时,设置报文的通路信息为1;当处于选通状态的缓冲通路为第二缓冲通路时,设置报文的通路信息为0。6.如权利要求5所述的报文缓存方法,其特征在于,所述记录每一个报文的通路信息还包括:若所记录的通路信息中,值为1的连续通路信息的个数满足预设阈值且计数器的值为0时,控制所述计数器开始计算值为1的连续通路信息的个数。7.如权利要求5所述的报文缓存方法,其特征在于,所述从所述通路信息对应的缓冲通路中读取报文包括:当通路信息的值为0时,从所述第三缓冲存储器中读取报文;当通路信息的值为1时,从所述第二缓冲存储器中读取报文。8.一种报文缓存装置,其特征在于,所述装置包括:选通模块,用于根据报文流量的大小调整报文的缓冲通路,通过调整后的缓冲通路对输入的报文进行缓存;记录模块,用于记录所述报文的通路信息;输出模块,用于获取所述通路信息,从所述通路信息对应的缓冲通路中读取报文,并输出所读取的报文。9.如权利要求8所述的报文缓存装置,其特征在于,所述选通模块包括缓冲通路,所...

【专利技术属性】
技术研发人员:周毅华
申请(专利权)人:深圳市恒扬数据股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1