CN110519180B - 网卡虚拟化队列调度方法及系统 - Google Patents

网卡虚拟化队列调度方法及系统 Download PDF

Info

Publication number
CN110519180B
CN110519180B CN201910647437.7A CN201910647437A CN110519180B CN 110519180 B CN110519180 B CN 110519180B CN 201910647437 A CN201910647437 A CN 201910647437A CN 110519180 B CN110519180 B CN 110519180B
Authority
CN
China
Prior art keywords
linked list
frame
virtual machine
page
queue
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.)
Active
Application number
CN201910647437.7A
Other languages
English (en)
Other versions
CN110519180A (zh
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.)
CETC 32 Research Institute
Original Assignee
CETC 32 Research Institute
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 CETC 32 Research Institute filed Critical CETC 32 Research Institute
Priority to CN201910647437.7A priority Critical patent/CN110519180B/zh
Publication of CN110519180A publication Critical patent/CN110519180A/zh
Application granted granted Critical
Publication of CN110519180B publication Critical patent/CN110519180B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种网卡虚拟化队列调度方法及系统,采用两级链表的管理方式,使得以太网帧从多网口到虚拟队列的时延固定。该方法将虚拟化软件层分类和排序功能以及部分二层交换工作硬件化,极大降低了传统虚拟化网卡对cpu的占用量。采用该方法可以制造出支持多虚拟机的多种数量网口以及带带外管理功能的网卡,适应于多种以太网应用场景。

Description

