一种网络优化的方法、装置及系统

文档序号:1314610 发布日期:2020-07-10 浏览:12次 >En<

阅读说明:本技术 一种网络优化的方法、装置及系统 (Network optimization method, device and system ) 是由 郑轶 于 2020-03-23 设计创作,主要内容包括:本发明提供了一种网络优化的方法、装置及系统,其中,该方法包括:确定当前策略信息;从服务器列表中选择一个服务器作为目标服务器,并基于当前网络参数将与当前数据参数相匹配的目标数据发送至目标服务器;根据目标服务器下发的调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至目标服务器。通过本发明实施例提供的网络优化的方法、装置及系统,能够基于策略信息进行网络请求,并选择合适的目标服务器,基于当前数据参数和当前网络参数发送数据;同时,基于调整参数指令能够实时调整更新策略信息,实现对网络实时优化,且优化粒度更细致,调整方式也多样化。(The invention provides a method, a device and a system for network optimization, wherein the method comprises the following steps: determining current policy information; selecting one server from the server list as a target server, and sending target data matched with the current data parameters to the target server based on the current network parameters; and adjusting the current data parameters and/or the current network parameters according to the adjustment parameter instruction issued by the target server, and sending the target data matched with the adjusted current data parameters to the target server based on the adjusted current network parameters. By the method, the device and the system for network optimization, provided by the embodiment of the invention, a network request can be carried out based on the strategy information, a proper target server is selected, and data is sent based on the current data parameters and the current network parameters; meanwhile, the updating strategy information can be adjusted in real time based on the parameter adjusting instruction, so that the real-time optimization of the network is realized, the optimization granularity is finer, and the adjusting mode is diversified.)

一种网络优化的方法、装置及系统

技术领域

本发明涉及网络优化的技术领域,具体而言,涉及一种网络优化的方法、装置及系统。

背景技术

在实时音视频通信的应用场景下,客户端需要连接服务器,以实现音视频数据的传输。由于地域、网络运营商、客户端设备状态不同,需要为不同的客户端分配不同的服务器,并且当数据传输出现问题时可以实时调整数据传输策略,如果服务器出现故障,可以快速向客户端分配其他服务器,保障音视频数据传输的可用性和实时性。

目前常用的方案是通过调度的方式,分配给客户端最优的服务器,并在发生故障时,切换给新的服务器,调度的方式主要有以下两种:基于DNS(Domain Name System,域名系统)的调度方式、基于HttpDNS的调度方式。对于基于DNS的调度方式,本地DNS服务器使用了缓存,数据更新有延迟,全网生效需要10-20分钟,不能满足实时调度的需求,同时存在DNS劫持等问题。而对于基于HttpDNS的调度方式,其只支持维护静态的服务器IP列表,只能根据客户端的地区、运营商等进行调度,不能做到根据每个客户端的状态,拿到不同的服务器IP列表,调度的粒度不够精细,不能有针对性的实时完成网络优化。

发明内容

为解决上述问题,本发明实施例的目的在于提供一种网络优化的方法、装置及系统。

第一方面,本发明实施例提供了一种网络优化的方法,包括:

确定当前策略信息,所述当前策略信息包括当前数据参数、当前网络参数和服务器列表;

从所述服务器列表中选择一个服务器作为目标服务器,并基于所述当前网络参数,将与所述当前数据参数相匹配的目标数据发送至所述目标服务器;

获取所述目标服务器下发的调整参数指令,根据所述调整参数指令调整所述当前数据参数和/或所述当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至所述目标服务器;其中,所述调整参数指令为所述目标服务器根据数据传输状态所生成的指令。

第二方面,本发明实施例提供了一种网络优化的方法,包括:

获取第一客户端发送的目标数据,并实时确定与所述第一客户端之间的数据传输状态;

根据所述数据传输状态生成相应的调整参数指令,并将所述调整参数指令下发至所述第一客户端,指示所述第一客户端根据所述调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数继续发送与调整后的当前数据参数相匹配的目标数据。

第三方面,本发明实施例还提供了一种网络优化的装置,包括:

策略确定模块,用于确定当前策略信息,所述当前策略信息包括当前数据参数、当前网络参数和服务器列表;

发送模块,用于从所述服务器列表中选择一个服务器作为目标服务器,并基于所述当前网络参数,将与所述当前数据参数相匹配的目标数据发送至所述目标服务器;

参数调整模块,用于获取所述目标服务器下发的调整参数指令,根据所述调整参数指令调整所述当前数据参数和/或所述当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至所述目标服务器;其中,所述调整参数指令为所述目标服务器根据数据传输状态所生成的指令。第四方面,本发明实施例还提供了一种网络优化的装置,包括:

第四方面,本发明实施例还提供了一种网络优化的装置,包括:

获取模块,用于获取第一客户端发送的目标数据,并实时确定与所述第一客户端之间的数据传输状态;

