一种数据传输方法、装置、电子设备及存储介质转让专利

申请号 : CN202011508319.7

文献号 : CN112616168B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈涛邢省委席磊磊朱开发关欣赟刘伟峰

申请人 : 深圳市微网力合信息技术有限公司

摘要 :

本发明提供的一种数据传输方法、装置、电子设备及存储介质,在接收到数据包后先对数据包进行拆分,得到多个子数据包,针对任一目标子数据包,确定目标子数据包对应的目标网络接口,并利用目标网络接口对应的目标路由转发路径对目标子数据包进行传输,在传输过程中确定目标路由转发路径的网络质量信息,在网络质量信息不满足预设要求时,及时进行网络接口的切换,保证了数据的传输不被中断。本方案以子数据包为粒度进行传输,不同的子数据包可以采用不同的网络接口进行传输,即使在传输过程中部分网络接口出现问题,也不会出现整个数据传输中断的问题,解决了目前以数据包为粒度进行传输时,存在的由于网络切换导致的数据传输中断的问题。

权利要求 :

1.一种数据传输方法,其特征在于,包括:接收到数据包后,对数据包进行拆分得到多个子数据包;

针对任一目标子数据包,确定目标子数据包对应的目标网络接口;

通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输;

确定所述目标路由转发路径的网络质量信息;

若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息;

从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口;

利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输;

确定目标子数据包对应的目标网络接口,包括:确定当前时刻可用的网络接口为传输接口;

确定传输接口的数量;

根据预设的权重分配策略,确定与所述数量对应的权重分配方案;

根据所述权重分配方案确定各传输接口的传输权重;

根据各传输接口的传输权重,对所述多个子数据包进行分组,每一个分组对应一个传输接口;

确定所述目标子数据所属的分组对应的网络接口为目标网络接口;

根据所述权重分配方案确定各传输接口的传输权重,包括:确定各传输接口对应的优先级;

按照优先级由高到低的顺序对传输接口进行排序,并为各传输接口设置顺序标记;

针对任一传输接口,确定权重分配方案与该传输接口的顺序标记对应的传输权重,作为该传输接口的传输权重。

2.根据权利要求1所述的方法,其特征在于,对数据包进行拆分得到多个子数据包,包括:

确定所述数据包对应的数据源标识;

根据预设的数据拆分策略,确定与所述数据源标识对应的目标数据拆分规则;

利用所述目标数据拆分规则对所述数据包进行拆分,得到多个子数据包。

3.根据权利要求1所述的方法,其特征在于,从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口,包括:确定当前时刻可用的网络接口中网络质量信息符合预设要求的网络接口作为备选网络接口;

从备选网络接口中选取网络质量信息最优的,作为替换网络接口。

4.根据权利要求1所述的方法,其特征在于,路由转发路径对应的网络质量信息,通过下述方式确定:

获取路由转发路径的传输速率和传输带宽;

根据所述传输速率和所述传输带宽确定该路由转发路径对应的网络质量信息。

5.一种数据传输装置,其特征在于,包括:拆分模块,用于接收到数据包后,对数据包进行拆分得到多个子数据包;

接口确定模块,用于针对任一目标子数据包,确定目标子数据包对应的目标网络接口;

传输模块,用于通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输;

第一网络质量确定模块,用于确定所述目标路由转发路径的网络质量信息;

第二网络质量确定模块,用于若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息;

替换接口确定模块,用于从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口;

所述传输模块,还用于利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输;

所述接口确定模块具体用于:确定当前时刻可用的网络接口为传输接口;

确定传输接口的数量;

根据预设的权重分配策略,确定与所述数量对应的权重分配方案;

根据所述权重分配方案确定各传输接口的传输权重;

根据各传输接口的传输权重,对所述多个子数据包进行分组,每一个分组对应一个传输接口;

确定所述目标子数据所属的分组对应的网络接口为目标网络接口;

