CN109039953B - 带宽调度方法及装置 - Google Patents

带宽调度方法及装置 Download PDF

Info

Publication number
CN109039953B
CN109039953B CN201810816753.8A CN201810816753A CN109039953B CN 109039953 B CN109039953 B CN 109039953B CN 201810816753 A CN201810816753 A CN 201810816753A CN 109039953 B CN109039953 B CN 109039953B
Authority
CN
China
Prior art keywords
message
queue
forwarding
priority
scheduling
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
CN201810816753.8A
Other languages
English (en)
Other versions
CN109039953A (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.)
New H3C Information Technologies Co Ltd
Original Assignee
New H3C Technologies 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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201810816753.8A priority Critical patent/CN109039953B/zh
Publication of CN109039953A publication Critical patent/CN109039953A/zh
Application granted granted Critical
Publication of CN109039953B publication Critical patent/CN109039953B/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
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • H04L47/225Determination of shaping rate, e.g. using a moving window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/525Queue scheduling by attributing bandwidth to queues by redistribution of residual bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种带宽调度方法及装置。所述方法应用于网络设备,所述网络设备中设置多个转发队列,每个转发队列按照预设的第一调度优先级转发队列中报文,所述方法包括:所述网络设备检测所述每个转发队列当前的报文转发流量;所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列,所述目标队列具有第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽。如此,可保障最低调度优先级报文带宽。

Description

带宽调度方法及装置
技术领域
本申请涉及带宽调度技术领域,具体而言,涉及一种带宽调度方法及装置。
背景技术
网络设备在转发业务报文的过程中,会普遍存在多个入口的业务报文汇聚到一个出口进行转发的情形。为避免汇聚的业务报文引发堵塞,一般在网络设备的出口上配置多个转发队列,以对汇聚的业务报文进行缓存。
网络设备根据每个转发队列的调度优先级,为每个转发队列分配接口带宽资源(简称带宽)。例如,对于调度优先级较高的转发队列,可以为该转发队列分配较高的带宽,对于调度优先级较低的转发队列,则为该转发队列分配较低的带宽。从而依据调度优先级实现带宽调度,保障对每个转发队列中的业务报文按需转发,实现业务需求。
目前,在依据转发队列的调度优先级进行带宽分配时,在综合保证各转发队列带宽的情形下,当高调度优先级转发队列中的报文转发流量超过预设报文限速阈值时,可以将超过报文限速阈值的报文转发流量按照最低调度优先级的级别进行转发。如此,使得该超过预设报文限速阈值的报文转发流量还可以利用为最低调度优先级的转发队列配置的带宽进行转发,以满足高调度优先级转发队列中业务报文的转发需求。
但该带宽调度方法,当高调度优先级转发队列中超过相应预设报文限速阈值的报文转发流量较多时,会使得最低调度优先级转发队列中的报文转发流量较大。从而影响最低调度优先级转发队列中原始业务报文的流量转发,将导致原有最低调度优先级转发队列中原始业务报文得不到转发保障,从而影响该原始业务报文对应的业务需求。例如,导致该类报文在前端出现卡顿、闪烁等情形。
发明内容
有鉴于此,本申请实施例提供了一种带宽调度方法及装置,解决了现有技术中最低调度优先级转发队列中业务报文得不到转发保障,影响该最低调度优先级转发队列中报文的业务需求的技术问题。
在第一方面,本申请实施例提供一种带宽调度方法,所述方法应用于网络设备,所述网络设备中设置多个具有第一调度优先级的转发队列,所述第一调度优先级包括多个调度优先级,每个转发队列按照与所述转发队列对应的调度优先级转发队列中报文,所述方法包括:
所述网络设备检测所述每个转发队列当前的报文转发流量;
所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列,所述目标队列具有第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;
所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽。
结合第一方面,在第一种可能的实现方式中,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之后,所述方法还包括:
所述网络设备判断是否存在空闲状态的转发队列;
若存在,从所述目标队列中,所述网络设备提取超过预设报文限速阈值的报文转发流量对应的报文,置于所述空闲状态的转发队列进行转发;
若不存在,则所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽。
结合第一方面,在第二种可能的实现方式中,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之前,还包括:
若该转发队列的报文转发流量超过所述第一调度优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
结合第一方面,在第三种可能的实现方式中,所述网络设备检测所述每个转发队列当前的报文转发流量之前,所述方法还包括:
所述网络设备获取网络中报文的报文优先级;
所述网络设备依据获取的报文优先级,为每一报文优先级配置一转发队列,每一转发队列按照预设的第一调度优先级调度策略获取调度带宽;
所述网络设备接收待转发报文,提取所述待转发报文的报文优先级,将所述待转发报文分发至与所述报文优先级匹配的转发队列中。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之前,还包括:
针对每一配置的转发队列,依据该转发队列中的报文优先级,获取该报文优先级对应的报文限速阈值;
若该转发队列中的报文转发流量超过所述报文优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述依据所述网络设备的预留带宽,为所述目标队列调度带宽,包括:
设置所述目标队列中所有报文的报文优先级为预设优先级;
依据所述预设优先级,将所述预留带宽均分给所述目标队列;
或,
获取所述目标队列中,超过预设报文限速阈值的超额报文转发流量;
当所述目标队列的个数为1个时,将所述预留带宽分给所述目标队列;
当所述目标队列的个数为多个时,计算超额报文转发流量与第一权重的乘积,得到所述目标队列的预留带宽权重,所述第一权重为用于表示所述报文优先级的参数;
计算每个目标队列的预留带宽权重的和值;
计算每个目标队列的预留带宽权重与所述和值的比值;
依据所述比值,从所述预留带宽中,为所述目标队列调度带宽。
在第二方面,本申请实施例提供一种带宽调度装置,所述装置中设置多个具有第一调度优先级的转发队列,所述第一调度优先级包括多个调度优先级,每个转发队列按照与所述转发队列对应的调度优先级转发队列中报文,包括:
流量检测模块,用于检测所述每个转发队列当前的报文转发流量;
超流量队列确定模块,获取所述报文转发流量超过预设报文限速阈值的目标队列,所述目标队列具有第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;
超流量带宽调度模块,用于依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽。
结合第二方面,在第一种可能的实现方式中,所述装置还包括:
转发队列检测模块,用于判断是否存在空闲状态的转发队列;
若存在,则从所述目标队列中,提取超过预设报文限速阈值的报文转发流量对应的报文,置于所述空闲状态的转发队列进行转发;
若不存在,通知所述超流量带宽调度模块。
结合第二方面,在第二种可能的实现方式中,所述装置还包括:
调度优先级第一设置模块,若该转发队列的报文转发流量超过所述第一调度优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
结合第二方面,在第三种可能的实现方式中,所述装置还包括:
队列配置模块,用于获取网络中报文的报文优先级;依据获取的报文优先级,为每一报文优先级配置一转发队列,每一转发队列按照预设的第一调度优先级调度策略获取调度带宽;
报文分发模块,用于接收待转发报文,根据所述待转发报文的报文优先级,将所述待转发报文分发至与所述报文优先级匹配的转发队列中。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述装置还包括:
调度优先级第二设置模块,用于针对每一配置的转发队列,依据该转发队列中报文的报文优先级,获取该报文优先级对应的报文限速阈值;
若该转发队列中的报文转发流量超过所述报文优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述超流量带宽调度模块具体用于:
设置所述目标队列中所有报文的报文优先级为预设优先级;
依据所述预设优先级,将所述预留带宽均分给所述目标队列;
或,
获取所述目标队列中,超过预设报文限速阈值的超额报文转发流量;
当所述目标队列的个数为1个时,将所述预留带宽分给所述目标队列;
当所述目标队列的个数为多个时,计算超额报文转发流量与第一权重的乘积,得到所述目标队列的预留带宽权重,所述第一权重为用于表示所述报文优先级的参数;
计算每个目标队列的预留带宽权重的和值;
计算每个目标队列的预留带宽权重与所述和值的比值;
依据所述比值,从所述预留带宽中,为所述目标队列调度带宽。
在第三方面,本申请实施例提供一种计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
在第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的方法的步骤。
相对于现有技术而言,本申请具有以下有益效果:
本申请提供的带宽调度方法及装置,多个转发队列按照预设的第一调度优先级转发队列中报文。网络设备获取报文转发流量超过预设报文限速阈值、并具有第二调度优先级的目标队列,而且,第二调度优先级低于第一调度优先级中最低调度优先级。由于本申请中,网络设备为上述具有第二调度优先级的目标队列,从预留带宽中分配带宽,使得超过预设报文限速阈值的报文不再置于第一调度优先级最低的转发队列中。这样,避免了现有技术中最低调度优先级转发队列中原始业务报文转发得不到保障的问题。因而,能够保障最低调度优先级报文带宽,从而确保最低调度优先级的转发队列中报文的转发速度,不会影响该最低调度优先级的转发队列中各报文的业务性能。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的带宽调度方法流程示意图;
图2为本申请实施例提供的带宽调度方法另一流程示意图;
图3为本申请实施例提供的带宽调度方法再一流程示意图;
图4为本申请实施例提供的带宽调度装置结构示意图;
图5为本申请实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
实施例一
图1为本申请实施例提供的带宽调度方法流程示意图。所述方法应用于网络设备,所述网络设备中设置多个具有第一调度优先级的转发队列,所述第一调度优先级包括多个调度优先级,每个转发队列按照与转发队列对应的调度优先级转发队列中报文,如图1所示,该流程包括:
步骤101,所述网络设备检测所述每个转发队列当前的报文转发流量;
本申请实施例中,网络设备可以是周期性地检测配置的每个转发队列当前的报文转发流量,也可以是不定时检测配置的每个转发队列当前的报文转发流量。
本申请实施例中,作为一可选实施例,若有多个转发队列,网络设备分别检测每一转发队列当前的报文转发流量,每一转发队列由网络设备预先调度有相应的带宽,并预留有部分带宽作为预留带宽。
步骤102,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列,所述目标队列具有第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;
本申请实施例中,作为一可选实施例,不同的转发队列,对应有不同的预设报文限速阈值。对转发队列进行预设报文限速阈值设置,可以保障该转发队列中的报文转发能够达到较高的速度,又不会导致流量堵塞,从而提升调度给该转发队列的带宽的有效利用率。
本申请实施例中,为报文转发流量超过预设报文限速阈值的目标队列设置第二调度优先级,该第二调度优先级低于第一调度优先级中最低调度优先级。例如,若转发队列数量为8个,则可以设置第一调度优先级包括8个调度优先级,分别为:调度优先级0至调度优先级7,其中,转发队列0对应调度优先级0,转发队列1对应调度优先级1,…,转发队列7对应调度优先级7,调度优先级7的优先级别最高。进一步地,可以设置第二调度优先级为低于调度优先级0的一调度优先级,例如,第二调度优先级为调度优先级-1。这样,依据该第二调度优先级为转发队列调度带宽,从而可以不占用第一调度优先级中最低调度优先级的转发队列的带宽。
步骤103,所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽。
本申请实施例中,由于网络设备为上述具有第二调度优先级的目标队列,从预留带宽中分配带宽,使得超过预设报文限速阈值的报文不再置于第一调度优先级最低的转发队列中。这样,避免了现有技术中最低调度优先级转发队列中原始业务报文转发得不到保障的问题。因而,能够保障最低调度优先级报文带宽,从而确保最低调度优先级的转发队列中报文的转发速度,不会影响该最低调度优先级的转发队列中各报文的业务性能。
实施例二
本申请实施例中,对于不同的调度优先级,对应有不同的报文限速阈值。因而,作为一可选实施例,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之前,该方法还包括:
若该转发队列的报文转发流量超过所述第一调度优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
本申请实施例中,若某一转发队列的报文转发流量超过第一调度优先级对应的报文限速阈值,则为该转发队列设置第二调度优先级。该第二调度优先级低于第一调度优先级中最低调度优先级。
实施例三
图2为本申请实施例提供的带宽调度方法另一流程示意图。如图2所示,该流程包括:
步骤201,所述网络设备获取网络中报文的报文优先级;
本申请实施例中,作为一可选实施例,预设服务器可以通过统计网络中各报文的报文优先级,将统计的报文优先级下发给网络设备,网络设备获取网络中报文的报文优先级。作为另一可选实施例,网络设备也可以对汇聚到该网络设备一个出口的多个入口的报文优先级进行统计,从而获取网络中报文的报文优先级。
本申请实施例中,作为一可选实施例,统计的报文优先级包括:报文优先级0、报文优先级1、报文优先级2、报文优先级3、报文优先级4、报文优先级5、报文优先级6以及报文优先级7,其中,优先级7的优先级别最高,报文的优先级级数共有8级。
步骤202,所述网络设备依据获取的报文优先级,为每一报文优先级配置一转发队列,每一转发队列按照预设的第一调度优先级调度策略获取调度带宽;
本申请实施例中,如上所述,若统计的报文的优先级级数共有8级,则网络设备共配置8个转发队列(8个转发队列分别对应有调度优先级0至调度优先级7),分别对应报文优先级0至报文优先级7。
本申请实施例中,作为一可选实施例,如果网络设备的总带宽为10G,按照预设的第一调度优先级调度策略,分别调度给调度优先级0至调度优先级7对应的转发队列(分别为转发队列0至转发队列7)的带宽为:1G、1G、1G、1G、1G、1G、1G以及2G。
步骤203,所述网络设备获取按照所述第一调度优先级调度策略调度后剩余的带宽作为预留带宽;
本申请实施例中,如上所述,网络设备的预留带宽为1G。
步骤204,所述网络设备接收待转发报文,根据所述待转发报文的报文优先级,将所述待转发报文分发至与所述报文优先级匹配的转发队列中;
本申请实施例中,按照接收的待转发报文的报文优先级,将待转发报文置于相应的转发队列中。例如,将报文优先级为1的待转发报文,置于调度优先级为1的转发队列1,将报文优先级为7的待转发报文,置于调度优先级为7的转发队列7等。
步骤205,所述网络设备检测所述每个转发队列当前的报文转发流量;
本申请实施例中,作为一可选实施例,在一预设的报文转发周期内,通过统计转发队列中的报文数以及每一报文的大小,可以得到该转发队列当前的报文转发流量。
步骤206,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列;
本申请实施例中,作为一可选实施例,若有多个转发队列的报文转发流量超过预设报文限速阈值,则可以将该多个转发队列组成目标队列集。
步骤207,所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽。
本申请实施例中,对于目标队列集,则为目标队列集中的每一目标队列调度带宽。
本申请实施例中,步骤205至步骤207分别与步骤101至步骤103相同,在此不再复述。
实施例四
图3为本申请实施例提供的带宽调度方法再一流程示意图。如图3所示,该流程包括:
步骤301,所述网络设备检测所述每个转发队列当前的报文转发流量;
本申请实施例中,步骤301与步骤101相同,在此不再复述。
步骤302,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列;
本申请实施例中,步骤302与步骤102相同,在此不再复述。
本申请实施例中,作为一可选实施例,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之前,该方法还包括:
针对每一配置的转发队列,依据该转发队列中的报文优先级,获取该报文优先级对应的报文限速阈值;
若该转发队列的报文转发流量超过所述报文优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
本申请实施例中,作为一可选实施例,每一转发队列(报文优先级)对应设置有一预设报文限速阈值,形成报文优先级与预设报文限速阈值之间的映射关系。例如,对于上述转发队列0至转发队列7,对应预设报文限速阈值分别为:0.8G、0.9G、0.9G、0.85G、0.95G、0.9G、0.95G以及1.8G。如果检测得到的上述转发队列0至转发队列7的当前报文转发流量分别为:0.85G、0.85G、0.8G、0.95G、0.7G、0.6G、0.8G以及2.0G。则确定转发队列0、转发队列3以及转发队列7为目标队列。
本申请实施例中,作为另一可选实施例,同一转发队列中的报文也可能具有不同的报文优先级,此时,则根据该转发队列具有的第一调度优先级,为该转发队列设置预设报文限速阈值。若确定该转发队列的报文转发流量超过对应的报文限速阈值,则为该转发队列设置第二调度优先级。例如,对于上述第一调度优先级包括调度优先级0至调度优先级7的情形,设置第二调度优先级为-1。
本申请实施例中,网络设备周期性检测每个转发队列当前的报文转发流量,如果在当前周期内,网络设备未检测到超过预设报文限速阈值的目标队列,则网络设备等待下一检测周期,再次对每个转发队列当前的报文转发流量进行检测。
步骤303,所述网络设备判断是否存在空闲状态的转发队列,若存在,执行步骤304,若不存在,执行步骤305;
本申请实施例中,如果网络设备中存在空闲状态的转发队列或者转发队列中报文个数未达到队列容量一半,表明该转发队列处于空闲状态。因而,可以利用该处于空闲状态的转发队列进行超流量报文转发。作为另一可选实施例,也可以是检测各转发队列的报文转发流量是否低于某一预设阈值。如果低于,表明该转发队列的负荷较轻,此时,也可以利用该转发队列进行超流量报文转发。
步骤304,从所述目标队列中,所述网络设备提取超过所述预设报文限速阈值的报文转发流量对应的报文,置于所述空闲状态的转发队列进行转发;
本申请实施例中,利用预先调度给该空闲状态的转发队列的带宽转发超流量报文。
步骤305,所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽。
本申请实施例中,作为一可选实施例,所述依据所述网络设备的预留带宽,为所述目标队列调度带宽,包括:
按照所述预留带宽以及所述目标队列的预留带宽权重,为所述目标队列分配带宽。
本申请实施例中,作为一可选实施例,每一目标队列对应设置有一预留带宽权重,所有目标队列对应的预留带宽权重之和为1。
如果目标队列对应的第一调度优先级级别较高,则为该目标队列设置的预留带宽权重也较大。这样,可以保障高调度优先级的目标队列得到较大的带宽。例如,如果目标队列的预留带宽权重为0.5,预留带宽为1G,则调度给该目标队列的带宽为0.5G。如果该目标队列原始调度的带宽为1G,则通过预留带宽再次给该目标队列分配带宽后,该目标队列的总带宽为1.5G,其设置的报文限速阈值也相应提升。
再例如,如果存在3个目标队列,其各自的预留带宽权重为0.3、0.3、0.4,则预留带宽为1G时,分别为三个目标队列再次调度带宽为0.3G、0.3G、0.4G。
本申请实施例中,作为另一可选实施例,所述依据所述网络设备的预留带宽,为所述目标队列调度带宽,包括:
获取所述目标队列中,超过预设报文限速阈值的超额报文转发流量;
当所述目标队列的个数为1个时,将所述预留带宽分给所述目标队列;
当所述目标队列的个数为多个时,计算超额报文转发流量与第一权重的乘积,得到所述目标队列的预留带宽权重,所述第一权重为用于表示所述报文优先级的参数;
计算每个目标队列的预留带宽权重的和值;
计算每个目标队列的预留带宽权重与所述和值的比值;
依据所述比值,从所述预留带宽中,为所述目标队列调度带宽。
本申请实施例中,如果目标队列对应的预留带宽权重越大、超额报文转发流量越多,则调度的带宽也越多。
本申请实施例中,作为再一可选实施例,所述依据所述网络设备的预留带宽,为所述目标队列调度带宽,包括:
设置所述目标队列中所有报文的报文优先级为预设优先级;
依据所述预设优先级,将所述预留带宽均分给所述目标队列。
本申请实施例中,作为一可选实施例,虚拟设置目标队列中所有报文优先级都相同,均为预设优先级,例如,优先级-1。即对各转发队列中的报文转发流量进行限速后,超过限速(预设报文限速阈值)的报文的优先级被降低到优先级-1。从而采用均分带宽的方式进行预留带宽调度。
实施例五
图4为本申请实施例提供的带宽调度装置结构示意图。所述装置中设置多个具有第一调度优先级的转发队列,所述第一调度优先级包括多个调度优先级,每个转发队列按照与所述转发队列对应的调度优先级转发队列中报文,包括:
流量检测模块401,用于检测所述每个转发队列当前的报文转发流量;
本申请实施例中,作为一可选实施例,若有多个转发队列,网络设备分别检测每一转发队列当前的报文转发流量,每一转发队列由网络设备预先调度有相应的带宽,并预留有部分带宽作为预留带宽。
超流量队列确定模块402,获取所述报文转发流量超过预设报文限速阈值的目标队列,所述目标队列具有第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;
本申请实施例中,作为一可选实施例,不同的转发队列,对应有不同的预设报文限速阈值。
超流量带宽调度模块403,用于依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽。
本申请实施例中,作为一可选实施例,该装置还包括:
转发队列检测模块(图中未示出),用于判断是否存在空闲状态的转发队列;
若存在,则从所述目标队列中,提取超过预设报文限速阈值的报文转发流量对应的报文,置于所述空闲状态的转发队列进行转发;
若不存在,通知超流量带宽调度模块403。
本申请实施例中,如果网络设备中存在空闲状态的转发队列,表明为该转发队列配置的带宽处于空闲状态。因而,可以利用该处于空闲状态的带宽进行报文转发。
本申请实施例中,作为再一可选实施例,该装置还包括:
调度优先级第一设置模块(图中未示出),若该转发队列的报文转发流量超过所述第一调度优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
本申请实施例中,作为又一可选实施例,该装置还包括:队列配置模块以及报文分发模块(图中未示出),其中,
队列配置模块,用于获取网络中报文的报文优先级;依据获取的报文优先级,为每一报文优先级配置一转发队列,每一转发队列按照预设的第一调度优先级调度策略获取调度带宽;
报文分发模块,用于接收待转发报文,根据所述待转发报文的报文优先级,将所述待转发报文分发至与所述报文优先级匹配的转发队列中。
本申请实施例中,按照接收的待转发报文的报文优先级,将待转发报文置于相应的转发队列中。
本申请实施例中,作为又一可选实施例,该装置还包括:
调度优先级第二设置模块(图中未示出),用于针对每一配置的转发队列,依据该转发队列中报文的报文优先级,获取该报文优先级对应的报文限速阈值;
若该转发队列的报文转发流量超过所述报文优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
本申请实施例中,作为一可选实施例,超流量带宽调度模块403具体用于:
设置所述目标队列中所有报文的报文优先级为预设优先级;
依据所述预设优先级,将所述预留带宽均分给所述目标队列;
或,
获取所述目标队列中,超过预设报文限速阈值的超额报文转发流量;
当所述目标队列的个数为1个时,将所述预留带宽分给所述目标队列;
当所述目标队列的个数为多个时,计算超额报文转发流量与第一权重的乘积,得到所述目标队列的预留带宽权重,所述第一权重为用于表示所述报文优先级的参数;
计算每个目标队列的预留带宽权重的和值;
计算每个目标队列的预留带宽权重与所述和值的比值;
依据所述比值,从所述预留带宽中,为所述目标队列调度带宽。
实施例六
图5为本申请实施例提供的计算机设备的结构示意图。如图5所示,本申请一实施例提供的一种计算机设备,用于执行图1至图3中的带宽调度方法。该设备包括存储器1000、处理器2000及存储在该存储器1000上并可在该处理器2000上运行的计算机程序。其中,上述处理器2000执行上述计算机程序时实现上述带宽调度方法的步骤。
具体地,上述存储器1000和处理器2000能够为通用的存储器和处理器,这里不做具体限定。当处理器2000运行存储器2000存储的计算机程序时,能够执行上述带宽调度方法,从而解决现有技术中最低调度优先级转发队列中业务报文得不到转发保障,影响该最低调度优先级转发队列中报文的业务需求的问题,本申请实施例中,多个转发队列按照预设的第一调度优先级转发队列中报文。网络设备获取报文转发流量超过预设报文限速阈值、并具有第二调度优先级的目标队列,而且,第二调度优先级低于第一调度优先级中最低调度优先级。由于本申请中,网络设备为上述具有第二调度优先级的目标队列,从预留带宽中分配带宽,使得超过预设报文限速阈值的报文不再置于第一调度优先级最低的转发队列中。这样,避免了现有技术中最低调度优先级转发队列中原始业务报文转发得不到保障的问题。因而,能够保障最低调度优先级报文带宽,从而确保最低调度优先级的转发队列中报文的转发速度,不会影响该最低调度优先级的转发队列中各报文的业务性能。
对应于图1至图3中的带宽调度方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述带宽调度方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述带宽调度方法,从而解决现有技术中最低调度优先级转发队列中业务报文得不到转发保障,影响该最低调度优先级转发队列中报文的业务需求的问题,本申请实施例中,多个转发队列按照预设的第一调度优先级转发队列中报文。网络设备获取报文转发流量超过预设报文限速阈值、并具有第二调度优先级的目标队列,而且,第二调度优先级低于第一调度优先级中最低调度优先级。由于本申请中,网络设备为上述具有第二调度优先级的目标队列,从预留带宽中分配带宽,使得超过预设报文限速阈值的报文不再置于第一调度优先级最低的转发队列中。这样,避免了现有技术中最低调度优先级转发队列中原始业务报文转发得不到保障的问题。因而,能够保障最低调度优先级报文带宽,从而确保最低调度优先级的转发队列中报文的转发速度,不会影响该最低调度优先级的转发队列中各报文的业务性能。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (12)

1.一种带宽调度方法,其特征在于,所述方法应用于网络设备,所述网络设备中设置多个具有第一调度优先级的转发队列,所述第一调度优先级包括多个调度优先级,每个转发队列按照与所述转发队列对应的调度优先级转发队列中报文,所述方法包括:
所述网络设备检测所述每个转发队列当前的报文转发流量;
所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列,为所述目标队列设置第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;
所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为所述网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽;利用为所述目标队列调度的预留带宽转发所述报文转发流量中超过预设报文限速阈值的部分。
2.根据权利要求1所述的方法,其特征在于,所述网络设备获取所述报文转发流量超过预报文限速阈值的目标队列之后,所述方法还包括:
所述网络设备判断是否存在空闲状态的转发队列;
若存在,则从所述目标队列中,所述网络设备提取超过所述预设报文限速阈值的报文转发流量对应的报文,置于所述空闲状态的转发队列进行转发;
若不存在,则所述网络设备依据所述网络设备的预留带宽,为所述目标队列调度带宽。
3.根据权利要求1所述的方法,其特征在于,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之前,还包括:
若该转发队列的报文转发流量超过所述第一调度优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
4.根据权利要求1所述的方法,其特征在于,所述网络设备检测所述每个转发队列当前的报文转发流量之前,所述方法还包括:
所述网络设备获取网络中报文的报文优先级;
所述网络设备依据获取的报文优先级,为每一报文优先级配置一转发队列,每一转发队列按照预设的第一调度优先级调度策略获取调度带宽;
所述网络设备接收待转发报文,根据所述待转发报文的报文优先级,将所述待转发报文分发至与所述报文优先级匹配的转发队列中。
5.根据权利要求4所述的方法,其特征在于,所述网络设备获取所述报文转发流量超过预设报文限速阈值的目标队列之前,还包括:
针对每一配置的转发队列,依据该转发队列中报文的报文优先级,获取该报文优先级对应的报文限速阈值;
若该转发队列的报文转发流量超过所述报文优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
6.根据权利要求5所述的方法,其特征在于,所述依据所述网络设备的预留带宽,为所述目标队列调度带宽,包括:
设置所述目标队列中所有报文的报文优先级为预设优先级;
依据所述预设优先级,将所述预留带宽均分给所述目标队列;
或,
获取所述目标队列中,超过预设报文限速阈值的超额报文转发流量;
当所述目标队列的个数为1个时,将所述预留带宽分给所述目标队列;
当所述目标队列的个数为多个时,计算超额报文转发流量与第一权重的乘积,得到所述目标队列的预留带宽权重,所述第一权重为用于表示所述报文优先级的参数;
计算每个目标队列的预留带宽权重的和值;
计算每个目标队列的预留带宽权重与所述和值的比值;
依据所述比值,从所述预留带宽中,为所述目标队列调度带宽。
7.一种带宽调度装置,其特征在于,所述装置中设置多个具有第一调度优先级的转发队列,所述第一调度优先级包括多个调度优先级,每个转发队列按照与所述转发队列对应的调度优先级转发队列中报文,包括:
流量检测模块,用于检测所述每个转发队列当前的报文转发流量;
超流量队列确定模块,用于获取所述报文转发流量超过预设报文限速阈值的目标队列,为所述目标队列设置第二调度优先级,且所述第二调度优先级低于所述第一调度优先级中最低调度优先级;
超流量带宽调度模块,用于依据网络设备的预留带宽,为所述目标队列调度带宽,所述预留带宽为网络设备按照预设的调度优先级调度策略,为每个转发队列分配调度带宽后剩余的带宽;利用为所述目标队列调度的预留带宽转发所述报文转发流量中超过预设报文限速阈值的部分。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
转发队列检测模块,用于判断是否存在空闲状态的转发队列;
若存在,则从所述目标队列中,提取超过所述预设报文限速阈值的报文转发流量对应的报文,置于所述空闲状态的转发队列进行转发;
若不存在,通知所述超流量带宽调度模块。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
调度优先级第一设置模块,若该转发队列的报文转发流量超过所述第一调度优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
队列配置模块,用于获取网络中报文的报文优先级;依据获取的报文优先级,为每一报文优先级配置一转发队列,每一转发队列按照预设的第一调度优先级调度策略获取调度带宽;
报文分发模块,用于接收待转发报文,根据所述待转发报文的报文优先级,将所述待转发报文分发至与所述报文优先级匹配的转发队列中。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
调度优先级第二设置模块,用于针对每一配置的转发队列,依据该转发队列中报文的报文优先级,获取该报文优先级对应的报文限速阈值;
若该转发队列的报文转发流量超过所述报文优先级对应的报文限速阈值,为该转发队列设置所述第二调度优先级。
12.根据权利要求11所述的装置,其特征在于,所述超流量带宽调度模块具体用于:
设置所述目标队列中所有报文的报文优先级为预设优先级;
依据所述预设优先级,将所述预留带宽均分给所述目标队列;
或,
获取所述目标队列中,超过预设报文限速阈值的超额报文转发流量;
当所述目标队列的个数为1个时,将所述预留带宽分给所述目标队列;
当所述目标队列的个数为多个时,计算超额报文转发流量与第一权重的乘积,得到所述目标队列的预留带宽权重,所述第一权重为用于表示所述报文优先级的参数;
计算每个目标队列的预留带宽权重的和值;
计算每个目标队列的预留带宽权重与所述和值的比值;
依据所述比值,从所述预留带宽中,为所述目标队列调度带宽。
CN201810816753.8A 2018-07-24 2018-07-24 带宽调度方法及装置 Active CN109039953B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810816753.8A CN109039953B (zh) 2018-07-24 2018-07-24 带宽调度方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810816753.8A CN109039953B (zh) 2018-07-24 2018-07-24 带宽调度方法及装置