网卡虚拟化队列调度方法及系统
技术领域
本发明涉及计算机网络领域,具体地,涉及一种网卡虚拟化队列调度方法及系统。
背景技术
随着计算机和互联网技术的发展,尤其云计算和大数据技术的广泛应用,使得虚拟化技术得到迅速发展。近年来虚拟化的重心逐渐由软件级虚拟化技术、处理器级虚拟化支持、芯片级虚拟化支持向着I/O虚拟化硬件设备级的方向发展,而且由虚拟机实现的I/O功能也逐步移向硬件。
传统的I/O虚拟化技术,相比物理主机,对于网络数据流处理路径延长了,网络数据包的拷贝次数增加了,因此云计算平台或者其他虚拟化系统或者平台的网络性能,例如时延和包速率,比物理机网络性能差一个数量级,这阻碍了云计算或者其他虚拟化系统或者平台进入对网络性能要求高的行业,例如金融和电子交易类、高清视频类业务。
公开号CN109905329A公开了一种虚拟化环境下任务类型感知的流队列自适应管理方法,该方法包含:(1)接收来自管理员的指令,若为流调度策略移除指令,则开始流调度移除功能,若该命令为流调度策略部署指令,则开始流调度策略部署功能;(2)基于不同流的元数据信息感知任务类型,判断流所属的任务类型是否为带宽敏感型或是延迟敏感型;(3)在虚拟化层将不同类型任务的流映射到内核模块中不同的Qdisc队列,实现对不同类型任务的流的网络传输性能的隔离和管理;(4)实时统计不同任务类型的流负载情况,根据负载对不同队列之间的传输权重进行自适应调整和优化。
网卡直通方案中提供如何提高虚拟化系统的网络性能,减轻cpu负担成为当今IO虚拟化的主要方向。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种网卡虚拟化队列调度方法及系统。
根据本发明提供的一种网卡虚拟化队列调度方法,包括:
网卡控制步骤:轮询接收每个网口到来的以太网帧,按时间切片,每个网口依次获得单位时间片的机会接收帧片段;
接收帧存储步骤:以每个单位时间片的帧片段记为一页,数据按页到来的先后顺序存储,以链表的方式管理该存储,每一条链表条目对应数据缓存的一个页,链表表头地址为当前分配的页号,表头内容指向下一个分配的页号;
虚拟机号生成步骤:用帧头页,通过过滤产生虚拟机号;
两级链表生成步骤:用所述虚拟机号和转发到所述虚拟机号的所有帧生成一级链表,一级链表里的每条表项对应一条二级链表,用存储步骤产生的页号连接成二级链表,每条链按页号组成一帧,链表里的每条表项和页号对应;
列队管理步骤:根据虚拟机号对应的一级链表和二级链表,把存储步骤中存储的帧送到host端;
帧缓存发送步骤:将host端发送的帧进行缓存,并送到对应网口。
优选地,接收帧存储步骤中,在当前数据页号分配完成之后,将数据页号需要发送端口数目写入链表表头地址,并从链表中删除对应数据页号,然后更新表头。
优选地,虚拟机号生成步骤中,过滤包括MAC和VLAN的过滤。
优选地,每个虚拟机号分别对应一个虚拟机,多个虚拟机好构成虚拟机号列表,虚拟机号列表使能对应的描述符队列,每个描述符对应每个待发送帧,通过描述符队列的链表来管理描述符队列的出入。
优选地于,帧缓存发送步骤将host端发送出来的帧缓存,并对发送描述符入列,发送描述符队列个数和虚拟机个数一致。
根据本发明提供的一种网卡虚拟化队列调度系统,包括:
网卡控制模块:轮询接收每个网口到来的以太网帧,按时间切片,每个网口依次获得单位时间片的机会接收帧片段;
接收帧存储模块:以每个单位时间片的帧片段记为一页,数据按页到来的先后顺序存储,以链表的方式管理该存储,每一条链表条目对应数据缓存的一个页,链表表头地址为当前分配的页号,表头内容指向下一个分配的页号;
虚拟机号生成模块:用帧头页,通过过滤产生虚拟机号;
两级链表生成模块:用所述虚拟机号和转发到所述虚拟机号的所有帧生成一级链表,一级链表里的每条表项对应一条二级链表,用存储模块产生的页号连接成二级链表,每条链按页号组成一帧,链表里的每条表项和页号对应;
列队管理模块:根据虚拟机号对应的一级链表和二级链表,把存储模块中存储的帧送到host端;
帧缓存发送模块:将host端发送的帧进行缓存,并送到对应网口。
优选地,接收帧存储模块中,在当前数据页号分配完成之后,将数据页号需要发送端口数目写入链表表头地址,并从链表中删除对应数据页号,然后更新表头。
优选地,虚拟机号生成模块中,过滤包括MAC和VLAN的过滤。
优选地,每个虚拟机号分别对应一个虚拟机,多个虚拟机好构成虚拟机号列表,虚拟机号列表使能对应的描述符队列,每个描述符对应每个待发送帧,通过描述符队列的链表来管理描述符队列的出入。
优选地,帧缓存发送模块将host端发送出来的帧缓存,并对发送描述符入列,发送描述符队列个数和虚拟机个数一致。
与现有技术相比,本发明具有如下的有益效果:
1.本发明技术方案提供了一种多虚拟队列的调度方法,该方法典型应用于8个虚拟队列,也可支持更偶数倍队列个数,对虚拟化队列的扩充具备灵活性。该调度方法,采用两级链表的形式,可以支持任意长度的帧排序和转发,极大减轻了虚拟软件的工作量,降低了cpu的占用率。
2.本发明技术方案中采用硬件过滤机制和虚拟队列调度方法配合,使得帧延时可控且us级别;非常适合应用于多虚拟机处理多种高性能的网络业务的情景中。
3.本发明技术支持多端口网口(典型4端口),适用于多场景。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明网卡接收数据过程图;
图2是本发明网卡虚拟化队列调度执行过程图;
图3是本发明网卡发送流程图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种网卡虚拟化队列调度方法,包括:
网卡控制步骤:轮询接收每个网口到来的以太网帧,按时间切片,每个网口依次获得单位时间片的机会接收帧片段;
接收帧存储步骤:以每个单位时间片的帧片段记为一页,数据按页到来的先后顺序存储,以链表的方式管理该存储,每一条链表条目对应数据缓存的一个页,链表表头地址为当前分配的页号,表头内容指向下一个分配的页号;
虚拟机号生成步骤:用帧头页,通过过滤产生虚拟机号;
两级链表生成步骤:用所述虚拟机号和转发到所述虚拟机号的所有帧生成一级链表,一级链表里的每条表项对应一条二级链表,用存储步骤产生的页号连接成二级链表,每条链按页号组成一帧,链表里的每条表项和页号对应;
列队管理步骤:根据虚拟机号对应的一级链表和二级链表,把存储步骤中存储的帧送到host端;
帧缓存发送步骤:将host端发送的帧进行缓存,并送到对应网口。
常用采用8个虚拟队列,每个虚拟机队列和虚拟机号一一对应。每个虚拟队列包含4个优先级队列,可提供QoS调度。每个虚拟队列绑定帧的存储地址,对应一张描述符队列表。描述符队列表里的每张表项,包含队列结束标志、转发信息、下一个队列指针、缓存表地址;空闲队列链表提供空闲描述符队列的维护。缓存表地址指向缓存队列表项;缓存队列表项包含缓存页地址,帧开始/结束标志符号,下一个缓存表地址;空闲缓存链表提供空闲缓存队列的维护。
实施例:
如图1所示,该网卡虚拟化队列调度方法支持多网口,典型的2网口/4网口/8网口。
S101中列出典型4网口的示意图。网络上的帧通过4网口进入该网卡。
S102对4网口帧进行仲裁,在内部数据带宽足够的情况下,采用了时隙分配的仲裁方式。其具体思想就是对所有的操作采用固定的轮询序列,只有在其本身的序列中才能被响应,从网口0开始接收,检测是否有网口0接收请求,如果有,在进入网口0接收序列的同时,发出网卡0接收响应,否则只进入口0接收序列,不发出网口0接收响应,在进入网口0接收序列8个时钟周期之后跳出网口0接收序列,同时结束网口0响应。接下来依次进入网口1、网口2、网口3、网口0接收序列,其接收响应的产生遵循同样的原则。接收的一个时间片数据称为一个数据页。
S103接收帧存储器的分配采用了链表的方式来执行,与数据缓存的数据页数相等,每一条链表条目对应了数据缓存的一个数据页,链表表头地址为当前分配的数据页号,表头内容指向了下一个分配的数据页号,在当前数据页号分配完成之后,将数据页号需要发送端口数目写入此地址,并从链表中删除此数据页号,然后更新表头。
S104提供网络二层过滤,包括MAC和VLAN的过滤。从S102接收到到帧头,提取帧的字段。其中的MAC地址和VLAN地址,查表得到转发虚拟号列表。如果上述查找失败,丢弃该帧,并统计。为了提高查找的时间和查找的效率,S104代表的流表存储在Hash结构中。
S105提供虚拟化过滤,通过以太网类型、MAC地址、VLAN头查相应的表项,获得虚拟机号列表。通过VLAN规则镜像、入端口镜像,虚拟端口镜像获得镜像规则虚拟机号列表。上述两种虚拟机号列表通过策略决策后获得最终的虚拟机号列表。如果上述规则获得虚拟机号列表失败,则有一个默认的虚拟机号列表。
S106根据S105获得的虚拟机号列表和S103获得的缓存页号,生成描述符队列和缓存队列。
S107将S103中的帧数据转换到其它模块接口形式。
S108其他模块1,常用的是PCIE控制器。
可选的,S109其他模块2,提供了服务器常用的NCSI接口。
对应上述S106,图2描述了其具体的调度方法。
S201表示虚拟机号,常用的有8个虚拟机号,其中VP0~7分别对应一个虚拟机。如S106中描述所示,获得的虚拟机号列表,将分别使能对应的描述符队列。
S202表示描述符队列,每个描述符对应每个待发送帧(无论是短帧或巨帧)。通过描述符队列的链表来管理描述符队列的出入。QOS策略可以把该队列分成1~4个描述符队列,通过优先级列表、next_TXQ_tag(下一个描述符)和TXQ_eof(最后一个描述符)来管理各个描述符队列,所有描述符队列共享固定数量条目。空余的描述符队列由空余链表管理。该描述队列中的内容Buffer_tag(缓存队列地址)对应缓存队列中的一个条目。
S203表示缓存队列。每页数据写入,缓存标签链表都会更新,维护着每个描述符所对应帧存放的所有页地址。当收到帧头内容时,会写一个Buffer_tag(缓存页),记录该页地址,sof(帧开始)置1,eof(帧结束)置0,Next_buffer_tag(该帧的下一个缓存页)指向空余Buffer_tag列表的头;在下个时间片中,收到该帧的剩余字节,继续写一个Buffer_tag,记录剩余字节存放的页地址,sof置0,eof置1,以及把该帧的前一个Buffer_tag的Next_buffer_tag更新。当需要发送帧时,通过描述符的Buffer_tag位找到Buffer_tag列表的位置,从中找到发送帧的页地址,因为还未到帧尾(eof状态为0),根据Next_buffer_tag继续读取下个Buffer_tag,直至读取到eof状态为1。
S204表示缓存页,对应每个时间片从端口收到的数据。一页包含256字节数据。
S205提供了4个优先级队列,优先级列表记录了描述符队列中各个优先级队列头的信息。当不同优先级的发送描述符队列非空时,都会把各个优先级队列头信息添加到相应的优先级列表中。根据各个队列的权重来决定各个优先级队列的调度。
S206和S207提供了空闲链表。S206空闲描述符链表供S202使用,S207空闲缓存队列供S203使用。
网卡发送流程图如图3所示。S301将host端发送出来的帧缓存并对发送描述符入列,此处发送描述符队列个数和虚拟机个数一致。
S302将S301中缓存的帧,根据发送描述符发送到对应的网口中。
在上述一种网卡虚拟化队列调度方法的基础上,本发明还提供一种网卡虚拟化队列调度系统。包括:
网卡控制模块:轮询接收每个网口到来的以太网帧,按时间切片,每个网口依次获得单位时间片的机会接收帧片段;
接收帧存储模块:以每个单位时间片的帧片段记为一页,数据按页到来的先后顺序存储,以链表的方式管理该存储,每一条链表条目对应数据缓存的一个页,链表表头地址为当前分配的页号,表头内容指向下一个分配的页号;
虚拟机号生成模块:用帧头页,通过过滤产生虚拟机号;
两级链表生成模块:用所述虚拟机号和转发到所述虚拟机号的所有帧生成一级链表,一级链表里的每条表项对应一条二级链表,用存储模块产生的页号连接成二级链表,每条链按页号组成一帧,链表里的每条表项和页号对应;
列队管理模块:根据虚拟机号对应的一级链表和二级链表,把存储模块中存储的帧送到host端;
帧缓存发送模块:将host端发送的帧进行缓存,并送到对应网口。
本发明采用两级链表的管理方式,使得以太网帧从多网口到虚拟队列的时延固定。该方法将虚拟化软件层分类和排序功能以及部分二层交换工作硬件化,极大降低了传统虚拟化网卡对cpu的占用量。采用该方法可以制造出支持多虚拟机的多种数量网口以及带带外管理功能的网卡,适应于多种以太网应用场景。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (10)