根据所述权重分配方案确定各传输接口的传输权重,包括:确定各传输接口对应的优先级;

按照优先级由高到低的顺序对传输接口进行排序,并为各传输接口设置顺序标记;

针对任一传输接口,确定权重分配方案与该传输接口的顺序标记对应的传输权重,作为该传输接口的传输权重。

6.一种电子设备,其特征在于,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的数据传输方法程序,以实现权利要求1‑4任一所述的数据传输方法。

7.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1‑4任一所述的数据传输方法。

说明书 :

一种数据传输方法、装置、电子设备及存储介质

技术领域

[0001] 本发明涉及移动通信技术领域,尤其涉及种数据传输方法、装置、电子设备及存储介质。

背景技术

[0002] 随着互联网信息技术的快速发展,WiFi 6(WirelessFidelity6,第6代无线技术)应运而生,WiFi6相比较WiFi5,能够提供更快的数据传输速度、实现更低的延时、支持更多
设备的同时接入并解决多设备连接产生的拥堵情况。
[0003] 然而,虽然WiFi6在传输速度等方面得到了大幅提升,但是仍然存在传输范围有限的问题,距离WiFi网络点越近,信号越好,距离WiFi网络点越远,信号波动越大,甚至会导致
信号中断。因此未来移动网络仍将是多种无线网络共存的异构形态,例如WiFi6与5G(第五
代移动通信技术,)共存。
[0004] 目前,支持多种通信模式,配置有多个网络接口的终端已经越来越普及了,例如支持WiFi和蜂窝网络的路由器、智能手机等终端。这些具有多个网络端口的终端可以在不同
的时刻连接不同的网络,进行数据传输。但是现有技术在对多个网络接口进行智能控制时,
通常是预先设置网络接口的优先级,在多个网络接口可用的情况下,优先使用优先级别高
的一个网络接口进行数据传输,只有在优先级别高的网络接口关闭或不可用时,才会切换
至下一优先级别的网络接口进行数据传输,即每次只使用一个网络接口进行数据传输,这
就导致在网络接口切换过程中会出现网络中断的问题,无法实现无缝切换,影响用户体验。

发明内容

