一种数据调度方法、网络设备及转发单元技术

技术编号:20978339 阅读:19 留言:0更新日期:2019-04-29 18:39
本发明专利技术实施例提供一种数据调度方法、网络设备及转发单元,应用于通信技术,以解决网络设备中的FPGA的RAM在缓存数据的过程中发生溢出错误的问题。具体的,本方案应用于网络设备,网络设备包括转发单元和与转发单元连接的外部存储单元,转发单元包括内部存储单元;该方法包括:从目标队列中获取目标通道的标识,目标队列中包括至少一个通道的标识;确定内部存储单元中目标通道对应的缓存区域中的报文数据满足预设条件;根据目标通道的标识,将目标通道对应的缓存区域中的报文数据存储至外部存储单元中。

A Data Scheduling Method, Network Equipment and Forwarding Unit

The embodiment of the present invention provides a data scheduling method, a network device and a forwarding unit, which are applied to communication technology to solve the problem of overflow errors of RAM of the FPGA in the network device in the process of caching data. Specifically, the scheme is applied to network devices, which include forwarding units and external storage units connected with forwarding units, and forwarding units include internal storage units. The method includes: obtaining the identification of the target channel from the target queue, including the identification of at least one channel in the target queue, and determining the report in the buffer area corresponding to the target channel in the internal storage unit. The text data satisfies the preset conditions; according to the identification of the target channel, the message data in the buffer area corresponding to the target channel is stored in the external storage unit.

