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

文档序号:276520 发布日期:2021-11-19 浏览:5次 >En<

阅读说明:本技术 数据传输方法、装置、存储介质及电子设备 (Data transmission method, device, storage medium and electronic equipment ) 是由 岳培锋 许天国 于 2021-07-19 设计创作,主要内容包括:本申请实施例公开了一种数据传输方法、装置、存储介质及电子设备,其中,方法包括:获取当前的通信网络质量和屏幕显示数据,确定针对快速用户数据报协议互联网连接的至少一个数据传输通道;将所述屏幕显示数据通过所述至少一个数据传输通道传输至接收设备。采用本申请实施例,可以提高数据传输的效率。(The embodiment of the application discloses a data transmission method, a data transmission device, a storage medium and electronic equipment, wherein the method comprises the following steps: acquiring the current communication network quality and screen display data, and determining at least one data transmission channel for the fast user datagram protocol internet connection; and transmitting the screen display data to a receiving device through the at least one data transmission channel. By adopting the embodiment of the application, the data transmission efficiency can be improved.)

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

技术领域

本申请涉及计算机技术领域,尤其涉及一种数据传输方法、装置、存储介 质及电子设备。

背景技术

随着互联网特别是移动互联网的快速发展,通过互联网来实时传送音频、 视频、图像等数据成为许多应用场景下的基本需求,如,可以将诸如手机等设 备上的数据发送到另一设备上进行数据显示;为满足这一需求,可使用相关技 术中的数据实时传送技术(如基于传输控制协议的实时传送技术)来保障数据 传输的进行。

发明内容

本申请实施例提供了一种数据传输方法、装置、存储介质及电子设备,所 述技术方案如下:

第一方面,本申请实施例提供了一种数据传输方法,所述方法包括:

获取当前的屏幕显示数据,确定针对快速用户数据报协议互联网连接的至 少一个数据传输通道;

开启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个 数据传输通道传输至接收设备。

第二方面,本申请实施例提供了一种数据传输装置,所述装置包括:

通道确定模块,用于获取当前的屏幕显示数据,确定针对快速用户数据报 协议互联网连接的至少一个数据传输通道;

数据传输模块,用于开启所述至少一个数据传输通道,将所述屏幕显示数 据通过所述至少一个数据传输通道传输至接收设备。

第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质 存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。

第四方面,本申请实施例提供一种电子设备,可包括:处理器和存储器; 其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载 并执行上述的方法步骤。

本申请一些实施例提供的技术方案带来的有益效果至少包括:

在本申请一个或多个实施例中,电子设备获取当前的屏幕显示数据,然后 在传输数据前先确定针对快速用户数据报协议互联网连接的至少一个数据传输 通道;再开启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少 一个数据传输通道传输至接收设备。可实现基于实际数据传输环境实时确定相 应数量的数据传输通道进行数据传输,提高了数据传输的效率,避免在数据传 输全过程中采用固定的传输方式(如采用固定的数据传输通道)进行传输造成 的自动化程度低的问题,同时也提升了数据传输的速度。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种数据传输方法的流程示意图;

图2是本申请实施例提供的另一种数据传输方法的流程示意图;

图3是本申请实施例提供的另一种数据传输方法的流程示意图;

图4是本申请实施例提供的另一种数据传输方法的流程示意图;

图5是本申请实施例提供的另一种数据传输方法的流程示意图;

图6是本申请实施例提供的一种数据传输装置的结构示意图;

图7是本申请实施例提供的一种通道确定模块的结构示意图;

图8是本申请实施例提供的一种通道数量确定单元的结构示意图;

图9是本申请实施例提供的另一种数据传输装置的结构示意图;

图10是本申请实施例提供的一种电子设备的结构示意图;

图11是本申请实施例提供的操作系统和用户空间的结构示意图;

图12是图10中安卓操作系统的架构图;

图13是图10中IOS操作系统的架构图;

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是 全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造 性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描 述目的,而不能理解为指示或暗示相对重要性。在本申请的描述中,需要说明 的是,除非另有明确的规定和限定,“包括”和“具有”以及它们任何变形, 意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系 统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出 的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他 步骤或单元。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是 指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种 关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在 B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

下面结合具体的实施例对本申请进行详细说明。

在一个实施例中,如图1所示,特提出了一种数据传输方法,该方法可依 赖于计算机程序实现,可运行于基于冯诺依曼体系的数据传输装置上。该计算 机程序可集成在应用中,也可作为独立的工具类应用运行。所述数据传输装置 可以为电子设备,接收设备和电子设备包括但不限于:个人电脑、平板电脑、 手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它 处理设备等。在不同的网络中终端设备可以叫做不同的名称,例如:用户设备、 接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设 备、用户终端、终端、无线通信设备、用户代理或用户装置、蜂窝电话、无绳 电话、5G网络或未来演进网络中的设备等。

具体的,该数据传输方法包括:

S101:获取当前的屏幕显示数据,确定针对快速用户数据报协议互联网连 接的至少一个数据传输通道;

在实际应用中,不同设备之间可以通过数据传输的手段将其中一个终端的 屏幕中的显示界面的局部或全部显示于另一个具有显示屏幕的终端设备中,其 中,需要进行将显示画面进行显示于其他设备中的终端可称之为投屏设备,接 收投屏设备的投屏画面的终端称之为接收设备。

在本实施方式中,投屏设备可以为移动终端、电脑设备或是其他终端,接 收设备可以为具有通信功能的显示屏、移动终端、电脑设备或其他配置有显示 屏的设备。

在本申请中,电子设备可作为前述投屏设备,将当前待传输的屏幕显示数 据采用本申请涉及的所述数据传输方案发送至接收设备。进一步的,接收设备 可在接收到屏幕显示数据之后,可显示所述屏幕显示数据,本申请的所述数据 传输方法可应用于数据投屏、媒体直播、视频会议等业务场景中。

所述屏幕显示数据为电子设备的屏幕显示区域所显示的内容(全部或部分 内容)所对应的数据。进一步而言,显示区域所显示的内容可以为所有体现在 电子设备的显示屏幕中的内容。进一步而言,显示区域所显示的内容为电子设 备上具有特定含义的显示内容,其“具有特定含义的显示内容”可由用户自定 义设置。例如,当前正在运行的应用程序的窗口中的内容、或后台运行的应用 程序的窗口中的内容等。

所述快速用户数据报协议互联网连接也即QUIC(Quick UDP(User DatagramProtocol,用户数据报协议)InternetConnection,快速UDP互联网连接),QUIC 是一种基于UDP的实现多路复用以及安全性保护的传输协议。发送端(如电子 设备)可采用QUIC连接传输数据,如传输屏幕显示数据,需要先与接收端建 立QUIC连接,然后对待传输的数据进行处理,生成需要基于该QUIC连接传输 的多个QUIC数据包,每个QUIC数据包的包头中均携带有数据包序号,最后将 这些QUIC数据包按照数据包序号从小到大的顺序依次采用建立好的QUIC连接 发送给接收端。在相关技术中,QUIC连接建立时通常预设固定的数据传输通道, 如在传输层设置用于传输多媒体数据(如音视频数据)的传输通道1、和用于传 输指令数据的传输通道2...,采用预先设置固定数量的数据传输通道来对是实时 的业务数据(如屏幕显示数据)进行传输。采用此种方式会存在较大的局限性, 且业务数据传输过程中,业务数据的数据属性通常呈现非线性变化,如在某一 时刻业务数据的数据量剧增等,在实际应用场景下,采用相关技术中的:基于 在QUIC连接建立时的固定数据传输通道进行数据传输,一方面在遇到网络业 务突发情况时(如数据量剧增、网络抖动)会存在网络阻塞、推流卡顿等情况, 而导致数据传输的效率较低。另一方面,在数据传输的过程中维护固定数量的 数据传输通道也会存在维护数据传输通道的设备资源浪费的情况,数据传输的 资源利用率较低。