指令生成模块,用于根据所述数据传输状态生成相应的调整参数指令,并将所述调整参数指令下发至所述第一客户端,指示所述第一客户端根据所述调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数继续发送与调整后的当前数据参数相匹配的目标数据。

第五方面,本发明实施例还提供了一种网络优化的系统,包括:调度服务器和数据服务器;

所述调度服务器用于获取客户端发送的连接请求,所述连接请求包括所述客户端的客户端标识和发送所述连接请求的发送时间;所述调度服务器根据所述客户端标识确定所述客户端的所属信息,根据所述发送时间和接收到所述连接请求的接收时间之间的时间差确定与所述客户端之间的网络速度;根据所述所属信息和所述网络速度生成所述客户端的基础策略信息,并将所述基础策略信息下发至所述客户端,指示所述客户端根据所述基础策略信息生成当前数据参数和当前网络参数;其中,所述基础策略信息包括数据参数范围、网络参数范围和服务器列表,且所述数据服务器为所述服务器列表中的一个服务器;

在所述客户端将所述服务器列表中的所述数据服务器作为目标服务器时,所述数据服务器用于获取所述客户端基于所述当前网络参数所发送的、与所述当前数据参数相匹配的目标数据,并实时确定与所述客户端之间的数据传输状态;

所述数据服务器还用于根据所述数据传输状态生成相应的调整参数指令,并将所述调整参数指令下发至所述客户端,指示所述客户端根据所述调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至所述数据服务器。

本发明实施例上述第一方面提供的方案中,客户端能够基于策略信息进行网络请求,通过服务器列表选择合适的目标服务器,并基于当前数据参数和当前网络参数发送数据,使得当前通信过程能够适应网络状态;同时,基于目标服务器反馈的调整参数指令能够实时调整更新策略信息,实现对网络实时优化,且优化粒度更细致,调整方式也多样化。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

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

图1示出了本发明实施例所提供的一种网络优化的方法的流程图;

图2示出了本发明实施例所提供的另一种网络优化的方法的流程图;

图3示出了本发明实施例所提供的网络优化的方法的详细流程图;

图4示出了本发明实施例所提供的一种网络优化的装置的结构示意图;

图5示出了本发明实施例所提供的另一种网络优化的装置的结构示意图;

图6示出了本发明实施例所提供的一种网络优化的系统的结构示意图;

图7示出了本发明实施例所提供的用于执行网络优化的方法的电子设备的结构示意图。

具体实施方式

在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

本发明实施例提供的一种网络优化的方法,基于策略信息实现客户端与服务器之间的网络优化。本实施例中,该网络优化的方法由客户端执行,参见图1所示,该方法包括步骤101-103:

步骤101:确定当前策略信息,该当前策略信息包括当前数据参数、当前网络参数和服务器列表。

本发明实施例中,客户端需要向服务器发送数据时,首先确定客户端需要使用的策略信息,即当前策略信息;该当前策略信息具体包括当前数据参数、当前网络参数和服务器列表。其中,该当前数据参数为当前所用的与待传输的数据相关的参数,当前网络参数即为当前所用的与网络相关的参数。例如,若客户端需要发送音视频数据时,该当前数据参数可以包括最大分辨率、最大帧率、最大码流中的一项或多项;当前数据参数的变化会影响音视频流的大小,从而改变网络传输数据的大小。当前网络参数可以包括:UDP(用户数据报协议,User Datagram Protocol)报文大小、UDP发包速率,丢包补偿策略中的一项或多项;具体可以根据网络环境设置合适的当前网络参数,从而提高数据传输性能。

此外,服务器列表中包含多个服务器的地址(如IP地址等),该服务器列表可以为本地预先存储的,也可以由调度服务器下发。可选的,上述步骤“确定当前策略信息”包括步骤A1-A3:

步骤A1:向调度服务器发送连接请求,连接请求包括客户端的客户端标识和发送连接请求的发送时间。

本实施例中,客户端在需要上传数据时,调用调度服务器的接口,从而向调度服务器发送包含客户端标识和发送时间的连接请求,通知调度服务器本地客户端需要上传数据,使得调度服务器可以向客户端反馈该客户端可用的服务器列表。其中,该客户端标识具体可以为客户端的IP地址。

步骤A2:获取调度服务器反馈的基础策略信息,基础策略信息为调度服务器根据客户端标识所确定的所属信息以及根据发送时间和接收到连接请求的接收时间之间的时间差所生成的策略信息,且基础策略信息包括数据参数范围、网络参数范围和服务器列表。

本实施例中,调度服务器获取到客户端标识和发送时间之后,可以根据该客户端标识确定客户端的所属信息,该所属信息指的是客户端所隶属的相关信息,如客户端所属地区、所属运营商等。同时,调度服务器可以确定接收到该连接请求的接收时间,基于该接收时间(即调度服务器接收到该连接请求的时间)与发送时间(即客户端发送该连接请求的时间)之间的时间差即可计算出客户端与服务端服务器之间的网络速度,进而基于该所属信息和网络速度即可确定适用于该客户端的服务器列表,以及数据参数范围和网络参数范围,即可以生成基础策略信息,并将该基础策略信息发送至客户端。其中,本实施例中的策略信息(包括基础策略信息和当前策略信息等)可以是文件格式,以方便客户端与服务器之间传输该策略信息。

