CN117098191A - 数据流调度控制方法及相关设备 - Google Patents
数据流调度控制方法及相关设备 Download PDFInfo
- Publication number
- CN117098191A CN117098191A CN202310827366.5A CN202310827366A CN117098191A CN 117098191 A CN117098191 A CN 117098191A CN 202310827366 A CN202310827366 A CN 202310827366A CN 117098191 A CN117098191 A CN 117098191A
- Authority
- CN
- China
- Prior art keywords
- data
- priority
- data stream
- data transmission
- data streams
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000005540 biological transmission Effects 0.000 claims abstract description 153
- 230000004044 response Effects 0.000 claims description 16
- 238000012163 sequencing technique Methods 0.000 claims description 14
- 230000004913 activation Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 11
- 230000000694 effects Effects 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/24—Negotiating SLA [Service Level Agreement]; Negotiating QoS [Quality of Service]
Abstract
本申请提供的一种数据流调度控制方法及相关设备。本申请通过在多条数据流需要进行数据传输时,确定各自的优先级,并根据优先级对数据流进行分类,并在每级优先级中进行排序,之后,从最高优先级开始,根据排序顺序循环进行同一优先级的数据流的数据传输,当完成一个优先级中全部数据流的数据传输之后,再进行低一级优先级的数据流的数据传输。以此方式,可以在优先处理优先级高的数据流的同时,对于优先级相同的数据流可以根据排序依次被调度,并根据排序进行循环,从而达到相同优先级公平调度的效果,避免了某一数据流被连续调度导致的其他数据流无法被调度的不公平现象,最终在整体上减小了业务时延,使用户得到良好的用户体验。
Description
技术领域
本申请涉及数据传输技术领域,尤其涉及一种数据流调度控制方法及相关设备。
背景技术
随着移动通信科技技术的发展,人们对于信息的传递速率,特别是传递的及时性有了更高的要求。相关技术中对于当前通信领域的QoS(Quality of Service,服务质量)指标,其中一个关键性指标即为传输时延,而造成传输时延的因素主要有两个方面:一个是数据传输耗时;另一个则是数据的调度策略。
然而,当前相关领域中对于需要在多条数据流间进行传输调度的场景中,现行的调度策略一般较为死板。当前的策略要么根据激活时间的先后顺序;要么根据优先级进行排序,同一优先级下随机选择。进而,当前的调度策略要么无法满足高优先级的时延要求,要么会导致调度不公平,同样无法满足部分高优先级的时延要求,从而整体上降低用户体验。
发明内容
有鉴于此,本申请提出一种数据流调度控制方法及相关设备,以解决或部分解决上述问题。
基于上述目的,本申请提供了一种数据流调度控制方法,包括:
响应于确定至少两条数据流需要进行数据传输,确定每条所述数据流的优先级;
根据所述优先级对所述数据流进行分类,并对同一所述优先级的数据流进行排序,生成调度表;
根据所述调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一所述优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的所述调度控制,以此对所述至少两条数据流进行数据传输。
在一些实施方式中,所述在同一优先级中根据排序依次循环进行调度控制之后,所述方法还包括:
对当前正在进行数据传输的数据流的传输量进行统计;
响应于所述传输量达到预设阈值,停止当前正在进行数据传输的数据流的数据传输;
确定并开始执行下一个进行数据传输的数据流的数据传输。
在一些实施方式中,所述停止当前正在进行数据传输的数据流的数据传输之后,所述方法还包括:
确定所述当前正在进行数据传输的数据流的当前已传输数据量是否达到该数据流的总量;
若是,则在所述调度表中去除所述当前正在进行数据传输的数据流对应的数据。
在一些实施方式中,所述确定并开始执行下一个进行数据传输的数据流的数据传输,包括:
响应于所述当前正在进行数据传输的数据流为同一优先级中排序的最后一个,确定同一优先级中是否还存在未完成全部数据传输的数据流;
若存在,则根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流。
在一些实施方式中,所述确定并开始执行下一个进行数据传输的数据流的数据传输,包括:
响应于被确定为所述下一个进行数据传输的数据流的数据流已完成全部数据传输,则跳过该数据流,并根据排序将下一个数据流确定为所述下一个进行数据传输的数据流。
在一些实施方式中,所述根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流,包括:
在所述调度表的同一优先级中,去除已经完成数据传输的数据流,对该优先级中剩余的数据流重新进行排序,并以此排序确定所述下一个进行数据传输的数据流。
在一些实施方式中,所述确定同一优先级中是否还存在未完成全部数据传输的数据流,还包括:
若不存在,则根据所述调度表确定比当前优先级低一级的优先级,并根据该级优先级的数据流的排序,依次循环进行调度控制。
在一些实施方式中,所述对同一所述优先级的数据流进行排序,包括:
对同一所述优先级的数据流进行随机排序;
或
确定同一所述优先级的每个数据流的激活时间,根据所述激活时间进行排序。
基于同一构思,本申请还提供了一种数据流调度控制装置,包括:
确定模块,用于响应于确定至少两条数据流需要进行数据传输,确定每条所述数据流的优先级;
生成模块,用于根据所述优先级对所述数据流进行分类,并对同一所述优先级的数据流进行排序,生成调度表;
调度模块,用于根据所述调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一所述优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的所述调度控制,以此对所述至少两条数据流进行数据传输。
基于同一构思,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任一项所述的方法。
基于同一构思,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机实现如上任一项所述的方法。
基于同一构思,本申请还提供了一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如上任一项所述的方法。
从上面所述可以看出,本申请提供的一种数据流调度控制方法及相关设备,包括:响应于确定至少两条数据流需要进行数据传输,确定每条数据流的优先级;根据优先级对数据流进行分类,并对同一优先级的数据流进行排序,生成调度表;根据调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的调度控制,以此对至少两条数据流进行数据传输。本申请通过在多条数据流需要进行数据传输时,确定各自的优先级,并根据优先级对数据流进行分类,并在每级优先级中进行排序,之后,从最高优先级开始,根据排序顺序循环进行同一优先级的数据流的数据传输,当完成一个优先级中全部数据流的数据传输之后,再进行低一级优先级的数据流的数据传输。以此方式,可以在优先处理优先级高的数据流的同时,对于优先级相同的数据流可以根据排序依次被调度,并根据排序进行循环,从而达到相同优先级公平调度的效果,避免了某一数据流被连续调度导致的其他数据流无法被调度的不公平现象,最终在整体上减小了业务时延,使用户得到良好的用户体验。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的示例性方法的流程示意图;
图2为本申请实施例提供的示例性方法在具体应用中的流程示意图;
图3为本申请实施例提供的示例性装置的结构示意图;
图4为本申请实施例提供的电子设备结构示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本说明书进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件、物件或者方法步骤涵盖出现在该词后面列举的元件、物件或者方法步骤及其等同,而不排除其他元件、物件或者方法步骤。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,当前移动通信技术逐渐在从4G网络时代过渡到5G网络时代,而对于5G网络,低时延高可靠性是5G NR(New Radio,新空口)系统为保证满足用户需求并提供良好的用户体验而提出的一个主要需求,流类业务、会话类业务和交互类业务等都是时延敏感的实时性业务,其最关键的QoS指标是传输时延。而在相关领域中,造成5G系统中的时延实际上包括两个原因:一个是数据传输耗时,或称为数据传输时延,即数据从终端无线协议栈发送到网络接收到数据的时间;另一个则是调度策略,即数据从应用层发到终端无线协议栈的时间。
对于第一方面,数据传输时延和无线信道特性密切相关,可以通过大带宽即超高传输速率解决。而对于第二方面,相关方案中调度策略要么为根据激活时间的先后顺序,要么为根据优先级进行排序,两种方式都存在一定缺陷。具体的,当终端系统同时有多种业务被激活,每个业务对应一个Qos流(相当于一个数据流),每个Qos流都对应一个优先级,优先级越高代表该Qos流对时延要求越高,那么在此场景下,同一优先级就会有多个Qos流同时有上行数据包要发送。如果按照业务流先来先服务的策略调度,那么低优先级Qos流很可能会排在高优先级Qos流之前被调度,这样就增大了高优先级Qos流的时延,无法满足用户对高优先级Qos流的时延要求,降低了用户体验满意度。如果采用高优先级业务优先调度的策略,假设有两个流有相同的优先级,那么可能会出现这样的现象,其中一个流总是被调度,而另一个相同优先级的流长时间得不到调度,显然这并不公平,其同样无法满足部分高优先级的时延要求。最终关于第二方面不论采用何种方式,其都会影响部分数据流的时延要求,从而整体上降低用户体验。
结合上述实际情况,本申请实施例提供了一种数据流调度控制方案。本申请通过在多条数据流需要进行数据传输时,确定各自的优先级,并根据优先级对数据流进行分类,并在每级优先级中进行排序,之后,从最高优先级开始,根据排序顺序循环进行同一优先级的数据流的数据传输,当完成一个优先级中全部数据流的数据传输之后,再进行低一级优先级的数据流的数据传输。以此方式,可以在优先处理优先级高的数据流的同时,对于优先级相同的数据流可以根据排序依次被调度,并根据排序进行循环,从而达到相同优先级公平调度的效果,避免了某一数据流被连续调度导致的其他数据流无法被调度的不公平现象,最终在整体上减小了业务时延,使用户得到良好的用户体验。
如图1所示,为本申请提出的一种数据流调度控制方法的流程示意图。该方法具体包括:
步骤101,响应于确定至少两条数据流需要进行数据传输,确定每条所述数据流的优先级。
在一些实施例中,在信息传输领域,不论是OSI(Open System Interconnection)七层模型还是TCP/IP五层模型,在进行数据传输时,一般都会利用这些模型,将数据从物理层传输至应用层,再从应用层传输至对应的协议栈。一个完整的数据(传输块或数据包等)在进行传输时即可以认为为一个数据流。而当有至少两条数据流需要进行数据传输时,此时可以先行确定这些数据流的优先级。这里的优先级可以是事先设定好的,例如用户通过录入的表单规定哪些数据流或数据流类型的具体优先级等级;也可以是数据流生成时根据必要性进行设定的等等。在一些实施例中,优先级可以分为设定好的几个等级,每个数据流根据设定确定其优先级等级,进而每个优先级等级下可能存在一条或多条数据流。而在一些实施例中,如若仅有一条数据流需要进行数据传输,那么所有的资源可以仅围绕该数据流进行设置,并不需要进行调度等工作。
步骤102,根据所述优先级对所述数据流进行分类,并对同一所述优先级的数据流进行排序,生成调度表。
在一些实施例中,在确定了每条数据流的优先级之后,可以根据不同的优先级等级对这些数据流进行分类,同一优先级的数据流归为一类。从而可以将这些数据流按照优先级的高低等级被分为几类。之后对于每一优先级中的数据流,可以根据相应的规则进行排序。
在一些实施例中,对于同一级优先级的数据流其排序的方式可以直接是随机进行排列的方式;也可以为了满足每个数据流的时延要求,先被激活的数据流本身肯定比后被激活的数据流存在的时间要长,从而最好是先激活的数据流先行被调度,从而可以根据是根据数据流本身被激活的时间来进行排序,例如数据流A先于数据流B被激活,则在排序时数据流A排在数据流B前面;当然还可以根据具体的应用场景具体设置排序方式。即,在一些实施例中,所述对同一所述优先级的数据流进行排序,包括:对同一所述优先级的数据流进行随机排序;或确定同一所述优先级的每个数据流的激活时间,根据所述激活时间进行排序。这里的激活时间即为数据流被确定需要进行传输的时间。
最后,根据前述分类及排序,生成对应的调度表,以此来记录每个优先级下不同数据流的排序及与数据流相关的部分数据,例如数据流的名称、设置的排序ID等等。
步骤103,根据所述调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一所述优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的所述调度控制,以此对所述至少两条数据流进行数据传输。
在一些实施例中,在生成了调度表之后,就可以根据调度表进行相应的调度控制了。而在本实施例中,由于调度表中已经按照优先级进行了分类,进而可以从当前调度表中记录的最高级优先级开始,根据该优先级下数据流的排序顺序依次调度,在完成一轮之后可以从排序起始重新进行顺序调度,以此循环,直至这一优先级中的全部数据流都完成了调度之后,再进行下一级优先级中数据流的调度,对于该级优先级内的数据流间的调度,可以与前述最高级优先级的调度方式相同或类似,以此类推,以此根据调度表进行前述至少两条数据流的数据传输任务,并最终完成全部优先级中的数据流的调度、数据传输任务。
在一些实施例中,为了不让一个数据流或一个任务占用过长的处理时间,可以为传输设置相应的时间阈值或数据量阈值,以此来限制每个数据流的数据传输占用,当一个数据流的传输达到相应参数后,即可停止该数据流的传输(即使其没有完成全部数据的传输),并根据调度表调整至下一个数据流进行数据传输。即,在一些实施例中,所述在同一优先级中根据排序依次循环进行调度控制之后,所述方法还包括:对当前正在进行数据传输的数据流的传输量进行统计;响应于所述传输量达到预设阈值,停止当前正在进行数据传输的数据流的数据传输;确定并开始执行下一个进行数据传输的数据流的数据传输。当然在一些特定场景下,也可以根据具体设置,直接一次性完成一个数据流的全部数据传输之后才进行下一个数据流的数据传输。
在一些实施例中,设置调度表的最终目的是完成数据流的数据传输,进而当一个数据流的数据全部传输完成之后,为了简化判断过程,可以直接在调度表将已完成的数据流的相应数据去除掉,从而在排序或根据排序进行循环调度时,可以逐渐减少数据流数量,简化判断过程。即,在一些实施例中,所述停止当前正在进行数据传输的数据流的数据传输之后,所述方法还包括:确定所述当前正在进行数据传输的数据流的当前已传输数据量是否达到该数据流的总量;若是,则在所述调度表中去除所述当前正在进行数据传输的数据流对应的数据。
在一些实施例中,根据前述实施例,由于每个数据流都会在传输了一定量的数据之后被强行中止,以此来平衡多个数据流需要进行数据传输情况下各个数据流的时延问题。进而,任一个数据流可能需要进行多次传输才能完成全部数据的传输。进而在当前正在进行数据传输的数据流为该优先级下排序的最后一个时,可以转回排序的第一个重新开始一轮传输调度,以此来根据排序进行循环调度。当然,在进行新一轮的循环之前,可以先判断一下当前优先级中的数据流是否全部完成了数据传输,如果是的话,则可以直接进行低一级优先级的数据流的数据传输调度工作了;而如果不是,则可以重新进行循环。即,在一些实施例中,所述确定并开始执行下一个进行数据传输的数据流的数据传输,包括:响应于所述当前正在进行数据传输的数据流为同一优先级中排序的最后一个,确定同一优先级中是否还存在未完成全部数据传输的数据流;若存在,则根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流。之后,所述确定同一优先级中是否还存在未完成全部数据传输的数据流,还包括:若不存在,则根据所述调度表确定比当前优先级低一级的优先级,并根据该级优先级的数据流的排序,依次循环进行调度控制。
在一些实施例中,为了节约资源,在一个数据流完成数据传输之后,如果根据前一实施例,在根据排序进行循环时,由于排序可能没有实时的根据数据传输的过程进行更新,在进行循环时,可能会遇到当前调度到的数据流是已经完成数据传输的。进而在此场景下,可以在判断出被确定为所述下一个进行数据传输的数据流的数据流,是已经完成全部数据传输的数据流时,直接跳过这个数据流,去确定下一个数据流为下一个进行数据传输的数据流。当然在确定时还可以根据前述进行相同或类似的判断。即,在一些实施例中,所述确定并开始执行下一个进行数据传输的数据流的数据传输,包括:响应于被确定为所述下一个进行数据传输的数据流的数据流已完成全部数据传输,则跳过该数据流,并根据排序将下一个数据流确定为所述下一个进行数据传输的数据流。
根据前一实施例,其是跳过已经完成的数据流,而在调度表中并不会对其对应的数据进行删除,也即是说,在循环时还会对这个已经完成的数据流进行判断。进而在另一些实施例中,在需要重新从排序起始开始进行调度时,对于已经完成数据传输的数据流,可以直接在调度表中直接去除掉,并对剩下的数据流重新进行排序,以此来简化排序序列,从而省略一些判断过程,提高效率。即,在一些实施例中,所述根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流,包括:在所述调度表的同一优先级中,去除已经完成数据传输的数据流,对该优先级中剩余的数据流重新进行排序,并以此排序确定所述下一个进行数据传输的数据流。
结合上述实际情况,本申请实施例提供了一种数据流调度控制方法,包括:响应于确定至少两条数据流需要进行数据传输,确定每条数据流的优先级;根据优先级对数据流进行分类,并对同一优先级的数据流进行排序,生成调度表;根据调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的调度控制,以此对至少两条数据流进行数据传输。本申请通过在多条数据流需要进行数据传输时,确定各自的优先级,并根据优先级对数据流进行分类,并在每级优先级中进行排序,之后,从最高优先级开始,根据排序顺序循环进行同一优先级的数据流的数据传输,当完成一个优先级中全部数据流的数据传输之后,再进行低一级优先级的数据流的数据传输。以此方式,可以在优先处理优先级高的数据流的同时,对于优先级相同的数据流可以根据排序依次被调度,并根据排序进行循环,从而达到相同优先级公平调度的效果,避免了某一数据流被连续调度导致的其他数据流无法被调度的不公平现象,最终在整体上减小了业务时延,使用户得到良好的用户体验。
在一些具体实施例中,如图2所示,以数据流为Qos流为例,对于全部Qos流,可以定义一个二维数组Qos流标识数组qfi[P][N],P是Qos优先级的最大值,N是具有相同优先级的Qos流的最大数目,qfi[p][n]记录了按递减优先级顺序排好的优先级为p的第n个Qos流的ID。定义一个一维数组num[P],num[p]记录的优先级为p的Qos流的个数。定义一个一维数组next_qfi[P],next_qfi[p]记录在所有优先级p的Qos流中,将要选择被调度的Qos流在qfi[p][N]中的索引,即n的值。首先生成一个qfi二维表,当有Qos流调度机会到达时,首先确定有缓存数据包的Qos流中最高优先级p;再确定优先调度的Qos流的ID,qfi[p][next_qfi[p]],并更新next_qfi[p],其值加1,如果更新后的next_qfi[p]大于或等于具有优先级p的流的总个数num[p],则更新next_qfi[p]值为0。其中,next_qfi[p]值为0时对应第一个Qos流,进而当next_qfi[p]等于具有优先级p的流的总个数num[p]时,说明已经完成一轮最高优先级p的Qos流调度。以此通过上述策略,可以保证具有相同优先级的Qos流可以相对公平地被调度,避免了相同优先级的业务流有的被一直调度,而其它得不到调度的问题,减小了业务时延,使用户得到良好的用户体验。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本申请实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一构思,与上述任意实施例方法相对应的,本申请还提供了一种数据流调度控制装置。
参考图3,所述数据流调度控制装置,包括:
确定模块210,用于响应于确定至少两条数据流需要进行数据传输,确定每条所述数据流的优先级。
生成模块220,用于根据所述优先级对所述数据流进行分类,并对同一所述优先级的数据流进行排序,生成调度表。
调度模块230,用于根据所述调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一所述优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的所述调度控制,以此对所述至少两条数据流进行数据传输。
在一些实施例中,所述调度模块230,还用于:
对当前正在进行数据传输的数据流的传输量进行统计;
响应于所述传输量达到预设阈值,停止当前正在进行数据传输的数据流的数据传输;
确定并开始执行下一个进行数据传输的数据流的数据传输。
在一些实施例中,所述调度模块230,还用于:
确定所述当前正在进行数据传输的数据流的当前已传输数据量是否达到该数据流的总量;
若是,则在所述调度表中去除所述当前正在进行数据传输的数据流对应的数据。
在一些实施例中,所述调度模块230,还用于:
响应于所述当前正在进行数据传输的数据流为同一优先级中排序的最后一个,确定同一优先级中是否还存在未完成全部数据传输的数据流;
若存在,则根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流。
在一些实施例中,所述调度模块230,还用于:
响应于被确定为所述下一个进行数据传输的数据流的数据流已完成全部数据传输,则跳过该数据流,并根据排序将下一个数据流确定为所述下一个进行数据传输的数据流。
在一些实施例中,所述调度模块230,还用于:
在所述调度表的同一优先级中,去除已经完成数据传输的数据流,对该优先级中剩余的数据流重新进行排序,并以此排序确定所述下一个进行数据传输的数据流。
在一些实施例中,所述调度模块230,还用于:
若不存在,则根据所述调度表确定比当前优先级低一级的优先级,并根据该级优先级的数据流的排序,依次循环进行调度控制。
在一些实施例中,所述生成模块220,还用于:
对同一所述优先级的数据流进行随机排序;
或
确定同一所述优先级的每个数据流的激活时间,根据所述激活时间进行排序。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的数据流调度控制方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一实施例所述的数据流调度控制方法。
图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备、动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入/输出模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的数据流调度控制方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任意一实施例所述的数据流调度控制方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的数据流调度控制方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一构思,与上述任意实施例方法相对应的,本申请还提供了一种计算机程序产品,其包括计算机程序指令。在一些实施例中,所述计算机程序指令可以由计算机的一个或多个处理器执行以使得所述计算机和/或所述处理器执行所述的数据流调度控制方法。对应于所述的数据流调度控制方法各实施例中各步骤对应的执行主体,执行相应步骤的处理器可以是属于相应执行主体的。
上述实施例的计算机程序产品用于使所述计算机和/或所述处理器执行如上任一实施例所述的数据流调度控制方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种数据流调度控制方法,其特征在于,包括:
响应于确定至少两条数据流需要进行数据传输,确定每条所述数据流的优先级;
根据所述优先级对所述数据流进行分类,并对同一所述优先级的数据流进行排序,生成调度表;
根据所述调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一所述优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的所述调度控制,以此对所述至少两条数据流进行数据传输。
2.根据权利要求1所述的方法,其特征在于,所述在同一优先级中根据排序依次循环进行调度控制之后,所述方法还包括:
对当前正在进行数据传输的数据流的传输量进行统计;
响应于所述传输量达到预设阈值,停止当前正在进行数据传输的数据流的数据传输;
确定并开始执行下一个进行数据传输的数据流的数据传输。
3.根据权利要求2所述的方法,其特征在于,所述停止当前正在进行数据传输的数据流的数据传输之后,所述方法还包括:
确定所述当前正在进行数据传输的数据流的当前已传输数据量是否达到该数据流的总量;
若是,则在所述调度表中去除所述当前正在进行数据传输的数据流对应的数据。
4.根据权利要求2所述的方法,其特征在于,所述确定并开始执行下一个进行数据传输的数据流的数据传输,包括:
响应于所述当前正在进行数据传输的数据流为同一优先级中排序的最后一个,确定同一优先级中是否还存在未完成全部数据传输的数据流;
若存在,则根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流。
5.根据权利要求4所述的方法,其特征在于,所述确定并开始执行下一个进行数据传输的数据流的数据传输,包括:
响应于被确定为所述下一个进行数据传输的数据流的数据流已完成全部数据传输,则跳过该数据流,并根据排序将下一个数据流确定为所述下一个进行数据传输的数据流。
6.根据权利要求4所述的方法,其特征在于,所述根据同一优先级的排序重新确定第一个数据流为所述下一个进行数据传输的数据流,包括:
在所述调度表的同一优先级中,去除已经完成数据传输的数据流,对该优先级中剩余的数据流重新进行排序,并以此排序确定所述下一个进行数据传输的数据流。
7.根据权利要求4所述的方法,其特征在于,所述确定同一优先级中是否还存在未完成全部数据传输的数据流,还包括:
若不存在,则根据所述调度表确定比当前优先级低一级的优先级,并根据该级优先级的数据流的排序,依次循环进行调度控制。
8.根据权利要求1所述的方法,其特征在于,所述对同一所述优先级的数据流进行排序,包括:
对同一所述优先级的数据流进行随机排序;
或
确定同一所述优先级的每个数据流的激活时间,根据所述激活时间进行排序。
9.一种数据流调度控制装置,其特征在于,包括:
确定模块,用于响应于确定至少两条数据流需要进行数据传输,确定每条所述数据流的优先级;
生成模块,用于根据所述优先级对所述数据流进行分类,并对同一所述优先级的数据流进行排序,生成调度表;
调度模块,用于根据所述调度表,从最高优先级开始,在同一优先级中根据排序依次循环进行调度控制,并在完成任一所述优先级的全部数据流的数据传输之后,进行低一级优先级的数据流的所述调度控制,以此对所述至少两条数据流进行数据传输。
10.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至8任一项所述的方法。
11.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机实现权利要求1至8任一项所述的方法。
12.一种计算机程序产品,其特征在于,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310827366.5A CN117098191A (zh) | 2023-07-06 | 2023-07-06 | 数据流调度控制方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310827366.5A CN117098191A (zh) | 2023-07-06 | 2023-07-06 | 数据流调度控制方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117098191A true CN117098191A (zh) | 2023-11-21 |
Family
ID=88780734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310827366.5A Pending CN117098191A (zh) | 2023-07-06 | 2023-07-06 | 数据流调度控制方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117098191A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413054A (zh) * | 2011-12-15 | 2012-04-11 | 北京星网锐捷网络技术有限公司 | 数据流量控制方法、装置及系统、网关设备、交换机设备 |
WO2019154221A1 (zh) * | 2018-02-07 | 2019-08-15 | 华为技术有限公司 | 发送流数据的方法及数据发送设备 |
CN110290554A (zh) * | 2019-06-28 | 2019-09-27 | 京信通信系统(中国)有限公司 | 数据传输处理方法、装置和通信设备 |
CN114579282A (zh) * | 2022-03-15 | 2022-06-03 | 中国科学院微电子研究所 | 一种任务调度方法及装置 |
WO2022155738A1 (en) * | 2021-01-19 | 2022-07-28 | Dejero Labs Inc. | Systems and methods for push-based data communications |
CN115334010A (zh) * | 2022-08-08 | 2022-11-11 | 浙江大华技术股份有限公司 | 查询信息的处理方法和装置、存储介质及电子装置 |
-
2023
- 2023-07-06 CN CN202310827366.5A patent/CN117098191A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413054A (zh) * | 2011-12-15 | 2012-04-11 | 北京星网锐捷网络技术有限公司 | 数据流量控制方法、装置及系统、网关设备、交换机设备 |
WO2019154221A1 (zh) * | 2018-02-07 | 2019-08-15 | 华为技术有限公司 | 发送流数据的方法及数据发送设备 |
CN110290554A (zh) * | 2019-06-28 | 2019-09-27 | 京信通信系统(中国)有限公司 | 数据传输处理方法、装置和通信设备 |
WO2022155738A1 (en) * | 2021-01-19 | 2022-07-28 | Dejero Labs Inc. | Systems and methods for push-based data communications |
CN114579282A (zh) * | 2022-03-15 | 2022-06-03 | 中国科学院微电子研究所 | 一种任务调度方法及装置 |
CN115334010A (zh) * | 2022-08-08 | 2022-11-11 | 浙江大华技术股份有限公司 | 查询信息的处理方法和装置、存储介质及电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170026713A1 (en) | System and Method for Dynamic Adaptive Video Streaming Using Model Predictive Control | |
CN109617829B (zh) | 一种业务请求数据的处理方法、装置及系统 | |
CN109298936A (zh) | 一种资源调度方法及装置 | |
JP2020501237A (ja) | サーバ負荷平衡方法、機器、及びサーバ装置 | |
CN107147921A (zh) | 基于切片与智能cdn调度的视频播放加速方法和设备 | |
US20090213734A1 (en) | Packet transmission device | |
CN110069341A (zh) | 边缘计算中结合功能按需配置的有依赖关系任务的调度方法 | |
US20220083386A1 (en) | Method and system for neural network execution distribution | |
CN113904991B (zh) | 一种流量整形方法、装置及系统 | |
US8121129B2 (en) | Optimizing throughput of data in a communications network | |
CN114629960B (zh) | 资源调度方法、装置、系统、设备、介质和程序产品 | |
CN112860337A (zh) | 在多接入边缘计算中卸载依赖任务的方法及系统 | |
US20150304227A1 (en) | Queue Management Method and Apparatus | |
CN112600695A (zh) | Ran侧网络切片资源分配方法、装置和电子设备 | |
CN117098191A (zh) | 数据流调度控制方法及相关设备 | |
CN105988725B (zh) | 磁盘i/o调度方法和装置 | |
CN110704182A (zh) | 深度学习的资源调度方法、装置及终端设备 | |
CN111385214A (zh) | 一种流量控制方法、装置及设备 | |
CN113271228B (zh) | 带宽资源调度方法、装置、设备及计算机可读存储介质 | |
CN107733806B (zh) | 一种数据处理方法及装置 | |
CN112156453A (zh) | 实例自适应调整方法、装置、计算机可读存储介质及设备 | |
CN110996398A (zh) | 一种无线网络资源调度方法及装置 | |
CN114710692B (zh) | 多媒体文件处理方法和装置 | |
CN114721829A (zh) | 一种协程栈资源配置方法、装置、设备和存储介质 | |
CN117042150A (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 |