CN117978789A - 数据处理方法及装置、非易失性存储介质、电子设备 - Google Patents
数据处理方法及装置、非易失性存储介质、电子设备 Download PDFInfo
- Publication number
- CN117978789A CN117978789A CN202410146715.1A CN202410146715A CN117978789A CN 117978789 A CN117978789 A CN 117978789A CN 202410146715 A CN202410146715 A CN 202410146715A CN 117978789 A CN117978789 A CN 117978789A
- Authority
- CN
- China
- Prior art keywords
- parameter value
- client
- server
- network quality
- value
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000004891 communication Methods 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000005516 engineering process Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000010295 mobile communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003245 working effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种数据处理方法及装置、非易失性存储介质、电子设备。其中,该方法包括:确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;根据每个服务端的第二参数值,确定网络质量平均值;在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。本申请解决了无法在动态网络、且多服务器的环境下,将客户端的数据高效地发送至服务端的技术问题。
Description
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种数据处理方法及装置、非易失性存储介质、电子设备。
背景技术
随着第五代移动通信技术(5th Generation Mobile CommunicationTechnology,5G)以及互联网的普及,基于网络的实时音视频通讯正在成为应用的热点。其中,网络实时通信(Web Real-Time Communication,WebRTC)是一项实时音通讯技术,是面向连接的流媒体技术代表之一,实现了基于Android、IOS、网页的实时音视频通讯。基于WebRTC的实时音视频通讯系统一般分为客户端和服务端。如果是单向音视频通讯的应用,那么客户端要么是实时音视频的发送者,要么是接收者。如果是双向音视频通讯的应用,那么客户端既负责本端音视频数据采集、编码、发送,也负责远端音视频数据接收、解码和播放;服务端主要负责进行实时音视频通讯各客户端音视频数据的接收、处理和转发。
由以上实时音视频通讯系统可知,客户端是整个实时音视频通讯系统的核心之一,客户端数据传输服务质量的好坏直接影响了整个实时音视频通讯系统的工作效果。若客户端不能及时高效地将所采集的媒体数据发送到服务端,则将从源头上影响整个实时音视频通讯系统的工作效果,如视频播放卡顿、花屏、视频质量下降、端到端延时高等问题。当实时音视频通讯的客户端为移动客户端(如手机)时,受网络信号强度变化等外部条件的影响。在多个WebRTC流媒体服务器的分布式环境中,需要使得客户端能获得更好的流发送质量。如果客户端的流发送质量变差,将导致网络丢包,视频清晰度下降或花屏。如果连接到本服务器的所有客户端流发送质量变差时,需要将本服务端的用户切换到网络质量更好的服务器,从而缓解本服务端的网络压力以提供更好的网络服务,并改善整体网络下所有客户端的用户体验。
但是,在传统多台WebRTC流媒体服务器的分布式实时音视频通讯中,如果当前客户端网络质量不好,通常没有充分利用网络中的其它服务质量更好的服务器来改进客户端的网络发送质量。一方面在客户端网络质量不好时,通常的手段是通过降低本客户端的视频码率、视频分辨率以及视频帧率以保证数据流发送的流畅性,即使网络中存在有服务质量更好的服务器。另一方面,网络中的某台服务器网络质量不好,导致客户端的流发送质量变差时,也不会为客户端选择网络中流服务质量更好的服务器,不但没有对本服务器的服务质量进行改善,也造成了网络中多个服务器的服务质量参次不齐,有些客户端的网络质量差,对应的用户观看质量和体验也差。
综上,针对现有实时音视频通讯系统,待解决的一个重要问题是如何在动态网络、且多服务器的环境下将媒体数据高效的发送到服务端。
发明内容
本申请实施例提供了一种数据处理方法及装置、非易失性存储介质、电子设备,以至少解决无法在动态网络、且多服务器的环境下,将客户端的数据高效地发送至服务端的技术问题。
根据本申请实施例的一个方面,提供了一种数据处理方法,包括:确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;根据每个服务端的第二参数值,确定网络质量平均值;在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。
可选地,客户端与多个服务端基于实时网络通信技术进行通信。
可选地,确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,包括:根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值和第二参数值。
可选地,根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值,包括:根据客户端向每个服务端发送的数据包的时间戳、每个服务端接收的客户端发送的数据包的时间戳、客户端在t1时刻和t2时刻已发送的数据量以及每个服务端在t1时刻和t2时刻已接收的数据量,确定客户端在t1至t2时间段内的第一参数值,其中,t1和t2均为自然数,且t2大于t1。
可选地,根据每个服务端的第二参数值,确定网络质量平均值,包括:获取每个服务端的系统资源使用率;根据多个服务端的数量、每个服务端的第二参数值以及每个服务端的系统资源使用率,确定网络质量平均值。
可选地,在第一参数值不小于网络质量平均值的情况下,将客户端的数据包发送第一服务端,其中,第一服务端为多个服务端中的任意一个服务端。
可选地,目标服务端为第二参数值最大的服务端,或者,目标服务端为第二参数值大于网络质量平均值的服务端。
根据本申请实施例的再一方面,还提供了一种数据处理装置,包括:第一确定模块,用于确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;第二确定模块,用于根据每个服务端的第二参数值,确定网络质量平均值;发送模块,用于在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。
根据本申请实施例的再一方面,还提供了一种非易失性存储介质,存储介质包括存储的程序,其中,程序运行时控制存储介质所在的设备执行以上的数据处理方法。
根据本申请实施例的再一方面,还提供了一种电子设备,包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的数据处理方法。
在本申请实施例中,采用确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;根据每个服务端的第二参数值,确定网络质量平均值;在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值的方式,达到了在动态网络、且多服务器的环境下,将客户端的数据高效发送至服务端的目的,从而实现了改善客户端的数据发送质量,进而提升用户体验的技术效果,进而解决了无法在动态网络、且多服务器的环境下,将客户端的数据高效地发送至服务端的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种数据处理方法的流程图;
图2是根据本申请实施例的另一种数据处理方法的流程图;
图3是根据本申请实施例的一种确定网络质量计算周期的示意图;
图4是根据本申请实施例的一种数据处理装置的结构图;
图5是根据本申请实施例的一种数据处理方法的计算机终端的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例,提供了一种数据处理方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种数据处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值。
步骤S104,根据每个服务端的第二参数值,确定网络质量平均值。
步骤S106,在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。
根据上述步骤,采用确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;根据每个服务端的第二参数值,确定网络质量平均值;在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值的方式,达到了在动态网络、且多服务器的环境下,将客户端的数据高效发送至服务端的目的,从而实现了改善客户端的数据发送质量,进而提升用户体验的技术效果。
根据本申请的一些可选的实施例,客户端与多个服务端基于实时网络通信技术进行通信。
实时网络通信技术例如:WebRTC,其中,WebRTC允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点(Peer-to-Peer)的连接,实现视频流和/或音频流或者其他任意数据的传输。WebRTC包含的这些标准使用户在无需安装任何插件或者第三方的软件的情况下,创建点对点的数据分享和电话会议成为可能。
根据本申请的另一些可选的实施例,确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,可以通过如下方法实现:
根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值和第二参数值。其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值。
WebRTC的发送者报告(Sender Report,SR)和接收者报告(Receiver Report,RR)是用于实时通信中的网络性能监测和统计的一种机制。发送者报告被用来告诉接收者有关发送端的信息,比如发送的数据包数量、丢包率、网络延迟等信息。接收者报告则是接收端向发送端发送的信息,告知发送端有关接收端的网络状况,比如接收的数据包数量、丢包率、网络延迟等信息。这些报告可以帮助发送端和接收端监测网络质量,及时调整传输参数,以保证实时通信的质量和稳定性。
在本申请的一些可选的实施例,根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值,可以通过如下方法实现:
根据客户端向每个服务端发送的数据包的时间戳、每个服务端接收的客户端发送的数据包的时间戳、客户端在t1时刻和t2时刻已发送的数据量以及每个服务端在t1时刻和t2时刻已接收的数据量,确定客户端在t1至t2时间段内的第一参数值,其中,t1和t2均为自然数,且t2大于t1。
具体而言,通过如下公式确定客户端在t1至t2时间段内的第一参数值:
其中,t(1)为接收端在t1时刻接收到的数据包的时间戳、t(2)为接收端在t2时刻接收到的数据包的时间戳、T(1)为发送端在T1时刻发送的数据包的时间戳、T(2)为发送端在T2时刻发送的数据包的时间戳、R(t)为服务端在t时刻已接收的数据字节数、S(t)为客户端在t时刻已发送的数据字节数、为t1~t2时间段内服务端实际接收的有效数据字节数。/>为T1~T2时间段内客户端实际发送的有效数据字节数。
可以理解的是,Q(T1,T2)是大于等于1的,且越接近1表示网络质量越好,当Q(T1,T2)等于1时,表示服务端无延时和丢包地接收到了客户端发送的所有数据,从而保证了实时音视频通讯的服务质量。Q(T1,T2)值越大,表示因延时和丢包引起的客户网络质量越差,同时本端的服务质量也变差。
作为本申请的一些可选的实施例,根据每个服务端的第二参数值,确定网络质量平均值,包括如下步骤:获取每个服务端的系统资源使用率。根据多个服务端的数量、每个服务端的第二参数值以及每个服务端的系统资源使用率,确定网络质量平均值。
服务端的系统资源使用率是指服务器上各种资源的利用情况,包括但不限于:中央处理器利用率、内存利用率、磁盘利用率和网络带宽利用率。假设共有5个服务端A、B、C、D、E与客户端进行通信,其中,服务端A对应的第二参数值为8,服务端B对应的第二参数值为7.5,服务端C对应的第二参数值为7.5,服务端D对应的第二参数值为8.5,服务端E对应的第二参数值为7。
获取每个服务端的系统资源使用率,根据每个服务端的系统资源使用率确定服务端对应的权重,例如:服务端A的中央处理器利用率为30%、内存利用率为25%、磁盘利用率为30%、网络带宽利用率为35%,则服务端A对应的权重为0.25;服务端B的中央处理器利用率为40%、内存利用率为35%、磁盘利用率为35%、网络带宽利用率为40%,则服务端B对应的权重为0.2;服务端C的中央处理器利用率为50%、内存利用率为45%、磁盘利用率为40%、网络带宽利用率为42%,则服务端C对应的权重为0.15;服务端D的中央处理器利用率为55%、内存利用率为45%、磁盘利用率为45%、网络带宽利用率为40%,则服务端D对应的权重为0.1;服务端E的中央处理器利用率为25%、内存利用率为15%、磁盘利用率为20%、网络带宽利用率为25%,则服务端E对应的权重为0.3。
综上,网络质量平均值为8*0.25+7.5*0.2+7.5*0.15+8.5*0.1+7*0.3=7.575。
在本申请的一些可选的实施例中,在第一参数值不小于网络质量平均值的情况下,将客户端的数据包发送第一服务端,其中,第一服务端为多个服务端中的任意一个服务端。
作为本申请的另一些可选的实施例,目标服务端为第二参数值最大的服务端,或者,目标服务端为第二参数值大于网络质量平均值的服务端。
图2是根据本申请实施例的另一种数据处理方法的流程图,如图2所示,该方法包括如下步骤:
客户端与多个服务端基于实时网络通信技术进行通信,其中,客户端作为发送者,服务端作为接收者,客户端用于生成并发送发送者报告,服务端用于生成并发送接收者报告。其中,发送者报告包括发送端的带宽、延迟、丢包率等信息,以便接收端可以根据这些信息调整自己的接收策略。接收者报告包括接收端的带宽、延迟、丢包率等信息,以便发送端可以根据这些信息调整自己的发送策略。
客户端在本地维护一个网络质量值存储队列,客户端在每个时间片数据发送完成后,根据发送者报告和接收者报告获取数据延时、丢包率等数据。根据数据延时、丢包率等数据,计算目标时间片的网络质量值,并压入到队列中。进一步地,网络质量值会推送到系统的全网网络质量值存储队列,全网网络质量值存储队列接收到这个值后,会存入对应的服务器的队列。
图3是根据本申请实施例的一种确定网络质量计算周期的示意图,如图3所示,客户端维护一个固定长度的滑动窗口,该滑动窗口用于记录预设时长内每个时间片的网络质量值,且滑动窗口以时间片为单位向时间戳增大的方向滑动。滑动时,位置窗口头部时间戳较早的网络质量值被从滑动窗口删除,同时滑动窗口的尾部补充进最新时间片的网络质量值。举例而言,五个时间片为一个网络质量计算周期。在一个网络质量计算周期内,客户端计算得到周期内的网络质量均值,全网网络质量计算模块会计算每台服务器的网络质量均值,及全网的网络质量均值。
当客户端的网络质量值小于系统的全网网络质量均值时,就将本客户端切换到网络质量均值更优的服务器。具体执行步骤如下:
步骤S201,启动客户端、服务端和全网网络质量计算模块。
步骤S202,客户端、服务端、全网网络质量计算模块判断是否继续运行,如果不继续,则直接结束。否则,进入步骤S203。
步骤S203,客户端通过WebRTC的相关协议将数据发送到服务端,服务端用于接收数据。其中,该数据包括但不限于:视频流和音频流数据。
步骤S204,通过步骤S203中的数据发送和接收,客户端通过WebRTC协议的发送者报告和接受者报告,即可获得本次时间片内的数据延时以及丢包率,并以此计算得到本时间片的网络质量值。
具体地,可以通过如下公式计算得到本时间片的网络质量值:
其中,t(1)为接收端在t1时刻接收到的数据包的时间戳、t(2)为接收端在t2时刻接收到的数据包的时间戳、T(1)为发送端在T1时刻发送的数据包的时间戳、T(2)为发送端在T2时刻发送的数据包的时间戳、R(t)为服务端在t时刻已接收的数据字节数、S(t)为客户端在t时刻已发送的数据字节数、为t1~t2时间段内服务端实际接收的有效数据字节数。/>为T1~T2时间段内客户端实际发送的有效数据字节数。
可以理解的是,Q(T1,T2)是大于等于1的,且越接近1表示网络质量越好,当Q(T1,T2)等于1时,表示服务端无延时和丢包地接收到了客户端发送的所有数据,从而保证了实时音视频通讯的服务质量。Q(T1,T2)值越大,表示因延时和丢包引起的客户网络质量越差,同时本端的服务质量也变差。
步骤S205,客户端将本时间片的网络质量值置入本端的网络质量值存储队列。同时也将这个值发送到全网网络质量计算模块。
步骤S206,全网网络质量计算模块接收到步骤S205发送的网络质量值后,会将该网络质量值置入其对应的服务器网络质量值存储队列。
步骤S207,在网络质量计算周期内(即图3中的五个时间片),客户端计算本端的网络质量均值。全网网络质量计算模块分别计算每台服务器的网络质量均值,并进一步计算得到全网的网络质量均值。
步骤S208,将本端的计算周期内网络质量均值与全网的网络质量均值进行比较,如果本端的均值显著低于全网均值时,则将本端的流接收服务器切换网络质量更优的服务器。否则,进入下一步。
步骤S209,重复执行步骤S202至步骤S208。
在上述步骤中,首先,通过时间片内数据发送与接收的延时和丢包来定量描述当前客户端的网络质量。网络质量模型因为兼容了延时和丢包两个维度,从而很好的描述本端的网络质量。其次,利用计算周期内的网络质量值进行周期性计算,得到计算周期内的网络质量均值,并和全网的计算周期内的网络质量均值对比,从而防止因网络的瞬时抖动而造成客户端的频繁切换。
图4是根据本申请实施例的一种数据处理装置的结构图,如图4所示,该装置包括:
第一确定模块40,用于确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值。
第二确定模块42,用于根据每个服务端的第二参数值,确定网络质量平均值。
发送模块44,用于在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。
进一步地,客户端与多个服务端基于实时网络通信技术进行通信。
进一步地,确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,包括如下步骤:根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值和第二参数值。
进一步地,根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值和第二参数值,包括如下步骤:根据客户端向每个服务端发送的数据包的时间戳、每个服务端接收的客户端发送的数据包的时间戳、客户端在t1时刻和t2时刻已发送的数据量以及每个服务端在t1时刻和t2时刻已接收的数据量,确定客户端在t1至t2时间段内的第一参数值,其中,t1和t2均为自然数,且t2大于t1。
进一步地,根据每个服务端的第二参数值,确定网络质量平均值,包括如下步骤:获取每个服务端的系统资源使用率;根据多个服务端的数量、每个服务端的第二参数值以及每个服务端的系统资源使用率,确定网络质量平均值。
进一步地,在第一参数值不小于网络质量平均值的情况下,将客户端的数据包发送第一服务端,其中,第一服务端为多个服务端中的任意一个服务端。
进一步地,目标服务端为第二参数值最大的服务端,或者,目标服务端为第二参数值大于网络质量平均值的服务端。
需要说明的是,上述图4中的各个模块可以是程序模块(例如是实现某种特定功能的程序指令集合),也可以是硬件模块,对于后者,其可以表现为以下形式,但不限于此:上述各个模块的表现形式均为一个处理器,或者,上述各个模块的功能通过一个处理器实现。
需要说明的是,图4所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
图5示出了一种用于实现数据处理方法的计算机终端的硬件结构框图。如图5所示,计算机终端50可以包括一个或多个(图中采用502a、502b,……,502n来示出)处理器502(处理器502可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器504、以及用于通信功能的传输模块506。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为BUS总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图5所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端50还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。
应当注意到的是上述一个或多个处理器502和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端50中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器504可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据处理方法对应的程序指令/数据存储装置,处理器502通过运行存储在存储器504内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据处理方法。存储器504可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器504可进一步包括相对于处理器502远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端50。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块506用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端50的通信供应商提供的无线网络。在一个实例中,传输模块506包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块506可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端50的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图5所示的计算机终端可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图5仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机终端中的部件的类型。
需要说明的是,图5所示的计算机终端用于执行图1所示的数据处理方法,因此上述命令的执行方法中的相关解释说明也适用于该电子设备,此处不再赘述。
本申请实施例还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,程序运行时控制存储介质所在的设备执行以上的数据处理方法。
非易失性存储介质执行以下功能的程序:确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;根据每个服务端的第二参数值,确定网络质量平均值;在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。
本申请实施例还提供了一种电子设备,包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的数据处理方法。
处理器用于运行执行以下功能的程序:确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,第一参数值用于表征客户端在预设时长内的网络质量的平均值,第二参数值用于表征每个服务端在预设时长内的网络质量的平均值;根据每个服务端的第二参数值,确定网络质量平均值;在第一参数值小于网络质量平均值,且第三参数值大于预设阈值的情况下,将客户端的数据包发送至目标服务端,其中,第三参数值为网络质量平均值与第一参数值的差值。
可选地,客户端与多个服务端基于实时网络通信技术进行通信。
可选地,确定客户端的第一参数值,并确定与客户端进行通信的多个服务端中的每个服务端的第二参数值,包括:根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值和第二参数值。
可选地,根据实时网络通信技术的发送者报告和接收者报告,确定第一参数值,包括:根据客户端向每个服务端发送的数据包的时间戳、每个服务端接收的客户端发送的数据包的时间戳、客户端在t1时刻和t2时刻已发送的数据量以及每个服务端在t1时刻和t2时刻已接收的数据量,确定客户端在t1至t2时间段内的第一参数值,其中,t1和t2均为自然数,且t2大于t1。
可选地,根据每个服务端的第二参数值,确定网络质量平均值,包括:获取每个服务端的系统资源使用率;根据多个服务端的数量、每个服务端的第二参数值以及每个服务端的系统资源使用率,确定网络质量平均值。
可选地,在第一参数值不小于网络质量平均值的情况下,将客户端的数据包发送第一服务端,其中,第一服务端为多个服务端中的任意一个服务端。
可选地,目标服务端为第二参数值最大的服务端,或者,目标服务端为第二参数值大于网络质量平均值的服务端。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务端或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
确定客户端的第一参数值,并确定与所述客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,所述第一参数值用于表征所述客户端在预设时长内的网络质量的平均值,所述第二参数值用于表征所述每个服务端在所述预设时长内的网络质量的平均值;
根据所述每个服务端的第二参数值,确定网络质量平均值;
在所述第一参数值小于所述网络质量平均值,且第三参数值大于预设阈值的情况下,将所述客户端的数据包发送至目标服务端,其中,所述第三参数值为所述网络质量平均值与所述第一参数值的差值。
2.根据权利要求1所述的方法,其特征在于,所述客户端与所述多个服务端基于实时网络通信技术进行通信。
3.根据权利要求2所述的方法,其特征在于,确定客户端的第一参数值,并确定与所述客户端进行通信的多个服务端中的每个服务端的第二参数值,包括:
根据所述实时网络通信技术的发送者报告和接收者报告,确定所述第一参数值和所述第二参数值。
4.根据权利要求3所述的方法,其特征在于,根据实时网络通信技术的发送者报告和接收者报告,确定所述第一参数值,包括:
根据所述客户端向所述每个服务端发送的数据包的时间戳、所述每个服务端接收的所述客户端发送的数据包的时间戳、所述客户端在t1时刻和t2时刻已发送的数据量以及所述每个服务端在t1时刻和t2时刻已接收的数据量,确定所述客户端在t1至t2时间段内的第一参数值,其中,t1和t2均为自然数,且t2大于t1。
5.根据权利要求1所述的方法,其特征在于,根据所述每个服务端的第二参数值,确定网络质量平均值,包括:
获取所述每个服务端的系统资源使用率;
根据所述多个服务端的数量、所述每个服务端的第二参数值以及所述每个服务端的系统资源使用率,确定所述网络质量平均值。
6.根据权利要求1所述的方法,其特征在于,在所述第一参数值不小于所述网络质量平均值的情况下,将所述客户端的数据包发送第一服务端,其中,所述第一服务端为所述多个服务端中的任意一个服务端。
7.根据权利要求1所述的方法,其特征在于,所述目标服务端为所述第二参数值最大的服务端,或者,所述目标服务端为所述第二参数值大于所述网络质量平均值的服务端。
8.一种数据处理装置,其特征在于,包括:
第一确定模块,用于确定客户端的第一参数值,并确定与所述客户端进行通信的多个服务端中的每个服务端的第二参数值,其中,所述第一参数值用于表征所述客户端在预设时长内的网络质量的平均值,所述第二参数值用于表征所述每个服务端在所述预设时长内的网络质量的平均值;
第二确定模块,用于根据所述每个服务端的第二参数值,确定网络质量平均值;
发送模块,用于在所述第一参数值小于所述网络质量平均值,且第三参数值大于预设阈值的情况下,将所述客户端的数据包发送至目标服务端,其中,所述第三参数值为所述网络质量平均值与所述第一参数值的差值。
9.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至7中任意一项所述的数据处理方法。
10.一种电子设备,其特征在于,包括:存储器和处理器,所述处理器用于运行存储在所述存储器中的程序,其中,所述程序运行时执行权利要求1至7中任意一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410146715.1A CN117978789A (zh) | 2024-02-01 | 2024-02-01 | 数据处理方法及装置、非易失性存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410146715.1A CN117978789A (zh) | 2024-02-01 | 2024-02-01 | 数据处理方法及装置、非易失性存储介质、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117978789A true CN117978789A (zh) | 2024-05-03 |
Family
ID=90856052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410146715.1A Pending CN117978789A (zh) | 2024-02-01 | 2024-02-01 | 数据处理方法及装置、非易失性存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117978789A (zh) |
-
2024
- 2024-02-01 CN CN202410146715.1A patent/CN117978789A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11563788B2 (en) | Multipath data streaming over multiple networks | |
US10911506B2 (en) | Methods for quality-aware adaptive streaming over hypertext transfer protocol and reporting quality of experience | |
CN104125429B (zh) | 视频数据传输的调节方法及装置 | |
KR101981183B1 (ko) | 다중경로 적응적 스트리밍 세션을 제어하는 방법 및 장치 | |
EP2364017B1 (en) | Method, system and user device for obtaining key frame in streaming media service | |
CA2897772C (en) | Multipath data streaming over multiple wireless networks | |
CA2842098A1 (en) | A system and method for transmission of data signals over a wireless network | |
US9887910B2 (en) | Method for retransmitting packet, data server using the same, and packet retransmitting system | |
CN103283255A (zh) | 用于提供自适应流送服务的方法 | |
EP1499079B1 (en) | Device and method for data transmission and reception in mobile ad hoc network | |
CN113783775A (zh) | 数据传输的方法和装置 | |
CN113381905A (zh) | 数据信息的同步方法、装置以及存储介质 | |
CN117978789A (zh) | 数据处理方法及装置、非易失性存储介质、电子设备 | |
CN114079652A (zh) | 数据处理方法 | |
CN110392285B (zh) | 媒体流处理方法及装置 | |
CN113347086B (zh) | 传输数据的方法、装置以及存储介质 | |
CN113141277B (zh) | 传输带宽的确定方法、装置以及存储介质 | |
CN117082245A (zh) | 视频编码方法、装置、存储介质及电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |