一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据流传输方法、装置、网络设备及存储介质与流程

2022-08-11 08:14:41 来源:中国专利 TAG:


1.本发明涉及网络技术领域,尤其涉及一种数据流传输方法、装置、网络设备及存储介质。


背景技术:

2.目前,当交换机接收到多个数据流时,可以将该多个数据流划分为时间敏感数据流和非时间敏感数据流,由于时间敏感数据流的优先级高于非时间敏感数据流的优先级,因此该交换机可以优先为时间敏感数据流分配队列资源,以优先传输时间敏感数据流。
3.但是,上述方法中,交换机为优先级较高的时间敏感数据流分配的队列资源可能是大量的,但是时间敏感数据流的数量远小于非时间敏感数据流的数量,导致时间敏感数据流无法消耗掉该大量的队列资源,降低了队列资源的使用效率。


技术实现要素:

4.本发明提供一种数据流传输方法、装置、网络设备及存储介质,解决了相关技术中时间敏感数据流无法消耗掉大量的队列资源,降低了队列资源的使用效率的技术问题。
5.第一方面,本发明提供一种数据流传输方法,包括:获取多个数据流的数据信息,其中,一个数据流的数据信息包括该数据流的标识和该数据流的传输路径;根据该多个数据流的标识确定该多个数据流的类型;将至少两个数据流添加至目标队列,该至少两个数据流为该多个数据流中类型相同的数据流,并且第一数据流的传输路径与第二数据流的传输路径之间的相似度大于或等于相似度阈值,该第一数据流为该至少两个数据流中的一个,该第二数据流为该至少两个数据流中除该第一数据流以外的数据流;基于该目标队列发送该至少两个数据流。
6.本发明中,网络设备可以将类型相同并且传输路径较为相似(即相似度大于或等于相似度阈值)的至少两个数据流添加至同一个队列(即目标队列),并且基于该同一个队列传输(或发送)该至少两个数据流,可以利用该同一个队列的队列资源传输该至少两个数据流,能够提升队列资源的使用效率。
7.可选地,上述数据流传输方法还包括:确定第一数量和第二数量,该第一数量为预设交集中包括的链路的数量,该预设交集为第一链路集合与第二链路集合的交集,该第一链路集合为第一传输路径中包括的链路的集合,该第二链路集合为第二传输路径中包括的链路的集合,该第一传输路径为该第一数据流的传输路径,该第二传输路径为该第二数据流的传输路径,该第二数量为预设并集中包括的链路的数量,该预设并集为该第一链路集合与该第二链路集合的并集;将该第一数量与该第二数量之间的比值,确定为该第一传输路径与该第二传输路径之间的相似度。
8.通过上述数据传输方法,网络设备可以根据任意两条传输路径各自包括的链路的集合准确、有效地确定出该任意两条传输路径之间的相似度,进而网络设备可以将传输路径较为相似的数据流分配到同一个队列,能够提高队列资源的使用效率。
9.可选地,一个数据流的数据信息还包括该数据流的数据量大小和该数据流的传输周期,上述数据流传输方法还包括:根据该至少两个数据流中每一个数据流的数据量大小和预设处理速率,确定该每一个数据流对应的处理时长;上述基于该目标队列发送该至少两个数据流,具体包括:当当前数据流的传输周期与下一个数据流的传输周期相同,并且在预设传输周期中的第一时刻发送该当前数据流时,在该预设传输周期中的第二时刻发送该下一个数据流,该当前数据流为该至少两个数据流中的一个,该第一时刻与该第二时刻之间的时间间隔为预设时长,该预设时长为该当前数据流对应的处理时长,该预设传输周期为该下一个数据流对应的m个传输周期中的一个,m≥1。
10.本发明中,网络设备可以方便、快捷地确定出每一个数据流对应的处理时长,并且基于该每一个数据流对应的处理时长,在相应的时刻发送该每一个数据流,可以保证目标队列在同一时刻仅传输一个数据流,增强了数据传输的稳定性。
11.可选地,上述数据流传输方法还包括:在第三时刻发送该下一个数据流,该第三时刻与该第二时刻之间的时间间隔为n个该预设传输周期,n≥1。
12.本发明中,网络设备可以间隔n个预设传输周期发送同一个数据流,可以保证了该同一个数据流在其对应的每个传输周期中稳定传输。
13.可选地,上述将至少两个数据流添加至目标队列,具体包括:确定该至少两个数据流的传输顺序;按照该至少两个数据流的传输顺序,将该至少两个数据流添加至该目标队列。
14.本发明中,网络设备可以按照至少两个数据流的传输顺序将该至少两个数据流添加至目标队列,能够基于一定的规则将该至少两个数据流添加至目标队列。进而,可以保证该至少两个数据流在目该标队列中按照该传输顺序传输。
15.第二方面,本发明提供一种数据流传输装置,包括:包括:获取模块、确定模块、处理模块以及发送模块;该获取模块,用于获取多个数据流的数据信息,其中,一个数据流的数据信息包括该数据流的标识和该数据流的传输路径;该确定模块,用于根据该多个数据流的标识确定该多个数据流的类型;该处理模块,用于将至少两个数据流添加至目标队列,该至少两个数据流为该多个数据流中类型相同的数据流,并且第一数据流的传输路径与第二数据流的传输路径之间的相似度大于或等于相似度阈值,该第一数据流为该至少两个数据流中的一个,该第二数据流为该至少两个数据流中除该第一数据流以外的数据流;该发送模块,用于基于该目标队列发送该至少两个数据流。
16.可选地,该确定模块,还用于确定第一数量和第二数量,该第一数量为预设交集中包括的链路的数量,该预设交集为第一链路集合与第二链路集合的交集,该第一链路集合为第一传输路径中包括的链路的集合,该第二链路集合为第二传输路径中包括的链路的集合,该第一传输路径为该第一数据流的传输路径,该第二传输路径为该第二数据流的传输路径,该第二数量为预设并集中包括的链路的数量,该预设并集为该第一链路集合与该第二链路集合的并集;该确定模块,还用于将该第一数量与该第二数量之间的比值,确定为该第一传输路径与该第二传输路径之间的相似度。
17.可选地,一个数据流的数据信息还包括该数据流的数据量大小和该数据流的传输周期;该处理模块,还用于根据该至少两个数据流中每一个数据流的数据量大小和预设处理速率,确定该每一个数据流对应的处理时长;该发送模块,具体用于当当前数据流的传输
周期与下一个数据流的传输周期相同,并且在预设传输周期中的第一时刻发送该当前数据流时,在该预设传输周期中的第二时刻发送该下一个数据流,该当前数据流为该至少两个数据流中的一个,该第一时刻与该第二时刻之间的时间间隔为预设时长,该预设时长为该当前数据流对应的处理时长,该预设传输周期为该下一个数据流对应的m个传输周期中的一个,m≥1。
18.可选地,该发送模块,还用于在第三时刻发送该下一个数据流,该第三时刻与该第二时刻之间的时间间隔为n个该预设传输周期,n≥1。
19.可选地,该确定模块,具体用于确定该至少两个数据流的传输顺序;该确定模块,具体还用于按照该至少两个数据流的传输顺序,将该至少两个数据流添加至该目标队列。
20.第三方面,本发明提供一种网络设备,包括:处理器和被配置为存储处理器可执行指令的存储器;其中,处理器被配置为执行该指令,以实现上述第一方面中任一种可选地数据流传输方法。
21.第四方面,本发明提供一种计算机可读存储介质,计算机可读存储介质上存储有指令,当该计算机可读存储介质中的指令由网络设备执行时,使得该网络设备能够执行上述第一方面中任一种可选地数据流传输方法。
22.本发明提供的数据流传输方法、装置、网络设备及存储介质,网络设备可以获取多个数据流的数据信息,由于一个数据流的数据信息包括该数据流的标识和该数据流的传输路径,因此该网络设备可以从该多个数据流中确定出类型相同的,并且传输路径之间的相似度大于或等于相似度阈值的至少两个数据流;然后该网络设备可以将该至少两个数据流添加至目标队列,并且基于该目标队列发送该至少两个数据流。本发明中,网络设备可以将类型相同并且传输路径较为相似(即相似度大于或等于相似度阈值)的至少两个数据流添加至同一个队列(即目标队列),并且基于该同一个队列传输(或发送)该至少两个数据流,可以利用该同一个队列的队列资源传输该至少两个数据流,能够提升队列资源的使用效率。
附图说明
23.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
24.图1为本发明实施例提供的数据流传输系统的流程示意图;
25.图2为本发明实施例提供的一种网络设备的内部结构示意图;
26.图3为本发明实施例提供的一种数据流传输方法的流程示意图;
27.图4为本发明实施例提供的另一种数据流传输方法的流程示意图;
28.图5为本发明实施例提供的另一种数据流传输方法的流程示意图;
29.图6为本发明实施例提供的一种目标队列的示意图;
30.图7为本发明实施例提供的另一种数据流传输方法的流程示意图;
31.图8为本发明实施例提供的一种数据流传输示意图;
32.图9为本发明实施例提供的另一种数据流传输方法的流程示意图;
33.图10为本发明实施例提供的一种数据流传输装置的结构示意图;
34.图11为本发明实施例提供的另一种数据流传输装置的结构示意图。
具体实施方式
35.下面将结合附图对本发明实施例提供的数据流传输方法、装置、网络设备及存储介质进行详细的描述。
36.本技术的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序,例如,第一数据流和第二数据流等是用于区别不同的数据流,而不是用于描述数据流的特定顺序。
37.此外,本技术的描述中所提到的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
38.需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
39.本技术中所述“和/或”,包括用两种方法中的任意一种或者同时使用两种方法。
40.在本技术的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
41.基于背景技术中所描述,由于相关技术中,交换机为优先级较高的时间敏感数据流分配的队列资源可能是大量的,但是时间敏感数据流的数量远小于非时间敏感数据流的数量,导致时间敏感数据流无法消耗掉该大量的队列资源,降低了队列资源的使用效率。基于此,本发明实施例提供一种数据流传输方法、装置、网络设备及存储介质,网络设备可以将类型相同并且传输路径较为相似(即相似度大于或等于相似度阈值)的至少两个数据流添加至同一个队列(即目标队列),并且基于该同一个队列传输(或发送)该至少两个数据流,可以利用该同一个队列的队列资源传输该至少两个数据流,能够提升队列资源的使用效率。
42.以下结合附图对本发明实施例提供的数据流传输方法进行示例性说明:
43.本发明实施例提供的数据流传输方法、装置、网络设备及存储介质可以应用于数据流传输系统。如图1所示,该数据流传输系统包括终端101、终端102、终端103、终端104、终端105、终端106、网络设备107、网络设备108、网络设备109、网络设备110、网络设备111、网络设备112以及网络设备113。通常,在实际应用中上述各个设备之间的连接可以是有线连接或无线连接。为了方便直观地表示各个设备之间的连接关系,图1采用实线示意。
44.其中,终端101、终端102以及终端103(可以理解为源节点)分别可以向网络设备107发送数据流,以使得网络设备107可以向网络设备108、网络设备110或者网络设备112发送该数据流,进而该数据流可以发送至终端104、终端105或者终端106(可以理解为目的节点)。本发明实施例中,网络设备107在接收到终端101、终端102以及终端103发送的多个数据流的情况下,可以获取该多个数据流的数据信息,并且从该多个数据流中确定至少两个数据流,以及基于目标队列发送该至少两个数据流。
45.另外,在图1所示的数据流传输系统中还包括链路1、链路2、链路3、链路4、链路5、链路6、链路7、链路8、链路9、链路10、链路11以及链路12。本发明实施例中,上述多个数据流中每一个数据流的数据信息可以包括该数据流的传输路径,具体的,一个数据流的传输路
径可以由该图1中示出的多个链路组成。例如某一个数据流的传输路径可以由链路1、链路2、链路3以及链路4组成,即该数据流可以从终端101发出,分别经由网络设备107、网络设备108以及网络设备109发送至终端104。
46.需要说明的是,上述图1示出的6个终端、7个网络设备以及12条链路为本发明实施例中的一种实例。本发明实施例对上述各个设备的数量以及各个设备之间的链路数量不做具体限定。
47.示例性的,如图2所示,在本发明实施例的一种实现方式中,执行本发明实施例提供的数据流传输方法的网络设备可以包括数据流输入模块、数据流信息采集模块、队列资源分配模块以及数据流输出模块。
48.具体的,该数据流输入模块,用于输入待发送(或待传输)的多个数据流。
49.该数据流信息采集模块,用于采集(或获取)该多个数据流的数据信息,例如该多个数据流中每一个数据流的标识、该每一个数据流的传输路径、该每一个数据流的数据量大小以及该每一个数据流的传输周期等。
50.该队列资源分配模块,用于将该多个数据流添加至相应的队列,也可以理解为将相应队列的队列资源分配给该多个数据流。具体的,该队列资源分配模块可以将至少两个数据流添加至目标队列,即将目标队列的队列资源分配给该至少两个数据流;并且该队列资源分配模块还可以将至少一个数据流(即该多个数据流中除该至少两个数据流以外的数据流)添加至其他队列,即将其他队列的队列资源分配给该至少一个数据流。
51.该数据流输出模块,用于输出(也可以理解为传输或发送)上述多个数据流。具体的,该数据流输出模块可以基于该目标队列发送该至少两个数据流,基于该其他队列发送该至少一个数据流。
52.可选地,上述网络设备还包括数据流记录模块和时隙资源分配模块。
53.该数据流记录模块,用于记录该多个数据流中每一个数据流的接收时间以及该每一个数据流的优先级等。
54.该时隙资源分配模块,用于确定该多个数据流中每一个数据流的发送时间,也可以理解为在该每一个数据流的发送时间为该每一个数据流分配时隙资源。具体的,当该时隙资源分配模块确定在第一时刻发送第一数据流以及在第二时刻发送第二数据流时,该时隙资源分配模块可以在该第一时刻为该第一数据流分配时隙资源,在该第二时刻为该第二数据流分配时隙资源。
55.如图3所示,本发明实施例提供的数据流传输方法可以包括s101-s104。
56.s101、网络设备获取多个数据流的数据信息。
57.其中,一个数据流的数据信息包括该数据流的标识和该数据流的传输路径。
58.应理解,一个数据流的传输路径可以包括一个源节点、一个目的节点、至少一个网络设备以及至少两条链路,该传输路径用于表征该数据流从该源节点传输到该目的节点的路径。具体的,该数据流可以从该源节点发出,经由该至少一个网络设备(也可以理解为中间节点)以及该至少两条链路发送至该目的节点。
59.示例性的,结合上述图1,以上述多个数据流中的某一个数据流(例如第一数据流)为例,该第一数据流的传输路径中包括的源节点可以为终端101,目的节点可以为终端104,该第一数据流的传输路径中包括的至少一个网络设备为网络设备107,网络设备108以及网
络设备109,该第一数据流的传输路径中包括的至少两条链路为链路1、链路2、链路3以及链路4。
60.可选地,本发明实施例中的网络设备可以为具有数据转发功能的设备,例如交换机。
61.s102、网络设备根据该多个数据流的标识确定该多个数据流的类型。
62.可以理解的是,一个标识对应一个类型。对于该多个数据流中任一数据流而言,网络设备在获取到该数据流的标识之后,可以确定该标识对应的类型,并且将该类型确定为该数据流的类型。
63.示例性的,一个数据流的类型可以为时间敏感数据流、音视频数据流或者普通数据流等。
64.s103、网络设备将至少两个数据流添加至目标队列。
65.其中,该至少两个数据流为该多个数据流中类型相同的数据流,并且第一数据流的传输路径与第二数据流的传输路径之间的相似度大于或等于相似度阈值,该第一数据流为该至少两个数据流中的一个,该第二数据流为该至少两个数据流中除该第一数据流以外的数据流。
66.应理解,该第一数据流的传输路径(以下简称第一传输路径)与该第二数据流的传输路径(以下简称第二传输路径)之间的相似度,用于表征该第一传输路径与该第二传输路径之间的相似程度。具体的,当该第一传输路径与该第二传输路径之间的相似度大于或等于该相似度阈值时,说明该第一传输路径与该第二传输路径较为相似;否则,即当该第一传输路径与该第二传输路径之间的相似度小于该相似度阈值时,说明该第一传输路径与该第二传输路径之间具有较大差异。
67.在一种可选的实现方式中,该第一传输路径与该第二传输路径之间的相似度为预设交集中包括的链路的数量与预设并集中包括的链路的数量之间的比值,该预设交集为该第一传输路径中包括的链路的集合(以下简称第一链路集合)与该第二传输路径中包括的链路的集合(以下简称第二链路集合)之间的交集,该预设并集为该第一链路集合与该第二链路集合之间的并集。
68.本发明实施例中,该至少两个数据流中各个数据流的类型相同,也可以理解为各个数据流的标识相同。并且,该至少两个数据流中任意两个数据流的传输路径之间的相似度大于或等于相似度阈值。
69.可以理解的是,网络设备可以从上述多个数据流中确定出该至少两个数据流(该至少两个数据流中各个数据流的类型相同,并且该至少两个数据流中任意两个数据流的传输路径之间的相似度大于相似度阈值)。进而,该网络设备可以将该至少两个数据流添加至该目标队列。
70.本发明实施例中,网络设备将该至少两个数据流添加至目标队列,可以理解为将类型相同的、并且传输路径的相似度大于或等于相似度阈值的至少两个数据流添加至同一个队列,由于相关技术中当交换机需要传输多个时间敏感数据流时,该交换机优先为该多个时间敏感数据流中的每一个时间敏感数据流分配一个队列,占用了过多的队列资源;而本发明实施例中,一个队列可以包括(或存在)至少两个数据流,进而当网络设备基于一个队列发送至少两个数据流时,可提升队列资源的使用效率。
71.示例性的,该目标队列中包括的至少两个数据流中每一个数据流的类型可以是时间敏感数据流,即网络设备可以将至少两个时间敏感数据流添加至同一个队列。
72.可选地,该网络设备中可以存储多个队列,上述目标队列为该多个队列中的一个。在上述网络设备确定将该至少两个数据流添加至目标队列之后,该网络设备还可以确定将至少一个数据流添加至其他队列,该至少一个数据流为上述多个数据流中除该至少两个数据流以外的数据流,该其他队列为该多个队列中除该目标队列以外的队列。
73.s104、网络设备基于目标队列发送至少两个数据流。
74.应理解,该网络设备基于该目标队列发送该至少两个数据流,即为将该目标队列中包括的该至少两个数据流发送(或传输)至与该网络设备存在连接关系的下一个设备(例如下一个网络设备或目的节点)。
75.上述实施例提供的技术方案至少能够带来以下有益效果:由s101-s104可知,网络设备可以获取多个数据流的数据信息,由于一个数据流的数据信息包括该数据流的标识和该数据流的传输路径,因此该网络设备可以从该多个数据流中确定出类型相同的,并且传输路径之间的相似度大于或等于相似度阈值的至少两个数据流;然后该网络设备可以将该至少两个数据流添加至目标队列,并且基于该目标队列发送该至少两个数据流。本发明中,网络设备可以将类型相同并且传输路径较为相似(即相似度大于或等于相似度阈值)的至少两个数据流添加至同一个队列(即目标队列),并且基于该同一个队列传输(或发送)该至少两个数据流,可以利用该同一个队列的队列资源传输该至少两个数据流,能够提升队列资源的使用效率。
76.结合图3,如图4所示,本发明实施例提供的数据流传输方法还包括s105-s106。
77.s105、网络设备确定第一数量和第二数量。
78.其中,该第一数量为预设交集中包括的链路的数量,该预设交集为第一链路集合与第二链路集合的交集,该第一链路集合为第一传输路径中包括的链路的集合,该第二链路集合为第二传输路径中包括的链路的集合,该第一传输路径为上述第一数据流的传输路径,该第二传输路径为上述第二数据流的传输路径,该第二数量为预设并集中包括的链路的数量,该预设并集为该第一链路集合与该第二链路集合的并集。
79.应理解,当网络设备获取到该第一传输路径以及该第二传输路径时,即可以确定出该第一传输路径中包括的每一条链路以及该第二传输路径中包括的每一条链路。然后,该网络设备可以基于该第一传输路径中包括的每一条链路以及该第二传输路径中包括的每一条链路确定出上述第一链路集合以及第二链路集合。然后该网络设备可以基于该第一链路集合以及该第二链路集合确定上述预设交集,具体可以理解为确定出同时存在于该第一链路集合(或该第一传输路径)以及该第二链路集合(或该第二传输路径)的x条链路(x≥0),并且可以将该预设交集中包括的链路的数量(即该x条链路的数量)确定为上述第一数量。
80.本发明实施例中,该第一数量也可以理解为该第一传输路径中包括的、与该第二传输路径中相同的链路的数量(或该第二传输路径中包括的、与该第一传输路径中相同的链路数量)。
81.另外,网络设备还可以基于该第一链路集合以及该第二链路集合确定出上述预设并集,并且将该预设并集中包括的链路的数量确定为上述第二数量。
82.s106、网络设备将第一数量与第二数量之间的比值,确定为第一传输路径与第二传输路径之间的相似度。
83.示例性的,结合图1,假设第一链路集合中包括链路1、链路2、链路3以及链路4、第二链路集合中包括链路5、链路2、链路3以及链路4,则网络设备可以确定预设交集中包括链路2、链路3以及链路4,预设并集中包括链路1、链路2、链路3、链路4以及链路5,该网络设备确定该第一数量为3,该第二数量为5,该第一传输路径与该第二传输路径之间的相似度为0.6。
84.又假设上述相似度阈值为0.5,则网络设备确定该第一传输路径与该第二传输路径之间的相似度大于该相似度阈值。
85.在一种可选的实现方式中,一个数据流的数据信息可能不包括该数据流的传输路径,此时该数据流的数据信息还可以包括该数据流的目的地址。网络设备在获取到该数据流的目的地址之后,可以从该目的地址对应的至少一条传输路径中确定出该数据流的传输路径。具体的,网络设备可以将该至少一条传输路径中负载最小(也可以理解为剩余带宽最大)的传输路径确定为该数据流的传输路径。
86.进而,网络设备在确定出上述多个数据流中每一个数据流的传输路径之后,可以确定出该每一个数据流的传输路径与上述第二其他数据流的传输路径之间的相似度,进而从该多个数据流中确定出上述至少两个数据流。
87.结合图3,如图5所示,在本发明实施例的一种实现方式中,上述s103中将至少两个数据流添加至目标队列,具体可以包括s1031-s1032。
88.s1031、网络设备确定至少两个数据流的传输顺序。
89.在一种可选的实现方式中,网络设备可以根据该至少两个数据流中每一个数据流的优先级和/或该每一个数据流的接收时间,确定该至少两个数据流的传输顺序。其中,一个数据流的接收时间用于表征该网络设备接收到该数据流的时间。
90.在一种情况下,当上述第一数据流的优先级高于第二数据流的优先级时,网络设备可以确定优先传输该第一数据流,即该第二数据流的传输顺序在该第一数据流的传输顺序之后。
91.在另一种情况下,当该第一数据流的接收时间在该第二数据流的接收时间之前时,网络设备可以确定优先传输该第一数据流,即该第二数据流的传输顺序在该第一数据流的传输顺序之后。
92.在另一种情况下,当该第一数据流的优先级与该第二数据流的优先级相同(或者该第一数据流的接收时间与该第二数据流的接收时间相同)时,网络设备可以确定该第一数据流的接收时间是否在该第二数据流的接收时间之前(或者该第一数据流的优先级是否高于该第二数据流的优先级)。当该第一数据流的接收时间在该第二数据流的接收时间之前(或者该第一数据流的优先级高于该第二数据流的优先级)时,网络设备可以确定优先传输该第一数据流,即该第二数据流的传输顺序在该第一数据流的传输顺序之后。
93.s1032、网络设备按照至少两个数据流的传输顺序,将至少两个数据流添加至目标队列。
94.本发明实施例中,网络设备按照该至少两个数据流的传输顺序,将该至少两个数据流添加至目标队列,可以理解为网络设备优先将数据流的传输顺序较为靠前的数据流添
加至目标队列。
95.示例性的,如图6所示,假设上述至少两个数据流中包括3个数据流,具体为数据流1、数据流2以及数据流3,该数据流1的优先级高于该数据流2的优先级,该数据流2的优先级高于该数据流3的优先级。网络设备确定该3个数据流的传输顺序依次为数据流1、数据流2以及数据流3,并且该网络设备按照该3个数据流的传输顺序将该3个数据流添加至该目标队列,具体为网络设备先将该数据流1添加至该目标队列,然后将该数据流2添加至该目标队列,最后将该数据流3添加至该目标队列。
96.在一种可选的实现方式中,网络设备按照上述至少两个数据流的传输顺序将该至少两个数据添加至目标队列之后,还可以按照该传输顺序发送该至少两个数据流。
97.结合图3,如图7所示,在本发明实施例的一种实现方式中,一个数据流的数据信息还包括该数据流的数据量大小和该数据流的传输周期,本发明实施例提供的数据流传输方法还包括s107。
98.s107、网络设备根据至少两个数据流中每一个数据流的数据量大小和预设处理速率,确定每一个数据流对应的处理时长。
99.应理解,对于该每一个数据流而言,该网络设备可以将该每一个数据流的数据量大小与该预设处理速率的比值,确定为该每一个数据流对应的处理时长。一个数据流的数据量大小也可以理解为该数据流中包括的数据的负载。
100.在一种可选的实现方式中,该预设处理速率可以为该网络设备的处理速率。示例性的,该预设处理速率可以为100mbps、1000mbps或者1gbps。
101.继续如图7所示,上述基于目标队列发送至少两个数据流具体包括s1041。
102.s1041、当当前数据流的传输周期与下一个数据流的传输周期相同,并且在预设传输周期中的第一时刻发送当前数据流时,网络设备在预设传输周期中的第二时刻发送下一个数据流。
103.其中,该当前数据流为上述至少两个数据流中的一个,该第一时刻与该第二时刻之间的时间间隔为预设时长,该预设时长为该当前数据流对应的处理时长,该预设传输周期为该下个数据流对应的m个传输周期中的一个,m≥1。
104.应理解,一个数据流的传输周期用于表征每间隔预设时间段传输一次该数据流。例如,假设该数据流的传输周期为100μs(微秒),则表示每间隔100μs传输一次该数据流。
105.可以理解的是,该当前数据流的传输顺序与该下一个数据流的传输顺序相邻,并且该下一个数据流的传输顺序在该当前数据流的传输顺序之后。网络设备在获取到该当前数据流的数据量大小之后,可以结合上述预设处理速率,以确定出该当前数据流对应的处理时长(即该预设时长)。
106.本发明实施例中,下一个数据流对应的m个传输周期用于表征网络设备在该m个传输周期中的每一个传输周期均需要传输该下一个数据流。而对于当前数据流而言,网络设备可以在该当前数据流对应的y个传输周期中的每一个传输周期传输该当前数据流,y≥1。该m个传输周期中的每一个传输周期表征的时间长度(即该下一个数据流的传输周期)与该y个传输周期中的每一个传输周期表征的时间长度(即该当前数据流的传输周期)相同,m与y的大小可能相同也可能不同。
107.当该当前数据流的传输周期与该下一个数据流的传输周期相同时,说明在该当前
数据流的传输周期(或该下一个数据流的传输周期)表征的某一个预设时间段内(例如预设传输周期),网络设备应当传输(或发送)该当前数据流以及该下一个数据流。并且该当前数据流的传输时刻(即上述第一时刻)与该下一个数据流的传输时刻(即上述第二时刻)之间可以间隔该当前数据流对应的处理时长,具体为网络设备在该第一时刻发送该当前数据流,并且在该第一时刻之后、与该第一时刻间隔上述预设时长的第二时刻发送该下一个数据流。
108.可选地,该预设时长也可以理解为该第二时刻相对于该第一时刻的时间偏移量。
109.示例性的,如图8所示,假设上述至少两个数据流中包括数据流1、数据流2以及数据流3,该数据流1的数据量大小为3000字节,该数据流1的传输周期为200μs,该数据流2的数据量大小为1500字节,该数据流2的传输周期为100μs,该数据流3的数据量大小为1500字节,该数据流3的传输周期为100μs。又假设上述预设处理速率为1000mbps,则网络设备确定该数据流1对应的处理时长为24μs,该数据流2对应的处理时长为12μs,该数据流3对应的处理时长为12μs。
110.假设图8中示出的传输周期1、传输周期2以及传输周期3属于上述m个传输周期,由于该数据流2的传输周期与该数据流3的传输周期相同(即均为100μs),又假设网络设备确定在该传输周期1中的t1时刻发送该数据流2,则网络设备确定在该传输周期1中的t2时刻发送该数据流3,该t1时刻与该t2时刻之间的时间间隔为该数据流2对应的处理时长(即12μs)。同理,当网络设备确定在该传输周期2中的t3时刻发送该数据流2时(或者确定在该传输周期3中的t6时刻发送该数据流2时),该网络设备确定在该传输周期2中的t4时刻发送该数据流3(或者确定在该传输周期3中的t7时刻发送该数据流3),具体的,该t3时刻与该t4时刻之间的时间间隔(或者该t6时刻与该t7时刻之间的时间间隔)也为该数据流2对应的处理时长(即12μs)。
111.在一种可选的实现方式中,上述至少两个数据流中各个数据流的传输周期也可能不相同。当该各个数据流的传输周期不相同时,网络设备可以确定该至少两个数据流中各个数据流对应的传输超周期,该传输超周期可以为该至少两个数据流中各个数据流的传输周期的最小整数倍。
112.示例性的,结合上述图8中的示例,图8中示出的传输超周期1即为上述3个数据流对应的传输超周期,该传输超周期1表征的时间长度为200μs。应理解,由于该传输超周期1表征的时间长度与数据流1的传输周期相同,并且该传输超周期1表征的时间长度为数据流2(或数据流3)的传输周期的2倍,因此网络设备可以确定在数据流1对应的1个传输超周期(例如传输超周期1)中发送1次数据流1,具体可以在该传输周期1中发送该数据流1,在该传输周期2中不发送该数据流1。另外,由于上述传输周期3属于该传输超周期1对应的下一个传输超周期(该下一个传输超周期在图8中未完整示出)表征的时间区间内,因此网络设备还可以在该传输周期3中发送该数据流1。
113.又假设,该数据流1为上述至少两个数据流中的第一个数据流(也可以理解为需要第一个从该网络设备中发出的数据流),则网络设备可以确定在该传输周期1中的t0时刻(也可以理解为该传输周期1中的第一个时刻)发送该数据流1,该t0时刻与上述t1时刻之间的时间间隔为该数据流1对应的处理时长(即24μs)。同理,网络设备还可以确定在该传输周期3中的t5时刻(即该传输周期3中的第一个时刻)发送该数据流1,该t5时刻与上述t6时刻
之间的时间间隔为该数据流1对应的处理时长(即24μs)。
114.结合图7,如图9所示,本发明实施例提供的数据流传输方法还包括s108。
115.s108、网络设备在第三时刻发送下一个数据流。
116.其中,该第三时刻与上述第二时刻之间的时间间隔为n个上述预设传输周期,n≥1。
117.结合上述实施例的描述,应理解,一个数据流的传输周期用于表征每间隔预设时间段传输一次该数据流,该预设传输周期为该下一个数据流对应的m个传输周期中的一个,网络设备可以确定在该m个传输周期中的每一个传输周期均传输该下一个数据流。
118.可以理解的是,该预设时间段为该数据流的传输周期表征的时间长度,即每间隔该时间长度传输一次该数据流。当网络设备在该第二时刻发送该下一个数据流之后,网络设备可以确定每间隔该下一个数据流的传输周期表征的时间长度发送一次该下一个数据流。具体的,当该第二时刻为第一传输周期(该第一传输周期为该m个传输周期中的一个)中的某一个时刻时,网络设备可以确定该第三时刻为该m个传输周期中除该第一传输周期以外的一个传输周期中的某一个时刻,即该第三时刻与该第二时刻之间的时间间隔为n个预设传输周期,也可以理解为n个该下一个数据流的传输周期。
119.示例性的,结合上述图8中的示例,当网络设备确定在上述传输周期1中的t2时刻发送数据流3时,网络设备确定在上述传输周期2中的t4时刻(以及在上述传输周期3中的t7时刻)发送该数据流3。该t2时刻与该t4时刻之间的时间间隔为1个预设传输周期(具体为数据流3的传输周期)表征的时间长度(即100μs),该t2时刻与该t7时刻之间的时间间隔为2个预设传输周期(即数据流3的传输周期)表征的时间长度(即200μs)。
120.在一种可选的实现方式中,网络设备还可以确定在第四时刻发送上述当前数据流。具体的,该第四时刻与上述第一时刻之间的时间间隔可以为至少一个该当前数据流的传输周期。
121.在本发明实施例的一种实现方式中,网络设备可以确定上述第一时刻与第三时刻之间的时间间隔(以下简称目标时长)满足下述公式:
[0122][0123]
其中,t'表示该目标时长,n表示该第三时刻与上述第二时刻之间间隔的预设传输周期的数量,t表示上述下一个数据流的传输周期,表示上述预设时长。
[0124]
应理解,由于该第二时刻与该第一时刻属于同一个预设传输周期,该第三时刻与该第二时刻之间间隔的预设传输周期的数量,也可以理解为该第三时刻与该第一时刻之间间隔的预设传输周期的数量,具体为上述s108中的n个预设传输周期。
[0125]
本发明实施例中,对于同一个数据流(例如上述下一个数据流)而言,该下一个数据流对应的两个发送时刻(例如第二时刻和第三时刻)之间的时间间隔为n个该下一个数据流的传输周期。对于不同的数据流(例如该下一个数据流与上述当前数据流)而言,该下一个数据流对应的发送时刻(例如第二时刻或第三时刻)与该当前数据流对应的发送时刻(例如第一时刻)之间的时间间隔为该预设时长,或n个该下一个数据流的传输周期与该预设时长之和。
[0126]
示例性的,结合上述图8中的示例,假设数据流2为当前数据流,数据流3为下一个数据流,t1为上述第一时刻,t2为上述第二时刻,t4为上述第三时刻,则网络设备确定n=1,
该目标时长为112μs。
[0127]
本发明实施例中,网络设备还可以将上述多个数据流中每一个数据流划分为至少一个数据包(或数据帧)。
[0128]
可选地,一个数据包的大小可以为最大传输单元(maximum transmission unit,mtu)。具体的,网络设备可以将某一个数据流(例如第一数据流)的数据量大小与mtu的比值,确定为该第一数据流中包括的数据包的数量。
[0129]
需要说明的是,网络设备可以采用向上取整的方式确定一个数据流中包括的数据包的数量。具体的,若该第一数据流的数据量大小小于mtu,则网络设备确定该第一数据流中包括1个数据包。
[0130]
在本发明实施例的一种实现方式中,网络设备还可以基于数据包的形式实现上述至少两个数据流的添加过程以及发送过程。具体的,网络设备可以将该至少两个数据流中每一个数据流中包括的至少一个数据包添加至上述目标队列,以及基于目标队列发送该每一个数据流中包括的至少一个数据包。
[0131]
需要说明的是,网络设备将该每一个数据流中包括的至少一个数据包添加至目标队列的解释说明,与上述网络设备将该每一个数据流添加至目标队列中的描述是相同或类似的。并且,网络设备基于目标队列发送该每一个数据流中包括的至少一个数据包的解释说明,与上述网络设备基于该目标队列发送该每一个数据流的描述是相同或类似的。此处不再赘述。
[0132]
本发明实施例中,上述至少两个数据流的发送(或传输)过程可以满足下述5个约束条件中的至少一个:
[0133]
约束条件1:对于该至少两个数据流中的某一个数据流(例如第一数据流)而言,该第一数据流在上述第一传输路径中的任一条链路上的结束传输时间在该条链路上的开始传输时间之后。
[0134]
约束条件2:若上述第二数据流的传输顺序在该第一数据流的传输顺序之后,对于上述预设交集中包括的某一条链路而言,该第二数据流在该条链路上的开始传输时间,在该第一数据流在该条链路上的结束传输时间(以及开始传输时间)之后。
[0135]
约束条件3:对于该预设交集中包括的某一条链路而言,在某一时刻(或某一个时间区间内)该条链路上只能传输一个数据流。
[0136]
具体的,在时刻(或该时间区间内)网络设备将该条链路的资源分配给一条唯一的数据流。
[0137]
约束条件4:若第一传输路径中包括的某一条链路(例如第一链路)在第二链路(该第一传输路径中除该第一链路以外的链路)之前,则上述第一数据流在该第二链路上的开始传输时间,在该第一数据流在该第一链路上的结束传输时间(以及开始传输时间)之后。
[0138]
约束条件5:对于上述至少两个数据流中的某一个数据流(例如第一数据流)而言,该第一数据流的端到端传输时延小于或等于该第一数据流的传输周期。
[0139]
其中,该第一数据流的端到端传输时延可以为该第一数据流从源节点传输到目的节点之间的时间差。
[0140]
本发明实施例可以根据上述方法示例对网络设备等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模
块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0141]
在采用对应各个功能划分各个功能模块的情况下,图10示出了上述实施例中所涉及的数据流传输装置的一种可能的结构示意图,如图10所示,数据流传输装置20可以包括:获取模块201、确定模块202、处理模块203以及发送模块204。
[0142]
获取模块201,用于获取多个数据流的数据信息,其中,一个数据流的数据信息包括该数据流的标识和该数据流的传输路径。
[0143]
确定模块202,用于根据该多个数据流的标识确定该多个数据流的类型。
[0144]
处理模块203,用于将至少两个数据流添加至目标队列,该至少两个数据流为该多个数据流中类型相同的数据流,并且第一数据流的传输路径与第二数据流的传输路径之间的相似度大于或等于相似度阈值,该第一数据流为该至少两个数据流中的一个,该第二数据流为该至少两个数据流中除该第一数据流以外的数据流。
[0145]
发送模块204,用于基于所述目标队列发送所述至少两个数据流。
[0146]
可选地,确定模块202,还用于确定第一数量和第二数量,该第一数量为预设交集中包括的链路的数量,该预设交集为第一链路集合与第二链路集合的交集,该第一链路集合为第一传输路径中包括的链路的集合,该第二链路集合为第二传输路径中包括的链路的集合,该第一传输路径为该第一数据流的传输路径,该第二传输路径为该第二数据流的传输路径,该第二数量为预设并集中包括的链路的数量,该预设并集为该第一链路集合与该第二链路集合的并集。
[0147]
确定模块202,还用于将该第一数量与该第二数量之间的比值,确定为该第一传输路径与该第二传输路径之间的相似度。
[0148]
可选地,一个数据流的数据信息还包括该数据流的数据量大小和该数据流的传输周期。
[0149]
处理模块203,还用于根据该至少两个数据流中每一个数据流的数据量大小和预设处理速率,确定该每一个数据流对应的处理时长。
[0150]
发送模块204,具体用于当当前数据流的传输周期与下一个数据流的传输周期相同,并且在预设传输周期中的第一时刻发送该当前数据流时,在该预设传输周期中的第二时刻发送该下一个数据流,该当前数据流为该至少两个数据流中的一个,该第一时刻与该第二时刻之间的时间间隔为预设时长,该预设时长为该当前数据流对应的处理时长,该预设传输周期为该下一个数据流对应的m个传输周期中的一个,m≥1。
[0151]
可选地,发送模块204,还用于在第三时刻发送该下一个数据流,该第三时刻与该第二时刻之间的时间间隔为n个该预设传输周期,n≥1。
[0152]
可选地,确定模块202,具体用于确定该至少两个数据流的传输顺序。
[0153]
确定模块202,具体还用于按照该至少两个数据流的传输顺序,将该至少两个数据流添加至该目标队列。
[0154]
在采用集成的单元的情况下,图11示出了上述实施例中所涉及的数据流传输装置的一种可能的结构示意图。如图11所示,数据流传输装置30可以包括:处理模块301和通信模块302。处理模块301可以用于对数据流传输装置30的动作进行控制管理。通信模块302可
以用于支持数据流传输装置30与其他实体的通信。可选地,如图11所示,该数据流传输装置30还可以包括存储模块303,用于存储数据流传输装置30的程序代码和数据。
[0155]
其中,处理模块301可以是处理器或控制器。通信模块302可以是收发器、收发电路或通信接口。存储模块303可以是存储器。
[0156]
其中,当处理模块301为处理器,通信模块302为收发器,存储模块303为存储器时,处理器、收发器和存储器可以通过总线连接。总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。
[0157]
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0158]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0159]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0160]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0161]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户终端线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
[0162]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献