步骤A3:根据数据参数范围设置当前数据参数,根据网络参数范围设置当前网络参数,并根据当前数据参数、当前网络参数和服务器列表生成当前策略信息。

本实施例中,客户端在接收到基础策略信息之后,基于本地的实际情况、或者按照通常的方式设置数据参数和网络参数,即设置当前数据参数和当前网络参数。具体的,根据数据参数范围设置当前数据参数,该当前数据参数需要位于该数据参数范围之内;相应的,根据网络参数范围设置当前网络参数,且该当前网络参数位于该网络参数范围内。进而,基于该当前数据参数、当前网络参数和服务器列表即可确定当前策略信息。

步骤102:从服务器列表中选择一个服务器作为目标服务器,并基于当前网络参数,将与当前数据参数相匹配的目标数据发送至目标服务器。

本发明实施例中,客户端确定服务器列表之后,即可从服务器列表中选取一个服务器作为需要上传数据的服务器,即目标服务器。同时,确定当前需要上传的数据,即目标数据,并基于当前网络参数,将与当前数据参数相匹配的目标数据发送至该目标服务器。例如,将分辨率符合当前数据参数的视频数据作为目标数据,并按照相应的报文大小、发包速度发送该视频数据。其中,可以将服务器列表中的第一个服务器作为目标服务器,在测试可以连通该目标服务器之后,即可向该目标服务器发送目标数据。

可选的,若客户端与目标服务器建立连接失败,或者客户端接收到目标服务器发送的更换服务器请求,则客户端可以从服务器列表中选择另一服务器作为目标服务器。本实施例中,若客户端与该目标服务器之间通信异常导致二者不能建立连接,则客户端需要更换其他服务器作为目标服务器。或者,虽然客户端与目标服务器之间建立了通信连接,但二者之间的通信质量较差,此时目标服务器可以生成更换服务器请求,使得客户端可以更换其他服务器。

进一步,若服务器列表中的所有服务器均不能作为目标服务器,客户端可以向调度服务器发送更新策略信息请求,并获取调度服务器反馈的新的基础策略信息,该基础策略信息包括数据参数范围、网络参数范围和服务器列表。其中,该更新策略信息请求与上述的“连接请求”本质上相同,均用于指示调度服务器生成策略信息,其过程与上述步骤A1-A2基本相同,此处不做赘述。

步骤103:获取目标服务器下发的调整参数指令,根据调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至目标服务器;其中,调整参数指令为目标服务器根据数据传输状态所生成的指令。

本发明实施例中,客户端与目标服务器之间建立通信连接并发送目标数据时,目标服务器还可基于当前的数据传输状态生成相应的调整参数指令,从而实时调整客户端与目标服务器之间的数据传输状态,实时进行网络优化。本实施例中,客户端可以基于该调整参数指令调整相应的当前数据参数和/或当前网络参数,并继续向目标服务器发送目标数据。具体的,客户端可以根据该调整参数指令调整当前数据参数,并基于当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至目标服务器;或者,客户端可以根据调整参数指令调整当前网络参数,并基于调整后的当前网络参数将与当前数据参数相匹配的目标数据发送至目标服务器;或者,客户端也可以根据调整参数指令调整当前数据参数和当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至目标服务器。本实施例中的“目标数据”为客户端需要上传的数据,由于客户端是持续向目标服务器发送目标数据的,步骤102中的“目标数据”所包含的内容与步骤103中的“目标数据”所包含的内容可以是不同的,但二者均为客户端需要上传的数据。

本发明实施例提供的一种网络优化的方法,客户端能够基于策略信息进行网络请求,通过服务器列表选择合适的目标服务器,并基于当前数据参数和当前网络参数发送数据,使得当前通信过程能够适应网络状态;同时,基于目标服务器反馈的调整参数指令能够实时调整更新策略信息,实现对网络实时优化,且优化粒度更细致,调整方式也多样化。

在上述实施例的基础上,目标服务器下发的调整参数指令可以为详细的指令,客户端在接收到该调整参数指令时执行即可,此时,上述步骤103“根据调整参数指令调整当前数据参数和/或当前网络参数”包括:

步骤B1:若调整参数指令为提升网络参数指令,提升当前网络参数。

步骤B2:若调整参数指令为提升数据参数指令,提升当前数据参数。

步骤B3:若调整参数指令为降低网络参数指令,降低当前网络参数。

步骤B4:若调整参数指令为降低数据参数指令,降低当前数据参数。