[0005] 为了解决目前不同的网络不能无缝切换导致数据传输中断的技术问题,本发明提供了一种数据传输方法、装置、电子设备及存储介质。
[0006] 第一方面,本发明实施例提供了一种数据传输方法,包括:
[0007] 接收到数据包后,对数据包进行拆分得到多个子数据包;
[0008] 针对任一目标子数据包,确定目标子数据包对应的目标网络接口;
[0009] 通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输;
[0010] 确定所述目标路由转发路径的网络质量信息;
[0011] 若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息;
[0012] 从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口;
[0013] 利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输。
[0014] 作为一种可能的实现方式,确定目标子数据包对应的目标网络接口,包括:
[0015] 确定当前时刻可用的网络接口为传输接口;
[0016] 确定传输接口的数量;
[0017] 根据预设的权重分配策略,确定与所述数量对应的权重分配方案;
[0018] 根据所述权重分配方案确定各传输接口的传输权重;
[0019] 根据各传输接口的传输权重,对所述多个子数据包进行分组,每一个分组对应一个传输接口;
[0020] 确定所述目标子数据所属的分组对应的网络接口为目标网络接口。
[0021] 作为一种可能的实现方式,根据所述权重分配方案确定各传输接口的传输权重,包括:
[0022] 确定各传输接口对应的优先级;
[0023] 按照优先级由高到低的顺序对传输接口进行排序,并为各传输接口设置顺序标记;
[0024] 针对任一传输接口,确定权重分配方案与该传输接口的顺序标记对应的传输权重,作为该传输接口的传输权重。
[0025] 作为一种可能的实现方式,对数据包进行拆分得到多个子数据包,包括:
[0026] 确定所述数据包对应的数据源标识;
[0027] 根据预设的数据拆分策略,确定与所述数据源标识对应的目标数据拆分规则;
[0028] 利用所述目标数据拆分规则对所述数据包进行拆分,得到多个子数据包。
[0029] 作为一种可能的实现方式,从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口,包括:
[0030] 确定当前时刻可用的网络接口中网络质量信息符合预设要求的网络接口作为备选网络接口;
[0031] 从备选网络接口中选取网络质量信息最优的,作为替换网络接口。
[0032] 作为一种可能的实现方式,路由转发路径对应的网络质量信息,通过下述方式确定:
[0033] 获取路由转发路径的传输速率和传输带宽;
[0034] 根据所述传输速率和所述传输带宽确定该路由转发路径对应的网络质量信息。
[0035] 第二方面,本发明实施例还提供了一种数据传输装置,包括:
[0036] 拆分模块,用于接收到数据包后,对数据包进行拆分得到多个子数据包;
[0037] 接口确定模块,用于针对任一目标子数据包,确定目标子数据包对应的目标网络接口;
[0038] 传输模块,用于通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输;
[0039] 第一网络质量确定模块,用于确定所述目标路由转发路径的网络质量信息;
[0040] 第二网络质量确定模块,用于若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息;
[0041] 替换接口确定模块,用于从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口;
[0042] 所述传输模块,还用于利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输。
[0043] 作为一种可能的实现方式,所述接口确定模块具体用于:
[0044] 确定当前时刻可用的网络接口为传输接口;
[0045] 确定传输接口的数量;
[0046] 根据预设的权重分配策略,确定与所述数量对应的权重分配方案;
[0047] 根据所述权重分配方案确定各传输接口的传输权重;
[0048] 根据各传输接口的传输权重,对所述多个子数据包进行分组,每一个分组对应一个传输接口;
[0049] 确定所述目标子数据所属的分组对应的网络接口为目标网络接口。
[0050] 第三方面,本发明实施例还提供了一种电子设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的数据传输方法程序,以实现第一方面所述的数据传输方
法。
[0051] 第四方面,本发明实施例还提供了一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面所述的
数据传输方法。
[0052] 本发明实施例提供的上述技术方案与现有技术相比具有如下优点:
[0053] 本发明实施例提供的一种数据传输方法,在接收到数据包后先对数据包进行拆分,得到多个子数据包,针对任一目标子数据包,根据预设的数据传输策略确定目标子数据
包对应的目标网络接口,并利用目标网络接口对应的目标路由转发路径对目标子数据包进
行传输,在传输过程中确定目标路由转发路径的网络质量信息,在网络质量信息不满足预
设要求时,及时进行网络接口的切换,保证了数据的传输不被中断。本方案将数据包进行拆
分,并以子数据包为粒度进行传输,不同的子数据包可以采用不同的网络接口进行传输,即
使在传输过程中部分网络接口出现问题,也不会出现整个数据传输中断的问题,解决了目
前以数据包为粒度进行传输时,存在的由于网络切换导致的数据传输中断的问题。
[0054] 进一步的,通过在数据传输过程中监控目标路由转发路径的网络质量信息,在网络质量信息不满足预设要求时,及时对路由转发路径进行切换,保证了数据传输不被中断。

附图说明

[0055] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
[0056] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而
言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0057] 图1为本发明实施例提供的一种数据传输方法的流程图;
[0058] 图2为本发明实施例提供的一种数据包拆分方法的流程图;
[0059] 图3为本发明实施例提供的一种目标网络接口确定方法的流程图;
[0060] 图4为本发明实施例提供的一种数据传输装置的框图;
[0061] 图5为本发明实施例提供的一种电子设备的示意图。

具体实施方式