1.一种网卡虚拟化队列调度方法,其特征在于,包括:
网卡控制步骤:轮询接收每个网口到来的以太网帧,按时间切片,每个网口依次获得单位时间片的机会接收帧片段;
接收帧存储步骤:以每个单位时间片的帧片段记为一页,数据按页到来的先后顺序存储,以链表的方式管理该存储,每一条链表条目对应数据缓存的一个页,链表表头地址为当前分配的页号,表头内容指向下一个分配的页号;
虚拟机号生成步骤:用帧头页,通过过滤产生虚拟机号;
两级链表生成步骤:用所述虚拟机号和转发到所述虚拟机号的所有帧生成一级链表,一级链表里的每条表项对应一条二级链表,用存储步骤产生的页号连接成二级链表,每条链按页号组成一帧,链表里的每条表项和页号对应;
列队管理步骤:根据虚拟机号对应的一级链表和二级链表,把存储步骤中存储的帧送到host端;
帧缓存发送步骤:将host端发送的帧进行缓存,并送到对应网口。
2.根据权利要求1所述的网卡虚拟化队列调度方法,其特征在于,接收帧存储步骤中,在当前数据页号分配完成之后,将数据页号需要发送端口数目写入链表表头地址,并从链表中删除对应数据页号,然后更新表头。
3.根据权利要求1所述的网卡虚拟化队列调度方法,其特征在于,虚拟机号生成步骤中,过滤包括MAC和VLAN的过滤。
4.根据权利要求1所述的网卡虚拟化队列调度方法,其特征在于,每个虚拟机号分别对应一个虚拟机,多个虚拟机号 构成虚拟机号列表,虚拟机号列表使能对应的描述符队列,每个描述符对应每个待发送帧,通过描述符队列的链表来管理描述符队列的出入。
5.根据权利要求4所述的网卡虚拟化队列调度方法,其特征在于,帧缓存发送步骤将host端发送出来的帧缓存,并对发送描述符入列,发送描述符队列个数和虚拟机个数一致。
6.一种网卡虚拟化队列调度系统,其特征在于,包括:
网卡控制模块:轮询接收每个网口到来的以太网帧,按时间切片,每个网口依次获得单位时间片的机会接收帧片段;
接收帧存储模块:以每个单位时间片的帧片段记为一页,数据按页到来的先后顺序存储,以链表的方式管理该存储,每一条链表条目对应数据缓存的一个页,链表表头地址为当前分配的页号,表头内容指向下一个分配的页号;
虚拟机号生成模块:用帧头页,通过过滤产生虚拟机号;
两级链表生成模块:用所述虚拟机号和转发到所述虚拟机号的所有帧生成一级链表,一级链表里的每条表项对应一条二级链表,用存储模块产生的页号连接成二级链表,每条链按页号组成一帧,链表里的每条表项和页号对应;
列队管理模块:根据虚拟机号对应的一级链表和二级链表,把存储模块中存储的帧送到host端;
帧缓存发送模块:将host端发送的帧进行缓存,并送到对应网口。
7.根据权利要求6所述的网卡虚拟化队列调度系统,其特征在于,接收帧存储模块中,在当前数据页号分配完成之后,将数据页号需要发送端口数目写入链表表头地址,并从链表中删除对应数据页号,然后更新表头。
8.根据权利要求6所述的网卡虚拟化队列调度系统,其特征在于,虚拟机号生成模块中,过滤包括MAC和VLAN的过滤。
9.根据权利要求6所述的网卡虚拟化队列调度系统,其特征在于,每个虚拟机号分别对应一个虚拟机,多个虚拟机号 构成虚拟机号列表,虚拟机号列表使能对应的描述符队列,每个描述符对应每个待发送帧,通过描述符队列的链表来管理描述符队列的出入。
10.根据权利要求9所述的网卡虚拟化队列调度系统,其特征在于,帧缓存发送模块将host端发送出来的帧缓存,并对发送描述符入列,发送描述符队列个数和虚拟机个数一致。
CN201910647437.7A 2019-07-17 2019-07-17 网卡虚拟化队列调度方法及系统 Active CN110519180B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910647437.7A CN110519180B (zh) 2019-07-17 2019-07-17 网卡虚拟化队列调度方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910647437.7A CN110519180B (zh) 2019-07-17 2019-07-17 网卡虚拟化队列调度方法及系统