本发明实施例中,目标服务器可以根据当前的数据传输状态确定如何调整参数,进而可以直接指示客户端调整网络参数或数据参数。具体的,若当前的数据传输状态良好,目标服务器可以生成提升网络参数指令,使得客户端可以提升当前网络参数,即客户端能够以更高的当前网络参数(如更高的发包速率等)向目标服务器发送目标数据;若该调整参数指令为提升数据参数指令,则客户端可以提升当前数据参数,使得客户端能够发送符合更高数据参数(例如分辨率更高的视频数据等)的目标数据。相反的,若当前的数据传输状态较差,则目标服务器需要生成降低网络参数指令或降低数据参数指令,以降低客户端与目标服务器之间的网络传输要求。

可选的,为了优先保障数据传输的流畅性,避免增加延迟,当若当前的数据传输状态良好,目标服务器优先生成提升网络参数指令,在客户端的当前网络参数大于第一预设值(例如达到上限时),目标服务器再生成提升数据参数指令;或者,生成提升数据参数指令的要求高于生成提升网络参数指令的要求。例如,目标数据为视频数据,若客户端连续10秒内丢包率低于3%,则目标服务器生成提升网络参数指令,从而通知客户端将策略信息中的网络参数提升5%;如果在接下来的10秒内客户端还能继续保持较低的丢包率,继续提升客户端的网络参数;当网络状态非常好时(如可用带宽达到5Mbps),可以生成提升数据参数指令,通知客户端提升策略信息中的数据参数,使得客户端可以向目标服务器上传高分辨率、高清的视频数据。

相应的,若当前的数据传输状态较差,目标服务器优先生成降低数据参数指令,在客户端的当前数据参数小于第二预设值(例如达到下限时),目标服务器再生成降低网络参数指令;或者,生成降低数据参数指令的要求低于生成降低网络参数指令的要求。例如,如果客户端连续10秒内丢包率高于20%,目标服务器生成降低数据参数指令,通知客户端调低数据参数,降低音视频质量,减少传输音视频数据;如果在接下来的10秒内丢包率还保持在15%以上,目标服务器再生成降低网络参数指令,通知客户端降低策略信息中的网络参数。进一步的,如果数据参数和网络参数均降到低于最低阈值,而丢包率还没有改善,该目标服务器可以通知客户端更换其他服务器。

或者,目标服务器下发的调整参数指令可以为基本的指令,客户端在接收到该调整参数指令后基于本地的实际情况再进行适应性调整,此时,上述步骤103“根据调整参数指令调整当前数据参数和/或当前网络参数”包括:

步骤C1:若调整参数指令为提升参数指令,提升当前网络参数,在当前网络参数不能提升时,提升当前数据参数。

步骤C2:若调整参数指令为降低参数指令,降低当前数据参数,在当前数据参数不能降低时,降低当前网络参数。

本发明实施例中,在当前的数据传输状态良好时,目标服务器可以生成提升参数指令,通知客户端可以提升网络参数和/或数据参数。同时,客户端基于当前的参数(如当前网络参数、当前数据参数等)进一步确定是提升网络参数,还是提升数据参数。同样的,为了优先保障数据传输的流畅性,避免增加延迟,客户端也优先提升当前网络参数,在网络状态非常好的情况下再提升当前数据参数;同理,客户端优先降低当前数据参数,之后再降低当前网络参数。

本实施例中,通过实时生成调整参数指令,从而可以在网络状态好的时候上调参数,提高传输的流畅性和数据质量;在网络状态不好时下调参数,以保障传输的流畅性。同时,优先提高网络参数并优先降低数据参数,实现优先保障数据传输的流畅性,避免增加延迟。

基于同样的发明构思,本发明实施例还提供一种由服务器执行的网络优化的方法,参见图2所示,该方法包括:

步骤201:获取第一客户端发送的目标数据,并实时确定与第一客户端之间的数据传输状态。

本发明实施例中,第一客户端在需要向该服务器发送数据时,二者可以建立通信连接,进而使得第一客户端可以向该服务器发送目标数据。具体的,第一客户端可以设有包含当前数据参数、当前网络参数和服务器列表的策略信息,该服务器为服务器列表中的一个,且该第一客户端将从服务器列表中选择该服务器作为目标服务器,并基于当前网络参数,将与当前数据参数相匹配的目标数据发送至该服务器。其中,“第一客户端”与上述实施例中的“客户端”本质上相同,该第一客户端确定策略信息以及发送目标数据的过程可参见上述实施例所述,此处不做赘述。

同时,第一客户端向服务器发送目标数据的同时,该服务器还实时确定与该第一客户端之间的数据传输状态,例如确定丢包率、可用带宽等,使得后续可以实时调整二者之间的数据传输状态。

步骤202:根据数据传输状态生成相应的调整参数指令,并将调整参数指令下发至第一客户端,指示第一客户端根据调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数继续发送与调整后的当前数据参数相匹配的目标数据。