【技术实现步骤摘要】
一种数据调度方法、网络设备及转发单元
本专利技术实施例涉及通信
,尤其涉及一种数据调度方法、网络设备及转发单元。
技术介绍
当前的路由器等网络设备通常配置有155M(兆)的CPOS卡,用于路由器转发数据。其中,CPOS卡为通道化POS(PacketOverSDH)接口。其中,路由器的CPOS卡中可以具有多个通道(如路由器SDHOC3155M接口的CPOS卡中有63个2048Khz的E1物理信道),该CPOS卡中的现场可编程门阵列(FieldProgrammableGateArray,FPGA)针对该多个通道中的每个通道分配的随机存取存储器(randomaccessmemory,RAM)中的存储区域的容量通常较小。从而,在路由器通过CPOS卡中的任一通道接收报文数据之后、转发该报文数据之前,由于针对该通道分配的RAM中的存储区域的容量较小,因此使得该存储区域中缓存报文数据的过程中可能会发生溢出错误(即overrun错误)。如此,在路由器的CPOS卡具有多个通道的场景中,如何避免网络设备中的FPGA的RAM在缓存数据的过程中发生溢出错误成为亟需解决的问题。
技术实现思路
本专利技术实施例提供一种数据调度方法、网络设备及转发单元,以解决网络设备中的FPGA的RAM在缓存数据的过程中发生溢出错误的问题。为了解决上述技术问题,本专利技术实施例是这样实现的:第一方面,本专利技术实施例提供一种数据调度方法,应用于网络设备,网络设备包括转发单元和与转发单元连接的外部存储单元,转发单元包括内部存储单元;该方法包括:从目标队列中获取目标通道的标识,目标队列中包括至少一个通道的标识;确定内部存储单元中目标通道对应的缓存区域中的报文数据满足预设条件;根据目标通道的标识,将目标通道对应的缓存区域中的报文数据存储至外部存储单元中。第二方面,本专利技术实施例还提供了一种网络设备,该网络设备包括转发单元和与转发单元连接的外部存储单元,转发单元包括内部存储单元;转发单元中还包括:获取子单元、确定子单元和调度子单元;获取子单元,用于从目标队列中获取目标通道的标识,目标队列中包括至少一个通道的标识;确定子单元,用于确定内部存储单元中目标通道对应的缓存区域中的报文数据是否满足预设条件;调度子单元,用于在确定子单元确定目标通道对应的缓存区域中的报文数据满足预设条件时,根据目标通道的标识,将目标通道对应的缓存区域中的报文数据存储至外部存储单元中。第三方面,本专利技术实施例还提供了一种转发单元,该转发单元与外部存储单元连接,转发单元包括内部存储单元、获取子单元、确定子单元和调度子单元;获取子单元,用于从目标队列中获取目标通道的标识,目标队列中包括至少一个通道的标识;确定子单元,用于确定内部存储单元中目标通道对应的缓存区域中的报文数据是否满足预设条件;调度子单元,用于在确定子单元确定目标通道对应的缓存区域中的报文数据满足预设条件时,根据目标通道的标识,将目标通道对应的缓存区域中的报文数据存储至外部存储单元中。第四方面,本专利技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面所述的数据调度方法的步骤。在本专利技术实施例中,网络设备包括转发单元和与转发单元连接的外部存储单元,转发单元包括内部存储单元;该方法包括:从目标队列中获取目标通道的标识,目标队列中包括至少一个通道的标识;确定内部存储单元中目标通道对应的缓存区域中的报文数据满足预设条件;根据目标通道的标识,将目标通道对应的缓存区域中的报文数据存储至外部存储单元中。基于本方案,由于网络设备可以通过目标队列存储目标通道的标识,而目标通道对应的缓存区域中的报文数据满足预设条件,如该缓存区域中的报文数据需要调度,因此网络设备可以根据目标队列中的目标通道的标识,快速、准确地将目标通道对应的缓存区域中的报文数据存储至外部存储单元中。从而,有利于网络设备快速、准确地调度转发单元中缓存的报文数据,以避免缓存报文数据发生溢出错误。附图说明图1为本专利技术实施例提供的网络设备的一种可能的结构示意图;图2为本专利技术实施例提供的网络设备的另一种可能的结构示意图;图3为本专利技术实施例提供的一种数据调度方法的流程示意图;图4为本专利技术实施例提供的另一种数据调度方法的流程示意图;图5为本专利技术实施例提供的网络设备的另一种可能的结构示意图;图6为本专利技术实施例提供的转发单元的一种可能的结构示意图;图7为本专利技术实施例提供的网络设备的另一种可能的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,本文中的“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。“多个”是指两个或多于两个。需要说明的是,本专利技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本专利技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。本专利技术的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一条件和第二条件等是用于区别不同的条件,而不是用于描述条件的特定顺序。需要说明的是,本专利技术实施例提供的网络设备可以用于缓存以及转发报文(即报文数据)。具体的,网络设备可以通过多个通道转发报文数据。其中,报文通常是以数据包的形式传输的。参照图1,为本专利技术实施例提供的一种网络设备的结构示意图。图1示出的网络设备包括CPOS卡,该CPOS卡采用FPGA进行报文数据缓存和转发,FPGA中包括内部的RAM。网络设备中还包括外部的双倍速率同步动态随机存储器(DoubleDataRateSDRAM,DDRSDRAM)。其中,CPOS卡可以与DDRSDRAM连接,如有线连接或无线连接。具体的,本专利技术实施例中提供的网络设备可以为路由器,该路由器中可配置有155M的CPOS卡,用于转发报文数据。具体的,CPOS卡上使用FPGA作为的转发芯片(即转发单元),由于FPGA内部的RAM资源有限,需要使用FPGA外部的存储器进行报文数据缓存和转发。其中,在路由器SDHOC3155M接口的CPOS卡中,有63个2048Khz的E1物理信道。若将E1物理信道配置成CE1,则每个CE1最多可以配置31个64Khz(千赫兹)的子信道,整个OC3接口最大可配置31×63=1953个通道。由于路由器中的通道较多,在路由器通过CPOS卡接收报文数据时,在CPOS卡使用的FPGA内部只能为每个通道分配一个固定长度的较小的缓存区域;该缓存区域接收的报文数据必须在该缓存区域水位满(即缓存的报文数据的数据量过大)之前存储至外部的DDRSDRAM中,以确保针对每个通道缓存报文数据不发生溢出错误。其中,每本文档来自技高网...