在本申请中,可通过先实时获取当前的屏幕显示数据,然后再确定针对快 速用户数据报协议互联网连接的至少一个数据传输通道;也就是说,不采用整 个数据传输周期内采用固定的数据传输通道的方式进行,而是根据每个时时间 点的实际应用情况,来确定基于QUIC相应数量的数据传输通道,如A时间点 确定以10个数据传输通道进行传输,B时间点确定以2个数据传输通道进行传 输。基于此保障当前屏幕显示数据传输的进行,提高数据传输的效率。

另外,在本申请,在确定的数据传输通道的数量为多个的情况下,各基于 QUIC的数据传输通道可采用相同或不同的通信方式进行通道寄建立,通信方式 可以是无线数据网络(如5G网络)、局域网、点对点网络、蓝牙网络、紫峰通 信网络等等。

在一种可行的实施方式中,获取当前的屏幕显示数据之后,“确定针对QUIC 连接的至少一个数据传输通道”的方式可以是基于屏幕显示数据的数据属性, 其中数据属性可以用于表征屏幕显示数据的数据信息量、数据应用类型、数据 业务场景等一种或多种的拟合。当前不同的数据属性,确定采用不同数量的数 据传输通道进行针对当前屏幕显示数据的数据传输。

进一步,预先可建立参考数据属性与“参考数量的数据传输通道”的通道 映射关系,参考数据属性可以是上述例举的数据信息量、数据应用类型、数据 业务场景等一种或多种的组合。也就是说不同组合的参考数据属性对应不同“参 考数量的数据传输通道”。其中,前述通道映射关系可以是以通道数量映射集 合、通道数量映射列表、通道数量映射数组等形式进行表征。

在实际应用阶段,只需在获取到当前的屏幕显示数据之后,确定屏幕显示 数据的数据属性,如确定当前的屏幕显示数据的数据信息量。然后基于前述通 道映射关系,检索与“屏幕显示数据的数据属性”相匹配的目标数量的数据传 输通道。

另外,前述“参考数量的数据传输通道”具体含义包括数据传输通道的数 量、各数据传输通道的类型、各数据传输通道的通信方式(如无线网、蓝牙网 络等等)、数据传输通道的标识等通道配置中的一种或多种的拟合,具体可基 于实际应用情况确定。

在一种具体的实施场景中,电子设备可以采用诸如点对点网络和/或局域网 等通信方式来建立与接收设备的快速用户数据报协议互联网连接,也即QUIC。 进一步的,QUIC连接在本申请不限于电子设备与接收设备之间的首次连接,可 以是首次连接之后的第i次连接,i为大于1的整数。

在一种可行的实施方式中,获取当前的屏幕显示数据之后,“确定针对QUIC 连接的至少一个数据传输通道”的方式可以是基于电子设备所支持的通信网络 的通信环境参数,基于通信环境参数确定所支持的通信网络的通信网络质量, 从而基于通信网络质量来确定相应数量的基于QUIC的数据传输通道。

具体的,电子设备可以监测所支持的通信网络的通信环境参数,基于通信 环境参数确定通信网络的通信质量。基于预先建立的参考通信质量与“参考数 量的数据传输通道”的通道映射关系,也就是说不同通信质量对应不同“参考 数量的数据传输通道”。其中,前述通道映射关系可以是以通道数量映射集合、 通道数量映射列表、通道数量映射数组等形式进行表征。

实际应用中,通信环境参数可以是所支持的通信网络的参考信号接收功率(Reference Signal Receiving Power,RSRP)、接收信号码功率(received signal codepower,RSCP)、接收信号的接收码片信号强度和噪声强度的比例(EcIo)/每调制 比特功率和噪声频谱密度的比率(EcNo)/信噪比(Signal-to-Noise Ratio,SNR)/参考 信号接收质量(Reference Signal Receivingquality,RSRQ)、接收信号的误码率(Bit Error Ratio,BER)/误块率(Blockerror Rate,BLER)/数据包差错率(Packet Error Ratio,PER)等参数中的至少一种参数来实现对所支持的通信网络的通信质量评 估,当然也可以通过测量其他的参数来实现对通信质量评估。

可选的,基于通信环境参数确定所支持的通信网络的通信质量可以是:确 定通信质量分,也就是说基于通信环境参数来确定通信质量评分;可以是确定 通信质量评级,也就是说基于通信环境参数来确定通信质量评级。

一种通信质量分/通信质量评级的计算方式可以是对各通信环境参数设置参 考参数特征(如参考指示值、参考指示范围、参考指示距离等),将所采用的 各通信环境参数与其对应的参数特征计算差异特征信息(如差异通信参数值), 根据差异特征信息进行评分,根据差异特征信息进行评分时,可以是设置评分 等级,例如设置三个等级:等级A>等级B>等级C,以上述参数包含两个通信 参数为例进行释义:计算通信环境参数A1与参考指示值A的差异通信值a,当 差异通信值a达到等级B对应的数值时,此时即将等级B对应的分数作为当前 通信质量分。

在实际应用阶段,只需在获取到当前的当前通信质量分之后,然后基于前 述通道映射关系,检索与“通信质量分”相匹配的目标数量的数据传输通道即 可。

S102:开启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至 少一个数据传输通道传输至接收设备。

具体的,在确定待开启的至少一个数据传输通道之后,需要开启所述至少 一个数据传输通道,“开启所述至少一个数据传输通道”的过程可以理解为: 通过数据传输通道的配置,控制QUIC连接对应的数据传输通道为前述确定的 “至少一个数据传输通道”,包括但不限于控制QUIC连接对应的数据传输通 道为确定的数量、控制QUIC连接对应的各数据传输通道为指定类型的数据传 输通道、控制QUIC连接对应的各数据传输通道采用相应的通信方式(如无线 网、蓝牙网络等等)等等,也就是说“开启所述至少一个数据传输通道”的过程是对确定的至少一个数据传输通道的通道配置过程(诸如通道数量配置、通 道类型配置、通道的通信方式配置等),在一些实施方式,若“所述至少一个 数据传输通道”指示的第一通道数量与当前所维护的QUIC连接的第二通道数 量不一致,“开启所述至少一个数据传输通道”的过程可以理解为:将QUIC 连接调整至“所述至少一个数据传输通道”指示的第一通道数量。

具体的,对屏幕显示数据采用“至少一个数据通道”进行数据传输,可以 对屏幕显示数据进行数据封包(可以来理解为对源数据进行数据编码打包), 以形成基于业务数据协议的数据包或数据报文,如针对投屏场景下,可以基于 音视频协议采用诸如RTP(实时传送协议)打包、TS(传输流)打包等方式进 行源负载数据生成,然后对源负载数据(也即屏幕显示数据的源数据)进行封 包。对源负载数据(也即屏幕显示数据的源数据)进行封包时,对数据报文的 头部进行加密,以使目标屏设备能够对数据报文进行校验。。具体地,封包形成的数据报文包括报文标头和源负载数据,报文标头包括封包传输过程中需要 用到的资讯,例如封包大小、来源地址、目的地址、使用的传输协定等资讯; 源负载数据包括实际上欲传输的屏幕显示数据。在封包形成标头时,可对标头 进行加密。通过对标头进行加密,如果传输过程中对数据报文进行了修改,接 收设备通过对标头的验证就能及时发现,有效降低安全风险。

进一步的,在相关技术中,QUIC对每个散装的数据包都进行加密和认证的 保护,并且避免使用前向依赖的处理方法,如密文分组链接模式(Cipher Block Chaining,CBC),这样每个UDP包可以独立地根据初始向量(Initialization Vector, IV)进行加密或认证处理。QUIC采用了两级密钥机制:初始密钥和会话密钥。 初次连接时不加密,并协商初始密钥。初始密钥协商完毕后会马上再协商会话 密钥,这样可以保证密钥的前向安全性,之后可以在通信的过程中就实现对密 钥的更新。接收方意识到有新的密钥要更新时,会尝试用新旧两种密钥对数据 进行解密,直到成功才会正式更新密钥,否则会一直保留旧密钥有效。