Publications (2)

Publication Number Publication Date
CN110519180A CN110519180A (zh) 2019-11-29
CN110519180B true CN110519180B (zh) 2022-09-13

Family

ID=68623011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910647437.7A Active CN110519180B (zh) 2019-07-17 2019-07-17 网卡虚拟化队列调度方法及系统

Country Status (1)

Country Link
CN (1) CN110519180B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110943941B (zh) * 2019-12-06 2022-03-11 北京天融信网络安全技术有限公司 一种报文接收方法、网卡及电子设备
CN112433839B (zh) * 2020-12-16 2024-04-02 苏州盛科通信股份有限公司 实现网络芯片高速调度的方法、设备及存储介质
CN114553635B (zh) * 2022-02-18 2023-03-24 珠海星云智联科技有限公司 Dpu网络设备中的数据处理方法、数据交互方法及产品

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101771599B (zh) * 2008-12-26 2012-07-04 中国移动通信集团公司 一种rtp数据包接收处理方法及装置
CN101594299B (zh) * 2009-05-20 2011-06-29 清华大学 基于链表的交换网络中队列缓冲管理方法
US8909602B2 (en) * 2011-02-03 2014-12-09 Vmware, Inc. Programmatic snapshot and revert of virtualized data center inventory
CN104715201B (zh) * 2015-03-31 2018-02-27 北京奇虎科技有限公司 一种虚拟机恶意行为检测方法和系统
CN106789734B (zh) * 2016-12-21 2020-03-13 中国电子科技集团公司第三十二研究所 在交换控制电路中巨帧的控制系统及方法