【技术保护点】
1.一种数据调度方法,其特征在于,应用于网络设备,所述网络设备包括转发单元和与所述转发单元连接的外部存储单元,所述转发单元包括内部存储单元;从目标队列中获取目标通道的标识,所述目标队列中包括至少一个通道的标识;确定所述内部存储单元中所述目标通道对应的缓存区域中的报文数据满足预设条件;根据所述目标通道的标识,将所述目标通道对应的缓存区域中的报文数据存储至所述外部存储单元中。

【技术特征摘要】
1.一种数据调度方法,其特征在于,应用于网络设备,所述网络设备包括转发单元和与所述转发单元连接的外部存储单元,所述转发单元包括内部存储单元;从目标队列中获取目标通道的标识,所述目标队列中包括至少一个通道的标识;确定所述内部存储单元中所述目标通道对应的缓存区域中的报文数据满足预设条件;根据所述目标通道的标识,将所述目标通道对应的缓存区域中的报文数据存储至所述外部存储单元中。2.根据权利要求1所述的数据调度方法,其特征在于,所述目标队列包括高优先级队列和低优先级队列,所述从所述目标队列中获取所述目标通道的标识之前,所述方法还包括:轮询所述内部存储单元中每个通道对应的缓存区域中的报文数据;确定每个通道对应的缓存区域中的报文数据满足第一条件时,将该通道的标识加入到所述高优先级队列;确定每个通道对应的缓存区域中的报文数据满足第二条件时,将该通道的标识加入到所述低优先级队列;其中,所述第一条件包括以下至少一项:该通道的报文数据的数据量达到所述内部存储单元的高水线值、该通道的报文数据对应的完整报文被成功接收;所述第二条件包括:该通道的报文数据的数据量达到所述内部存储单元的低水线值。3.根据权利要求2所述的数据调度方法,其特征在于,所述确定所述内部存储单元中所述目标通道对应的缓存区域中的报文数据满足预设条件,包括:在所述目标通道的标识位于高优先级队列时,判断所述目标通道对应的缓存区域中的报文数据是否满足第一条件;如是,则执行“根据所述目标通道的标识,将所述目标通道的报文数据存储至所述外部存储单元中”的步骤,否则丢弃所述目标通道的标识;在所述目标通道的标识位于低优先级队列时,判断所述目标通道对应的缓存区域中的报文数据是否满足第二条件;如是,则执行“根据所述目标通道的标识,将所述目标通道的报文数据存储至所述外部存储单元中”的步骤,否则丢弃所述目标通道的标识。4.一种网络设备,其特征在于,所述网络设备包括转发单元和与所述转发单元连接的外部存储单元,所述转发单元包括内部存储单元;所述转发单元中还包括:获取子单元、确定子单元和调度子单元;所述获取子单元,用于从目标队列中获取目标通道的标识,所述目标队列中包括至少一个通道的标识;所述确定子单元,用于确定所述内部存储单元中所述目标通道对应的缓存区域中的报文数据是否满足预设条件;所述调度子单元,用于在所述确定子单元确定所述目标通道对应的缓存区域中的报文数据满足预设条件时,根据所述目标通道的标识,将所述目标通道对应的缓存区域中的报文数据存储至所述外部存储单元中。5.根据权利要求4所述的网络设备,其特征在于,所述目标队列包括高优先级队列和低优先级队列,所述转发单元还包括轮询子单元;所述轮询子单元,用于轮询所述内部存储单元中每个通道对应的缓存区域中的报文数据;确定每个通道对应的缓存区域中的报文数据满足第一条件时,将该通道...

【专利技术属性】
技术研发人员:李建国
申请(专利权)人:迈普通信技术股份有限公司
类型:发明
国别省市:四川,51

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

1