在本申请实施例中,电子设备获取当前的屏幕显示数据,然后在传输数据 前先确定针对快速用户数据报协议互联网连接的至少一个数据传输通道;再开 启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个数据传 输通道传输至接收设备。可实现基于实际数据传输环境实时确定相应数量的数 据传输通道进行数据传输,提高了数据传输的效率,避免在数据传输全过程中 采用固定的传输方式(如采用固定的数据传输通道)进行传输造成的自动化程 度低的问题,同时也提升了数据传输的速度。

请参见图2,图2是本申请提出的一种数据传输方法的另一种实施例的流程 示意图。具体的:

S201:获取当前的屏幕显示数据。

具体可参见S101,此处不再赘述。

S202:基于当前的通信网络质量和/或屏幕显示数据,确定针对快速用户数 据报协议互联网连接的传输通道数量。

根据一些实施例中,电子设备可确定所述屏幕显示数据对应的数据属性, 以及确定针对通信网络质量的质量量化参数;

其中数据属性可以用于表征屏幕显示数据的数据信息量、数据应用类型、 数据业务场景等一种或多种的拟合。

可选的,电子设备可仅基于屏幕显示数据对应的数据属性来确定针对快速 用户数据报协议互联网连接的传输通道数量。具体可参见步骤S101。此处不再 赘述。

可选的,电子设备可仅基于确定针对通信网络质量的质量量化参数来确定 针对快速用户数据报协议互联网连接的传输通道数量。质量量化参数可以是通 信质量分/通信质量评级具体可参见步骤S101。此处不再赘述。

可选的,电子设备可基于所述数据属性和质量量化参数共同确定针对快速 用户数据报协议互联网连接的传输通道数量。实际实施中,预先创建“参考数 据属性和参考质量量化参数”与“参考数量的数据通道”的通道映射关系,在 实际应用阶段,只需在获取到当前的数据属性和质量量化参数之后,然后基于 前述通道映射关系,索引出与“屏幕显示数据的数据属性”相匹配的目标数量 的数据传输通道。索引的方式可以是计算“数据属性和质量量化参数”与各组 “参考数据属性和参考质量量化参数”的相似度,选取相似度最高的一组“参 考数据属性和参考质量量化参数”作为匹配结果,从而可以得到指示的目标数量的数据传输通道。这样即可完成“获取与所述数据属性和质量量化参数相匹 配的针对快速用户数据报协议互联网连接的传输通道数量”的步骤。

在一种可行的实施方式中,在本申请中,还可引入神经网络来联合“参考 数据属性和参考质量量化参数”确定针对快速用户数据报协议互联网连接的传 输通道数量。

具体实施中,电子设备可以将获取到的“数据属性和质量量化参数”输入 至训练好的通道数量确定模型中,输出“针对QUIC连接的传输通道数量”。 其中,通过获取实际应用环境中的样本数据(大量包含“参考数据属性和参考 质量量化参数”的数据样本),提取特征信息,并对所述样本数据对应的“针 对QUIC连接的传输通道标定数量”进行数量标注,所述特征信息包含“参考 数据属性和参考质量量化参数”,创建通道数量确定模型。所述通道数量确定 模型可以是使用大量的样本训练出来的,如通道数量确定模型可以是基于卷积 神经网络(Convolutional Neural Network,CNN)模型,深度神经网络 (Deep NeuralNetwork,DNN)模型、循环神经网络(RecurrentNeuralNetworks, RNN)、、嵌入(embedding)模型、梯度提升决策树(Gradient Boosting Decision Tree,GBDT)模型、逻辑回归(LogisticRegression,LR) 模型中的至少一种实现的,基于已经标注数量的样本数据对通道数量确定模型 进行训练,可以得到训练好的通道数量确定模型。

在本申请实施例中,所述通道数量确定模型可以采用引入误差反向传播算 法的隐马尔可夫模型(DNN-HMM模型)创建初始模型,在提取所述样本数据 的特征信息之后,将所述特征信息输入到所述DNN-HMM模型中,所述 DNN-HMM模型的训练过程通常由正向传播和反向传播两部分组成,在正向传 播过程中,输入样本-包含“参考数据属性和参考质量量化参数”的数据样本对 应的特征信息从所述神经网络模型的输入层经过隐层神经元(也称节点)的传 递函数(又称激活函数、转换函数)运算后,传向输出层,其中每一层神经元 状态影响下一层神经元状态,在输出层计算实际输出值-异常信息类型,计算所 述实际输出值与期望输出值的期望误差,基于所述期望误差调整所述 DNN-HMM模型的参数,所述参数包含每一层的权重值和阈值,训练完成后, 生成通道数量确定模型。

S203:确定所述传输通道数量指示的数据传输通道,开启至少一个数据传 输通道。

根据一些实施例中,在确定传输通道数量指示的至少一个数据传输通道之 后,需要开启所述传输通道数量指示的至少一个数据传输通道,“开启所述传输 通道数量指示的数据传输通道”的过程可以理解为:控制QUIC连接对应的数据 传输通道为确定的传输通道数量、控制QUIC连接对应的各数据传输通道为指 定类型的数据传输通道、控制QUIC连接对应的各数据传输通道采用相应的通 信方式(如无线网、蓝牙网络等等)等等,也就是说“开启所述传输通道数量指 示的至少一个数据传输通道”的过程是对确定数量的数据传输通道的通道配置 过程(诸如通道数量配置、通道类型配置、通道的通信方式配置等),在一些实施方式,若所述传输通道数量与当前所维护的QUIC连接的第二通道数量不 一致,“开启所述传输通道数量指示的数据传输通道”的过程可以理解为:将 QUIC连接调整至“所述传输通道数量指示的数据传输通道”。

S204:将所述屏幕显示数据按照数据属性划分为至少一个数据包;

在基于QUIC传输协议的QUIC连接对屏幕显示数据进行传输时,电子设备 可先基于数据属性将屏幕显示数据封包分割成复数个片段数据封包,其中这些 片段数据封包的大小小于QUIC传输协议所规定的最大传输单元。

需要说明的是,本申请中对屏幕显示数据进行数据包再划分用于采用多传 输通道的方式快速对屏幕显示数据进行传输,提高传输效率,可应对复杂网络 环境下的传输情况,使传输更稳定。在本申请中,可设置“参考数据属性与参 考数量的数据包的数据包映射关系”,实际应用中,电子设备在确定屏幕显示 数据的数据属性之后,如确定屏幕显示数据的数据信息量、数据应用类型等, 即可基于“参考数据属性与参考数量的数据包的数据包映射关系”,匹配到数 据属性对应的数据包的目标数量。

其中,所述数据属性包括数据信息量、数据应用类型、数据业务场景中的 至少一种。数据应用类型可理解为屏幕显示数据按照应用类型进行划分的类型。 数据业务场景可理解为屏幕显示数据按照业务场景进行划分的类型,如视听场 景、阅读场景等等。

所述参考数据属性与数据属性相关联,包括但不限于参考数据信息量、参 考数据应用类型、参考数据业务场景。

在本申请中,对屏幕显示数据采用多通道分数据包进行数据传输,分包阶 段优先基于屏幕显示数据的数据属性维度进行分包参考,也就是说整个过程中 仅基于屏幕显示数据本身进行数据分包,然后再进行数据传输通道的划分,这 样可优先保障数据传输的效率。

S205:将各所述数据包分别通过所述至少一个数据传输通道传输至接收设 备。

具体的,电子设备可确定每个所述数据包分别对应的数据传输通道,通过 每个所述数据包对应的数据传输通道将所述数据包传输至接收设备。

在一种可行的实施方式中,电子设备可按照各数据包的数据生成时序依次 确定数据传输通道;电子设备也可采用随机分配的方式为各数据包分配数据传 输通道;电子设备也可按照数据包的数据重要程度为之分配对应优先级的数据 传输通道,也即各数据传输通道根据通道配置的不同可确定一个优先级,数据 重要程度越高的数据包采用相应优先级的数据传输通道进行数据传输,如数据 重要程度为一级,则采用优先级为一级的数据传输通道。

