CN111756586B - 一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质 - Google Patents
一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质 Download PDFInfo
- Publication number
- CN111756586B CN111756586B CN202010733230.4A CN202010733230A CN111756586B CN 111756586 B CN111756586 B CN 111756586B CN 202010733230 A CN202010733230 A CN 202010733230A CN 111756586 B CN111756586 B CN 111756586B
- Authority
- CN
- China
- Prior art keywords
- queue
- data packet
- flow
- priority
- temporary
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/522—Dynamic queue service slot or variable bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/629—Ensuring fair share of resources, e.g. weighted fair queuing [WFQ]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质,其包括:交换机接收数据分组,并识别数据分组所属流是否是活跃流,若是,获取所属流中上一数据分组的队列,并作为当前数据分组的暂定队列;若不是,将当前优先级最高的队列作为当前数据分组的暂定队列;在每个队列中均分配缓存份额给每条活跃流;判断暂定队列中是否还存在对应流未使用的缓存份额以及暂定队列是否占满,若存在且未占满,数据分组进入暂定队列,并更新队列的缓存信息,否则,按照优先级寻找其他队列作为暂定队列,直至找到可用队列,或没找到可用队列,则将数据分组丢弃。本发明提高了分配带宽给每条流的公平性,同时充分利用了网络资源。
Description
技术领域
本发明属于数据中心网络技术领域,具体涉及一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质。
背景技术
现代数据中心运行着多种应用,这些应用生成行为多样的流量。由于不同应用共享网络资源,随着应用增加,当网络需求不能满足应用需求时,将引起应用之间的资源竞争。为了保护保守流量不受激进流量的影响,链路带宽应公平地分配给所有流量。特别地,数据中心流量具有高扇入、高突发和同步性等特点,增加了公平带宽分配的难度。
大多数拥塞控制协议如TCP和DCTCP需依赖于端到端的拥塞信号,并且要求终端主机进行协作以实现公平网络分配,其效率低且公平分配效果不明显。交换机是数据中心网络中不可或缺的网络设备,可快速感知网络状态,常被用于提升网络性能。现代数据中心中的大多数交换机的端口具有多队列的特点。经典公平带宽分配方案公平队列(FQ)利用多队列实现流量的公平分配。FQ将每条流分配至一个独立的队列中,队列以逐包轮询的服务方式转发分组以实现公平。由于数据中心流量的高并发性,FQ需要大量队列支持所有数据流。然而交换机中每个端口的队列数量有限,使得FQ无法在现有的数据中心部署。
于是,许多基于交换机端口多队列的公平带宽分配方案,仅利用有限数量的队列来实现公平带宽分配的效果。随机公平队列(SFQ)将各条流哈希到一组固定的队列中,各队列以赤字轮询的方式发送分组。SFQ定期修改哈希函数以确保大部分流量的公平性。但是,随着流数的增加,当活跃流的数量超过队列数量时,SFQ的性能会显著降低,会存在两个或以上的流在一个队列中,且采用的是轮询出包的方式。近似公平队列(AFQ)采用优先级队列实现公平带宽分配以支持高并发流量。AFQ将每条流在各优先级队列中分配一个数据包,各个队列按优先级排空,以实现各流的公平。然而,由于交换机端口中队列数量的限制,一个流的一个数据包在一个队列中,当数据包个数超过队列数时,AFQ将遭遇丢包问题。
因此,针对上述在一定的网络环境下都可以很好地实现公平带宽分配的方案,其公平性保证与队列数量紧密相关。因此,在数据中心商用交换机中和高并发的流量特性下,其不能同时保证高资源利用率和公平的带宽分配,因此,如何利用有限数量的队列,为高并发流量实现公平的带宽共享并确保高网络利用率是一个值得研究的问题。
发明内容
本发明的目的是针对现有数据中心网络中交换机有限数量的队列无法保证高并发流量的公平带宽分配问题,本发明提供一种数据中心网络中基于优先级队列的公平带宽分配方法,其提高了每条流的公平性,同时充分利用了网络资源。
一方面,本发明提供一种数据中心网络中基于优先级队列的公平带宽分配方法,包括如下步骤:
步骤1:交换机接收数据分组,并识别所述数据分组所属流是否是活跃流,若是,获取所属流中上一数据分组入队的队列,将其作为当前数据分组的暂定队列;若不是,将当前优先级最高的队列作为当前数据分组的暂定队列;
其中,在每个队列中均分配缓存份额给每条活跃流;
步骤2:判断步骤1中确定的暂定队列中是否还存在对应流未使用的缓存份额以及暂定队列是否占满,若存在且未占满,所述数据分组进入所述暂定队列,并更新队列的缓存信息,否则,按照优先级寻找其他队列作为暂定队列判断是否有对应流未使用的缓存份额以及暂定队列是否占满,直至找到可用队列,或没找到可用队列,则将数据分组丢弃。
其中,同时还判断暂定队列是否占满是考虑到新流的数据分组过来时,重新分配最高优先级队列中各个流的缓存份额,但是当前数据分组的缓存份额已被其他数据分组占据,最高优先级队列已占满,需要寻找下一优先级队列的情况而设定的。
进一步地,每条活跃流在每个队列中分配的缓存份额如下:
S=B/n
式中,S为每条活跃流在每个队列中分配的缓存份额,B为队列的长度,n为活跃流总数。
所述每条流在每个队列中分配的缓存份额依据活跃流数量的更新进行实时更新,即依据活跃流动态地分配各个队列的缓存以均匀每个队列中每条流的数据包,实现公平带宽分配和高网络利用率。
进一步地,所述方法还包括如下步骤:
交换机以设定的定时器时钟T0为时间粒度,并依据收到的FIN包删除流表中已结束的活跃流信息,并更新活跃流数,其中,更新后的活跃流数等于原活跃流数减去已结束的流数。
进一步地,步骤2的执行过程如下:
首先,判断当前数据分组的暂定队列中是否有对应流未使用的缓存份额且所述暂定队列是否已占满;
其中,若有未使用的缓存份额且所述暂定队列未占满,则将所述数据分组放入所述暂定队列的队尾,并更新所述暂定队列的总已用缓存份额以及所述数据分组对应流在所述暂定队列中的已用缓存份额,U[q][f]<S和T[q]<B;
式中,q表示暂定队列,f表示所述数据分组对应流的流号,S表示所述数据分组对应流在暂定队列中分配的缓存份额,B表示暂定队列的长度,U[q][f]表示所述数据分组对应流在暂定队列中的已用缓存份额,T[q]表示暂定队列的总已用缓存份额;
若不存在未使用的缓存份额或所述暂定队列已占满,则按照队列优先级寻找次优先级队列,直至找到可用队列,或没找到可用队列,则将数据分组丢弃。
进一步地,交换机接收第一个数据分组之前还包括:初始化操作,所述初始化操作为:将活跃流数量置0,设置各个队列的长度并按照顺序分配优先级,以及将每个队列的总已用缓存份额置0,每条流在每个队列中的已用缓存份额置0以及设置定时器时钟T0。
进一步地,所述方法还包括:
交换机按照队列的优先级转发最高优先级队列中的分组,并更新转发分组所属流在最高优先级队列中的已用缓存份额以及最高优先级队列的总已用缓存份额,且当最高优先级队列排空时,更新各个队列的优先级信息。
本发明基于前述入队设定的规则,出队时,再按照优先级的关系转发最高优先级队列中的数据分组可以进一步提升数组分组转发过程的公平性。
进一步地,各个队列优先级的更新公式如下:
p[i]*=(p[i]+m-1)%m
式中,p[i]表示队列号i的队列的优先级,p[i]表示更新的队列号i的队列的优先级,m为交换机端口的队列总数,%代表取模运算,队列的优先级值越低,优先级越高。
第二方面,本发明提供一种基于上述方法的交换机,包括相互连接的传输模块、识别模块、处理模块、存储模块以及更新模块,其中,传输模块:用于接收数据分组和转发数据分组;识别模块:用于识别数据分组所属流是否是活跃流;处理模块:用于寻找当前数据分组所匹配的队列;存储模块:用于存储信息;更新模块:用于更新队列的缓存信息。
第三方面,本发明还提供一种交换机,包括处理器和存储器,所述存储器存储了计算机程序,所述处理器调用所述计算机程序以执行上述方法的步骤。
第四方面,本发明还提供一种可读存储介质,存储了计算机程序,所述计算机程序被处理器调用以执行上述方法的步骤。
有益效果
本发明提供的所述方法在每个队列中均分配了缓存份额给每条活跃流,即每条活跃流在每个队列中均有一定的缓存份额,依据活跃流动态地分配各个队列的缓存以进一步均匀各个队列中每条流的数据包,同时,依据队列优先级入列或者选择队列,在队列数有限的情况下可以更进一步的实现公平带宽分配。尤其是针对AFQ协议,本发明所述方法中每条活跃流的数据包在每个队列中均有一定的缓存份额,数据包数量与队列数量的依赖度大大降低,极大程度降低了丢包概率;针对SFQ协议,本发明所述方法中活跃流的数量与队列数量的依赖度也大大降低,每个队列中均有每条活跃流的缓存份额,进一步提高了公平性,保证高网络利用率,从而提升应用性能,优化用户体验,尤其是本发明能解决高并发流量给公平带宽分配带来的挑战,同时能在仅支持有限队列数的数据中心商用交换机上部署,具有良好的可扩展性。
附图说明
图1a为本发明实施例提供的EFQ入队模块的入队流程示意图,图1b为本发明实施例提供的EFQ出队模块的出队流程示意图,其中,本发明所述方法命名EFQ。
图2a、图2b、图2c、图2d分别为交换机端口队列数为8,队列长度为64KB时,TCP流在不同方法下的丢包率的变化示意图、平均拥塞窗口示意图、网络利用率示意图、不同分位数的流完成时间变化示意图。
图3a、图3b分别为交换机端口缓存份额为512KB时,结合了EFQ的TCP流和DCTCP流在不同队列数量下随着服务器数目变化情况下,TCP流的公平因子随服务器数目增长的变化示意图、DCTCP流的公平因子随服务器数目增长的变化示意图。
图4a、图4b分别为交换机端口的队列数为8时,结合了EFQ的TCP流和DCTCP流在不同缓存份额下随着服务器数目变化情况下,TCP流的公平因子随服务器数目增长的变化示意图、DCTCP流的公平因子随服务器数目增长的变化示意图。
图5a、图5b分别为在Data Mining工作负载下,TCP流和DCTCP流在不同方法下随着负载变化情况下,所有流平均完成时间随负载增长的变化示意图、短流平均完成时间随负载增长的变化示意图。
图6a、图6b分别为在Web Search工作负载下,TCP流和DCTCP流在不同方法下随着负载变化情况下,所有流平均完成时间随负载增长的变化示意图、短流平均完成时间随负载增长的变化示意图。
具体实施方式
下面将结合实施例对本发明做进一步的说明。参见图1a,本发明实施例提供的所述方法在入队过程的流程如下:
步骤一:初始化活跃流数量n为0,流号f为NULL,交换机端口的队列数为m,各个队列的长度为B,各队列按顺序分配优先级,本实施例中,0号队列的优先级为最高优先级0,m-1号队列具有最低优先级m-1;每个队列的总已用缓存份额T[]为0,每条流在每个队列中的缓存份额S为0,每条流在每个队列中的已用缓存份额U[][]为0,每条流上一分组入队的队列号qL[]为NULL;定时器时钟T0设置为两主机间的传播延时。
步骤二:交换机在收到分组时,获取该分组所属流的流号f,判断流表中是否存在该流信息。若不存在,则将活跃流数量n增加1,并获取最高优先级的队列号q0;若存在,则获取该分组所属流上一分组入队的队列号qL[f]。将获取的队列号赋值给队列q。且动态计算出每条活跃流在每个优先级队列中的缓存份额S=B/n。
然后,判断当前分组所属流在q号队列中是否有未使用的份额且q号队列是否占满。若在q号队列存在未使用的缓存份额且q号队列未占满(即U[q][f]<S和T[q]<B),则代表q号队列中存在当前分组所属流的可用缓存空间,于是将分组放入q号队列队尾,并将q号队列的总已用缓存份额T[q]增加1,该分组所属流在q号队列的已用缓存份额份额U[q][f]增加1,更新该分组所属流上一次入队的队列号qL[f]为q。若当前分组所属流在q号队列不存在未使用的缓存份额或者q号队列已占满(即U[q][f]==S或者T[q]==B),则寻找次优先级队列,直至找到可用的缓存空间;若一直未找到可用的缓存空间,则将该分组丢弃。
应当理解,其中,交换机以设定的定时器时钟T0为时间粒度,根据交换机收到的FIN包,删除流表中已结束的流信息;将更新的活跃流数n=原活跃流数n-已结束的流数。
如图1b所示,本发明实施例提供的出队过程的流程如下:
交换机获取当前最高优先级队列的队列号q0。判断q0号队列的占用T[q0]是否大于0。若大于0,则转发q0号队列队头分组;获取该分组的流号f;将q0号队列的总已用缓存份额T[q0]减去1,该分组所属流在q0号队列的已用缓存份额U[q0][f]减去1。若不大于0,代表当前最高优先级队列已排空,则更新各个队列的优先级:p[i]=(p[i]+m-1)%m。继续转发最高优先级队列中的分组。
在一些可行的实施例中,本发明还提供包括相互连接的传输模块、识别模块、处理模块、存储模块以及更新模块,其中,传输模块:用于接收数据分组和转发数据分组;识别模块:用于识别数据分组所属流是否是活跃流;处理模块:用于寻找当前数据分组所匹配的队列;存储模块:用于存储信息;更新模块:用于更新队列的缓存信息。
具体的,各个模块的实现过程请参照方法部分的内容,在此本发明不再赘述。且应当理解,应当理解,本发明各个实施例中的功能单元模块可以集中在一个处理单元中,也可以是各个单元模块单独物理存在,也可以是两个或两个以上的单元模块集成在一个单元模块中,可以采用硬件或软件的形式来实现。
在一些可行的实施例中,本发明还提供一种交换机,包括处理器和存储器,所述存储器存储了计算机程序,所述处理器调用所述计算机程序以执行上述一种数据中心网络中基于优先级队列的公平带宽分配方法的步骤。
在一些可行的实施例中,本发明还提供一种可读存储介质,存储了计算机程序,所述计算机程序被处理器调用以执行上述一种数据中心网络中基于优先级队列的公平带宽分配方法的步骤。
应当理解,在本发明实施例中,所称处理器可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
所述可读存储介质为计算机可读存储介质,其可以是前述任一实施例所述的控制器的内部存储单元,例如控制器的硬盘或内存。所述可读存储介质也可以是所述控制器的外部存储设备,例如所述控制器上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述可读存储介质还可以既包括所述控制器的内部存储单元也包括外部存储设备。所述可读存储介质用于存储所述计算机程序以及所述控制器所需的其他程序和数据。所述可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
实验仿真:本发明利用NS2.35网络仿真平台来实现,并进行了性能测试。图2a-图2d均为AFQ和EFQ的基础实验,实验拓扑结构为N对主机的哑铃型拓扑。主机与交换机之间的链路速率均设置为10Gbps,交换机与交换机之间的链路速率设置为20Gbps。交换机缓存设置均为512KB。RTOmin设置为200us。传播延时RTT设置为10us。本实验生成了1000条50KB到200KB的流,它们的发送时间服从均匀随机分布。AFQ和EFQ都部署在ToR交换机上。
图2a是丢包率随时间的变化情况,由图可知,由于队列数量有限,AFQ容易丢弃分组。相反,EFQ使用整个缓冲区来吸收突发分组,并且仅由于缓冲区溢出而丢弃分组。图2b为拥塞窗口的变化情况。由于突发分组丢失,AFQ的拥塞窗口远小于EFQ的拥塞窗口。因为EFQ的拥塞窗口会一直增长直到缓冲区溢出,可获得更大的拥塞窗口和发送速率。图2c为在AFQ和EFQ方法下链路利用率的情况。与AFQ相比,EFQ通过使用整个交换机缓冲区实现了更高的链路利用率。在AFQ下,由于丢包问题,缓冲区占用率可能为零,从而导致链路利用率不足。图2d是流完成时间的情况。由于链路利用率高,EFQ有效地减少了流完成时间。
图3a-图3b为EFQ在不同队列数目下的公平性测试实验,实验拓扑结构与参数设置与图2a-图2d中一致。本实验中,交换机缓存设置均为512KB。DCTCP的标记阈值为65个分组。
图3a和图3b分别是TCP流和DCTCP流的公平因子在不同队列数目下随服务器数目增长的变化情况,当公平因子为1时代表完全公平。由图可知,在相同服务器数目下,不同队列数目的公平性能相同,EFQ的性能不受队列数目的影响。随着服务器数目的增加,并发度增加,流的公平性能有所下降。但由于EFQ实现了流间的公平共享,在服务器数量为1000的高并发情况下,公平因子只有0.04的损失。
图4a-图4b为EFQ在不同缓存份额下的公平性测试实验,实验拓扑结构与参数设置与图3a-图3b中一致。本实验中,交换机端口的队列数为8。
图4a和图4b分别是TCP流和DCTCP流的公平因子在不同缓存份额下随服务器数目增长的变化情况。由图可知,大缓存能吸收更多的分组,减少了丢包,实现了更好的公平性能。
图5a-图5b和图6a-图6b分别为在Data Mining和Web Search工作负载下EFQ、SFQ和AFQ三种公平共享方法随负载变化的大规模实验,实验拓扑结构为8x8的Leaf-Spine拓扑,其中包括8个叶子交换机,8个核心交换机和1280台主机。主机间的传播延时RTT设置为100us。链路带宽均设置为10Gbps。交换机缓存设置均为512KB。交换机每个端口的队列数设置为8。RTOmin设置为200us。DCTCP的标记阈值为65个分组。
图5a和图6a为所有流的平均完成时间随不同负载的变化情况。由图可知,由于DCTCP用标记阈值控制了队列长度,减少了丢包,比TCP实现了更小的平均流完成时间。SFQ将所有流哈希到8个队列,随着负载增加,每个队列中碰撞的流越多,增加了SFQ的平均流完成时间。AFQ的每条流最多在8个队列中缓存8个分组,易引起不必要的丢包,同样增加了AFQ的平均流完成时间。EFQ能在8个队列里实现公平的同时不会带来不必要的丢包,因此实现了最好的性能。
图5b和图6b为短流的平均完成时间随不同负载的变化情况。由图可知,由于SFQ采用哈希来实现带宽的公平分配,短流很容易哈希到长流所在的队列,遭遇线端阻塞。由于AFQ易引起不必要的丢包,短流很容易发生超时。相比SFQ和AFQ,EFQ的短流具有较好的性能。
综上所述,本发明提供的一种数据中心网络中基于优先级队列的公平带宽分配方法有着更有的性能,更能实现带宽的公平分配。
需要强调的是,本发明所述的实例是说明性的,而不是限定性的,因此本发明不限于具体实施方式中所述的实例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,不脱离本发明宗旨和范围的,不论是修改还是替换,同样属于本发明的保护范围。
Claims (10)
1.一种数据中心网络中基于优先级队列的公平带宽分配方法,其特征在于:包括如下步骤:
步骤1:交换机接收数据分组,并识别所述数据分组所属流是否是活跃流,若是,获取所属流中上一数据分组入队的队列,将其作为当前数据分组的暂定队列;若不是,将当前优先级最高的队列作为当前数据分组的暂定队列;
其中,在每个队列中均分配缓存份额给每条活跃流;
步骤2:判断步骤1中确定的暂定队列中是否还存在对应流未使用的缓存份额以及暂定队列是否占满,若存在且未占满,所述数据分组进入所述暂定队列,并更新队列的缓存信息,否则,按照优先级寻找其他队列作为暂定队列判断是否有对应流未使用的缓存份额以及暂定队列是否占满,直至找到可用队列,或没找到可用队列,则将数据分组丢弃。
2.根据权利要求1所述的方法,其特征在于:每条活跃流在每个队列中分配的缓存份额如下:
S=B/n
式中,S为每条活跃流在每个队列中分配的缓存份额,B为队列的长度,n为活跃流总数。
3.根据权利要求1所述的方法,其特征在于:还包括如下步骤:
交换机以设定的定时器时钟T0为时间粒度,并依据收到的FIN包删除流表中已结束的活跃流信息,并更新活跃流数,其中,更新后的活跃流数等于原活跃流数减去已结束的流数。
4.根据权利要求1所述的方法,其特征在于:步骤2的执行过程如下:
首先,判断当前数据分组的暂定队列中是否有对应流未使用的缓存份额且所述暂定队列是否已占满;
其中,若有未使用的缓存份额且所述暂定队列未占满,则将所述数据分组放入所述暂定队列的队尾,并更新所述暂定队列的总已用缓存份额以及所述数据分组对应流在所述暂定队列中的已用缓存份额,U[q][f]<S和T[q]<B;
式中,q表示暂定队列,f表示所述数据分组对应流的流号,S表示所述数据分组对应流在暂定队列中分配的缓存份额,B表示暂定队列的长度,U[q][f]表示所述数据分组对应流在暂定队列中的已用缓存份额,T[q]表示暂定队列的总已用缓存份额;
若不存在未使用的缓存份额或所述暂定队列已占满,则按照队列优先级寻找次优先级队列,直至找到可用队列,或没找到可用队列,则将数据分组丢弃。
5.根据权利要求1所述的方法,其特征在于:交换机接收第一个数据分组之前还包括初始化操作,所述初始化操作为:将活跃流数量置0,设置各个队列的长度并按照顺序分配优先级,以及将每个队列的总已用缓存份额置0,每条流在每个队列中的已用缓存份额置0以及设置定时器时钟T0。
6.根据权利要求1所述的方法,其特征在于:还包括:
交换机按照队列的优先级转发最高优先级队列中的分组,并更新转发分组所属流在最高优先级队列中的已用缓存份额以及最高优先级队列的总已用缓存份额,且当最高优先级队列排空时,更新各个队列的优先级信息。
7.根据权利要求6所述的方法,其特征在于:各个队列优先级的更新公式如下:
p[i]*=(p[i]+m-1)%m
式中,p[i]表示队列号i的队列的优先级,p[i]*表示更新的队列号i的队列的优先级,m为交换机端口的队列总数,%代表取模运算,队列的优先级值越低,优先级越高。
8.一种基于权利要求1-7任一项所述方法的交换机,其特征在于:包括:
传输模块:用于接收数据分组和转发数据分组;
识别模块:用于识别数据分组所属流是否是活跃流;
处理模块:用于寻找当前数据分组所匹配的队列;
存储模块:用于存储信息;
更新模块:用于更新队列的缓存信息。
9.一种交换机,其特征在于:包括处理器和存储器,所述存储器存储了计算机程序,所述处理器调用所述计算机程序以执行权利要求1-7任一项所述方法的步骤。
10.一种可读存储介质,其特征在于:存储了计算机程序,所述计算机程序被处理器调用以执行权利要求1-7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010733230.4A CN111756586B (zh) | 2020-07-27 | 2020-07-27 | 一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010733230.4A CN111756586B (zh) | 2020-07-27 | 2020-07-27 | 一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111756586A CN111756586A (zh) | 2020-10-09 |
CN111756586B true CN111756586B (zh) | 2021-05-18 |
Family
ID=72711881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010733230.4A Active CN111756586B (zh) | 2020-07-27 | 2020-07-27 | 一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111756586B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11558775B2 (en) * | 2021-02-16 | 2023-01-17 | Juniper Networks, Inc. | Determining rate differential weighted fair output queue scheduling for a network device |
CN117395207B (zh) * | 2023-12-12 | 2024-02-23 | 南京邮电大学 | 一种面向无损网络的细粒度流量控制方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602006001512D1 (de) * | 2006-04-20 | 2008-07-31 | Alcatel Lucent | Verfahren und Vorrichtung für effiziente gewichtete und gerechte Datenüberwachung |
CN100571175C (zh) * | 2006-09-30 | 2009-12-16 | 华为技术有限公司 | 一种无线通信网络带宽分配方法与装置 |
CN100521655C (zh) * | 2006-12-22 | 2009-07-29 | 清华大学 | 按每流排队的物理队列动态共享装置 |
CN100579050C (zh) * | 2008-02-18 | 2010-01-06 | 中兴通讯股份有限公司 | 一种弹性分组环上节点带宽公平分配的方法及*** |
CN101527678A (zh) * | 2009-04-15 | 2009-09-09 | 南京邮电大学 | 基于模糊流感知的多业务综合区分控制方法 |
CN103780504A (zh) * | 2012-10-24 | 2014-05-07 | 无锡南理工科技发展有限公司 | 时延容忍网络的弹性质量自适应方法 |
CN107071919B (zh) * | 2017-01-11 | 2020-02-21 | 南京邮电大学 | 一种基于丢包率的lte下行实时业务调度改进方法 |
CN111240865A (zh) * | 2020-01-14 | 2020-06-05 | 山东汇贸电子口岸有限公司 | 一种基于消息队列的弹性伸缩活动优先级管理***及方法 |
-
2020
- 2020-07-27 CN CN202010733230.4A patent/CN111756586B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111756586A (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200241915A1 (en) | Work conserving, load balancing, and scheduling | |
CN113728315A (zh) | 促进网络接口控制器(nic)中的有效消息匹配的***和方法 | |
CN106209679B (zh) | 用于使用多个链接的存储器列表的方法及装置 | |
CN106817317B (zh) | 具有入口控制的业务量管理 | |
US7295565B2 (en) | System and method for sharing a resource among multiple queues | |
US20060029080A1 (en) | Using burst tolerance values in time-based schedules | |
WO2020192358A1 (zh) | 一种转发报文的方法和网络设备 | |
CN111756586B (zh) | 一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质 | |
US7433364B2 (en) | Method for optimizing queuing performance | |
Hua et al. | Scheduling heterogeneous flows with delay-aware deduplication for avionics applications | |
US8547878B2 (en) | Modularized scheduling engine for traffic management in a network processor | |
US20230283578A1 (en) | Method for forwarding data packet, electronic device, and storage medium for the same | |
US11483259B2 (en) | VOQ-based network switch architecture using multi-stage arbitration fabric scheduler | |
CN113225196A (zh) | 服务等级配置方法以及装置 | |
US8018958B1 (en) | System and method for fair shared de-queue and drop arbitration in a buffer | |
Lin et al. | {RingLeader}: efficiently Offloading {Intra-Server} Orchestration to {NICs} | |
US20210176182A1 (en) | Method and Apparatus for Determining Packet DeQueue Rate | |
US11552907B2 (en) | Efficient packet queueing for computer networks | |
US8976802B2 (en) | Prediction-based switch allocator | |
CN112671832A (zh) | 虚拟交换机中保障层次化时延的转发任务调度方法及*** | |
US20230117851A1 (en) | Method and Apparatus for Queue Scheduling | |
Hu et al. | Dynamic queuing sharing mechanism for per-flow quality of service control | |
CN115695578A (zh) | 一种数据中心网络tcp和rdma混合流调度方法、***及装置 | |
US9128785B2 (en) | System and method for efficient shared buffer management | |
Benet et al. | Providing in-network support to coflow scheduling |
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 |