Publications (2)

Publication Number Publication Date
CN109039953A CN109039953A (zh) 2018-12-18
CN109039953B true CN109039953B (zh) 2022-06-10

Family

ID=64644591

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810816753.8A Active CN109039953B (zh) 2018-07-24 2018-07-24 带宽调度方法及装置

Country Status (1)

Country Link
CN (1) CN109039953B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020248166A1 (zh) * 2019-06-12 2020-12-17 华为技术有限公司 流量调度方法、设备及存储介质
CN114640638B (zh) * 2020-12-16 2024-05-14 华为技术有限公司 一种报文传输方法及发送端设备
CN113727394B (zh) * 2021-08-31 2023-11-21 杭州迪普科技股份有限公司 共享带宽的实现方法及装置
CN115242726B (zh) * 2022-07-27 2024-03-01 阿里巴巴(中国)有限公司 队列的调度方法和装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101111070A (zh) * 2006-08-18 2008-01-23 清华大学 宽带无线接入系统中基于资源调度的公平性资源调度方法
CN101228737A (zh) * 2004-05-05 2008-07-23 思科技术公司 分级QoS行为模型
CN102158420A (zh) * 2011-05-25 2011-08-17 杭州华三通信技术有限公司 一种基于优先队列的业务流量调度方法及其装置
CN102231697A (zh) * 2011-06-17 2011-11-02 瑞斯康达科技发展股份有限公司 一种报文队列的带宽调度方法、报文上报方法及其装置
CN104079501A (zh) * 2014-06-05 2014-10-01 深圳市邦彦信息技术有限公司 一种基于多优先级的队列调度方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101228737A (zh) * 2004-05-05 2008-07-23 思科技术公司 分级QoS行为模型
CN101111070A (zh) * 2006-08-18 2008-01-23 清华大学 宽带无线接入系统中基于资源调度的公平性资源调度方法
CN102158420A (zh) * 2011-05-25 2011-08-17 杭州华三通信技术有限公司 一种基于优先队列的业务流量调度方法及其装置
CN102231697A (zh) * 2011-06-17 2011-11-02 瑞斯康达科技发展股份有限公司 一种报文队列的带宽调度方法、报文上报方法及其装置
CN104079501A (zh) * 2014-06-05 2014-10-01 深圳市邦彦信息技术有限公司 一种基于多优先级的队列调度方法