在本申请中,对数据的数据传输通道的划分从数据流维度精确到数据包的 维度,维度进一步细化;通常将经某个数据传输通道传输所有数据包称之为一 条数据流,在相关技术中数据流中的各数据包通常属于同一类型,如均是视频 数据流、文本数据流等等;但是采用前述方式在实际应用中容易因为网络抖动 造成重要数据包的缺失,如某个通道丢包率发送突变,此时容易造成同一类型 数据流中重要数据包的缺失,而导致数据业务的无法正常运行;而在本申请中 为了避免此种情况,对数据进一步细化,精确到数据包的维度,细粒度更高; 经同一数据传输通道的数据流中的数据包通常不为同一类型,而同一类型的数 据流通常采用不同的多个数据传输通道并行传输,这样可提高数据传输的容灾 能力。

可选的,针对独立的数据包分配数据传输通道时,可结合数据包对数据传 输通道的通道传输质量的要求,为当前的数据包确定传输路径,通道传输质量 基于针对数据传输通道的误码率、差错率、误块率、时延等参数中的至少一种 确定。数据包对应的通道传输质量的确定,可基于数据包的包数据属性加权得 到,包数据属性包括但不限于包容量、包应用类型、包业务场景类型等属性参 数中的一种或多种。不同类型的数据参数设置不同的权重因子,这样得到加权 的数值,基于该数据获取对应的“误码率、差错率、误块率、时延等参数”。 也就是说,预先基于不同加权的参考数值设置有关于“误码率、差错率、误块 率、时延等参考数值对应的参数”。

在一种可行实施方式中,可将针对数据包的数据差异度纳入数据传输的参 考,考虑到屏幕数据传输场景,通常连续两个数据包之间存在数据差异度不大 的情况,如连续两帧屏幕数据对应的信息差异度通常不大,也就是说可对信息 差异度大的数据包采用通道传输质量高的数据传输通道。因此,在本申请中, 可结合屏幕数传输场景下两两数据包的数据差异度来确定针对数据包的数据传 输通道。

1、电子设备确定经所述数据传输通道传输的所述数据包的上一历史数据 包,确定所述历史数据包和所述数据包的数据差异度;

示意性的,可基于当前数据包的包头获取到针对该数据包的标识,基于该 标识可确定这一数据包的上一历史数据包,在实际应用中通常仅需获取屏幕显 示数据所划分的第一个数据包的上一历史数据包,第i个(i为大于1的整数) 数据包通常为屏幕显示数据中的某个数据包。

然后确定两两数据包之间的数据差异度,也即数据包和针对该数据包的上 一历史数据包的数据差异度。数据差异度基于两两数据包中的源负载数据计算 数据差异度得到。从而一次确定每个数据包的数据差异度。

2、电子设备基于各所述数据差异度确定每个所述数据包对应的数据传输通 道;

进一步的,可确定各数据传输通道的通道传输质量,通道传输质量可以是 基于误码率、差错率、误块率、时延等参数中的至少一种确定,这样可基于通 道传输质量确定数据传输通道的传输优先级,然后在基于每个数据包的数据差 异度对应传输优先级的数据传输通道即可,数据差异度与传输优先级呈正相关, 数据差异度越高,传输优先级越高。以此来确定每个数据包对应的数据传输通 道。

3、电子设备通过每个所述数据包对应的数据传输通道将所述数据包传输至 接收设备。

在一种具体的实施场景中,电子设备将屏幕显示信息传输至接收设备,由 于两设备常位于防火墙或NAT下,在涉及到屏幕显示信息这类即时通信信息时, 如涉及到针对屏幕显示信息的投屏场景下,为了使电子设备和接收设备之间直 接进行通信而不需中继设备进行中转。就涉及到NAT(网络地址转换)穿透。