本发明实施例中,服务器基于与第一客户端之间的数据传输状态可以实时生成调整参数指令,使得第一客户端可以调整相应的策略信息,即第一客户端可以调整当前数据参数和/或当前网络参数,进而使得第一客户端可以基于调整后的当前网络参数继续发送与调整后的当前数据参数相匹配的目标数据。

可选的,服务器可以基于当前的数据传输状态生成详细的调整参数指令,客户端在接收到该调整参数指令时执行即可;本实施例中,数据传输状态可以包括丢包率和可用带宽,上述步骤202“根据数据传输状态生成相应的调整参数指令”包括:

步骤D1:在丢包率满足提升条件,且可用带宽小于第一预设阈值时,生成提升网络参数指令,指示第一客户端提升当前网络参数。

步骤D2:在丢包率满足提升条件,且可用带宽大于第二预设阈值时,生成提升数据参数指令,指示第一客户端提升当前数据参数。

本发明实施例中,在当前的数据传输状态较好时,说明服务器与第一客户端之间的网络状态较好,此时可以适当地提升网络参数和/或数据参数。其中,本实施例预先设置丢包率的提升条件,例如丢包率小于3%等,并预设可用带宽的第一预设阈值和第二预设阈值。具体的,在丢包率满足提升条件、且可用带宽小于第一预设阈值时,说明服务器与第一客户端之间的网络状态良好(即丢包率较低),但是可用带宽(吞吐量)一般,此时可以只提升报文大小、发包速率等网络参数,以保证数据传输时的流畅性。当丢包率满足提升条件、且可用带宽大于第二预设阈值时,说明当前的网络状态良好,且可用带宽也较好,此时可以提升数据参数,使得第一客户端可以发送具有更高当前数据参数的目标数据。

例如,第一客户端需要上传的目标数据为视频数据,如果第一客户端连续10秒内丢包率低于3%,并且服务器确定的可用带宽低于1Mbps,服务器可以生成提升网络参数指令,从而通知第一客户端将策略信息中的网络参数提升5%;如果在接下来的10秒内第一客户端还能继续保持较低的丢包率(如丢包率低于3%),则可以继续提升第一客户端的网络参数;如果第一客户端的丢包率仍然较低,且可用带宽达到5Mbps,说明当前的网络状态非常好,此时服务器可以生成提升数据参数指令,通知第一客户端提升策略信息中的数据参数,使得第一客户端可以向该服务器上传高分辨率、高清的视频数据。

步骤D3:在丢包率满足降低条件,生成降低数据参数指令,指示第一客户端降低当前数据参数。

步骤D4:在丢包率满足降低条件,且已经生成降低数据参数指令时,生成降低网络参数指令,指示第一客户端降低当前网络参数。

本发明实施例中,在当前的数据传输状态较差时,说明服务器与第一客户端之间的网络状态较差,此时可以适当地降低网络参数和/或数据参数。其中,本实施例预先设置丢包率的降低条件,例如丢包率大于15%等。具体的,在丢包率满足降低条件时,说明服务器与第一客户端之间的网络状态较差(即丢包率较稿),此时为保证数据传输的流畅性,服务器生成降低数据参数指令,以降低第一客户端所传输目标数据的分辨率、码流等数据参数。若丢包率满足降低条件、且已经生成降低数据参数指令时,说明当前网络较差,且即使降低了数据参数也仍然不足以保证流程性(因为此时的丢包率仍然较高),此时服务器可以生成降低网络参数指令,以降低报文大小、发包速率等网络参数。若数据参数和网络参数均降到低于最低阈值,而丢包率还没有改善,该服务器可以通知第一客户端更换其他服务器,例如,该服务器可以生成更换服务器请求。

可选的,为了优先保障数据传输的流畅性,避免增加延迟,当若当前的数据传输状态良好,服务器优先生成提升网络参数指令,在第一客户端的当前网络参数大于第一预设值(例如达到上限时),服务器再生成提升数据参数指令;或者,服务器生成提升数据参数指令的要求高于生成提升网络参数指令的要求。相应的,若当前的数据传输状态较差,该服务器优先生成降低数据参数指令,在第一客户端的当前数据参数小于第二预设值(例如达到下限时),服务器再生成降低网络参数指令;或者,服务器生成降低数据参数指令的要求低于生成降低网络参数指令的要求。其具体过程可参见上述实施例步骤B1-B4的相关内容,此处不做赘述。

或者,该服务器下发的调整参数指令可以为基本的指令,第一客户端在接收到该调整参数指令后可以再基于本地的实际情况进行适应性调整;具体的,上述步骤202“根据数据传输状态生成相应的调整参数指令”包括:

步骤E1:在数据传输状态满足提升条件时,生成提升参数指令,指示第一客户端提升当前数据参数和/或当前网络参数。

步骤E2:在数据传输状态满足降低条件时,生成降低参数指令,指示第一客户端降低当前数据参数和/或当前网络参数。

