CN111629024A - 一种数据传输控制方法、装置、存储介质及电子设备 - Google Patents

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

Info

Publication number
CN111629024A
CN111629024A CN202010255877.0A CN202010255877A CN111629024A CN 111629024 A CN111629024 A CN 111629024A CN 202010255877 A CN202010255877 A CN 202010255877A CN 111629024 A CN111629024 A CN 111629024A
Authority
CN
China
Prior art keywords
terminal
communication link
communication
data
server
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
Application number
CN202010255877.0A
Other languages
English (en)
Inventor
张武锋
杨超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dami Technology Co Ltd
Original Assignee
Beijing Dami Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dami Technology Co Ltd filed Critical Beijing Dami Technology Co Ltd
Priority to CN202010255877.0A priority Critical patent/CN111629024A/zh
Publication of CN111629024A publication Critical patent/CN111629024A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例公开了一种数据传输控制方法、装置、存储介质及电子设备,其中,方法包括:建立与第一终端之间的第一通信链路,建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。采用本申请实施例,可以降低数据传输的时延,降低通信链路的负荷。

Description

一种数据传输控制方法、装置、存储介质及电子设备
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据传输控制方法、装置、存储介质及电子设备。
背景技术
随着互联网技术的发展,承载服务功能的服务器可以通过互联网向用户的终端提供越来越丰富的互联网资源,例如:在线数据上传、下载,视频点播,以及在线教学,等等。在这些场景下服务端常常需要向用户的终端传输大量的数据,如多媒体数据等。
目前,在数据传输过程中,一般是通过服务器与终端之间的通信链路进行数据的传输。然而,在通信链路的通信状况不佳时(如通信链路所对应的网络用网高峰期,通信通常处于负载状态),服务器通过与终端间的通信链路向终端传输数据,就会出现传输时延较高的问题。
发明内容
本申请实施例提供了一种数据传输控制方法、装置、存储介质及电子设备,可以降低数据传输的时延,降低通信链路的负荷。所述技术方案如下:
第一方面,本申请实施例提供了一种数据传输控制方法,所述方法包括:
建立与第一终端之间的第一通信链路;
建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路;
基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
第二方面,本申请实施例提供了一种数据传输控制装置,所述装置包括:
第一通信链路建立模块,用于建立与第一终端之间的第一通信链路;
第二通信链路建立模块,用于建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路;
下行数据发送模块,用于基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
第四方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。
本申请一些实施例提供的技术方案带来的有益效果至少包括:
在本申请一个或多个实施例中,服务器通过建立与第一终端之间的第一通信链路,并建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,然后基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。服务器可以在通信链路的通信状况不佳时,避免基于与第一终端之间通信链路传输数据时出现的传输时延较高的问题,提高了服务器下行数据的发送效率,降低了数据传输的时延,基于多通信链路的方式可以减小服务器与第一终端间通信链路的负荷。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据传输控制方法的流程示意图;
图2是本申请实施例提供的数据传输控制方法涉及的一种无线局域网的场景示意图;
图3是本申请实施例提供的数据传输控制方法涉及的一种通信链路的场景示意图;
图4是本申请实施例提供的另一种数据传输控制方法的流程示意图;
图5是本申请实施例提供的一种数据传输控制的场景架构示意图;
图6是本申请实施例提供的一种数据传输控制装置的结构示意图;
图7是本申请实施例提供的一种第二通信链路建立模块的结构示意图;
图8是本申请实施例提供的一种控制指令发送模块的结构示意图;
图9是本申请实施例提供的一种链路状态获取单元的结构示意图;
图10是本申请实施例提供的另一种数据传输控制装置的结构示意图;
图11是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本申请的描述中,需要说明的是,除非另有明确的规定和限定,“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
下面结合具体的实施例对本申请进行详细说明。
在一个实施例中,如图1所示,特提出了一种数据传输控制方法,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的数据传输控制装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
具体的,该数据传输控制方法包括:
步骤S101:建立与第一终端之间的第一通信链路。
所述通信链路通常是指数据链路或物理链路,其中数据链路包含有服务链路、虚拟链路和逻辑链路等。通常,一条完整的业务链路包含具有业务处理能力的服务器、交换机、网关设备等。在本实施例中,所述通信链路可以理解为通信数据(指令、请求、信号、信息等数据)在各通信节点(如交换机、网关设备等)传输的路径。在本申请实施例中,所述第一通信链路可以理解为服务器与第一终端之间传输通信数据的路径。
具体的,服务器可以采用预设通信架构建立与第一终端之间的第一通信链路。其中,所述通信架构是指在通信链路中进行数据通信的一种通信结构,通信架构定义了数据网络通信系统的各个方面,包含通信的接口类型、使用的网络协议、实现的数据框架、通信布线的类型等。常用的通信架构可以是TCP/IP架构,Netty架构、C/S架构、SOA架构等。如,一种所述通信架构可以是为采用基于java开源的Netty框架,并配合WebSocket技术从而实现通信网络中服务器与第一终端建立一种长连接(或短连接)的第一通信链路,并实现基于第一通信链路两端之间的通信数据的交互。以下将对基于长连接的通信链路以及基于短连接的通信链路进行详细释义,如下:
其中,服务器与第一终端的通信交互基于建立的第一通信链路。所述所建立的第一通信链路可以为http长连接的通信链路或http短连接的通信链路。
长连接,指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。
长连接的操作步骤是:建立连接——数据传输...(保持连接)...数据传输——关闭连接。
短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。
短连接的操作步骤是:建立连接——数据传输——关闭连接...建立连接——数据传输——关闭连接。
长连接多用于操作频繁,点对点的通讯。每个TCP连接都需要三步握手,这需要时间,如果每个操作都是短连接,再操作的话那么处理速度会降低很多,所以每个操作完后都不断开,下次处理时直接发送数据包就OK了,不用建立TCP连接。例如:数据库的连接用长连接,如果用短连接频繁的通信会造成socket错误,而且频繁的socket创建也是对资源的浪费。
而像WEB网站的http服务一般都用短链接,因为长连接对于服务端来说会耗费一定的资源,而像WEB网站这么频繁的成千上万甚至上亿客户端的连接用短连接会更省一些资源,如果用长连接,而且同时有成千上万的用户,如果每个用户都占用一个连接的话,那可想而知吧。所以并发量大,但每个用户无需频繁操作情况下需用短链接好。
长连接可以省去较多的TCP建立和关闭的操作,减少浪费,节约时间。在实际应用中,当第一通信链路传输的通信数据为对通信传输质量要求高的实时在线教学视频数据时,可以采用基于长连接的通信链路,如服务器与第一终端之间采用基于长连接的第一通信链路
此时,长连接对于服务器来说管理较为简单,存在的连接都是有用的连接,不需要额外的控制手段。但如果客户请求频繁,将在TCP的建立和关闭操作上浪费时间和带宽。因此,本申请实施例中,服务器可以根据实际通信数据传输的环境,确定建立基于长连接的第一通信链路。
具体的,服务器在建立与第一终端之间的第一通信链路的过程中,一种建立方式可以为:服务器向第一终端发送通信链路建立请求,所述通信链路建立请求携带有服务器的地址信息(设备名、地址、端口号、设备标识等)。第一终端接收到通信链路建立请求之后,创建第一通信链路所对应的通信服务并进行初始化,然后根据所述服务器的地址信息,向服务器发送用于建立第一通信链路的验证指令,服务器接收到验证指令后,对所述验证指令进行身份验证。
示意性的,服务器通过读取并解析所述建立第一通信链路的验证指令中的返回值,根据所述返回值判断与预设的返回值是否匹配,所述返回值在本申请实施例中可以理解为一串代码、字符串、数组等,当所述返回值与预设的返回值匹配时,则所述第一通信链路建立成功。当所述返回值与预设的返回值不匹配时,第一通信链路建立失败。
一种建立方式可以为:服务器向第一终端发送通信链路建立请求,所述通信链路建立请求携带有身份验证标识。第一终端接收到通信链路建立请求之后,创建第一通信链路所对应的通信服务并进行初始化,然后根据所述服务器的身份验证标识,对所述身份验证标识进行身份验证,可以理解的是,第一终端预先存储有服务器的地址信息,此时服务器无需下发包含地址信息的通信链路建立请求。
示意性的,第一终端通过读取并解析所述建立第一通信链路的身份验证标识,根据所述身份验证标识判断与预设的身份验证标识是否匹配,所述身份验证标识在本申请实施例中可以理解为一串代码、字符串、数组等,当所述身份验证标识与预设的身份验证标识匹配时,则所述第一通信链路建立成功。当所述返回值与预设的返回值不匹配时,第一通信链路建立失败。
可选的,服务器可以接收第一终端主动发送的通信链路建立请求,并基于通信链路建立请求对第一终端的身份进行验证,具体为获取通信链路建立请求携带的身份验证标识,对身份验证标识进行比对,当比对通过时以确定建立第一通信链路。
在本申请实施例中,服务器建立与第一终端之间的第一通信链路,并采用第一通信链路向第一终端发送下行数据,如多媒体数据,在一种具体的在线教育环境中,具有在线教育业务的服务器通过互联网向第一终端的用户提供教学资源(即多媒体数据)。其中,无论是直播课还是录播课,都需要服务器向第一终端传输大量的多媒体数据,比如,对于录播课,需要在线教育服务商或在线教育平台向学生端传输大量的多媒体数据,而直播课,则需要服务器连接起教师终端和/或学生终端,这里教师终端和学生终端即为本申请实施例中的第一终端,此时通常需要向双方传输大量的多媒体数据,例如,服务器将教师的教学视频发送给学学生终端,服务器将学生的上课视频实时发送给教师终端,等等。在这种环境下第一通信链路需要具备足够的网络带宽以传输多媒体数据,服务器也需要足够的业务数据处理能力,而在网络带宽不足和/或服务器处理能力不够的情形下(例如晚上上课是用网高峰期,网络卡顿),会使得多媒体数据传输受阻,例如产生延迟、卡顿乃至掉线等等,此时通常基于第一终端与服务器之间的第一通信链路难以满足当前多媒体数据传输的要求。
其中,第一终端可以通过执行本申请实施例中的所述数据传输控制方法,预先建立多通信链路,借助与第一终端处于同一局域网下的第二终端来发送下行数据,可以减小数据传输的时延,降低服务器与第一终端之间通信链路的负荷。
具体的,第一终端在建立与服务器之间的第一通信链路之后,还可以执行本申请实施例中的所述数据传输控制方法,以使第一终端预先建立与第二终端之间的第二通信链路,以及与第二终端之间的第三通信链路。
步骤S102:建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路。
所述局域网可以理解为局部地区形成的一个区域网络,其特点分布地区范围有限,可大可小,大到一栋建筑楼与相邻建筑之间的连接,小到可以是办公室、家庭之间的联系。局域网自身相对其他网络(如城域网)传输速度更快,性能更稳定,框架简易,并且是封闭性。
在本申请实施例中,当前局域网可以是相干技术涉及局域网中的无线局域网;无线局域网,简称WLAN,是大到在几千米范围内的楼群或是商场内的终端(如电脑、手机、平板)、小到在几十米范围内家庭成员间所持终端互相连接所组建的计算机网络,一个无线局域网能支持几台到几千台计算机的使用。
在一种具体的实施场景中,在大多数情况下,每台计算机与安装在天花板上的一个设备通信。这个设备,成为接入点、无线路由器或者基站,它主要负责中继终端(如电脑、手机、平板)之间的数据包,还负责中继终端(如电脑、手机、平板)和网络中其他电子设备之间的通信数据,如中继终端(如电脑、手机、平板)和服务器之间的通信数据。
具体的,服务器与至少一个所述第二终端之间建立第二通信链路,一种建立方式,服务器建立与第一终端之间的第一通信链路之后,可以通过向第一终端下发指令,以指使第一终端检测当前局域网下的至少一个第二终端,如检测第二终端的数目、第二终端的地址信息、第二终端的网络状态等。第一终端具体可以向当前局域网下的至少一个第二终端发送检测信号,第二终端可以在接收到检测信号之后,可以基于检测信号向第一终端发送本端地址信息(如地址、端口号、子网掩码等)。然后第一终端可以将包含至少一个第二终端本端地址信息(如地址、端口号、子网掩码等)的反馈信息通过第一通信链路发送至服务器。服务器接收到反馈信息之后,获取反馈信息中的第二终端的地址信息(如地址、端口号、子网掩码等)。服务器即可根据地址信息主动向地址信息指示第二终端发送通信链路建立请求,以建立与第二终端之间的第二通信链路。
可以理解的是,与第一终端处于同一局域网下的第二终端的数目为多个时,服务器通过下发指令指示第一终端监测当前局域网下的第一终端,可以获取到每个第二终端的地址信息,根据各地址信息可以分别建立与地址信息指示的第二终端之间的第二通信链路,即此时第二通信链路为多条,在建立多个第二通信链路的过程中,可以是同步也可以是异步,此处不作具体的限定。
一种建立方式,每个所述第二终端主动与服务器建立第三通信链路,具体为第一终端可以在检测完当前局域网下的至少一个第二终端之后,将服务器的地址信息发送至第二终端,第二终端可以基于服务器的地址信息向服务器发送通信链路建立请求。
服务器基于通信链路建立请求建立服务器与第二终端的第三通信链路,可以理解的是,当第二终端的数目为多个时,多个第二终端均可采用上述方式建立与服务器之间的第三通信链路。
其中,在第一终端的当前局域网下,第一终端与每个所述第二终端之间建立有第三通信链路。
以下为了更好的对本申请实施例所涉及到的数据传输控制方法进行释义,以下将对所述第一通信链路、所述第二通信链路以及所述第三通信链路的通信链路进行详细释义。
在一种具体的实施场景中,如图2所示,图2是一种无线局域网的场景示意图,第一终端所处的当前局域网为无线局域网,无线局域网为如图2中的虚线框中的各设备构成,在当前局域网下,除第一终端之外的电子设备可以为第二终端,如在一种应用于家庭环境下的无线局域网为例,学生所持的电子设备(平板、手机、电脑等)为第一终端,家长(学生的父亲、母亲、爷爷、奶奶等亲属)所持的电子设备(平板、手机、电脑等)为第二终端,第一终端与第二终端与安装在家庭环境中的一个设备进行通信,这个设备,成为接入点、无线路由器或者基站,图2中为无线路由器,它主要负责中继第一终端(如电脑、手机、平板)或第二终端的数据包,还负责中继第一终端(如电脑、手机、平板)和网络中其他电子设备之间的通信数据,如中继第一终端(如电脑、手机、平板)和服务器之间的通信数据。
进一步的,上述第一通信链路可以是基于无线路由器通过有线网络(如高速光纤网络)建立第一终端与服务器之间的通信,第三通信链路可以是基于无线路由器通过无线局域网建立第一终端与第二终端之间的通信,第二通信链路可以是基于移动通信网络(如第五代移动通信系统,即5G网络)建立第二终端与服务器之间的通信。可以理解的是,第一终端此时工作与无线局域网下,第二终端工作于无线局域网以及移动通信网络下。
进一步的,如图3所示,如图3是一种通信链路的场景示意图,无线局域网为如图3中的虚线框中的各设备构成,上述第一通信链路可以是第一终端基于移动通信网络(如第五代移动通信系统,即5G网络)建立与服务器之间的通信,第三通信链路可以是基于无线路由器通过无线局域网建立第一终端与第二终端之间的通信,第二通信链路可以是基于移动通信网络(如第五代移动通信系统,即5G网络)建立第二终端与服务器之间的通信。可以理解的是,第一终端此时工作于无线局域网以及移动通信网络下,第二终端工作于无线局域网以及移动通信网络下。
进一步的,上述第一通信链路也可以是同时基于移动通信网络(如第五代移动通信系统,即5G网络)以及基于无线路由器通过有线网络(如高速光纤网络)建立与服务器之间的通信,可以理解的是,第一通信链路为基于双网络的通信链路。
在一种具体的实施场景中,第一终端所处的当前局域网为无线局域网,所述无线局域网可以是第一终端开启网络热点功能建立的,即服务器通过移动通信网络(如第五代移动通信系统,即5G网络)建立与第一终端之间的第一通信链路,然后开启网络热点功能,第二终端的用户手动连接第一网络的网络热点,或,第一终端可以向每个第二终端发送检测信号,以使第二终端响应所述检测信号从而加入第一终端的无线局域网,此时第一终端自动建立与每个第二终端的第三通信连接。进一步的,第一终端可以开启网络热点功能之后,向外广播检测信号,当第二终端的网络热点连接功能(如WiFi功能)打开之后,可以接收到检测信号,并自动基于检测信号加入第一终端的无线局域网,此时第一终端自动建立与每个第二终端的第三通信连接。可以理解的是,第二通信链路可以是基于移动通信网络(如第五代移动通信系统,即5G网络)建立第二终端与服务器之间的通信。此时,第一终端此时工作于无线局域网以及移动通信网络下,第二终端工作于无线局域网以及移动通信网络下。
其中,当第一通信链路、第二通信链路以及第三通信链路建立之后,可以基于多通信链路服务器向第一终端发送下行数据。
步骤S103:基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
所述下行数据通常为多媒体数据,其中媒体是指传播信息的媒介,是人与人之间用来传递信息与获取信息的中介。而所述的多媒体数据,可以认为是多重媒体,也可以理解为直接作用于人感官的文字、图形、图像、动画、声音和视频等各种媒体的统称,即多种信息载体的表现形式和传递方式。在本申请实施例中的多媒体数据可以是在线教育环境中,用户用来学习的音乐、图片、录播视频、在线教学视频等等。
在实际应用中,所述下行数据可以包括所述服务器经第一通信链路发送的第一数据,以及服务器发送经所述第二终端转发至第一终端的第二数据。
具体的,在第一通信链路、第二通信链路以及第三通信链路建立之后,服务器在下发下行数据时,对待下发的下行数据进行分割或划分,分为第一数据以及第二数据。服务器根据第一通信链路向第一终端发送第一数据。此时第一终端通过第一通信链路即可接收到服务器下发的第一数据。服务器根据第二通信链路向第二终端下发第二数据,当第二终端包括N个(N为正整数)时,即服务器与多个第二终端分别建立第二通信链路,此时第二数据数目包括N个,各第二数据可以相同,也可以不同,通常在实际应用中,优选的,各第二数据通常不同。服务器通过与每个第二终端之间的第二通信链路分别发送第二数据,服务器通过每个所述第二通信链路向各第二通信链路对应的第二终端发送第二数据,各第二终端然后将第二数据通过与第一终端之间的第三通信链路将第二数据发送至第一终端。可以理解的是,在与服务器建立第二通信链路的第二终端为多个的情况下,此时第一终端会通过与每个第二终端的第二通信链路接收到服务器下发的各第二数据。此时,服务器基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,通过多通信链路传输下行数据的方式,可以将待下发的下行数据快速发送至第一终端。
在一种可行的实施方式中,服务器在基于第一通信链路、第二通信链路以及第三通信链路向第一终端发送下行数据之前,可以预先获取服务器与第二终端之间第二通信链路的通信传输质量、以及服务器与第一终端之间第一通信链路的通信传输质量。进一步的,一种方式是,服务器可以向每个第二终端以及第一终端发送针对通信链路的通信检测指令,每个第二终端以及第一终端接收通信检测指令并对通信检测指令进行响应。可以理解的是,每个第二终端以及第一终端具有通信状态监测机制,可以对当前通信链路(第一通信链路或第二通信链路)的通信状进行监测;具体为每个第二终端以及第一终端可以获通信链路(第一通信链路或第二通信链路)的至少一个通信参数,根据各所述通信参数计算通信质量分;然后将通信质量分发送至服务器。在服务器侧:服务器可以接收到每个第二终端以及第一终端的通信质量分,服务器可以结合各通信质量分,以确定第三数据和第四数据占所述上行数据的比例,根据所述比例对上行数据进行分割或划分,确定上行数据所包括的第三数据以及第四数据各自对应的数据量。一种方式是,服务器具有通信状态监测机制,可以对与第一终端的第一通信链路、以及与每个第二终端的第二通信链路的通信状进行监测:具体为服务器可以获取当前通信链路(第一通信链路和/或第二通信链路)的至少一个通信参数,根据各通信链路对应的通信参数计算通信质量分,可以理解的是,服务器可以得到当前每个通信链路(第一通信链路和/或第二通信链路)的通信质量分,服务器可以结合各通信质量分,以确定第三数据和第四数据占所述上行数据的比例,根据所述比例对上行数据进行分割或划分,确定上行数据所包括的第三数据以及第四数据各自对应的数据量。
在本申请实施例中,服务器通过建立与第一终端之间的第一通信链路,并建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,然后基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。服务器可以在通信链路的通信状况不佳时,避免基于与第一终端之间通信链路传输数据时出现的传输时延较高的问题,提高了服务器下行数据的发送效率,降低了数据传输的时延,基于多通信链路的方式可以减小服务器与第一终端间通信链路的负荷。
请参见图4,图4是本申请提出的一种数据传输控制方法的另一种实施例的流程示意图。具体的:
步骤S201:建立与第一终端之间的第一通信链路。
具体可参见步骤S101,此处不再赘述。
步骤S202:通过所述第一通信链路向所述第一终端发送控制指令,以使所述第一终端检测当前局域网下的至少一个所述第二终端。
其中,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路。
所述指令是指挥第一终端工作的指示和命令,可以理解为指定执行某种运算或功能实现的某种控制的代码。在本申请实施例中,所述控制指令可以理解为指挥第一终端执行所述检测当前局域网下的至少一个第二终端功能的代码,如可以指示第一终端执行所述代码,生成检测信号并将检测信号向当前局域网下的至少一个第二终端发送,从而对与第一终端处于同一局域网下的至少一个所述第二终端进行检测。
在一种具体的实施场景中,服务器获取所述第一通信链路的第一通信链路状态,根据所述第一通信链路状态通过所述第一通信链路向所述第一终端发送控制指令。
所述通信链路状态至少包括通信正常状态和通信负载状态。所述通信正常状态可以理解为所述第一通信链路的当前通信状态优良,传输延迟较低,可以满足第一终端与服务器之间上行和下行数据的传输;所述通信负载状态可以理解为所述第一通信链路的当前通信状态不佳,数据通信链路传输延迟较高,链路负荷过重等。术语“第一”仅用于描述目的,可以理解的是,服务器侧获取到的第一通信链路的通信链路状态,即第一通信链路状态。
更进一步的,获取所述第一通信链路的至少一个通信参数,根据所述通信参数确定所述第一通信链路的通信质量,当所述通信质量符合预设条件时,确定所述第一通信链路的第一通信链路状态为通信负载状态。
其中所述预设条件根据实际应用环境中获取的通信参数而定,如预设条件可以是针对至少一个通信参数设置,一种是对各通信参数分贝设置参数范围,当一个或多个通信参数落入到各自对应的参数范围内时,确定所述第一通信链路的第一通信链路状态为通信负载状态;一种是设置参数阈值,当一个或多个通信参数达到参数阈值时,确定所述第一通信链路的第一通信链路状态为通信负载状态。其中,通信参数达到参数阈值可以理解为:通信参数大于或等于参数阈值时,确定所述第一通信链路的第一通信链路状态为通信负载状态;或,通信参数小于或等于参数阈值时,确定所述第一通信链路的第一通信链路状态为通信负载状态。具体根据通信参数所表征的通信评判指标而定,如通信数据的丢包率,当丢包率大于丢包率阈值时,确定所述第一通信链路的第一通信链路状态为通信负载状态。又如数据传输的延迟时间,当延迟时间大于时间阈值时,确定所述第一通信链路的第一通信链路状态为通信负载状态。
在一种可行的实施方式中,服务器可以根据各所述通信参数计算通信质量分,当所述通信质量分小于质量分阈值时,确定所述第一通信链路的第一通信链路状态为通信负载状态,根据所述通信负载状态通过所述第一通信链路向所述第一终端发送控制指令。具体如下:
服务器具有通信状态监测机制,可以对当前第一通信链路的通信状进行监测;服务器在建立与第一终端之间的第一通信链路之后,服务器可以通过通信状态监测机制,对当前第一通信链路进行监测,具体为服务器可以获取第一通信链路的至少一个通信参数,根据各所述通信参数计算通信质量分;基于通信质量分来评判第一通信链路的通信链路状态,具体为:
服务器可以通过对当前第一通信链路的通信质量进行评测,根据各所述通信参数计算通信质量分,以来通信质量分确定第一终端与服务器之间第一通信链路上行或下行数据的通信状况,所述通信参数可以是发射/接收速率、信号能量、通信过程中的数据丢包率、通信过程中的数据重传率等通信参数中的一个或多个,根据各通信参数来计算通信质量分,从而衡量当前的通信质量。
其中,服务器设置有质量分阈值,所述质量分阈值通常在实际应用环境中,采集大量通信样本数据运用统计学方法得到。
1、当计算得到的所述通信质量分小于质量分阈值时,服务器可以确定所述第一通信链路的通信链路状态为通信负载状态;
2、当计算得到的所述通信质量分小于质量分阈值时,服务器可以确定所述第一通信链路的通信链路状态为通信正常状态。
其中,一种计算方法可以是对各通信参数设置不同或相同的权重值,基于各通信参数以及所述权重值进行加权计算,可以得到当前通信质量分;
其中,一种计算方法可以是对各通信参数设置参考参数特征(如参考指示值、参考指示范围、参考指示距离等),将至少一个网络通信参数中各网络通信参数与其对应的参数特征计算差异特征信息(如差异通信参数值),根据差异特征信息进行评分,根据差异特征信息进行评分时,可以是设置评分等级,例如设置三个等级:等级A>等级B>C,以上述数据连接类参数包含两个通信参数为例进行释义:计算通信参数A1与参考指示值A的差异通信值a,当差异通信值a达到等级B对应的数值时,此时即将等级B对应的分数作为当前通信质量分。
其中,所述通信参数包括但不限于当前通信天线上行/下行数据信号的参考信号接收功率(Reference Signal Receiving Power,RSRP)、接收信号码功率(receivedsignal code power,RSCP)、天线接收的信号的接收码片信号强度和噪声强度的比例(EcIo)/每调制比特功率和噪声频谱密度的比率(EcNo)/信噪比(Signal-to-Noise Ratio,SNR)/参考信号接收质量(Reference Signal Receivingquality,RSRQ)、天线接收的信号的误码率(Bit Error Ratio,BER)/误块率(Blockerror Rate,BLER)/数据包差错率(Packet Error Ratio,PER)等参数中的至少一种参数来实现对当前第一通信链路的通信链路状态的评估,当然也可以通过测量其他的参数来实现对当前第一通信链路的通信链路状态的评估。
需要说明的是,所述测量第一通信链路的通信参数有多种,可以是上述提及的一种或多种的拟合,此处不作具体的限定。
在一种可行的实施方式中,服务器可以将获取到的各项通信参数输入至训练好的评分确定模型中,输出第一通信链路的通信质量分。其中,通过获取实际应用环境中的通信样本数据,提取特征信息,并对所述通信样本数据对应的分值进行标注,所述特征信息包含至少一个通信参数(RSSI、SNR、RSCP等),创建信息类型确定模型。所述评分确定模型可以是使用大量的通信样本训练出来的,如评分确定模型可以是基于卷积神经网络(Convolutional Neural Network,CNN)模型,深度神经网络(Deep Neural Network,DNN)模型、循环神经网络(Recurrent Neural Networks,RNN)、模型、嵌入(embedding)模型、梯度提升决策树(Gradient Boosting Decision Tree,GBDT)模型、逻辑回归(LogisticRegression,LR)模型中的至少一种实现的,基于已经标注分值的样本数据对评分确定模型进行训练,可以得到训练好的评分确定模型。
在本申请实施例中,所述评分确定模型可以采用引入误差反向传播算法的隐马尔可夫模型(DNN-HMM模型)创建初始模型,在提取所述通信样本数据的特征信息之后,将所述特征信息输入到所述DNN-HMM模型中,所述DNN-HMM模型的训练过程通常由正向传播和反向传播两部分组成,在正向传播过程中,服务器输入样本-通信样本数据对应的特征信息从所述神经网络模型的输入层经过隐层神经元(也称节点)的传递函数(又称激活函数、转换函数)运算后,传向输出层,其中每一层神经元状态影响下一层神经元状态,在输出层计算实际输出值-异常信息类型,计算所述实际输出值与期望输出值的期望误差,基于所述期望误差调整所述DNN-HMM模型的参数,所述参数包含每一层的权重值和阈值,训练完成后,生成评分确定模型。
具体的,所述期望误差可以是计算实际输出值与期望输出值的均方误差MSE,均方误差MSE,所述均方误差MSE可以采用如下的公式:
Figure BDA0002437292520000151
其中,m为输出节点个数,p为训练样本数目,为期望输出值,为实际输出值。
更进一步的,服务器在确定第一通信链路的通信链路状态为通信负载状态时,此时第一通信链路的网络带宽不足和/或服务器处理能力不够的情形下(例如晚上上课是用网高峰期,网络可能卡顿),此时采用第一通信链路传输上行和/或下行数据会使得数据传输受阻,例如产生延迟、卡顿乃至掉线等等,此时通常基于第一终端与服务器之间的第一通信链路难以满足当前数据传输的要求,服务器根据所述第一通信链路状态,在第一通信链路状态为通信负载状态时可以通过所述第一通信链路向所述第一终端发送控制指令。
在另一种具体的实施场景中,服务器侧可以通过向第一终端下发指令的形式,以使第一终端检测第一通信链路的通信链路状态,可以理解的是服务器侧不对通信链路状态进行检测,而是通过下发指令指示第一终端进行检测。具体为通过所述第一通信链路向所述第一终端发送检测指令,以使第一终端响应与所述检测指令,检测所述第一通信链路的第二通信链路状态,检测完成之后,第一终端向服务器反馈第二通信链路状态,此时服务器即可接收所述第一终端基于所述检测指令发送的第二通信链路状态,根据所述第二通信链路状态通过所述第一通信链路向所述第一终端发送控制指令。
术语“第二”仅用于描述目的,可以理解的是,第一终端侧获取并发送至服务器的第一通信链路的通信链路状态,即第二通信链路状态。
步骤S203:接收所述第一终端通过所述第一通信链路发送的反馈信息,获取所述反馈信息中所述第二终端的地址信息。
所述反馈信息可以理解为用于反馈第二终端的相关信息,如第二终端的数目、各第二终端的地址信息,所述地址信息可以是IP地址、MAC地址、端口号、子网掩码、设备标识等信息中的至少一种。
具体的,服务器向第一终端发送控制指令,以使第一终端对当前局域网下的至少一个第二终端通过发送检测信号的方式进行检测,第一终端可以接收到各所述第二终端根据所述检测信号发送的地址信息,然后第一终端可以针对本次检测结果,生成包含各第二终端的地址信息的反馈信息,将反馈信息通过所述第一通信链路发送至服务器。此时服务器即可接收到第一终端通过所述第一通信链路发送的反馈信息,服务器对反馈信息进行解析,以获取到反馈信息中的各第二终端的地址信息。可以理解的是,地址信息用于服务器建立与地址信息对应的所述第二终端的第二通信链路。
在实际应用中,服务器接收所述第一终端通过所述第一通信链路发送的反馈信息的过程中,通常第一终端会建立与同一局域网下每个第二终端的第三通信链路。
步骤S204:根据所述地址信息向所述第二终端发送第一链路建立请求,所述第一链路建立请求用于建立与所述第二终端之间的所述第二通信链路。
具体的,服务器根据所述地址信息向地址信息指示的第二终端发送第一链路建立请求,以使第二终端接收服务器发送的第二链路建立请求之后,建立与所述服务器之间的第二通信链路。进一步的,服务器发送的第一链路建立请求中携带服务器的身份验证标识,第二终端接收到第一链路建立请求,获取第一链路建立请求携带的身份验证标识,根据身份验证标识对服务器进行身份验证。
示意性的,第二终端通过读取并解析第一链路建立请求中的身份验证标识,根据所述身份验证标识判断与预设的身份验证标识是否匹配,所述身份验证标识在本申请实施例中可以理解为一串代码、字符串、数组等,当所述身份验证标识与预设的身份验证标识匹配时,则所述第二通信链路建立成功。当所述身份验证标识与预设的身份验证标识不匹配时,第二通信链路建立失败。
步骤S205:接收所述第二终端发送的所述第二链路建立请求,根据所述第二链路建立请求分别建立与所述第二终端之间的所述第二通信链路。
具体的,第二终端可以主动向服务器发送第二链路建立请求,
所述第二链路建立请求用于所述服务器建立与所述第二终端之间的第三通信链路。具体为第一终端可以在检测完当前局域网下的至第二终端之后,将服务器的地址信息发送至第二终端,第二终端可以基于服务器的地址信息主动向服务器发送第二链路建立请求。当于第一终端处于同一局域网下的第二终端的数量为多个时,服务器可以接收到至少一个第二终端中各所述第二终端发送的所述第二链路建立请求,服务器分贝根据第二链路建立请求对每个第二终端进行身份验证,在身份验证通过之后,创建第二通信链路所对应的通信服务并进行初始化,建立与第二链路建立请求对应的第二终端之间的第三通信链路,从而完成根据每个所述第二链路建立请求分别建立与所述第二终端之间的第二通信链路。
步骤S206:基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
具体可参见步骤S103,此处不再赘述。
步骤S207:基于所述第一通信链路、与所述第二终端之间的所述第二通信链路以及所述第一终端与所述第二终端之间的第三通信链路,接收所述第一终端发送的上行数据。
所述上行数据通常为多媒体数据,其中媒体是指传播信息的媒介,是人与人之间用来传递信息与获取信息的中介。而所述的多媒体数据,可以认为是多重媒体,也可以理解为直接作用于人感官的文字、图形、图像、动画、声音和视频等各种媒体的统称,即多种信息载体的表现形式和传递方式。在本申请实施例中的多媒体数据可以是在线教育环境中,上传至服务器的音乐、图片、录播视频、在线教学视频等等。
在实际应用中,所述上行数据可以包括所述第一终端经第一通信链路向服务器发送第三数据,以及由第一终端发送经所述第二终端转发至服务器的第四数据。
服务器基于所述第一通信链路接收所述第一终端发送的所述第三数据,以及通过与各所述第二终端之间的所述第二通信链路接收所述第四数据,所述第四数据由所述第一终端基于所述第三通信链路发送至所述第二终端。
具体的,服务器在第一通信链路、第二通信链路以及第三通信链路建立之后,第一终端在向服务器发送上行数据时,通常会对待发送的上行数据进行分割或划分,分为第三数据以及第四数据。第一终端根据第一通信链路向服务器发送第三数据。此时服务器通过第一通信链路可以接收到第一终端发送的第三数据。同时,服务器在接收第一终端发送的上行数据的过程中,服务器可以指示第一终端根据第三通信链路向第二终端发送第四数据,以使第二终端通过第二通信链路将所述第四数据发送至服务器,此时服务器即可接收到第一终端的发送的上行数据中的第四数据;当第二终端包括N个(N为正整数)时,即服务器与每个第二终端分别建立第三通信链路,第一终端与多个第二终端建立第二通信链路,此时第四数据数目包括N个,各第四数据可以相同,也可以不同,通常在实际应用中,优选的,各第四数据通常不同。第一终端通过与每个第二终端之间的第三通信链路分别发送第四数据,每个第二终端通过所述第三通信链路接收第一终端发送的第四数据,每个第二终端可以将接收到的第四数据通过与服务器之间的第二通信链路分别发送至服务器,服务器此时即可以接收到第一终端通过第二终端转发的第四数据。可以理解的是,采用多通信链路传输上行数据的方式,服务器可以快速接收到所述第一终端发送的上行数据。
在本申请实施例中,服务器通过建立与第一终端之间的第一通信链路,并建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,然后基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。服务器可以在通信链路的通信状况不佳时,避免基于与第一终端之间通信链路传输数据时出现的传输时延较高的问题,提高了服务器下行数据的发送效率,降低了数据传输的时延,基于多通信链路的方式可以减小服务器与第一终端间通信链路的负荷。同时,服务器也可以基于创建好的所述第一通信链路、所述第二通信链路以及所述第三通信链路,来接收第一终端发送的上行数据,服务器可以快速的接收到第一终端的上行数据,降低数据接收时延,从而保障了数据传输的实时性和可靠性。
请参见图5,为本申请实施例提供的一种数据传输控制系统的架构示意图。如图5所示,所述数据传输控制系统可以包括:第一终端100、服务器110以及第二终端集群。所述第二终端集群可以包括多个第二终端,如图1所示,具体包括第二终端1、第二终端2、…、第二终端n,n为大于0的整数;为便于理解,本发明实施例以图1中的第一终端100、服务器110和第二终端1为例进行描述。
第一终端100可以是具有网络功能的电子设备,该电子设备包括但不限于:可穿戴设备、手持设备、个人电脑、平板电脑、车载设备、智能手机、计算设备或连接到无线调制解调器的其它处理设备等。在不同的网络中终端设备可以叫做不同的名称,例如:用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置、蜂窝电话、无绳电话、个人数字处理(personaldigital assistant,PDA)、5G网络或未来演进网络中的终端设备等。
所述第二终端集群中的各第二终端可以是具有网络功能的电子设备,该电子设备包括但不限于:可穿戴设备、手持设备、个人电脑、平板电脑、车载设备、智能手机、计算设备或连接到无线调制解调器的其它处理设备等。在不同的网络中终端设备可以叫做不同的名称,例如:用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置、蜂窝电话、无绳电话、个人数字处理(personal digital assistant,PDA)、5G网络或未来演进网络中的终端设备等。
所述服务器110可以是单独的服务器设备,例如:机架式、刀片、塔式、或者机柜式的服务器设备,也可以采用工作站、大型计算机、等具备较强计算能力硬件设备,也可以采用多个服务器组成的服务器集群,所述服务集群中的各服务器可以是以对称方式组成的,其中每台服务器在业务链路中功能等价、地位等价,各服务器均可单独对外提供服务,所述单独提供服务可以理解为无需另外的服务器的辅助。
上述第一终端100、服务器110和上述第二终端集群中各第二终端可以通过网络进行通信,网络可以是无线网络,也可以是有线网络,无线网络包括但不限于蜂窝网络、无线局域网、红外网络或蓝牙网络,有线网络包括但不限于以太网、通用串行总线(universalserial bus,USB)或控制器局域网络。
服务器110建立与第一终端100之间的第一通信链路,服务器110获取所述第一通信链路的通信链路状态。
所述通信链路状态至少包括通信正常状态和通信负载状态。所述通信正常状态可以理解为所述第一通信链路的当前通信状态优良,传输延迟较低,可以满足第一终端100与服务器110之间上行和下行数据的传输;所述通信负载状态可以理解为所述第一通信链路的当前通信状态不佳,数据通信链路传输延迟较高,链路负荷过重等。
更进一步的,服务器110在确定第一通信链路的通信链路状态为通信负载状态时,此时第一通信链路的网络带宽不足和/或服务器110处理能力不够的情形下(例如晚上上课是用网高峰期,网络可能卡顿),此时采用第一通信链路传输上行和/或下行数据会使得数据传输受阻,例如产生延迟、卡顿乃至掉线等等,此时通常基于第一终端100与服务器110之间的第一通信链路难以满足当前数据传输的要求,服务器110可以对第一通信链路的通信链路状态进行监测,服务器110具有通信状态监测机制,可以对当前第一通信链路的通信状进行监测,具体为服务器110可以获取第一通信链路的至少一个通信参数,根据各所述通信参数计算通信质量分;基于通信质量分来评判第一通信链路的通信链路状态。当通信链路状态为通信负载状态时,此时服务器110即可监测到第一通信链路的网络带宽不足和/或服务器处理能力不够(例如晚上上课是用网高峰期,网络可能卡顿),此时采用第一通信链路传输上行和/或下行数据会使得数据传输受阻,例如产生延迟、卡顿乃至掉线等等,此时通常基于第一终端100与服务器110之间的第一通信链路难以满足当前数据传输的要求,此时服务器110可以采用第一通信链路向第一终端100发送控制指令;第一终端100接收到所述控制指令,向当前局域网下的至少一个第二终端发送检测信号。
以第二终端1为例进行描述。第二终端1此时接收到第一终端100发送的检测信号,对所述检测信号进行相应向第一终端100发送本端地址信息(如地址、端口号、子网掩码等)。
第一终端100此时可以接收到第二终端1的地址信息,第一终端100根据所述地址信息向所述第二终端1发送第一链路建立请求。
第二终端1接收第一终端100发送的第一链路建立请求,响应于第一链路建立请求,建立与第一终端100之间的第三通信链路。
同时,第一终端100在接收到第二终端1的地址信息之后,可以将地址信息以反馈信息的形式,通过第一通信链路发送至服务器110。服务器110通过第一通信链路接收到反馈信息,可以理解的是,当于第一终端100处于同一局域网下的第二终端为多个时,所述反馈信息中包含每个第二终端的地址信息;服务器110反馈信息中第二终端1的地址信息。向所述地址信息指示的第二终端1发送第二链路建立请求。第二终端1接收到所述服务器110发送的第二链路建立请求,响应与所述第二链路建立请求,建立与服务器110之间的第二通信链路。
需要说明的是,当局域网下的第二终端包括多个时,各第二终端(如第二终端2、第二终端3...第二终端n)同样适用于上述方法,以建立与第一终端100的第三通信链路,以及与服务器110的第二通信链路。
服务器110可以基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向第一终端100发送的下行数据。
进一步的,在实际应用中,所述下行数据可以包括所述服务器110经第一通信链路发送的第一数据,以及由服务器110发送经所述第二终端1转发至第一终端100的第二数据。
具体的,服务器110基于所述第一通信链路向第一终端100发送第一数据,服务器110向第二终端集群中的每个第二终端(第二终端1、第二终端2...第二终端n)通过各第二通信链路发送的第二数据,第二终端集群中的每个第二终端(第二终端1、第二终端2...第二终端n)将第二数据通过第三通信链路转发至第一终端100。
第一终端100可以基于所述第一通信链路、与各所述第二终端之间的所述第三通信链路以及所述服务器与每个所述第二终端之间的第二通信链路,向所述服务器110发送上行数据。
进一步的,在实际应用中,所述上行数据可以包括第一终端100经第一通信链路向服务器110发送第三数据,以及由第一终端100发送经所述第二终端(如第二终端1、第二终端2...第二终端n)转发至服务器的第四数据。
具体的,第一终端100基于所述第一通信链路向服务器110发送第三数据,第一终端100向第二终端集群中的每个第二终端(第二终端1、第二终端2...第二终端n)通过各第三通信链路发送第四数据,第二终端集群中的每个第二终端(第二终端1、第二终端2...第二终端n)将第四数据通过第二通信链路转发至服务器110。
另外,上述实施例提供的数据传输控制系统实施例与一些实施例中的所述的数据传输控制方法属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
在本申请实施例中,服务器通过建立与第一终端之间的第一通信链路,并建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,然后基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。服务器可以在通信链路的通信状况不佳时,避免基于与第一终端之间通信链路传输数据时出现的传输时延较高的问题,提高了服务器下行数据的发送效率,降低了数据传输的时延,基于多通信链路的方式可以减小服务器与第一终端间通信链路的负荷。同时,服务器也可以基于创建好的所述第一通信链路、所述第二通信链路以及所述第三通信链路,来接收第一终端发送的上行数据,服务器可以快速的接收到第一终端的上行数据,降低数据接收时延,从而保障了数据传输的实时性和可靠性。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参见图7,其示出了本申请一个示例性实施例提供的数据传输控制装置的结构示意图。该数据传输控制装置可以通过软件、硬件或者两者的结合实现成为装置的全部或一部分。该装置1包括第一通信链路建立模块11、第二通信链路建立模块12和下行数据发送模块13。
第一通信链路建立模块11,用于建立与第一终端之间的第一通信链路;
第二通信链路建立模块12,用于建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路;
下行数据发送模块13,用于基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
可选的,所述下行数据包括第一数据以及第二数据,所述下行数据发送模块13,具体用于:
基于所述第一通信链路向所述第一终端发送所述第一数据,以及通过与所述第二终端的所述第二通信链路以及所述第三通信链路向所述第一终端发送所述第二数据。
可选的,如10图所示,所述装置1,包括:
控制指令发送模块14,用于通过所述第一通信链路向所述第一终端发送控制指令,以使所述第一终端检测当前局域网下的至少一个所述第二终端;
反馈信息接收模块15,用于接收所述第一终端通过所述第一通信链路发送的反馈信息。
可选的,如图7所示,所述第二通信链路建立模块12,包括:
地址信息获取单元121,用于获取所述反馈信息中所述第二终端的地址信息;
建立请求发送单元122,用于根据所述地址信息向所述第二终端发送第一链路建立请求,所述第一链路建立请求用于建立与所述第二终端之间的所述第二通信链路。
可选的,所述第二通信链路建立模块12,具体用于:
接收所述第二终端发送的第二链路建立请求,根据所述第二链路建立请求建立与所述第二终端之间的所述第二通信链路。
可选的,如图8所示,所述控制指令发送模块14,包括:
链路状态获取单元141,用于获取所述第一通信链路的第一通信链路状态,根据所述第一通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令;
检测指令发送单元142,用于通过所述第一通信链路向所述第一终端发送检测指令,接收所述第一终端基于所述检测指令发送的第二通信链路状态,根据所述第二通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令。
可选的,如图9所示,所述链路状态获取单元141,包括:
通信质量确定子单元1411,用于获取所述第一通信链路的至少一个通信参数,根据所述通信参数确定所述第一通信链路的通信质量;
负载状态确定子单元1412,用于当所述通信质量符合预设条件时,确定所述第一通信链路的第一通信链路状态为通信负载状态;
控制指令发送子单元1413,用于根据所述通信负载状态通过所述第一通信链路向所述第一终端发送所述控制指令。
可选的,如图10所示,所述装置1,包括:
上行数据接收模块16,用于基于所述第一通信链路、与所述第二终端之间的所述第二通信链路以及所述第一终端与所述第二终端之间的第三通信链路,接收所述第一终端发送的上行数据。
可选的,所述上行数据包括第三数据以及第四数据,所述上行数据接收模块16,具体用于:
基于所述第一通信链路接收所述第一终端发送的所述第三数据,以及通过与各所述第二终端之间的所述第二通信链路接收所述第四数据,所述第四数据由所述第一终端基于所述第三通信链路发送至所述第二终端。
需要说明的是,上述实施例提供的数据传输控制装置在执行数据传输控制方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输控制装置与数据传输控制方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本实施例中,服务器通过建立与第一终端之间的第一通信链路,并建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,然后基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。服务器可以在通信链路的通信状况不佳时,避免基于与第一终端之间通信链路传输数据时出现的传输时延较高的问题,提高了服务器下行数据的发送效率,降低了数据传输的时延,基于多通信链路的方式可以减小服务器与第一终端间通信链路的负荷。同时,服务器也可以基于创建好的所述第一通信链路、所述第二通信链路以及所述第三通信链路,来接收第一终端发送的上行数据,服务器可以快速的接收到第一终端的上行数据,降低数据接收时延,从而保障了数据传输的实时性和可靠性。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1-图5所示实施例的所述数据传输控制方法,具体执行过程可以参见图1-图5所示实施例的具体说明,在此不进行赘述。
本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行如上述图1-图5所示实施例的所述数据传输控制方法,具体执行过程可以参见图1-图5所示实施例的具体说明,在此不进行赘述。
请参见图11,为本申请实施例提供了一种电子设备的结构示意图。如图11所示,所述电子设备1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
其中,通信总线1002用于实现这些组件之间的连接通信。
其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个服务器1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行服务器1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图11所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据传输控制应用程序。
在图11所示的电子设备1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的数据传输控制应用程序,并具体执行以下操作:
建立与第一终端之间的第一通信链路;
建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路;
基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
在一个实施例中,所述处理器1001在执行所述下行数据包括第一数据以及第二数据,所述基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据时,具体执行以下操作:
基于所述第一通信链路向所述第一终端发送所述第一数据,以及通过与所述第二终端的所述第二通信链路以及所述第三通信链路向所述第一终端发送所述第二数据。
在一个实施例中,所述处理器1001在执行所述建立与至少一个第二终端之间的第二通信链路之前,还执行以下操作:
通过所述第一通信链路向所述第一终端发送控制指令,以使所述第一终端检测当前局域网下的至少一个所述第二终端;
接收所述第一终端通过所述第一通信链路发送的反馈信息。
在一个实施例中,所述处理器1001在执行所述建立与至少一个第二终端之间的第二通信链路时,具体执行以下操作:
获取所述反馈信息中所述第二终端的地址信息;
根据所述地址信息向所述第二终端发送第一链路建立请求,所述第一链路建立请求用于建立与所述第二终端之间的所述第二通信链路。
在一个实施例中,所述处理器1001在执行所述建立与至少一个第二终端之间的第二通信链路时,具体执行以下操作:
接收所述第二终端发送的第二链路建立请求,根据所述第二链路建立请求建立与所述第二终端之间的所述第二通信链路。
在一个实施例中,所述处理器1001在执行所述通过所述第一通信链路向所述第一终端发送控制指令时,具体执行以下操作:
获取所述第一通信链路的第一通信链路状态,根据所述第一通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令;和/或,
通过所述第一通信链路向所述第一终端发送检测指令,接收所述第一终端基于所述检测指令发送的第二通信链路状态,根据所述第二通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令。
在一个实施例中,所述处理器1001在执行所述获取所述第一通信链路的第一通信链路状态,根据所述第一通信链路状态通过所述第一通信链路向所述第一终端发送控所述制指令时,具体执行以下操作:
获取所述第一通信链路的至少一个通信参数,根据所述通信参数确定所述第一通信链路的通信质量;
当所述通信质量符合预设条件时,确定所述第一通信链路的第一通信链路状态为通信负载状态;
根据所述通信负载状态通过所述第一通信链路向所述第一终端发送所述控制指令。
在一个实施例中,所述处理器1001在执行所述数据传输控制方法时,具体执行以下步骤:
基于所述第一通信链路、与所述第二终端之间的所述第二通信链路以及所述第一终端与所述第二终端之间的第三通信链路,接收所述第一终端发送的上行数据。
在一个实施例中,所述处理器1001在执行所述上行数据包括第三数据以及第四数据,所述基于所述第一通信链路、与所述第二终端之间的所述第二通信链路以及所述第一终端与所述第二终端之间的第三通信链路,接收所述第一终端发送的上行数据时,具体执行以下步骤:
基于所述第一通信链路接收所述第一终端发送的所述第三数据,以及通过与各所述第二终端之间的所述第二通信链路接收所述第四数据,所述第四数据由所述第一终端基于所述第三通信链路发送至所述第二终端。
在本实施例中,服务器通过建立与第一终端之间的第一通信链路,并建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路,然后基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。服务器可以在通信链路的通信状况不佳时,避免基于与第一终端之间通信链路传输数据时出现的传输时延较高的问题,提高了服务器下行数据的发送效率,降低了数据传输的时延,基于多通信链路的方式可以减小服务器与第一终端间通信链路的负荷。同时,服务器也可以基于创建好的所述第一通信链路、所述第二通信链路以及所述第三通信链路,来接收第一终端发送的上行数据,服务器可以快速的接收到第一终端的上行数据,降低数据接收时延,从而保障了数据传输的实时性和可靠性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (11)

1.一种数据传输控制方法,其特征在于,所述方法包括:
建立与第一终端之间的第一通信链路;
建立与至少一个第二终端之间的第二通信链路,所述至少一个第二终端为与第一终端位于同一局域网下的终端,所述第一终端与所述第二终端之间建立第三通信链路;
基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据。
2.根据权利要求1所述的方法,其特征在于,所述下行数据包括第一数据以及第二数据,所述基于所述第一通信链路、所述第二通信链路以及所述第三通信链路,向所述第一终端发送下行数据,包括:
基于所述第一通信链路向所述第一终端发送所述第一数据,以及通过与所述第二终端的所述第二通信链路以及所述第三通信链路向所述第一终端发送所述第二数据。
3.根据权利要求1所述的方法,其特征在于,所述建立与至少一个第二终端之间的第二通信链路之前,还包括:
通过所述第一通信链路向所述第一终端发送控制指令,以使所述第一终端检测当前局域网下的至少一个所述第二终端;
接收所述第一终端通过所述第一通信链路发送的反馈信息。
4.根据权利要求3所述的方法,其特征在于,所述建立与至少一个第二终端之间的第二通信链路,包括:
获取所述反馈信息中所述第二终端的地址信息;
根据所述地址信息向所述第二终端发送第一链路建立请求,所述第一链路建立请求用于建立与所述第二终端之间的所述第二通信链路。
5.根据权利要求1所述的方法,其特征在于,所述建立与至少一个第二终端之间的第二通信链路,包括:
接收所述第二终端发送的第二链路建立请求,根据所述第二链路建立请求建立与所述第二终端之间的所述第二通信链路。
6.根据权利要求3所述的方法,其特征在于,所述通过所述第一通信链路向所述第一终端发送控制指令,包括:
获取所述第一通信链路的第一通信链路状态,根据所述第一通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令;和/或,
通过所述第一通信链路向所述第一终端发送检测指令,接收所述第一终端基于所述检测指令发送的第二通信链路状态,根据所述第二通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令。
7.根据权利要求6所述的方法,其特征在于,所述获取所述第一通信链路的第一通信链路状态,根据所述第一通信链路状态通过所述第一通信链路向所述第一终端发送所述控制指令,包括:
获取所述第一通信链路的至少一个通信参数,根据所述通信参数确定所述第一通信链路的通信质量;
当所述通信质量符合预设条件时,确定所述第一通信链路的第一通信链路状态为通信负载状态;
根据所述通信负载状态通过所述第一通信链路向所述第一终端发送所述控制指令。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述第一通信链路、与所述第二终端之间的所述第二通信链路以及所述第一终端与所述第二终端之间的第三通信链路,接收所述第一终端发送的上行数据。
9.根据权利要求8所述的方法,其特征在于,所述上行数据包括第三数据以及第四数据,所述基于所述第一通信链路、与所述第二终端之间的所述第二通信链路以及所述第一终端与所述第二终端之间的第三通信链路,接收所述第一终端发送的上行数据,包括:
基于所述第一通信链路接收所述第一终端发送的所述第三数据,以及通过与所述第二终端之间的所述第二通信链路接收所述第四数据,所述第四数据由所述第一终端基于所述第三通信链路发送至所述第二终端。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~9任意一项的方法步骤。
11.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~9任意一项的方法步骤。
CN202010255877.0A 2020-04-02 2020-04-02 一种数据传输控制方法、装置、存储介质及电子设备 Pending CN111629024A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010255877.0A CN111629024A (zh) 2020-04-02 2020-04-02 一种数据传输控制方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010255877.0A CN111629024A (zh) 2020-04-02 2020-04-02 一种数据传输控制方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN111629024A true CN111629024A (zh) 2020-09-04