首先,电子设备向服务器获取针对接收设备的网络地址转换信息;网络地 址转换信息用于电子设备进行网络地址转换((Network Address Translation, NAT)穿透,网络地址转换信息常包含电子设备与接收设备涉及到的网络协议 信息、通信编码信息、端口信息、地址信息等数据信息;同理在整个过程中, 接收设备同时可向服务器获取针对电子设备的网络地址转换信息。

电子设备基于所述网络地址转换信息建立与接收设备的快速用户数据报协 议互联网连接。

具体实施中,电子设备基于所述网络地址转换信息利用STUN(Simple Traversalof UDP over NATs,NAT的UDP简单穿越)协议建立所述电子设备与第 接收端的QUIC连接。

可以理解的是,电子设备获取网络地址转换信息进行NAT穿透,可获取到 针对接收设备的网络地址,基于该网络地址可以建立该电子设备与接收设备的 NAT路由之间的QUIC连接。同理,接收设备也进行NAT穿透,可以获得电子 设备的网络地址,建立该电子设备与接收设备的NAT路由之间的QUIC连接。

在本申请实施例中,电子设备获取当前的屏幕显示数据,然后在传输数据 前先确定针对快速用户数据报协议互联网连接的至少一个数据传输通道;再开 启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个数据传 输通道传输至接收设备。可实现基于实际数据传输环境实时确定相应数量的数 据传输通道进行数据传输,提高了数据传输的效率,避免在数据传输全过程中 采用固定的传输方式(如采用固定的数据传输通道)进行传输造成的自动化程 度低的问题,同时也提升了数据传输的速度;以及,采用多通道分数据包进行 数据传输可优先保障数据传输的效率,提高数据传输的容灾能力。

请参见图3,图3是本申请提出的一种数据传输方法的另一种实施例的流程 示意图。具体的:

S301:获取当前的屏幕显示数据,确定针对快速用户数据报协议互联网连 接的至少一个数据传输通道;

S302:开启所述至少一个数据传输通道。

S303:将所述屏幕显示数据通过所述至少一个数据传输通道传输至接收设 备。

S301-S303,具体可参见前述实施例的方法步骤,再此不再赘述。

S304:获取各所述数据传输通道对应的数据传输属性。

在一些实施例中,所述数据传输属性是针对数据传输通道当前传输的数据 而言的,可理解为传输的“屏幕显示数据”的数据属性,常见的数据传输属性 包括但不限于数据传输类型、数据传输量、数据业务等级等一种或多种的拟合, 数据传输类型可以是数据的应用类型(如A应用的数据);数据传输量是数据 传输通道某单位时间内所传输的屏幕显示数据的数据总量;数据业务等级是数 据传输通道内传输的数据所属的业务场景的优先级,如视听业务场景下的视听 数据属于一级、阅读业务场景下的文本数据属于三级、金融业务场景下的金融 数据属于二级等等。

具体而言,在电子设备将屏幕显示数据通过所述至少一个数据传输通道传 输至接收设备的过程中,通过获取每个数据传输通道的数据传输属性,从实际 传输环境角度考虑,对各数据传输通道的资源进行智能调度,提升数据传输的 速度。避免采用所有数据传输通道采用固定分配模式进行资源分配导致的资源 分配不灵活的情况。

具体而言,电子设备可以基于所述数据传输属性对所述数据传输通道进行 资源调度处理。

S305:基于所述数据传输属性确定针对所述数据传输通道的资源调度级别, 将所述资源调度级别对应的设备处理资源分配至所述数据传输通道。

所述资源调度级别可以理解为针对电子设备上的设备资源设置的不同等级 的级别,不同的资源调度级别对应不同的设备处理资源,所述设备处理资源主 要是电子设备处理器(CPU、GPU)的计算资源,资源的定义可以是内存大小、 I/O口的数量、通过I/O口关联的计算单元、控制单元等等。数据传输通道分配 的设备处理资源越多,通常数据传输通道的数据传输效率也越高。基于不同的 资源调度级别对相应数据传输通道进行资源调度可在实现动态资源分配,保障 数据传输的处理速度。

具体的,可预先设置参考数据传输属性与参考资源调度级别(如参考级别1、 参考级别2...)的级别映射关系,不同的参考资源调度级别对应不同的参考设备 处理资源;所述级别映射关系可以是采用级别映射表、级别映射集合、级别映 射数组、级别映射链式链等形式进行表征。前述参考数据传输属性与数据传输 属性相关联,级别映射关系中的参考数据传输属性实质可包括多个可反馈“数 据传输属性”参数类型,包括但不限于针对数据传输类型设置的参考数据传输 类型、针对数据传输量设置的参考数据传输量、针对数据业务等级设置的参考 参考业务等级等参数类型中的一种或多种的拟合。另外,上述针对数据传输属 性设置多个参考资源调度级别对应的参考数据传输属性,实质可理解为可以是:针对数据传输属性中的至少一个属性参数设置参数阈值、可以是:针对数据传 输属性中的至少一个属性参数设置参数范围等。

具体的,基于前述“参考数据传输属性与参考资源调度级别的级别映射关 系”在实际应用阶段,电子设备在获取到各所述数据传输通道对应的数据传输 属性,即可基于级别映射关系,检索到数据传输属性对应的资源调度级别。以 此类推,采取前述方式可,可依次确定针对每个所述数据传输通道的资源调度 级别,这样将所述资源调度级别对应的设备处理资源分配至所述数据传输通道。 实现对数据传输过程中:实现多各数据传输通道的精准调节以及智能调节。

在本申请实施例中,电子设备获取当前的屏幕显示数据,然后在传输数据 前先确定针对快速用户数据报协议互联网连接的至少一个数据传输通道;再开 启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个数据传 输通道传输至接收设备。可实现基于实际数据传输环境实时确定相应数量的数 据传输通道进行数据传输,提高了数据传输的效率,避免在数据传输全过程中 采用固定的传输方式(如采用固定的数据传输通道)进行传输造成的自动化程 度低的问题,同时也提升了数据传输的速度;以及,从实际传输环境角度考虑, 对各数据传输通道的资源进行智能调度,提升数据传输的速度。

请参见图4,图4是本申请提出的一种数据传输方法的另一种实施例的流程 示意图。具体的:

S401:获取当前的屏幕显示数据,确定针对快速用户数据报协议互联网连 接的至少一个数据传输通道;

S402:开启所述至少一个数据传输通道。

S403:将所述屏幕显示数据通过所述至少一个数据传输通道传输至接收设 备。

S401-S403,具体可参见前述实施例的方法步骤,再此不再赘述。

S404:监测各所述数据传输通道对应的通道传输质量,基于各所述通道传 输质量确定第一传输通道。

所述第一传输通道可以理解为需要调整通道配置的传输通道,在实际网络 传输环境会存在由于传输通道对应的网络环境不佳、用网用户较多、网络带宽 限制、数据传输信号限制等原因导致某一时间内第一传输通道的数据传输影响 较大,如数据丢包率提升、时延较长。从而影响第一传输通道内数据的正常传 输,降低了数据传输效率。基于此,本申请中,数据传输监测细粒到单个数据 传输通道而非针对某一网络通信方式(通常一种网络通信方式可对应至少一种 数据传输通道)进行,监测灵敏度更高,保障了数据传输的正常进行。

根据一些实施例中,通道传输质量可以是基于误码率、差错率、误块率、 时延等参数中的至少一种通信参数确定,如可针对通道通道传输质量所包含的 至少一种通信参数设置参数阈值,若某一数据传输通道的通信参数的数值不满 足该参数阈值,认为“某一数据传输通道”此时数据传输受阻,将该“某一数 据传输通道”作为第一传输通道;又如可针对通道通道传输质量所包含的至少 一种通信参数设置参数范围,若某一数据传输通道的通信参数的数值未落入该 参数范围,认为“某一数据传输通道”此时数据传输受阻,将该“某一数据传 输通道”作为第一传输通道;等等。

在一些实施方式中,通道传输质量还可以是基于所支持的通信网络的参考 信号接收功率(Reference Signal Receiving Power,RSRP)、接收信号码功率 (receivedsignal code power,RSCP)、接收信号的接收码片信号强度和噪声强度 的比例(EcIo)/每调制比特功率和噪声频谱密度的比率(EcNo)/信噪比 (Signal-to-Noise Ratio,SNR)/参考信号接收质量(Reference Signal Receivingquality,RSRQ)、接收信号的误码率(BitError Ratio,BER)/误块率 (Blockerror Rate,BLER)/数据包差错率(Packet ErrorRatio,PER)等参数中的至少 一种参数来实现对数据传输通道的通道传输质量的评估。

需要说明的是,所述第一传输通道的数量可以是一个也可以是多个,具体 基于实际通信传输环境确定,此处不做具体限定。

S405:对所述第一传输通道进行通道配置调整。

具体的,在确定第一传输通道之后,可对第一传输通道进行通道配置调整, 如调整第一传输通道所采用的网络通信方式;又如调整第一传输通道对应的网 络信道;又如提升基于第一传输通道的信号发射功率等等。

在一种具体的实施场景中,电子设备可采用对第一传输通道的通信工作方 式进行调整的方式来实现通道配置调整。也即执行对所述第一传输通道的通信 工作方式进行通信调整处理的步骤。具体实施如下

1、电子设备可获取针对快速用户数据报协议互联网连接的至少一种网络通 信方式,确定各所述网络通信方式的通信网络质量;

其中,所述网络通信方式与所述第一传输通道当前对应的通信工作方式不 同;

所述网络通信方式包括但不限于无线数据网络(如5G网络)、局域网、点 对点网络、蓝牙网络、紫峰通信网络等方式中的一种或多种的拟合。

具体实施中,通过获取电子设备所支持的各网络通信方式的通信环境参数 来实现对网络通信方式的通信质量评估。

根据一些实施例中,基于通信环境参数确定所支持的网络通信方式的通信 网络质量可以是:确定通信质量分,也就是说基于通信环境参数来确定通信质 量评分;可以是确定通信质量评级,也就是说基于通信环境参数来确定通信质 量评级。

2、根据各所述网络通信方式的通信网络质量,确定目标网络通信方式;

具体的,在确定各网络通信方式的通信网络质量之后,可对各网络通信方 式确定优先级,选取最高优先级指示的目标网络通信方式。

在一种可行的实施方式中,考虑到多种网络通信方式的评估通常较复杂, 为了提升通道调整的准确性,在本申请中,可引入神经网络来联合各网络通信 方式的通信环境参数,来综合确定一种目标网络通信方式。

具体实施中,电子设备可以将获取到的“各网络通信方式的通信环境参数” 输入至训练好的通信方式确定模型中,输出目标网络通信方式。其中,通过获 取实际应用环境中的样本数据(大量包含各网络通信方式的通信环境样本参数 的数据样本),提取特征信息,并对所述样本数据进行网络通信方式标注,创 建通信方式确定模型。所述通信方式确定模型可以是使用大量的样本训练出来 的,如通道数量确定模型可以是基于卷积神经网络(Convolutional Neural Network,CNN)模型,深度神经网络(Deep Neural Network,DNN)模型、循 环神经网络(RecurrentNeuralNetworks,RNN)、、嵌入(embedding)模型、梯度提升决策树(Gradient Boosting Decision Tree,GBDT)模型、逻辑回归(LogisticRegression,LR)模型中的至少一种实现的,基于已经标注网络通信 方式的样本数据对通信方式确定模型进行训练,可以得到训练好的通信方式确 定模型。

3、将所述第一传输通道从所述通信工作方式切换为所述目标网络通信方式

在一种具体的实施场景中,电子设备还可对所述第一数据传输通道的处理 资源进行资源调度处理,也就是说为所述第一数据传输通道提供更多的设备处 理资源,设备处理资源的提供可以是一个渐近的过程,也即增加的设备处理器 资源与时间呈现正相关,并同时检测第一数据传输通道的通道传输质量,当通 道传输质量满足通道传输要求时,通道配置调整结束。

在本申请实施例中,电子设备获取当前的屏幕显示数据,然后在传输数据 前先确定针对快速用户数据报协议互联网连接的至少一个数据传输通道;再开 启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个数据传 输通道传输至接收设备。可实现基于实际数据传输环境实时确定相应数量的数 据传输通道进行数据传输,提高了数据传输的效率,避免在数据传输全过程中 采用固定的传输方式(如采用固定的数据传输通道)进行传输造成的自动化程 度低的问题,同时也提升了数据传输的速度;以及,从实际传输环境角度考虑, 对各数据传输通道的资源进行智能调度,提升数据传输的速度;以及,数据传 输监测细粒到单个数据传输通道而非针对某一网络通信方式进行,监测灵敏度 更高,保障了数据传输的正常进行。

请参见图5,图5是本申请提出的一种数据传输方法的另一种实施例的流程 示意图。具体的:

S501:获取当前的屏幕显示数据,确定针对快速用户数据报协议互联网连 接的至少一个数据传输通道;

S502:开启所述至少一个数据传输通道。

S503:将所述屏幕显示数据通过所述至少一个数据传输通道传输至接收设 备。

S501-S503,具体可参见前述实施例的方法步骤,再此不再赘述。

S504:监测各数据传输通道在传输所述屏幕显示数据时的数据包传输状态;

所述数据包传输状态包括数据包正常状态和数据包丢包状态。

具体的,基于QUIC的数据包传输过程中,针对接收设备而言,接收设备 每接收到一个数据包可向电子设备反馈一个确认包。

数据包丢包状态的确定可以是当确定存在至少一个数据包丢包的情况时, 确定数据包丢包的数据传输通道为数据包丢包状态;

数据包丢包状态的确定可以是丢包率超过QUIC的纠错门限时,可认为当 前数据传输通道为数据包丢包状态。其中,QUIC的纠错门限可以基于用户自定 义设置。

在本申请中,电子设备可设置针对确认包的等待时长阈值,若针对某一数 据包的确认包的等待时长超过等待时长阈值时,确定数据包丢包的数据传输通 道为数据包丢包状态。

进一步的,针对接收设备而言,可基于接收到的数据包的包顺序确定是否 存在数据包发生丢包,通常屏幕显示数据对应的各数据包的包头中封装有包标 识,基于一段时间内接收到的各数据包的包标识,可检测出是否存在某一数据 包存在丢包的情况。当检测到某一数据包存在丢包时可向电子设备反馈丢包信 息。电子设备基于丢包信息可确定丢包包标识对应的数据包以及传输该数据包 的数据传输通道(也即下述第二传输通道)。

例如,在电子设备通过该QUIC连接的各数据传输通道向接收设备传输数 据时,每个QUIC数据包的包头中会可携带有数据包序号,发送端按照数据包 序号从小到大的顺序同步或异步通过QUIC连接的各数据传输通道将数据包发 送出去。当一个QUIC连接传输的数据通过多数据传输通道传输时,例如,数 据包序号为1的数据包采用数据传输通道1传输,数据包序号为2和3的数据 包采用数据传输通道2传输,由于不同数据传输通道的网络环境可能不同,在 相关技术中,基于QUIC连接的至少两个数据传输通道在网络环境(如采用同 一网络通信方式,如均采用移动数据网络)相同的情况下,所述至少两个数据 传输通道可视作为一条传输路径,。

S505:若存在第二传输通道为数据包丢包状态,则确定第二传输通道丢包 的目标数据包;

具体的,电子设备确定存在第二传输通道(第二传输通道的数量可以是多 个)为数据包丢包状态时,则可以获取第二传输通道丢包的目标数据包。在一 种可行的实施方式中,目标数据包可基于已传输的每个数据包的接收设备反馈 的确认包的状态确定。

S506:采用第三传输通道对所述目标数据包进行数据重传。

在一种具体的实施场景中,电子设备可以从各数据传输通道中确定除第二 传输通道之外的第三传输通道,采用第三传输通道对所述目标数据包进行数据 重传;

在本申请中,不采用原丢包的第二传输通道进行重传一方面考虑到丢包概 率较高;另一方面,不扰乱第二传输通道的数据传输时序。而是从已经建立的 数据传输通道中确定一个除第二传输通道之外的第三传输通道。

可选的,第三传输通道可以是电子设备在QUIC连接建立时所预先创建的 备用传输通道,备用传输通常日常不传输数据包,可用于丢包状况下的数据包 的重传。

可选的,第三传输通道可以是电子设备在获取除第二传输通道之外其他数 据传输通道的“传输维度的通道传输质量”和“业务维度的待传输的数据包的 状态参数(如数据量、数据类型等)”之后,选取的最优数据传输通道。其中, 在本申请从已有数据传输通道中不单考虑通道传输质量还考虑各数据传输通道 的针对待传输的数据包的状态参数,综合衡量来确定一个最优数据传输通道。

一种实施方式可以是,从“传输维度的通道传输质量”确定一个传输质量 分,从“业务维度的待传输的数据包的状态参数”确定一个业务负载分,通过 传输质量分和业务负载分实现对数据传输通道的量化(如可对传输质量分和业 务负载分进行加权或加和),得到一个针对数据传输通道的综合评分,然后基 于数据传输通道的综合评分进行排序,取分值最高的最优数据传输通道作为第 三传输通道。

在一种具体的实施场景中,电子设备可不从当前的各数据传输通道中进行, 以避免扰乱原数据传输通道的数据传输时序。进一步的,电子设备可建立与接 收设备的针对快速用户数据报协议互联网连接的第四传输通道,也即重新建立 一个第四传输通道。采用第四传输通道对所述目标数据包进行数据重传。

可选的,为了实现第四传输通道在执行数据重传时兼顾建链时间最短和数 据传输稳定,可基于第二传输通道建立的通道建链信息快速建立第四传输通道, 实际实施过程中可基于“第二传输通道建立的通道建链信息”生成“第四传输 通道的目标建链信息”,节省与接收设备创建新的数据传输通道的时间,目标 建链信息与通道建链信息的差异至少为传输通道的名称。目标建链信息至少采 用与通道建链信息中当前所使用的相同的密钥对,这样可节省与接收设备的建 链信息的协商时间。实现基于原第二传输通道的通道建链信息快速实现第四传 输通道的建立。

可选的,第四传输通道可采用与第二传输通道不同的网络通信方式。

在本申请实施例中,电子设备获取当前的屏幕显示数据,然后在传输数据 前先确定针对快速用户数据报协议互联网连接的至少一个数据传输通道;再开 启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个数据传 输通道传输至接收设备。可实现基于实际数据传输环境实时确定相应数量的数 据传输通道进行数据传输,提高了数据传输的效率,避免在数据传输全过程中 采用固定的传输方式(如采用固定的数据传输通道)进行传输造成的自动化程 度低的问题,同时也提升了数据传输的速度;以及实现了基于多通道数据传输 的数据包重传,提高了数据传输的容灾能力。

下面将结合图6,对本申请实施例提供的数据传输装置进行详细介绍。需要 说明的是,图6所示的数据传输装置,用于执行本申请图1~图5所示实施例的 方法,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未 揭示的,请参照本申请所示的其他实施例。

请参见图6,其示出本申请实施例的数据传输装置的结构示意图。该数据传 输装置1可以通过软件、硬件或者两者的结合实现成为用户终端的全部或一部 分。根据一些实施例,该数据传输装置1包括通道确定模块11和数据传输模块 12,具体用于:

通道确定模块11,用于获取当前的屏幕显示数据,确定针对快速用户数据 报协议互联网连接的至少一个数据传输通道;

数据传输模块12,用于开启所述至少一个数据传输通道,将所述屏幕显示 数据通过所述至少一个数据传输通道传输至接收设备。

可选的,如图7所示,所述通道确定模块11,包括:

通道数量确定单元111,用于基于当前的通信网络质量和/或屏幕显示数据, 确定针对快速用户数据报协议互联网连接的传输通道数量;

传输通道确定单元112,用于所述传输通道数量指示的数据传输通道。

可选的,如图8所示,所述通道数量确定单元111,包括:

属性参数确定子单元1111,用于确定所述屏幕显示数据对应的数据属性, 以及确定针对通信网络质量的质量量化参数;

通道数量确定子单元1112,用于获取与所述数据属性和质量量化参数相匹 配的针对快速用户数据报协议互联网连接的传输通道数量。

可选的,所述数据传输模块12,具体用于:

将所述屏幕显示数据按照数据属性划分为至少一个数据包,将各所述数据 包分别通过所述至少一个数据传输通道传输至接收设备;

其中,所述数据属性包括数据信息量、数据应用类型、数据业务场景中的 至少一种。

可选的,所述数据传输模块12,具体用于:

确定每个所述数据包分别对应的数据传输通道,通过每个所述数据包对应 的数据传输通道将所述数据包传输至接收设备。

可选的,所述数据传输模块12,具体用于:

确定每个所述数据包的上一历史数据包,确定所述历史数据包和所述数据 包的数据差异度;

基于各所述数据差异度确定每个所述数据包对应的数据传输通道;

通过每个所述数据包对应的数据传输通道将所述数据包传输至接收设备。

可选的,如图9所示,所述装置1还包括:

调度模块13,用于获取各所述数据传输通道对应的数据传输属性,基于所 述数据传输属性对所述数据传输通道进行资源调度处理。

可选的,所述调度模块13,具体用于:

获取各所述数据传输通道对应的数据传输属性,所述数据传输属性包括数 据传输类型、数据传输量、数据业务等级中的至少一种;

基于所述数据传输属性确定针对所述数据传输通道的资源调度级别,将所 述资源调度级别对应的设备处理资源分配至所述数据传输通道。

可选的,所述装置1,具体用于:

监测各所述数据传输通道对应的通道传输质量,基于各所述通道传输质量 确定第一传输通道:

对所述第一传输通道进行通道配置调整。

可选的,所述装置1,具体用于:

对所述第一传输通道的通信工作方式进行通信调整处理;和/或,

对所述第一数据传输通道的处理资源进行资源调度处理。

可选的,所述装置1,具体用于:

获取针对快速用户数据报协议互联网连接的至少一种网络通信方式,确定 各所述网络通信方式的通信网络质量;所述网络通信方式与所述第一传输通道 当前对应的通信工作方式不同;

根据各所述网络通信方式的通信网络质量,确定目标网络通信方式;

将所述第一传输通道从所述通信工作方式切换为所述目标网络通信方式。

可选的,所述装置1,具体用于:

监测各数据传输通道在传输所述屏幕显示数据时的数据包传输状态;

若存在第二传输通道为数据包丢包状态,确定第二传输通道丢包的目标数 据包;

采用第三传输通道对所述目标数据包进行数据重传。

可选的,所述装置1,具体用于:

从各数据传输通道中确定除第二传输通道之外的第三传输通道,采用第三 传输通道对所述目标数据包进行数据重传;和/或,

建立与接收设备的针对快速用户数据报协议互联网连接的第四传输通道, 采用第四传输通道对所述目标数据包进行数据重传。

可选的,所述装置1,具体用于:

向电子设备获取针对接收设备的网络地址转换信息;

基于所述网络地址转换信息建立与接收设备的快速用户数据报协议互联网 连接。

需要说明的是,上述实施例提供的数据传输装置在执行数据传输方法时, 仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上 述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模 块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输 装置与数据传输方法实施例属于同一构思,其体现实现过程详见方法实施例, 这里不再赘述。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存 储有多条指令,所述指令适于由处理器加载并执行如上述图1~图5所示实施例 的所述数据传输方法,具体执行过程可以参见图1~图5所示实施例的具体说明, 在此不进行赘述。

本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条 指令,所述至少一条指令由所述处理器加载并执行如上述图1~图5所示实施例 的所述数据传输方法,具体执行过程可以参见图1~图5所示实施例的具体说明, 在此不进行赘述。

请参考图10,其示出了本申请一个示例性实施例提供的电子设备的结构方 框图。本申请中的电子设备可以包括一个或多个如下部件:处理器110、存储器 120、输入装置130、输出装置140和总线150。处理器110、存储器120、输入 装置130和输出装置140之间可以通过总线150连接。

处理器110可以包括一个或者多个处理核心。处理器110利用各种接口和 线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器120内的 指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电 子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处 理(digital signal processing,DSP)、现场可编程门阵列(field-programmable gate array,FPGA)、可编程逻辑阵列(programmablelogic Array,PLA)中的至少 一种硬件形式来实现。处理器110可集成中央处理器(centralprocessing unit, CPU)、图像处理器(graphics processing unit,GPU)和调制解调器等中的一种 或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU 用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的 是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进 行实现。

存储器120可以包括随机存储器(random Access Memory,RAM),也可 以包括只读存储器(read-only memory,ROM)。可选地,该存储器120包括非 瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存 储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括 存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、 用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、 用于实现下述各个方法实施例的指令等,该操作系统可以是安卓(Android)系 统,包括基于Android系统深度开发的系统、苹果公司开发的IOS系统,包括基于IOS系统深度开发的系统或其它系统。存储数据区还可以存储电子设备在 使用中所创建的数据比如电话本、音视频数据、聊天记录数据,等。

参见图11所示,存储器120可分为操作系统空间和用户空间,操作系统即 运行于操作系统空间,原生及第三方应用程序即运行于用户空间。为了保证不 同第三方应用程序均能够达到较好的运行效果,操作系统针对不同第三方应用 程序为其分配相应的系统资源。然而,同一第三方应用程序中不同应用场景对 系统资源的需求也存在差异,比如,在本地资源加载场景下,第三方应用程序 对磁盘读取速度的要求较高;在动画渲染场景下,第三方应用程序则对GPU性 能的要求较高。而操作系统与第三方应用程序之间相互独立,操作系统往往不 能及时感知第三方应用程序当前的应用场景,导致操作系统无法根据第三方应 用程序的具体应用场景进行针对性的系统资源适配。

为了使操作系统能够区分第三方应用程序的具体应用场景,需要打通第三 方应用程序与操作系统之间的数据通信,使得操作系统能够随时获取第三方应 用程序当前的场景信息,进而基于当前场景进行针对性的系统资源适配。

以操作系统为Android系统为例,存储器120中存储的程序和数据如图12 所示,存储器120中可存储有Linux内核层320、系统运行时库层340、应用框 架层360和应用层380,其中,Linux内核层320、系统运行库层340和应用框 架层360属于操作系统空间,应用层380属于用户空间。Linux内核层320为电 子设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、 蓝牙驱动、Wi-Fi驱动、电源管理等。系统运行库层340通过一些C/C++库来为 Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL/ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。 在系统运行时库层340中还提供有安卓运行时库(Android runtime),它主要提供 了一些核心库,能够允许开发者使用Java语言来编写Android应用。应用框架 层360提供了构建应用程序时可能用到的各种API,开发者也可以通过使用这些 API来构建自己的应用程序,比如活动管理、窗口管理、视图管理、通知管理、 内容提供者、包管理、通话管理、资源管理、定位管理。应用层380中运行有 至少一个应用程序,这些应用程序可以是操作系统自带的原生应用程序,比如 联系人程序、短信程序、时钟程序、相机应用等;也可以是第三方开发者所开 发的第三方应用程序,比如游戏类应用程序、即时通信程序、相片美化程序等。

以操作系统为IOS系统为例,存储器120中存储的程序和数据如图13所示, IOS系统包括:核心操作系统层420(Core OS layer)、核心服务层440(Core Services layer)、媒体层460(Media layer)、可触摸层480(Cocoa Touch Layer)。 核心操作系统层420包括了操作系统内核、驱动程序以及底层程序框架,这些 底层程序框架提供更接近硬件的功能,以供位于核心服务层440的程序框架所 使用。核心服务层440提供给应用程序所需要的系统服务和/或程序框架,比如 基础(Foundation)框架、账户框架、广告框架、数据存储框架、网络连接框架、 地理位置框架、运动框架等等。媒体层460为应用程序提供有关视听方面的接 口,如图形图像相关的接口、音频技术相关的接口、视频技术相关的接口、音 视频传输技术的无线播放(AirPlay)接口等。可触摸层480为应用程序开发提 供了各种常用的界面相关的框架,可触摸层480负责用户在电子设备上的触摸 交互操作。比如本地通知服务、远程推送服务、广告框架、游戏工具框架、消 息用户界面接口(User Interface,UI)框架、用户界面UIKit框架、地图框架等 等。

在图13所示出的框架中,与大部分应用程序有关的框架包括但不限于:核 心服务层440中的基础框架和可触摸层480中的UIKit框架。基础框架提供许多 基本的对象类和数据类型,为所有应用程序提供最基本的系统服务,和UI无关。 而UIKit框架提供的类是基础的UI类库,用于创建基于触摸的用户界面,iOS 应用程序可以基于UIKit框架来提供UI,所以它提供了应用程序的基础架构, 用于构建用户界面,绘图、处理和用户交互事件,响应手势等等。

其中,在IOS系统中实现第三方应用程序与操作系统数据通信的方式以及 原理可参考Android系统,本申请在此不再赘述。

其中,输入装置130用于接收输入的指令或数据,输入装置130包括但不 限于键盘、鼠标、摄像头、麦克风或触控设备。输出装置140用于输出指令或 数据,输出装置140包括但不限于显示设备和扬声器等。在一个示例中,输入 装置130和输出装置140可以合设,输入装置130和输出装置140为触摸显示 屏,该触摸显示屏用于接收用户使用手指、触摸笔等任何适合的物体在其上或 附近的触摸操作,以及显示各个应用程序的用户界面。触摸显示屏通常设置在 电子设备的前面板。触摸显示屏可被设计成为全面屏、曲面屏或异型屏。触摸 显示屏还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合,本申 请实施例对此不加以限定。

除此之外,本领域技术人员可以理解,上述附图所示出的电子设备的结构 并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或 者组合某些部件,或者不同的部件布置。比如,电子设备中还包括射频电路、 输入单元、传感器、音频电路、无线保真(wireless fidelity,WiFi)模块、电源、 蓝牙模块等部件,在此不再赘述。

在本申请实施例中,各步骤的执行主体可以是上文介绍的电子设备。可选 地,各步骤的执行主体为电子设备的操作系统。操作系统可以是安卓系统,也 可以是IOS系统,或者其它操作系统,本申请实施例对此不作限定。

本申请实施例的电子设备,其上还可以安装有显示设备,显示设备可以是 各种能实现显示功能的设备,例如:阴极射线管显示器(cathode ray tubedisplay, 简称CR)、发光二极管显示器(light-emitting diode display,简称LED)、电子 墨水屏、液晶显示屏(liquid crystal display,简称LCD)、等离子显示面板(plasma display panel,简称PDP)等。用户可以利用电子设备101上的显示设备,来查 看显示的文字、图像、视频等信息。所述电子设备可以是智能手机、平板电脑、 游戏设备、AR(Augmented Reality,增强现实)设备、汽车、数据存储装置、音频 播放装置、视频播放装置、笔记本、桌面计算设备、可穿戴设备诸如电子手表、 电子眼镜、电子头盔、电子手链、电子项链、电子衣物等设备。

在图10所示的电子设备中,其中电子设备可以是一种终端,处理器110可 以用于调用存储器120中存储应用程序,并具体执行以下操作:

获取当前的屏幕显示数据,确定针对快速用户数据报协议互联网连接的至 少一个数据传输通道;

开启所述至少一个数据传输通道,将所述屏幕显示数据通过所述至少一个 数据传输通道传输至接收设备。

在一个实施例中,所述处理器1001在执行所述确定针对快速用户数据报协 议互联网连接的至少一个数据传输通道时,具体执行以下操作:

基于当前的通信网络质量和/或屏幕显示数据,确定针对快速用户数据报协 议互联网连接的传输通道数量;

确定所述传输通道数量指示的数据传输通道。

在一个实施例中,所述处理器1001在执行所述基于当前的通信网络质量和 屏幕显示数据,确定针对快速用户数据报协议互联网连接的传输通道数量时, 具体执行以下操作:确定所述屏幕显示数据对应的数据属性,以及确定针对通 信网络质量的质量量化参数;

获取与所述数据属性和质量量化参数相匹配的针对快速用户数据报协议互 联网连接的传输通道数量。

在一个实施例中,所述处理器1001在执行所述将所述屏幕显示数据通过所 述至少一个数据传输通道传输至接收设备时,具体执行以下操作:

将所述屏幕显示数据按照数据属性划分为至少一个数据包,将各所述数据 包分别通过所述至少一个数据传输通道传输至接收设备;

其中,所述数据属性包括数据信息量、数据应用类型、数据业务场景中的 至少一种。

在一个实施例中,所述处理器1001在执行所述将各所述数据包分别通过所 述至少一个数据传输通道传输至接收设备时,具体执行以下操作:

确定每个所述数据包分别对应的数据传输通道,通过每个所述数据包对应 的数据传输通道将所述数据包传输至接收设备。

在一个实施例中,所述处理器1001在执行所述通过每个所述数据包对应的 数据传输通道将所述数据包传输至接收设备时,具体执行以下操作:

确定每个所述数据包的上一历史数据包,确定所述历史数据包和所述数据 包的数据差异度;

基于各所述数据差异度确定每个所述数据包对应的数据传输通道;

通过每个所述数据包对应的数据传输通道将所述数据包传输至接收设备。

在一个实施例中,所述处理器1001在执行所述数据传输方法时,具体执行 以下步骤:

获取各所述数据传输通道对应的数据传输属性,基于所述数据传输属性对 所述数据传输通道进行资源调度处理。

在一个实施例中,所述处理器1001在执行所述基于所述数据传输属性对所 述数据传输通道进行资源调度处理时,具体执行以下操作:

获取各所述数据传输通道对应的数据传输属性,所述数据传输属性包括数 据传输类型、数据传输量、数据业务等级中的至少一种;

基于所述数据传输属性确定针对所述数据传输通道的资源调度级别,将所 述资源调度级别对应的设备处理资源分配至所述数据传输通道。

在一个实施例中,所述处理器1001在执行所述数据传输方法时,具体执行 以下步骤:

监测各所述数据传输通道对应的通道传输质量,基于各所述通道传输质量 确定第一传输通道:

对所述第一传输通道进行通道配置调整。

在一个实施例中,所述处理器1001在执行所述对所述第一传输通道进行通 道配置调整时,具体执行以下操作:

对所述第一传输通道的通信工作方式进行通信调整处理;和/或,

对所述第一数据传输通道的处理资源进行资源调度处理。

在一个实施例中,所述处理器1001在执行所述对所述第一传输通道的通信 工作方式进行通信调整处理时,具体执行以下操作:

获取针对快速用户数据报协议互联网连接的至少一种网络通信方式,确定 各所述网络通信方式的通信网络质量;所述网络通信方式与所述第一传输通道 当前对应的通信工作方式不同;

根据各所述网络通信方式的通信网络质量,确定目标网络通信方式;

将所述第一传输通道从所述通信工作方式切换为所述目标网络通信方式。

在一个实施例中,所述处理器1001在执行所述将所述屏幕显示数据通过所 述至少一个数据传输通道传输至接收设备之后,还包括:

监测各数据传输通道在传输所述屏幕显示数据时的数据包传输状态;

若存在第二传输通道为数据包丢包状态,确定第二传输通道丢包的目标数 据包;

采用第三传输通道对所述目标数据包进行数据重传。

在一个实施例中,所述处理器1001在执行所述采用第三传输通道对所述目 标数据包进行数据重传,包括:

从各数据传输通道中确定除第二传输通道之外的第三传输通道,采用第三 传输通道对所述目标数据包进行数据重传;和/或,

建立与接收设备的针对快速用户数据报协议互联网连接的第四传输通道, 采用第四传输通道对所述目标数据包进行数据重传。

在一个实施例中,所述处理器1001在执行所述数据传输方法时,具体执行 以下步骤:

采用点对点网络和/或局域网建立与接收设备的快速用户数据报协议互联网 连接。

在一个实施例中,所述处理器1001在执行所述数据传输方法时,具体执行 以下步骤:

向电子设备获取针对接收设备的网络地址转换信息;

基于所述网络地址转换信息建立与接收设备的快速用户数据报协议互联网 连接。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算 机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。 其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。

以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之 权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

34页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:信息展示方法、装置、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类