[0062] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人
员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0063] 图1为本发明实施例提供的一种数据传输方法的流程图,该方法可以应用于支持多种通信模式(例如支持WiFi6、5G、以太网等),配置有多个网络接口的终端,包括但不限于
路由器、智能手机、笔记本电脑、交换机等,如图1所示,该方法可以包括如下步骤:
[0064] S11.接收到数据包后,对数据包进行拆分得到多个子数据包。
[0065] 本实施例应用于终端,数据包可以是外部设备向终端发送的,也可以是终端自身生成的。
[0066] 作为一个可选的实现方式,预先设置一种数据拆分规则,当接收到数据包后,采用此预设的数据拆分规则对数据包进行拆分,数据拆分规则可以根据实际需求设置,例如数
据拆分规则可以为将数据包拆分成字节长度不大于预设长度的子数据包,其中预设长度可
以根据实际需求设置,例如100字节。
[0067] 作为另一个可选的实现方式,还可以预先根据实际需求设置多种数据拆分规则,然后针对不同的数据包采用不同的数据拆分规则进行拆分。
[0068] 如图2所示,在接收到数据包后,可以采用下述步骤对数据包进行拆分:
[0069] S21.确定所述数据包对应的数据源标识。
[0070] 作为一个实施例,数据包中携带有该数据包对应的数据源标识,对数据包进行解析进行得到数据包对应的数据源标识。其中,数据包的数据源标识可以是生成该数据包的
应用程序的ID(Identifier,标识符),也可以是该数据包的源端口号,即生成该数据包的IP
(Internet Protocol,网际协议)端口号。
[0071] S22.根据预设的数据拆分策略,确定与所述数据源标识对应的目标数据拆分规则。
[0072] 作为一个实施例,数据拆分策略为用户或开发人员根据实际需求预先设置的,数据拆分策略中可以包含多种数据拆分规则,以及各种数据拆分规则与数据源标识的对应关
系,一个数据拆分规则可以与多个数据源标识对应。在应用中,可以针对各数据拆分规则设
置规则标识,并建立数据拆分规则与规则标识之间的映射关系,创建规则标识与数据源标
识的对应关系表,将对应关系表和数据拆分规则共同组成数据拆分策略。基于此,本步骤
S22在确定出数据包的数据源标识后,可以根据数据源标识从数据拆分策略的对应关系表
中查找与该数据源标识对应的规则标识,然后确定与查找出的规则标识存在映射关系的数
据拆分规则为目标数据拆分规则。其中数据拆分规则以及数据拆分规则与数据源表示的对
应关系,均可以为用户或开发人员根据需求设置的,本实施例不做具体限定。
[0073] S23.利用所述目标数据拆分规则对所述数据包进行拆分,得到多个子数据包。
[0074] 例如,若接收到的数据包对应的目标数据拆分规则为将数据包拆分成字节长度不大于100字节的子数据包,数据包的字节长度为1000字节,则按照目标数据拆分规则对数据
包进行拆分,会得到10个字节长度为100的子数据包。
[0075] S12.针对任一目标子数据包,根据预设的数据传输策略确定目标子数据包对应的目标网络接口。
[0076] 在本实施例中,将数据包拆分成多个子数据包,以子数据包为粒度进行数据传输,分别针对各子数据确定网络接口,从而可以实现针对不同的子数据包采用不同的网络接口
进行数据传输,进而避免了数据包采用一个网络接口在进行网络接口切换时,出现的数据
传输中断的问题。
[0077] 在本实施例中,针对S11中得到的多个子数据包中的任一子数据包均执行S12‑S16的步骤,为便于描述,本实施例针对一个子数据包进行描述,并称该子数据包为目标子数据
包。
[0078] 作为一个实施例,如图3所示,可以采用下述步骤确定目标子数据包对应的目标网络接口:
[0079] S31.确定当前时刻可用的网络接口为传输接口。
[0080] 在执行本实施例之前,终端先在WLAN(Wireless Local Area Networks,无线局域网)网络、5G网络、4G网络、Ethernet和LTE(Long Term Evolution,长期演进)等网络中的任
意多个网络中分别进行网络注册,并从每一个注册网络中获取注册信息。
[0081] 终端还需要实时监控每个网络接口的网络状态。当网络接口开启且网络未断开时,确定该网络接口可用,并确定该网络接口为传输接口。
[0082] S32.确定传输接口的数量。
[0083] S33.根据预设的权重分配策略,确定与所述数量对应的权重分配方案。
[0084] 作为一个实施例,权重分配策略可以为用户或开发人员根据实际需求预先设置的,权重分配策略中包含权重分配方案和权重分配方案与传输接口数量的对应关系。基于
此,在S32确定出传输接口的数量后,本步骤S33即可根据权重分配策略中权重分配方案与
传输接口数量的对应关系,确定出与该数量对应的权重分配方案。
[0085] 作为一个实施例,权重分配方案中包含至少一个传输权重。权重分配方案中的传输权重与传输接口一一对应,因此权重分配方案中包含的传输权重的数量与传输接口的数
量一致,例如,若传输接口的数量为2,则对应的权重分配方案中就包含2个传输权重,若传
输接口的数量为3,则对应的权重分配方案中就包含3个传输权重。
[0086] S34.根据所述权重分配方案确定各传输接口的传输权重。
[0087] 作为一个实施例,权重分配方案中包含的各传输权重分别对应一个顺序标记,该顺序标记用于标识传输权重对应的传输接口在所有传输接口中的优先级顺序,例如下表1
所示,为传输接口的数量为2时,对应的权重分配方案:
[0088]顺序标记 传输权重
1 0.7
2 0.3
[0089] 其中,顺序标记1表示对应的传输接口的优先级顺序排在2个传输接口中的第一位,顺序标记2表示对应的传输接口的优先级顺序排在2个传输接口中的第二位。上表则表
示,在两个传输接口中,优先级最高的(即优先级顺序排在第一位的)传输接口对应的传输
权重为0.7,优先级低的(即优先级顺序排在第二位的)传输接口对应的传输权重为0.3。
[0090] 需要说明的是,表1中所示的传输权重的值只是示例性的,具体的值可以根据需求设定,只要所有的传输权重的加和为1即可,本实施例对此不作具体限定。
[0091] 基于此,根据所述权重分配方案确定各传输接口的传输权重,可以包含如下步骤:
[0092] 步骤1:确定各传输接口对应的优先级。
[0093] 作为一个实施例,用户或开发人员可以根据实际需求预先针对终端中注册的各网络接口设置优先级。
[0094] 步骤2:按照优先级由高到低的顺序对传输接口进行排序,并为各传输接口设置顺序标记。
[0095] 例如传输接口的数量为2个,分别为WLAN网络接口和5G网络接口,其中WLAN网络接口的优先级为第一优先级,5G网络接口的优先级为第二优先级,第一优先级高于第二优先
级,则对传输接口按照优先级由高到低进行排序后,WLAN网络接口排在第一位,5G网络接口
排在第二位,为WLAN网络接口设置顺序标记1,为5G网络接口设置顺序标记2。
[0096] 步骤3:针对任一传输接口,确定权重分配方案与该传输接口的顺序标记对应的传输权重,作为该传输接口的传输权重。
[0097] 以表1所示的权重分配方案为例,可以确定传输接口中,WLAN网络接口对应的传输权重为0.7,5G网络接口对应的传输权重为0.3。
[0098] S35.根据各传输接口的传输权重,对所述多个子数据包进行分组,每一个分组对应一个传输接口。
[0099] 作为一个实施例,传输接口的传输权重表示传输接口可传输的子数据包数量在所有子数据包中的占比,因此可以按下式分别计算各传输接口传输的子数据包的数量:
[0100] Mi=Si×N
[0101] 其中,Mi表示传输接口i传输的子数据包数量,Si表示传输接口i的传输权重,N表示S11中拆分得到的子数据包的总个数。
[0102] 例如,传输接口包括WLAN网络接口和5G网络接口,WLAN网络接口的传输权重为0.7,5G网络接口的传输权重为0.3,S11共拆分得到10个子数据包,则WLAN网络接口可传输7
个子数据包,5G网络接口可传输3个子数据包。
[0103] 计算得到各传输接口可传输的子数据包数量后,对S11中得到的多个子数据包进行分组,一个分组对应一个传输接口,即有几个传输接口就可以分成几组,在进行分组时,
根据传输接口可传输的子数据数量进行分组,例如S11共拆分得到10个子数据包,WLAN网络
接口可传输7个子数据包,5G网络接口可传输3个子数据包,则可以将子数据分成两组,第一
组包含7个子数据包,第二组包含3个子数据包,其中第一组与WLAN网络接口对应,第二组与
5G网络接口对应。
[0104] 作为一个可选的实现方式,在进行分组时,可以随机确定将子数据包划分到任一分组,例如从10个子数据包中随机选取7个组成第一分组,剩下的3个组成第二分组。
[0105] 作为另一可选的实现方式,还可以按照一定的规则将子数据包划分到对应的分组,比如按照子数据包对应的拆分顺序进行分组,例如,共10个子数据包,按照子数据包对
应的拆分时间,将拆分时间靠前的前7个子数据包组成第一分组,将拆分时间靠后的3个子
数据包组成第二分组。
[0106] 当然除了上述两种分组方法,还可以采用其他方式进行分组,本实施例对此不作具体限定。
[0107] S36.确定所述目标子数据所属的分组对应的网络接口为目标网络接口。
[0108] 例如,若目标子数据所属的分组为第一分组,则就确定WLAN网络接口为对应的目标网络接口,若目标子数据所属的分组为第二分组,则确定5G网络接口为对应的目标网络
接口。
[0109] 将多个子数据包分散到不同的网络接口上进行传输,保证了在一个网络接口关闭或网络断开是,数据包还可以通过其他网络接口进行传输,避免了出现传输中断的问题。
[0110] 进一步的,由于网络接口的优先级在设置时通常是根据实际需求设置的,也就是说用户更倾向于使用优先级高的网络接口进行传输,所以根据网络接口的优先级确定对应
的传输权重,进而根据传输权重为网络接口分配子数据包,可以使得数据传输更加符合用
户的需求。
[0111] S13.通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输。
[0112] 终端基于目标网络接口对应的目标路由转发路径建立数据连接,连接建立后通过相应的注册网络对目标子数包进行数据传输,并接收反馈数据。
[0113] 作为一个实施例,终端根据从目标网络接口对应的注册网络中获取的注册信息,生成目标网络接口对应的路由转发路径。例如,在终端根据从WLAN网络中获取的注册信息,
生成与WLAN网络接口对应的路由转发路径(即路由信息),并保存,根据从5G网络中获取的
注册信息,生成与5G网络接口对应的路由转发路径(即路由信息),并保存。
[0114] S14.确定所述目标路由转发路径的网络质量信息。
[0115] 作为一个实施例,在利用目标传输路径传输目标子数据包的过程中,监控目标路由转发路径对应的网络质量信息。便于即使发现目标路由转发路径存在的问题。
[0116] 作为一个实施例,可以通过下述方式确定路由转发路径的网络质量信息:
[0117] 获取路由转发路径的传输速率和传输带宽,根据所述传输速率和所述传输带宽确定路由转发路径对应的网络质量信息。其中获取路由转发路径的传输速率和传输带宽,指
的是获取路由转发路径对应的网络接口所对应的注册网络的传输速率和传输带宽。
[0118] 作为一个实施例,可以根据预设的传输速率和传输带宽对应的权重,采用加权求和的方式计算网络质量分数,将网络质量分数作为路由转发路径对应的网络质量信息。
[0119] 具体的,可以根据下述公式计算路由转发路径对应的网络质量信息:
[0120] z=a*v+(1‑a)*t
[0121] 其中,z表示路由转发路径对应的网络质量分数,即网络质量信息,a表示用户或开发人员根据实际需求预设的传输速率的权重,v表示传输速率,t表示传输带宽。
[0122] S15.若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息。
[0123] 作为一个实施例,预设要求可以为用户或开发人员根据实际需求设定的要求,例如预设要求可以为网络质量信息不低于第一阈值,其中第一阈值为根据实际需求设定的
值。
[0124] 若网络质量信息不符合预设要求则表示当前目标路由转发路径对应的注册网络的网络质量不好,会影响数据的传输。比如WLAN网络,终端在移动过程中,随着与网络点的
之间距离的增大,网络质量也越来越差,且不稳定,终端与WLAN网络之间的连接随时有可能
会断开,这也就导致随时有可能出现数据传输中断的问题。
[0125] 因此,为了保证数据传输不中断,在网络质量信息不符合预设要求时,获取当前时刻可用的其他网络接口对应的网络质量信息,以便根据网络质量信息选取一个可替换的网
络。网络接口对应的网络质量信息也可以根据网络接口对应的注册网络的传输速率和传输
带宽来确定,具体的可参见S14中所述的网络质量信息计算方法,此处不再赘述。
[0126] S16.从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口。
[0127] 作为一个可选的实现方式,可以在网络质量信息符合预设要求的网络接口中随机选取一个作为替换网络接口。
[0128] 作为另一个可选的实现方式,确定当前时刻可用的网络接口中网络质量信息符合预设要求的网络接口作为备选网络接口,从备选网络接口中选取网络质量信息最优的,作
为替换网络接口。
[0129] 在本实施例中,选取网络质量最优的网络接口作为替换网络接口,可以保证有目标网络接口切换至替换网络接口后,数据传输速度较快。
[0130] 作为又一个可选的实现方式,确定当前时刻可用的网络接口中网络质量信息符合预设要求的网络接口作为备选网络接口,从备选网络接口中选取预设的优先级最高的,作
为替换网络接口。
[0131] 在本实施例中,网络接口的优先级通常在设置时,是有一定依据的,例如按照所需费用由低到高进行设置,费用越低,优先级越高,因此选取优先级最高的网络接口作为替换
网络接口,可以保证数据传输所消耗的费用较低。
[0132] S17.利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输。
[0133] 本实施例提供的一种数据传输方法,在接收到数据包后先对数据包进行拆分,得到多个子数据包,针对任一目标子数据包,根据预设的数据传输策略确定目标子数据包对
应的目标网络接口,并利用目标网络接口对应的目标路由转发路径对目标子数据包进行传
输,在传输过程中确定目标路由转发路径的网络质量信息,在网络质量信息不满足预设要
求时,及时进行网络接口的切换,保证了数据的传输不被中断。本方案将数据包进行拆分,
并以子数据包为粒度进行传输,不同的子数据包可以采用不同的网络接口进行传输,即使
在传输过程中部分网络接口出现问题,也不会出现整个数据传输中断的问题,解决了目前
以数据包为粒度进行传输时,存在的由于网络切换导致的数据传输中断的问题。
[0134] 进一步的,通过在数据传输过程中监控目标路由转发路径的网络质量信息,在网络质量信息不满足预设要求时,及时对路由转发路径进行切换,保证了数据传输不被中断。
[0135] 本发明另一实施例,还提供了一种数据传输装置,如图4所示,该装置可以包括:
[0136] 拆分模块401,用于接收到数据包后,对数据包进行拆分得到多个子数据包;
[0137] 接口确定模块402,用于针对任一目标子数据包,确定目标子数据包对应的目标网络接口;
[0138] 传输模块403,用于通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输;
[0139] 第一网络质量确定模块404,用于确定所述目标路由转发路径的网络质量信息;
[0140] 第二网络质量确定模块405,用于若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息;
[0141] 替换接口确定模块406,用于从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口;
[0142] 所述传输模块403,还用于利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输。
[0143] 作为一个实施例,所述接口确定模块402具体用于:
[0144] 确定当前时刻可用的网络接口为传输接口;
[0145] 确定传输接口的数量;
[0146] 根据预设的权重分配策略,确定与所述数量对应的权重分配方案;
[0147] 根据所述权重分配方案确定各传输接口的传输权重;
[0148] 根据各传输接口的传输权重,对所述多个子数据包进行分组,每一个分组对应一个传输接口;
[0149] 确定所述目标子数据所属的分组对应的网络接口为目标网络接口。
[0150] 作为一个实施例,根据所述权重分配方案确定各传输接口的传输权重,包括:
[0151] 确定各传输接口对应的优先级;
[0152] 按照优先级由高到低的顺序对传输接口进行排序,并为各传输接口设置顺序标记;
[0153] 针对任一传输接口,确定权重分配方案与该传输接口的顺序标记对应的传输权重,作为该传输接口的传输权重。
[0154] 作为一个实施例,所述拆分模块401具体用于:
[0155] 确定所述数据包对应的数据源标识;
[0156] 根据预设的数据拆分策略,确定与所述数据源标识对应的目标数据拆分规则;
[0157] 利用所述目标数据拆分规则对所述数据包进行拆分,得到多个子数据包。
[0158] 作为一个实施例,所述替换网络接口确定模块406具体用于:
[0159] 确定当前时刻可用的网络接口中网络质量信息符合预设要求的网络接口作为备选网络接口;
[0160] 从备选网络接口中选取网络质量信息最优的,作为替换网络接口。
[0161] 作为一个实施例,路由转发路径对应的网络质量信息,通过下述方式确定:
[0162] 获取路由转发路径的传输速率和传输带宽;
[0163] 根据所述传输速率和所述传输带宽确定该路由转发路径对应的网络质量信息。
[0164] 在本发明另一实施例中,还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信
总线504完成相互间的通信;
[0165] 存储器503,用于存放计算机程序;
[0166] 处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
[0167] 接收到数据包后,对数据包进行拆分得到多个子数据包;
[0168] 针对任一目标子数据包,确定目标子数据包对应的目标网络接口;
[0169] 通过所述目标网络接口对应的目标路由转发路径对所述目标子数据包进行传输;
[0170] 确定所述目标路由转发路径的网络质量信息;
[0171] 若所述网络质量信息不符合预设要求,则确定当前时刻可用的网络接口对应的网络质量信息;
[0172] 从当前时刻可用的网络接口中选取任意网络质量信息符合预设要求的网络接口作为替换网络接口;
[0173] 利用所述替换网络接口对应的路由转发路径对所述目标子数据包进行传输。
[0174] 上述电子设备提到的通信总线504可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry 
Standard Architecture,简称EISA)总线等。该通信总线504可以分为地址总线、数据总线、
控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型
的总线。
[0175] 通信接口502用于上述电子设备与其他设备之间的通信。
[0176] 存储器503可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non‑volatile memory),例如至少一个磁盘存储器。可选的,存储器
还可以是至少一个位于远离前述处理器的存储装置。
[0177] 上述的处理器501可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器
(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific 
Integrated Circuit,简称ASIC)、现场可编程门阵列(Field‑Programmable Gate Array,
简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0178] 在本发明另一实施例中,还提供了一种存储介质,所述存储介质上存储有数据传输方法程序,所述数据传输方法程序被处理器执行时实现上述任一所述的数据传输方法的
步骤。
[0179] 本发明实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
[0180] 需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之
间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在
涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些
要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设
备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除
在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0181] 以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的
一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明
将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一
致的最宽的范围。