Family

ID=72273161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010255877.0A Pending CN111629024A (zh) 2020-04-02 2020-04-02 一种数据传输控制方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN111629024A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333602A (zh) * 2020-11-11 2021-02-05 支付宝(杭州)信息技术有限公司 信号处理方法、信号处理设备、计算机可读存储介质及室内用播放系统
CN113660148A (zh) * 2021-06-30 2021-11-16 华人运通(上海)自动驾驶科技有限公司 一种实时远程驾驶系统及方法
CN113722077A (zh) * 2021-11-02 2021-11-30 腾讯科技(深圳)有限公司 数据处理方法、系统、相关设备、存储介质及产品
CN114449492A (zh) * 2020-11-04 2022-05-06 荣耀终端有限公司 数据传输方法及终端设备
CN115334014A (zh) * 2021-04-27 2022-11-11 阿里巴巴新加坡控股有限公司 虚拟交换机和数据传输系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2858504A1 (fr) * 2003-08-01 2005-02-04 France Telecom Procede et systeme de transmission de donnees a haut debit et a qualite de service predeterminee dans un reseau de telecommunications
CN105933178A (zh) * 2016-03-31 2016-09-07 乐视控股(北京)有限公司 用于检测通信链路的方法、装置和终端设备
CN108093459A (zh) * 2017-12-29 2018-05-29 上海京颐科技股份有限公司 医疗终端的数据传输方法及装置、存储介质、终端
CN109039928A (zh) * 2017-06-09 2018-12-18 华为技术有限公司 数据的传输方法、装置和无线保真路由器
CN109561072A (zh) * 2018-10-29 2019-04-02 视联动力信息技术股份有限公司 一种链路检测方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2858504A1 (fr) * 2003-08-01 2005-02-04 France Telecom Procede et systeme de transmission de donnees a haut debit et a qualite de service predeterminee dans un reseau de telecommunications
CN105933178A (zh) * 2016-03-31 2016-09-07 乐视控股(北京)有限公司 用于检测通信链路的方法、装置和终端设备
CN109039928A (zh) * 2017-06-09 2018-12-18 华为技术有限公司 数据的传输方法、装置和无线保真路由器
CN108093459A (zh) * 2017-12-29 2018-05-29 上海京颐科技股份有限公司 医疗终端的数据传输方法及装置、存储介质、终端
CN109561072A (zh) * 2018-10-29 2019-04-02 视联动力信息技术股份有限公司 一种链路检测方法及系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114449492A (zh) * 2020-11-04 2022-05-06 荣耀终端有限公司 数据传输方法及终端设备
CN114449492B (zh) * 2020-11-04 2023-01-06 荣耀终端有限公司 数据传输方法及终端设备
CN112333602A (zh) * 2020-11-11 2021-02-05 支付宝(杭州)信息技术有限公司 信号处理方法、信号处理设备、计算机可读存储介质及室内用播放系统
CN115334014A (zh) * 2021-04-27 2022-11-11 阿里巴巴新加坡控股有限公司 虚拟交换机和数据传输系统
CN115334014B (zh) * 2021-04-27 2023-05-16 阿里巴巴新加坡控股有限公司 虚拟交换机和数据传输系统
CN113660148A (zh) * 2021-06-30 2021-11-16 华人运通(上海)自动驾驶科技有限公司 一种实时远程驾驶系统及方法
CN113722077A (zh) * 2021-11-02 2021-11-30 腾讯科技(深圳)有限公司 数据处理方法、系统、相关设备、存储介质及产品

Similar Documents

Publication Publication Date Title
CN111629452A (zh) 一种数据传输控制方法、装置、存储介质及电子设备
CN111629024A (zh) 一种数据传输控制方法、装置、存储介质及电子设备
US10392823B2 (en) Synthetic client
CN110417915B (zh) 一种推送消息传输方法、装置、存储介质及电子设备
RU2533291C2 (ru) Способ, устройство и система для выполнения мультимедийной услуги в беспроводной локальной сети
JP5891559B2 (ja) インスタントメッセージングの方法、端末、サーバ及びシステム
US9319852B2 (en) Interoperability and communications system dynamic media proxy based on capability negotiation
US11699084B2 (en) Reinforcement learning in real-time communications
US20160043924A1 (en) System and method for monitoring user activity on a plurality of networked computing devices
CN103391240B (zh) 一种即时通讯实现方法及装置
CN105122879A (zh) 观测辅助带宽管理
CN111586809B (zh) 一种基于sdn的异构无线网络接入选择方法及系统
US20210385646A1 (en) End to end troubleshooting of mobility services
WO2016192578A1 (zh) 一种无线通信方法及设备
CN103763206A (zh) 一种网络调度方法及网关
WO2021031386A1 (zh) 定位方法、装置、服务器、存储介质以及终端
CN113179509B (zh) 基于WiFi的自组网方法、装置、存储介质及无线节点
CN109413120A (zh) 一种通信方法及装置、电子设备及服务器
Wang et al. Machine Learning-Enabled Software-Defined Networks for QoE Management
Zhang et al. USTB 6G: Key Technologies and Metaverse Applications
CN106161044B (zh) 一种信息传输方法和装置
US11601478B2 (en) Media server management for communication session
CN109413385A (zh) 一种视频定位监控方法、系统及云服务器
CN106464304B (zh) 资源共享的方法和终端
CN115842734B (zh) 网络管理方法、控制器和sdn网络

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200904

RJ01 Rejection of invention patent application after publication