本发明实施例中,服务器可以预先设置提升条件和降低条件,在数据传输状态满足相应的条件时生成相应的指令(提升参数指令、或降低参数指令),使得第一客户端可以提升或降低相应的参数。例如,该提升条件可以为丢包率小于某个值(如3%),而降低条件可以为丢包率大于另一个值(如20%)等。第一客户端在接收到相应的指令之后,可以基于本地的实际情况进行适应性调整,以确定调整网络参数和/或数据参数。

步骤E3:在数据传输状态不满足通信条件时,生成更换服务器请求,指示第一客户端从服务器列表中重新选择其他服务器作为目标服务器。

本实施例中,若数据参数和网络参数均降到低于最低阈值,而丢包率还没有改善,此时的数据传输状态不满足通信条件,该服务器可以通知第一客户端更换其他服务器,即服务器可以生成更换服务器请求,使得第一客户端从服务器列表中重新选择其他服务器作为目标服务器。

本发明实施例提供的一种网络优化的方法,服务器能够基于当前的数据传输状态生成相应的调整参数指令,调整客户端在传输数据时所用的网络参数和数据参数,使得客户端可以基于调整后的网络参数和数据参数实时调整发送数据的策略,实现对网络实时优化,且优化粒度更细致,调整方式也多样化。客户端中设置包含网络参数和数据参数的策略信息,支持服务器对参数进行实时调整。

在上述实施例的基础上,该服务器还可以作为调度服务器为客户端生成初始的策略信息,即基础策略信息。具体的,该方法还包括:

步骤F1:获取第二客户端发送的连接请求,该连接请求包括第二客户端的客户端标识和发送连接请求的发送时间。

步骤F2:根据客户端标识确定第二客户端的所属信息,根据发送时间和接收到连接请求的接收时间之间的时间差确定与第二客户端之间的网络速度。

步骤F3:根据所属信息和网络速度生成第二客户端的基础策略信息,并将基础策略信息下发至第二客户端,指示第二客户端根据基础策略信息生成当前数据参数和当前网络参数;其中,基础策略信息包括数据参数范围、网络参数范围和服务器列表。

本发明实施例中的服务器可以作为数据传输的服务器,接收第一客户端传输的目标数据,具体如上述实施例所示;此外,该服务器还可以作为调度服务器为客户端生成基础策略信息,本实施例中以服务器为第二客户端生成基础策略信息为例说明。由于服务器可以与多个客户端进行通信连接,本实施例中的“第二客户端”与上述的“第一客户端”可以为相同的客户端,也可以为不同的客户端,本实施例对此不做限定。

具体的,第二客户端在第一次启动、或者需要更新本地的策略信息时,第二客户端即可向该服务器发送连接请求,服务器接收到该连接请求之后欧即可根据连接请求中的客户端标识确定该第二客户端的所属信息,即可以确定第二客户端的所述地区、所属运营商等,从而可以为第二客户端分配合适的服务器列表。同时,基于连接请求的发送时间和接收到该连接请求的接收时间之间的时间差可以确定与第二客户端之间的网络速度,方便确定适合第二客户端的数据参数范围和网络参数范围,从而生成基础策略信息。第二客户端获取到该基础策略信息之后,即可设置当前数据参数和当前网络参数,具体过程可参见上述实施例中步骤A2-A3的描述,此处不做赘述。

下面通过一个实施例详细介绍该网络优化方法的整体流程。

本发明实施例中,为方便说明,以专门设置调度服务器为例示出,数据服务器为与客户端之间进行数据传输的服务器,例如,在直播领域,该数据服务器可以为推拉流服务器等。参见图3所示,该方法包括:

步骤301:客户端向调度服务器发送连接请求,该连接请求包括客户端的客户端标识和发送连接请求的发送时间。

本实施例中,客户端第一次启动时,可以调用调度服务器接口,以获取基础策略信息。

步骤302:调度服务器根据客户端标识确定客户端的所属信息,根据发送时间和接收到连接请求的接收时间之间的时间差确定客户端的网络速度,并根据所属信息和网络速度生成客户端的基础策略信息。

本实施例中,该基础策略信息包括数据参数范围、网络参数范围和服务器列表;其中,该服务器列表中包含多个数据服务器的地址,以方便客户端从中选择一个数据服务器作为目标服务器。

步骤303:调度服务器将基础策略信息发送至客户端。

步骤304:客户端接收调度服务器发送的基础策略信息,根据该基础策略信息设置当前数据参数和当前网络参数,并从服务器列表中选择一个数据服务器作为目标服务器。

步骤305:客户端基于当前网络参数,将与当前数据参数相匹配的目标数据发送至目标服务器。

步骤306:目标服务器监控客户端的数据传输状态,在数据传输状态满足提升条件时,向客户端发送提升参数指令;在数据传输状态满足降低条件时,向客户端发送降低参数指令。

步骤307:客户端根据该提升参数指令提升当前数据参数和/或当前网络参数,根据该降低参数指令降低当前数据参数和/或当前网络参数。

