CN117201436A - 一种低带宽的交换队列实现方法及系统 - Google Patents

一种低带宽的交换队列实现方法及系统 Download PDF

Info

Publication number
CN117201436A
CN117201436A CN202311131257.6A CN202311131257A CN117201436A CN 117201436 A CN117201436 A CN 117201436A CN 202311131257 A CN202311131257 A CN 202311131257A CN 117201436 A CN117201436 A CN 117201436A
Authority
CN
China
Prior art keywords
fastq
deep
data packet
data
data packets
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.)
Pending
Application number
CN202311131257.6A
Other languages
English (en)
Inventor
徐宁
刘林
周万涛
鲁鹏
蔡敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Binary Semiconductor Co ltd
Original Assignee
Wuhan Binary Semiconductor Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Binary Semiconductor Co ltd filed Critical Wuhan Binary Semiconductor Co ltd
Priority to CN202311131257.6A priority Critical patent/CN117201436A/zh
Publication of CN117201436A publication Critical patent/CN117201436A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种低带宽的交换队列实现方法及系统,涉及分组交换技术领域。该方法的步骤包括:将处理VOQ的交换队列分为FastQ和DeepQ,FastQ的数据块缓存位置为SRAM,DeepQ的数据块缓存位置为DRAM;若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限,将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空、或者DeepQ的Qcc>0,将当前DeepQ对应的VOQ的数据包迁移至FastQ。本发明能够实现1个数据包的所有数据块只会缓存至DRAM或者SRAM,不会分别缓存,进而显著降低了工作带宽,随之也就降低了实现系统的复杂要求,简化了结构设计,降低了风险。

Description

一种低带宽的交换队列实现方法及系统
技术领域
本发明涉及分组交换技术领域,具体涉及一种低带宽的交换队列实现方法及系统。
背景技术
传统高性能交换对列的工作方式为:数据包进入队列后,数据包的数据块缓存在RAM(Random Access Memory,随机存取存储器)里,需要发送数据包时,将RAM中的数据块组成数据包后输出。
目前,一般使用SRAM(Static RAM,静态随机存取存储器)与DRAM(Dynamic RAM,动态随机存取存储器)结合的方式来缓存数据块,其原因在于:SRAM的访问带宽较大,但缓冲区有限,DRAM的缓冲区较大,但访问带宽有限;两者结合能够实现较大的访问带宽和缓冲区。
在SRAM和DRAM混合存储队列中,每个数据包的多个数据块会分别缓存在SRAM和DRAM里,此时数据包的发送方式为:将缓存在DRAM和SRAM的数据块在输出接口中进行重组合并为数据包并输出。
为此,发送接口需要工作在很高的时钟频率(1Ghz以上),以满足SRAM和DRAM混合存储的高带宽需求(结合后为所需带宽为SDRAM和SRAM的带宽之和);为了实现如此高的时钟频率,发送接口的结构设计会变的复杂,不仅提高了成本,而且复杂度较高的发送接口在芯片制造和实际使用时会存在风险,存在一定的安全隐患(例如制造时精度不够或者使用不慎而损坏等)。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:如何在相对较低的接口带宽下,实现混合SRAM和DRAM的交换队列,进而简化结构设计,降低风险。
为达到以上目的,本发明提供的低带宽的交换队列实现方法,包括以下步骤:将处理VOQ的交换队列分为FastQ和DeepQ,FastQ的数据块缓存位置为SRAM,DeepQ的数据块缓存位置为DRAM;若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限,将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空、或者DeepQ的Qcc>0,将当前DeepQ对应的VOQ的数据包迁移至FastQ。
在上述技术方案的基础上,将FastQ对应的VOQ的数据包迁移至DeepQ的流程包括:判断FastQ中的数据包是否全部发送,若是,通过DeepQ接收和发送数据包;否则通过DeepQ接收数据包,通过FastQ发送数据包;将DeepQ对应的VOQ的数据包迁移至FastQ的流程包括:判断DeepQ中的数据包是否全部发送,若是,通过FastQ接收和发送数据包;否则通过FastQ接收数据包,通过DeepQ发送数据包。
在上述技术方案的基础上,通过DeepQ发送数据包的流程包括:收到调度数据包指令后,将DRAM中与当前数据包对应的数据块进行重组后发送。
在上述技术方案的基础上,该方法还包括以下步骤:在初始化阶段为FastQ分配可用带宽。
在上述技术方案的基础上,该方法的步骤包括:
S1:初始状态下,通过FastQ接收并发送数据包;若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限时,转到S2;
S2:通过DeepQ接收数据包,通过FastQ发送数据包;若监测到FastQ中的所有数据包全部发送,转到S3;
S3:通过DeepQ接收和发送数据包,若监测到DeepQ的队列管理长度为0、且DeepQ的Qcc>0,转到S4;
S4:通过FastQ接收数据包,通过DeepQ发送数据包,若监测到DeepQ中的所有数据包全部发送,转到S5;
S5:通过FastQ接收和发送数据包,判断是否在指定时长内将当前VOQ剩余的数据包全部发送,若是,确认当前VOQ处理完成,否则转到S6;
S6:通过FastQ发送数据包,通过DeepQ接收数据包,若监测到FastQ中的所有数据包全部发送,转到S3。
本发明提供的低带宽的交换队列实现系统,包括状态机、DeepQ模块、FastQ模块和输出选择模块;
状态机用于:若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限,则将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空、或者DeepQ的Qcc>0,则将当前DeepQ对应的VOQ的数据包迁移至FastQ;
DeepQ模块用于:将接收的数据包的数据块缓存至DRAM,发送数据包时,将DRAM的数据块重组形成数据包;
FastQ模块用于:将接收的数据包的数据块缓存至SRAM,发送数据包时,将SRAM的数据块重组形成数据包;
输出选择模块用于:选择并发送DeepQ模块或FastQ模块形成的数据包。
在上述技术方案的基础上,所述状态机将FastQ对应的VOQ的数据包迁移至DeepQ的流程包括:判断FastQ中的数据包是否全部发送,若是,通过DeepQ接收和发送数据包;否则通过DeepQ接收数据包,通过FastQ发送数据包;所述状态机将DeepQ对应的VOQ的数据包迁移至FastQ的流程包括:判断DeepQ中的数据包是否全部发送,若是,通过FastQ接收和发送数据包;否则通过FastQ接收数据包,通过DeepQ发送数据包。
在上述技术方案的基础上,所述DeepQ模块包括队列管理模块、队列调度仲裁模块、DRAM管理模块和DRAM分块重组模块;DeepQ模块发送数据包的流程包括:队列调度仲裁模块通过队列管理模块发送数据包调度指令至DRAM管理模块;DRAM管理模块从DRAM中获取与数据包调度指令对应的数据块后,将数据块发送至DRAM分块重组模块进行重组后形成数据包。
在上述技术方案的基础上,所述状态机还用于:在初始化阶段为FastQ分配可用带宽。
在上述技术方案的基础上,所述状态机的状态包括:
FastQ状态:该状态也为初始状态,该状态下通过FastQ接收并发送数据包;该状态下若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限时,进入Fast2Deep状态;
Fast2Deep:通过DeepQ接收数据包,通过FastQ继续发送数据包;该状态下若监测到FastQ中的所有数据包全部发送,进入Deep状态;
Deep状态:通过DeepQ接收和发送数据包,该状态下若监测到DeepQ的队列管理长度为0、且DeepQ的Qcc>0,进入Deep2Fast状态;
Deep2Fast状态:通过FastQ接收数据包,通过DeepQ发送数据包;该状态下若监测到DeepQ中的所有数据包全部发送,进入SyncDrain状态;
SyncDrain状态:通过FastQ接收和发送数据包,该状态下若监测到指定时长内将当前VOQ剩余的数据包全部发送,进入FastQ状态;否则进入Sync2Deep状态;
Sync2Deep状态:通过FastQ发送数据包,通过DeepQ接收数据包,该状态下若监测到FastQ中的所有数据包全部发送,进入DeepQ状态。
与现有技术相比,本发明的优点在于:
由此可知,本发明通过FastQ与DeepQ结合来实现VOQ数据包的接收和发送,1个数据包的所有数据块只会缓存至DRAM或者SRAM,不会分别缓存;如此就可以避免现有技术中在发送数据包时同时处理缓存在SRAM和DRAM的数据块的情况,以此显著降低工作带宽,随之也就降低了实现系统的复杂要求,简化了结构设计,降低了风险。
与此同时,进入FastQ的数据包由于本身积累了足够多的令牌,这表示它已经获得了足够多带宽,因此FastQ中的数据包不需要和其它属于DeepQ的队列一起经过统一的调度之后输出,而是可以直接输出到目的线卡或者端口,这样显著提高了部分高性能业务数据的延时和抖动等QOS性能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中与现有技术中交换队列发送数据包所需的带宽对比;
图2为本发明实施例中交换队列实现方法的流程图;
图3为本发明实施例中交换队列实现系统的结构框图;
图4为本发明实施例中状态机的状态转换示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本发明实施例中的低带宽的交换队列实现方法,包括以下步骤:
将处理VOQ(Virtual Output Queue,虚拟输出队列)的交换队列分为FastQ(快速队列)和DeepQ(深度队列),FastQ的数据块缓存位置为SRAM,DeepQ的数据块缓存位置为DRAM;为了避免赘述,下文中出现的通过FastQ或DeepQ接收数据包,默认代表着该数据包的数据块会缓存至SRAM或DRAM。
与此同时,上述各队列的工作基础在于申请到可用带宽(用令牌表示),1个数据包输出后会消耗掉相应数量的令牌。令牌通过向带宽管理模块申请得到,也可在初始化时配置;计数器QCC代表队列积累的令牌记录;申请到令牌后QCC+1,使用1个令牌后QCC-1,QCC为现有技术,不在本发明保护范围之内。
在初始化阶段,所有VOQ队列的数据包均通过FastQ接收和发送;若监测到FastQ的Qcc<0、或者FastQ的SRAM缓冲占用率超过门限,则将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空(即队列管理长度为0)、或者DeepQ的Qcc>0,则将当前DeepQ对应的VOQ的数据包迁移至FastQ。
本发明通过FastQ与DeepQ结合来实现VOQ数据包的接收和发送,同一个数据包的所有数据块只会进入FastQ或DeepQ,因此也只会缓存至DRAM或者SRAM,不会分别缓存;参见图1所示,现有技术中同一个队列的数据分别缓存在DRAM和SRAM中,发送数据包时需要同时满足SRAM和DRAM的处理带宽(图中DRAM混合SRAM对应的带宽),而本发明发送数据包时发送接口只需要只需满足SRAM和DRAM的带宽需求的较高者(图中FastQ与DeepQ对应的带宽)。由此可知,本发明避免了现有技术中发送数据包时同时处理缓存在SRAM和DRAM的数据块的情况,进而显著降低了工作带宽,随之也就降低了实现系统的复杂要求,简化了结构设计,降低了风险。
与此同时,参见上文可知,进入FastQ的数据包由于本身积累了足够多的令牌,这表示它已经获得了足够多带宽,因此FastQ中的数据包不需要和DeepQ中的VOQ对列经过统一的调度之后输出,而是可以直接输出到目的线卡或者端口,这样显著提高了业务数据的延时和抖动等QOS性能。
优选的,该方法中将FastQ对应的VOQ的数据包迁移至DeepQ的流程包括:判断FastQ中的数据包是否全部发送,若是,通过DeepQ接收和发送数据包;否则通过DeepQ接收数据包,通过FastQ发送数据包。该方法中将DeepQ对应的VOQ的数据包迁移至FastQ的流程包括:判断DeepQ中的数据包是否全部发送,若是,通过FastQ接收和发送数据包;否则通过FastQ接收数据包,通过DeepQ发送数据包。
优选的,通过DeepQ发送数据包的流程包括:收到调度数据包指令后,将DRAM中与当前数据包对应的数据块进行重组后发送。
优选的,该方法还包括以下步骤:在初始化阶段为FastQ分配可用带宽(即FastQ的初始VOQ>0,同时后续运行中使得FastQ能够及时获取新的令牌,从而避免数据包频繁迁移至DeepQ。
下面参见图2所示,以1个VOQ为例,说明本发明实施例中的低带宽的交换队列实现方法的步骤:
S1:初始状态下,通过FastQ接收并发送数据包(即数据包从FastQ入队和离队);在执行S1的上述过程中,若监测到FastQ的Qcc<0(说明可用带宽不够)、或者FastQ的SRAM缓冲占用率超过门限时(缓存超限可能无法接收后续到达的数据包),转到S2,否则继续使用FastQ。
S2:通过DeepQ接收数据包,此时FastQ中还有数据包未发送,所以通过FastQ继续发送数据包;在执行S2的上述过程中,若监测到FastQ中的所有数据包全部发送,转到S3。
S3:通过DeepQ接收和发送数据包,在执行S3的上述过程中,若监测到DeepQ的队列管理长度为0(即DeepQ中的数据包为空,代表DeepQ中的所有数据包均被调度)、且DeepQ的Qcc>0(Qcc>0代表此时具备足够的带宽资源供FastQ使用,即可以快速输出),转到S4,否则继续使用DeepQ。
S4:通过FastQ接收数据包,但是DeepQ中的队列管理长度为0不代表DeepQ中的数据被清空,可能还有数据包处于虽然被调度、但因DRAM读写延时而未发送的状态(即数据包没有全部离开缓冲区),故此时继续通过DeepQ发送数据包;在执行S4的上述过程中,若监测到DeepQ中的所有数据包全部发送,转到S5。
S5:通过FastQ接收和发送数据包,判断是否在指定时长内将当前VOQ剩余的数据包全部发送,若是,确认当前VOQ处理完成,否则转到S6。
S5中的指定时长根据处理VOQ剩余数据包的经验时间来设置,S5的原理为:若没有指定时间,则会监测到S1的条件就会切换队列,监测到S3的条件就会切换回来,又因为进行到S5时VOQ的数据包已经快发送完成,所以此时设置一个经验时间能够频繁切换队列。
S6:通过FastQ发送数据包,通过DeepQ接收数据包,在执行S6的上述过程中,若监测到FastQ中的所有数据包全部发送,转到S3。
需要说明的是:本实施例中在执行S5时,将当前VOQ的所有数据包全部发送,实际应用可能在上述任意步骤中发送完VOQ全部的数据包,一旦全部发送,则代表该VOQ的处理流程结束。
参见图3所示,本发明实施例中的低带宽的交换队列实现系统,包括状态机、DeepQ模块、FastQ模块和输出选择模块。
状态机用于:在初始化阶段,所有VOQ队列的数据包均通过FastQ接收和发送;若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限,则将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空、或者DeepQ的Qcc>0,则将当前DeepQ对应的VOQ的数据包迁移至FastQ。
DeepQ模块用于:将接收的数据包的数据块缓存至DRAM,发送数据包时,将DRAM的数据块重组形成数据包。
FastQ模块用于:将接收的数据包的数据块缓存至SRAM,发送数据包时,将SRAM的数据块重组形成数据包。
输出选择模块用于:选择并发送DeepQ模块或FastQ模块形成的数据包。
优选的,状态机将FastQ对应的VOQ的数据包迁移至DeepQ的流程包括:判断FastQ中的数据包是否全部发送,若是,通过DeepQ接收和发送数据包;否则通过DeepQ接收数据包,通过FastQ发送数据包。状态机将DeepQ对应的VOQ的数据包迁移至FastQ的流程包括:判断DeepQ中的数据包是否全部发送,若是,通过FastQ接收和发送数据包;否则通过FastQ接收数据包,通过DeepQ发送数据包。
优选的,DeepQ模块包括队列管理模块(用于记录队列长度)、队列调度仲裁模块、DRAM管理模块和DRAM分块重组模块;DeepQ模块发送数据包的流程包括:队列调度仲裁模块通过队列管理模块发送数据包调度指令至DRAM管理模块;DRAM管理模块从DRAM中获取与数据包调度指令对应的数据块后,将数据块发送至DRAM分块重组模块进行重组后形成数据包。
优选的,状态机还用于:在初始化阶段为FastQ分配指定数量的可用带宽。
优选的,参见图4所示,状态机的状态包括:
FastQ状态:该状态也为初始状态,该状态下通过FastQ接收并发送数据包;该状态下若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限时,进入Fast2Deep状态。
Fast2Deep:通过DeepQ接收数据包,通过FastQ继续发送数据包;该状态下若监测到FastQ中的所有数据包全部发送,进入Deep状态。
Deep状态:通过DeepQ接收和发送数据包,该状态下若监测到DeepQ的队列管理长度为0、且DeepQ的Qcc>0,进入Deep2Fast状态。
Deep2Fast状态:通过FastQ接收数据包,通过DeepQ发送数据包;该状态下若监测到DeepQ中的所有数据包全部发送,进入SyncDrain状态。
SyncDrain状态:通过FastQ接收和发送数据包,该状态下若监测到指定时长内将当前VOQ剩余的数据包全部发送,进入FastQ状态;否则进入Sync2Deep状态。
Sync2Deep状态:通过FastQ发送数据包,通过DeepQ接收数据包,该状态下若监测到FastQ中的所有数据包全部发送,进入DeepQ状态。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读存储介质上,计算机可读存储介质可以包括计算机可读存储介质(或非暂时性介质)和通信介质(或暂时性介质)。
以上仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种低带宽的交换队列实现方法,其特征在于,该方法包括以下步骤:将处理VOQ的交换队列分为FastQ和DeepQ,FastQ的数据块缓存位置为SRAM,DeepQ的数据块缓存位置为DRAM;若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限,将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空、或者DeepQ的Qcc>0,将当前DeepQ对应的VOQ的数据包迁移至FastQ。
2.如权利要求1所述的低带宽的交换队列实现方法,其特征在于,将FastQ对应的VOQ的数据包迁移至DeepQ的流程包括:判断FastQ中的数据包是否全部发送,若是,通过DeepQ接收和发送数据包;否则通过DeepQ接收数据包,通过FastQ发送数据包;将DeepQ对应的VOQ的数据包迁移至FastQ的流程包括:判断DeepQ中的数据包是否全部发送,若是,通过FastQ接收和发送数据包;否则通过FastQ接收数据包,通过DeepQ发送数据包。
3.如权利要求2所述的低带宽的交换队列实现方法,其特征在于,通过DeepQ发送数据包的流程包括:收到调度数据包指令后,将DRAM中与当前数据包对应的数据块进行重组后发送。
4.如权利要求3所述的低带宽的交换队列实现方法,其特征在于,该方法还包括以下步骤:在初始化阶段为FastQ分配可用带宽。
5.如权利要求1至4任一项所述的低带宽的交换队列实现方法,其特征在于,该方法的步骤包括:
S1:初始状态下,通过FastQ接收并发送数据包;若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限时,转到S2;
S2:通过DeepQ接收数据包,通过FastQ发送数据包;若监测到FastQ中的所有数据包全部发送,转到S3;
S3:通过DeepQ接收和发送数据包,若监测到DeepQ的队列管理长度为0、且DeepQ的Qcc>0,转到S4;
S4:通过FastQ接收数据包,通过DeepQ发送数据包,若监测到DeepQ中的所有数据包全部发送,转到S5;
S5:通过FastQ接收和发送数据包,判断是否在指定时长内将当前VOQ剩余的数据包全部发送,若是,确认当前VOQ处理完成,否则转到S6;
S6:通过FastQ发送数据包,通过DeepQ接收数据包,若监测到FastQ中的所有数据包全部发送,转到S3。
6.一种低带宽的交换队列实现系统,其特征在于:该系统包括状态机、DeepQ模块、FastQ模块和输出选择模块;
状态机用于:若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限,则将当前FastQ对应的VOQ的数据包迁移至DeepQ;若监测到DeepQ中数据包为空、或者DeepQ的Qcc>0,则将当前DeepQ对应的VOQ的数据包迁移至FastQ;
DeepQ模块用于:将接收的数据包的数据块缓存至DRAM,发送数据包时,将DRAM的数据块重组形成数据包;
FastQ模块用于:将接收的数据包的数据块缓存至SRAM,发送数据包时,将SRAM的数据块重组形成数据包;
输出选择模块用于:选择并发送DeepQ模块或FastQ模块形成的数据包。
7.如权利要求6所述的低带宽的交换队列实现系统,其特征在于,所述状态机将FastQ对应的VOQ的数据包迁移至DeepQ的流程包括:判断FastQ中的数据包是否全部发送,若是,通过DeepQ接收和发送数据包;否则通过DeepQ接收数据包,通过FastQ发送数据包;所述状态机将DeepQ对应的VOQ的数据包迁移至FastQ的流程包括:判断DeepQ中的数据包是否全部发送,若是,通过FastQ接收和发送数据包;否则通过FastQ接收数据包,通过DeepQ发送数据包。
8.如权利要求7所述的低带宽的交换队列实现系统,其特征在于,所述DeepQ模块包括队列管理模块、队列调度仲裁模块、DRAM管理模块和DRAM分块重组模块;DeepQ模块发送数据包的流程包括:队列调度仲裁模块通过队列管理模块发送数据包调度指令至DRAM管理模块;DRAM管理模块从DRAM中获取与数据包调度指令对应的数据块后,将数据块发送至DRAM分块重组模块进行重组后形成数据包。
9.如权利要求8所述的低带宽的交换队列实现系统,其特征在于,所述状态机还用于:在初始化阶段为FastQ分配可用带宽。
10.如权利要求6至9任一项所述的低带宽的交换队列实现系统,其特征在于,所述状态机的状态包括:
FastQ状态:该状态也为初始状态,该状态下通过FastQ接收并发送数据包;该状态下若监测到FastQ的Qcc<0、或者FastQ的缓冲占用率超过门限时,进入Fast2Deep状态;
Fast2Deep:通过DeepQ接收数据包,通过FastQ继续发送数据包;该状态下若监测到FastQ中的所有数据包全部发送,进入Deep状态;
Deep状态:通过DeepQ接收和发送数据包,该状态下若监测到DeepQ的队列管理长度为0、且DeepQ的Qcc>0,进入Deep2Fast状态;
Deep2Fast状态:通过FastQ接收数据包,通过DeepQ发送数据包;该状态下若监测到DeepQ中的所有数据包全部发送,进入SyncDrain状态;
SyncDrain状态:通过FastQ接收和发送数据包,该状态下若监测到指定时长内将当前VOQ剩余的数据包全部发送,进入FastQ状态;否则进入Sync2Deep状态;
Sync2Deep状态:通过FastQ发送数据包,通过DeepQ接收数据包,该状态下若监测到FastQ中的所有数据包全部发送,进入DeepQ状态。
CN202311131257.6A 2023-09-01 2023-09-01 一种低带宽的交换队列实现方法及系统 Pending CN117201436A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311131257.6A CN117201436A (zh) 2023-09-01 2023-09-01 一种低带宽的交换队列实现方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311131257.6A CN117201436A (zh) 2023-09-01 2023-09-01 一种低带宽的交换队列实现方法及系统

Publications (1)

Publication Number Publication Date
CN117201436A true CN117201436A (zh) 2023-12-08

Family

ID=88991719

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311131257.6A Pending CN117201436A (zh) 2023-09-01 2023-09-01 一种低带宽的交换队列实现方法及系统

Country Status (1)

Country Link
CN (1) CN117201436A (zh)

Similar Documents

Publication Publication Date Title
CN107391271B (zh) 一种基于消息队列系统的延时任务触发方法和装置
US9185047B2 (en) Hierarchical profiled scheduling and shaping
EP2466824A1 (en) Service scheduling method and device
CN104378308A (zh) 报文发送速率检测方法及装置
CN113485822A (zh) 内存管理方法、系统、客户端、服务器及存储介质
CN113783793B (zh) 对时间敏感的数据帧的流量调度方法及相关设备
WO2012038829A2 (en) Low latency first-in-first-out (fifo) buffer
US7370117B2 (en) Communication system and method for communicating frames of management information in a multi-station network
EP3326347B1 (en) Method and system for usb 2.0 bandwidth reservation
CN114257559B (zh) 一种数据报文的转发方法及装置
CN114189477B (zh) 一种报文拥塞控制方法及装置
CN110830388A (zh) 一种数据调度方法、装置、网络设备及计算机存储介质
WO2019109902A1 (zh) 队列调度方法及装置、通信设备、存储介质
CN113014465A (zh) 一种基于服务质量特性的总线传输接口系统及设计方法
CN112995058B (zh) 一种令牌的调整方法及装置
CN113835611A (zh) 存储调度方法、设备和存储介质
CN117201436A (zh) 一种低带宽的交换队列实现方法及系统
CN104714832A (zh) 一种用于机载数据网络异步数据交互区的缓冲管理方法
CN113157465B (zh) 基于指针链表的消息发送方法及装置
US20020172156A1 (en) Adaptive control of multiplexed input buffer channels
CN114401235A (zh) 一种队列管理中重载处理方法、系统、介质、设备及应用
CN109862044B (zh) 一种转换装置、网络设备及数据传输方法
US9128785B2 (en) System and method for efficient shared buffer management
CN110708255B (zh) 一种报文控制方法及节点设备
CN113626221A (zh) 一种消息入队方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination