System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据传输,特别是涉及一种数据传输方法、装置及电子设备。
技术介绍
1、相关技术中,电子设备在对多个任务的多个数据包进行数据传输时,通常会先将该多个任务的多个数据包放入数据传输队列中,进而,数据传输线程便可以按照先进先出的策略,依次对数据传输队列中的各个数据包进行数据传输。
2、在电子设备进行数据传输的过程中,可以向电子设备发送包括指定任务和指定带宽的数据传输指令,在接收到该数据传输指令后,数据传输线程在传输属于指定任务的数据包时,便会利用该数据传输指令中所包括的指定带宽进行数据传输。由于数据传输线程是按照先进先出的策略对数据传输队列中的各个数据包进行处理的,因此数据传输线程在传输属于指定任务的数据包时,数据传输队列中的其它数据包均处于阻塞状态。
3、示例性的,如图1所示,相关技术中,在发送a、b、c三个任务的数据包时,可以先将a、b、c三个任务的数据包放入原始队列中,进而,发送线程便可以按照先进先出的策略,依次发送原始队列中的各个数据包。
4、在接收到包括任务a和指定带宽的数据传输指令后,发送线程在发送a数据包时,便会利用数据传输指令中所包括的指定带宽发送数据包a。由于发送线程是按照先进先出的策略发送原始队列中的各个数据包的,因此,发送线程在发送a数据包时,a任务限速,则会导致后面的b、c数据包也都阻塞在队列中。
5、因此,相关技术中,在电子设备接收到包括指定任务和指定带宽的数据传输指令后,数据传输线程在按照指定带宽传输属于指定任务的数据包时,预设可用总带宽中的除指定带宽
技术实现思路
1、本申请实施例的目的在于提供一种数据传输方法、装置及电子设备,以提高数据传输过程中的带宽利用率和数据传输效率。具体技术方案如下:
2、第一方面,本申请实施例提供了一种数据传输方法,所述方法包括:
3、接收第一数据传输指令;其中,所述第一数据传输指令包括:第一目标任务和第一目标带宽;
4、将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列;其中,所述其他任务为:预设待传输任务中,除所述第一目标任务之外的任务;所述第一辅助带宽不大于预设可用总带宽与所述第一目标带宽的差值;
5、调用为所述第一目标队列分配的第一目标线程,按照所述第一目标带宽传输所述第一目标队列中的数据包,并调用为所述第一辅助队列分配的第一辅助线程,按照所述第一辅助带宽传输所述第一辅助队列中的数据包。
6、可选的,一种具体实现方式中,所述将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列,包括:
7、确定所述第一目标带宽对应的第一目标队列,以及第一辅助带宽对应的第一辅助队列;
8、将当前队列中,属于所述第一目标任务的数据包发送至所述第一目标队列,并将属于其他任务的数据包发送至所述第一辅助队列。
9、可选的,一种具体实现方式中,所述将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列,包括:
10、确定当前队列的队列类型;
11、若所述当前队列为所述第一目标带宽对应的第一目标队列,则创建第一辅助带宽对应的第一辅助队列,并将所述当前队列中,属于其他任务的数据包发送至所述第一辅助队列;
12、若所述当前队列为所述第一辅助带宽对应的第一辅助队列,则创建所述第一目标带宽对应的第一目标队列,并将所述当前队列中,属于所述第一目标任务的数据包发送至所述第一目标队列。
13、可选的,一种具体实现方式中,所述方法还包括:
14、将未发送至所述当前队列的所述第一目标任务的数据包,发送至所述第一目标队列,并将未发送至所述当前队列的所述其他任务的数据包,发送至所述第一辅助队列。
15、可选的,一种具体实现方式中,所述调用为所述第一目标队列分配的第一目标线程,按照所述第一目标带宽传输所述第一目标队列中的数据包,并调用为所述第一辅助队列分配的第一辅助线程,按照所述第一辅助带宽传输所述第一辅助队列中的数据包,包括:
16、调用为所述第一目标队列分配的多个第一目标线程,按照所述第一目标带宽传输所述第一目标队列中的数据包;其中,所述多个第一目标线程的数量是基于所述第一目标任务的数据包的数据量平均值和所述第一目标带宽确定的;
17、调用为所述第一辅助队列分配的多个第一辅助线程,按照所述第一辅助带宽传输所述第一辅助队列中的数据包;其中,所述多个第一辅助线程的数量是基于所述其他任务的数据包的数据量平均值和所述第一辅助带宽确定的。
18、可选的,一种具体实现方式中,所述多个第一目标线程的数量的确定方式,包括:
19、利用第一预设公式,计算所述多个第一目标线程的数量;其中,所述第一预设公式为:
20、
21、其中,m为所述多个第一目标线程的数量,x为所述第一目标带宽,s1为所述第一目标任务的数据包的数据量平均值,t为预设的每传输一个数据包的平均延时;
22、所述多个第一辅助线程的确定方式,包括:
23、利用第二预设公式,计算所述多个第一辅助线程的数量;其中,所述第二预设公式为:
24、
25、其中,n为所述多个第一辅助线程的数量,y为所述第一辅助带宽,y不大于(q-x),所述s2为所述其他任务的数据包的数据量平均值。
26、可选的,一种具体实现方式中,所述第一目标线程的数量和所述第一辅助线程的数量均为多个;
27、若所述第一数据传输指令为限速指令,则所述第一目标队列中的各个数据包按照数据量由小到大的顺序排列,所述第一辅助队列中的各个数据包按照数据量由大到小的顺序排列;
28、若所述第一数据传输指令为增速指令,则所述第一目标队列中的各个数据包按照数据量由大到小的顺序排列,所述第一辅助队列中的各个数据包按照数据量由小到大的顺序排列。
29、可选的,一种具体实现方式中,所述方法还包括:
30、接收第二数据传输指令;其中,所述第二数据传输指令包括:第二目标任务和第二目标带宽;
31、将所述第一目标队列和所述第一辅助队列中属于所述第二目标任务的数据包发送至所述第二目标带宽对应的第二目标队列,并将所述第一目标队列和所述第一辅助队列中属于剩余任务的数据包发送至第二辅助带宽对应的第二辅助队列;其中,所述剩余任务为:除所述第二目标任务之外的任务;所述第二辅助带宽不大于所述预设可用总带宽与所述第二目标带宽的差值;
32、调用为所述第二目标队列分配的第二目标线程,按照所述第二目标带宽传输所述第二目标队列中的数据包,并调用为所述本文档来自技高网...
【技术保护点】
1.一种数据传输方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列,包括:
3.根据权利要求1所述的方法,其特征在于,所述将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列,包括:
4.根据权利要求2-3任一项所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述调用为所述第一目标队列分配的第一目标线程,按照所述第一目标带宽传输所述第一目标队列中的数据包,并调用为所述第一辅助队列分配的第一辅助线程,按照所述第一辅助带宽传输所述第一辅助队列中的数据包,包括:
6.根据权利要求5所述的方法,其特征在于,
7.根据权利要求1所述的方法,其特征在于,所述第一目标线程的数量和所述第一辅助线程的数量均为多个;
8.根据权利要求1所述的方法,其特征在于,
9.一种数据传输装置,其特征在于,所述装置包括:
10.一种电子设备,其特征在于,包括:
...【技术特征摘要】
1.一种数据传输方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列,包括:
3.根据权利要求1所述的方法,其特征在于,所述将所述第一目标任务的数据包发送至所述第一目标带宽对应的第一目标队列,并将其他任务的数据包发送至第一辅助带宽对应的第一辅助队列,包括:
4.根据权利要求2-3任一项所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特...
【专利技术属性】
技术研发人员:唐苗,欧光继,谢慧泓,洪文杰,唐瑞,张慧梅,孙旭,兰明锦,陶焕明,
申请(专利权)人:杭州海康威视数字技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。