Also Published As

Publication number Publication date
CN110519180A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
US10015117B2 (en) Header replication in accelerated TCP (transport control protocol) stack processing
US20200044989A1 (en) Method and apparatus for using multiple linked memory lists
US9436639B1 (en) Full bandwidth packet handling with server systems including offload processors
US9465662B2 (en) Processor with efficient work queuing
CN110519180B (zh) 网卡虚拟化队列调度方法及系统
US7269179B2 (en) Control mechanisms for enqueue and dequeue operations in a pipelined network processor
US8407707B2 (en) Task queuing in a network communications processor architecture
KR100817676B1 (ko) 동적 클래스-기반 패킷 스케쥴링 방법 및 장치
US9378161B1 (en) Full bandwidth packet handling with server systems including offload processors
US8761204B2 (en) Packet assembly module for multi-core, multi-thread network processors
CN103222242B (zh) 用于避免线端阻塞的动态流重新分布
US8225329B1 (en) Tail synchronized FIFO for fast user space packet access
EP3758311B1 (en) Techniques to facilitate a hardware based table lookup
US7904677B2 (en) Memory control device
JP2007325271A (ja) スイッチ、スイッチングする方法及び論理装置
US7433364B2 (en) Method for optimizing queuing performance
US9747233B2 (en) Facilitating routing by selectively aggregating contiguous data units
US11343176B2 (en) Interconnect address based QoS regulation
US20040111532A1 (en) Method, system, and program for adding operations to structures
US9148384B2 (en) Posted and unencumbered queues
US20230396561A1 (en) CONTEXT-AWARE NVMe PROCESSING IN VIRTUALIZED ENVIRONMENTS
EP4070203B1 (en) Apparatus and methods for managing packet transfer across a memory fabric physical layer interface
Gao Advanced Programmable Packet Schedulers and Match-Action Table Management
Wang Designing network traffic managers with throughput, fairness, and worst-case performance guarantees

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
GR01 Patent grant
GR01 Patent grant