步骤308:客户端基于调整后的当前网络参数,将与调整后的当前数据参数相匹配的目标数据发送至目标服务器。

本实施例中,上述步骤306-308是实时持续执行的,即目标服务器实时调整与客户端之间的网络状态,实现实时网络优化。

步骤309:在数据传输状态不满足通信条件时,目标服务器向客户端发送更换服务器请求。

步骤310:客户端从服务器列表中重新选择其他数据服务器作为目标服务器,继续发送目标数据。

步骤311:在服务器列表中的所有数据服务器均不能作为目标服务器时,客户端向调度服务器发送更新策略信息请求。

本实施例中,该更新策略信息请求与上述的连接请求本质上相同,均用于获取基础策略信息。客户端在重新获取到新的基础策略信息(包含新的服务器列表)之后,即可继续选择新的数据服务器作为目标服务器,继续发送目标数据。

以上详细介绍了网络优化的方法的流程,该方法也可以通过相应的装置实现,下面详细介绍该装置的结构和功能。

本发明实施例提供的一种网络优化的装置,可以设置在客户端侧,参见图4所示,该装置包括:

策略确定模块41,用于确定当前策略信息,所述当前策略信息包括当前数据参数、当前网络参数和服务器列表;

发送模块42,用于从所述服务器列表中选择一个服务器作为目标服务器,并基于所述当前网络参数,将与所述当前数据参数相匹配的目标数据发送至所述目标服务器;

参数调整模块43,用于获取所述目标服务器下发的调整参数指令,根据所述调整参数指令调整所述当前数据参数和/或所述当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至所述目标服务器;其中,所述调整参数指令为所述目标服务器根据数据传输状态所生成的指令。

在上述实施例的基础上,所述策略确定模块41确定当前策略信息包括:

向调度服务器发送连接请求,所述连接请求包括所述客户端的客户端标识和发送所述连接请求的发送时间;

获取所述调度服务器反馈的基础策略信息,所述基础策略信息为所述调度服务器根据所述客户端标识所确定的所属信息以及根据所述发送时间和接收到所述连接请求的接收时间之间的时间差所生成的策略信息,且所述基础策略信息包括数据参数范围、网络参数范围和服务器列表;

根据所述数据参数范围设置当前数据参数,根据所述网络参数范围设置当前网络参数,并根据所述当前数据参数、所述当前网络参数和所述服务器列表生成当前策略信息。

在上述实施例的基础上,所述参数调整模块43根据所述调整参数指令调整所述当前数据参数和/或所述当前网络参数包括:

若所述调整参数指令为提升网络参数指令,提升所述当前网络参数;若所述调整参数指令为提升数据参数指令,提升所述当前数据参数;若所述调整参数指令为降低网络参数指令,降低所述当前网络参数;若所述调整参数指令为降低数据参数指令,降低所述当前数据参数;

或者,若所述调整参数指令为提升参数指令,提升所述当前网络参数,在所述当前网络参数不能提升时,提升所述当前数据参数;若所述调整参数指令为降低参数指令,降低所述当前数据参数,在所述当前数据参数不能降低时,降低所述当前网络参数。

在上述实施例的基础上,该装置还包括:更新模块;

所述更新模块关于:若与所述目标服务器建立连接失败,或者接收到所述目标服务器发送的更换服务器请求,从所述服务器列表中选择另一服务器作为目标服务器;若所述服务器列表中的所有服务器均不能作为目标服务器,向调度服务器发送更新策略信息请求,并获取所述调度服务器反馈的新的基础策略信息,所述基础策略信息包括数据参数范围、网络参数范围和服务器列表。

本发明实施例提供的一种网络优化的装置,使得客户端能够基于策略信息进行网络请求,通过服务器列表选择合适的目标服务器,并基于当前数据参数和当前网络参数发送数据,使得当前通信过程能够适应网络状态;同时,基于目标服务器反馈的调整参数指令能够实时调整更新策略信息,实现对网络实时优化,且优化粒度更细致,调整方式也多样化。

基于同样的发明构思,本发明实施例还提供了一种网络优化的装置,其可应用于服务器侧,参见图5所示,该装置包括:

获取模块51,用于获取第一客户端发送的目标数据,并实时确定与所述第一客户端之间的数据传输状态;

指令生成模块52,用于根据所述数据传输状态生成相应的调整参数指令,并将所述调整参数指令下发至所述第一客户端,指示所述第一客户端根据所述调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数继续发送与调整后的当前数据参数相匹配的目标数据。

在上述实施例的基础上,所述指令生成模块52根据所述数据传输状态生成相应的调整参数指令,包括:

在所述数据传输状态满足提升条件时,生成提升参数指令,指示所述第一客户端提升所述当前数据参数和/或所述当前网络参数;在所述数据传输状态满足降低条件时,生成降低参数指令,指示所述第一客户端降低所述当前数据参数和/或所述当前网络参数;在所述数据传输状态不满足通信条件时,生成更换服务器请求,指示所述第一客户端从服务器列表中重新选择其他服务器作为目标服务器;

或者,所述数据传输状态包括丢包率和可用带宽;在所述丢包率满足提升条件,且所述可用带宽小于第一预设阈值时,生成提升网络参数指令,指示所述第一客户端提升所述当前网络参数;在所述丢包率满足提升条件,且所述可用带宽大于第二预设阈值时,生成提升数据参数指令,指示所述第一客户端提升所述当前数据参数;在所述丢包率满足降低条件,生成降低数据参数指令,指示所述第一客户端降低所述当前数据参数;在所述丢包率满足降低条件,且已经生成所述降低数据参数指令时,生成降低网络参数指令,指示所述第一客户端降低所述当前网络参数。

在上述实施例的基础上,该装置还包括:策略生成模块;所述策略生成模块用于:

获取第二客户端发送的连接请求,所述连接请求包括所述第二客户端的客户端标识和发送所述连接请求的发送时间;

根据所述客户端标识确定所述第二客户端的所属信息,根据所述发送时间和接收到所述连接请求的接收时间之间的时间差确定与所述第二客户端之间的网络速度;

根据所述所属信息和所述网络速度生成所述第二客户端的基础策略信息,并将所述基础策略信息下发至所述第二客户端,指示所述第二客户端根据所述基础策略信息生成当前数据参数和当前网络参数;其中,所述基础策略信息包括数据参数范围、网络参数范围和服务器列表。

本发明实施例提供的一种网络优化的装置,是的饿服务器能够基于当前的数据传输状态生成相应的调整参数指令,调整客户端在传输数据时所用的网络参数和数据参数,使得客户端可以基于调整后的网络参数和数据参数实时调整发送数据的策略,实现对网络实时优化,且优化粒度更细致,调整方式也多样化。客户端中设置包含网络参数和数据参数的策略信息,支持服务器对参数进行实时调整。

本发明实施例还提供一种网络优化的系统,参见图6所示,包括:调度服务器10和数据服务器20。

具体的,所述调度服务器10用于获取客户端30发送的连接请求,所述连接请求包括所述客户端30的客户端标识和发送所述连接请求的发送时间;所述调度服务器10根据所述客户端标识确定所述客户端30的所属信息,根据所述发送时间和接收到所述连接请求的接收时间之间的时间差确定与所述客户端30之间的网络速度;根据所述所属信息和所述网络速度生成所述客户端30的基础策略信息,并将所述基础策略信息下发至所述客户端30,指示所述客户端30根据所述基础策略信息生成当前数据参数和当前网络参数;其中,所述基础策略信息包括数据参数范围、网络参数范围和服务器列表,且所述数据服务器20为所述服务器列表中的一个服务器。

在所述客户端30将所述服务器列表中的所述数据服务器20作为目标服务器时,所述数据服务器20用于获取所述客户端30基于所述当前网络参数所发送的、与所述当前数据参数相匹配的目标数据,并实时确定与所述客户端30之间的数据传输状态。

所述数据服务器20还用于根据所述数据传输状态生成相应的调整参数指令,并将所述调整参数指令下发至所述客户端30,指示所述客户端30根据所述调整参数指令调整当前数据参数和/或当前网络参数,并基于调整后的当前网络参数将与调整后的当前数据参数相匹配的目标数据发送至所述数据服务器20。

本发明实施例中,该网络优化系统可以包括至少一个调度服务器和多个数据服务器,由调度服务器10为客户端30生成基础策略信息,由数据服务器20接收客户端30发送的目标数据,实现与客户端30之间的通信。其中,该调度服务器10和数据服务器20可以设在两个服务器实体上,也可以设置在同一个服务器实体中,本实施例对此不做限定。

本发明实施例还提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,其包含用于执行上述的网络优化的方法的程序,该计算机可执行指令可执行上述任意方法实施例中的方法。

其中,所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。

图7示出了本发明的另一个实施例的一种电子设备的结构框图。所述电子设备1100可以是具备计算能力的主机服务器、个人计算机PC、或者可携带的便携式计算机或终端等。本发明具体实施例并不对电子设备的具体实现做限定。

该电子设备1100包括至少一个处理器(processor)1110、通信接口(Communications Interface)1120、存储器(memory array)1130和总线1140。其中,处理器1110、通信接口1120、以及存储器1130通过总线1140完成相互间的通信。

通信接口1120用于与网元通信,其中网元包括例如虚拟机管理中心、共享存储等。

处理器1110用于执行程序。处理器1110可能是一个中央处理器CPU,或者是专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器1130用于可执行的指令。存储器1130可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1130也可以是存储器阵列。存储器1130还可能被分块,并且所述块可按一定的规则组合成虚拟卷。存储器1130存储的指令可被处理器1110执行,以使处理器1110能够执行上述任意方法实施例中的网络优化的方法。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换的实施方式,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于风控系统处理性能的提升方法及系统

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!