Also Published As

Publication number Publication date
CN109039953A (zh) 2018-12-18

Similar Documents

Publication Publication Date Title
CN109039953B (zh) 带宽调度方法及装置
CN107800768B (zh) 开放平台控制方法和系统
US20210336885A1 (en) Phantom queue link level load balancing system, method and device
CN103699445A (zh) 一种任务调度方法、装置及系统
CN105718317A (zh) 一种任务调度方法及装置
CN107404443B (zh) 队列缓存资源控制方法及装置、服务器及存储介质
CN103442076A (zh) 一种云存储系统的可用性保障方法
CN105022668B (zh) 一种作业调度方法及系统
CN112988354B (zh) 一种卫星通信系统出站资源优化管理方法
US9825879B2 (en) Method and arrangement for admission control based on priority level based differentiation
CN111030945A (zh) 容灾方法、容灾网关、存储介质、装置以及系统
US10044632B2 (en) Systems and methods for adaptive credit-based flow
CN112260962B (zh) 一种带宽控制方法及装置
CN112948104B (zh) 负载均衡的数据采集方法及装置
CN110347518B (zh) 消息处理方法及装置
CN114827033B (zh) 数据流控方法、装置、设备与计算机可读存储介质
CN113364648B (zh) 流量控制方法、系统、装置、服务设备及存储介质
CN111190728B (zh) 资源调整方法及装置
CN109922008B (zh) 一种报文发送方法及装置
US20220200918A1 (en) Communication control device and communication control method
CN110968409A (zh) 一种数据处理方法及装置
CN106998366B (zh) 一种云控制器负载均衡方法及其装置、一种云控制器
Kuo et al. Congestion control under traffic awareness in wireless sensor networks
US10742710B2 (en) Hierarchal maximum information rate enforcement
CN112261076B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230627

Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466

Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd.