一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种音视频通信链路的探测方法及设备与流程

2022-02-19 14:51:41 来源:中国专利 TAG:


1.本技术涉及音视频通信技术领域,尤其涉及一种音视频通信链路的探测方法及设备。


背景技术:

2.随着即时通信的发展,人们逐渐对即时通信的通信形式和通信质量有了越来越多的要求。尤其是在对音视频通信方面,人们希望可以在低延迟的情况下,还能保证通信的质量。
3.在实时音视频通信领域,为了保证跨市,跨省,跨国情况下的多方音视频交互的效果,往往需要在全国或者全球范围的数据中心部署实时媒体服务器集群,媒体服务器集群之间采用专线保证通信质量,但是终端到媒体服务器之间的这段通信链路可能不是最佳的,有可能会出现终端分配到的媒体服务器之间相隔较远的情况,从而仍然无法保证音视频的通信质量。


技术实现要素:

4.本技术实施例提供了一种音视频通信链路的探测方法及设备,解决了由于现有音视频通信时终端到媒体服务器之间的通信链路不稳定,从而无法保证音视频的通信质量的技术问题。
5.一方面,本技术实施例提供了一种音视频通信链路的探测方法,其特征在于,方法包括:响应于基于触发产生的探测信号,终端通过udp通信,分别向各区域数据中心中的探测服务器发送预设数量的测试数据包;终端接收自发送测试数据包开始第一预设时长内,各探测服务器返回的响应数据包,并基于响应数据包,计算到各区域数据中心的丢包率以及平均往返时延;终端基于到各区域数据中心的丢包率以及平均往返时延,计算到各区域数据中心的路径分值,并将到各区域数据中心的路径分值发送给核心数据中心的资源调度服务器;终端接收资源调度服务器返回的最佳媒体服务器地址,并确定最佳媒体服务器为音视频通信链路;其中,最佳媒体服务器地址是由资源调度服务器基于到各区域数据中心的路径分值而得到的。
6.本技术实施例提供的音视频通信链路的探测方法,在终端加入到音视频通信房间之前,通过udp通信,向所有区域数据中心中的探测服务器发送测试数据包,然后根据返回的响应数据包,进一步分析以确定终端对应的最佳区域数据中心,最后通过核心数据中心分析最佳区域数据中心中若干个媒体服务器,确定终端进行音视频通信的最佳服务器地址。通过上述方法可以获得终端到媒体服务器之间最佳的音视频通信链路,从而保证了音视频的通信质量。
7.在本技术的一种实现方式中,在终端通过udp通信,分别向各区域数据中心中的探测服务器发送预设数量的测试数据包之前,方法还包括:资源调度服务器接收各区域数据中心发送的若干个媒体服务器注册信息,并基于各区域数据中心发送的若干个媒体服务器
注册信息生成注册信息表;其中,区域数据中心包含一个探测服务器和若干个媒体服务器,媒体服务器注册信息包含媒体服务器标号、ip地址、端口号以及所属区域数据中心名称。
8.在本技术的一种实现方式中,终端通过udp通信,分别向各区域数据中心中预设的探测服务器发送预设数量的测试数据包,具体包括:在第二预设时长内,终端通过udp通信,每隔第三预设时长分别向各区域数据中心中的探测服务器发送一个测试数据包,直至分别向各区域数据中心中的探测服务器发送预设数量的测试数据包;其中,第三预设时长小于第二预设时长,测试数据包中包含测试数据包发送时间。
9.在本技术的一种实现方式中,方法还包括:探测服务器在接收到终端发送的测试数据包的情况下,解析测试数据包,以确定终端的终端ip地址;基于终端ip地址生成响应数据包,通过预设的通信方式,发送给终端。
10.在本技术的一种实现方式中,到各区域数据中心的丢包率,由以下公式确定:
[0011][0012]
其中,pktlossrate
k
为终端到第k个探测服务器的丢包率,a为预设数量,x为终端接收到的第k个探测服务器返回的响应数据包的个数。
[0013]
在本技术的一种实现方式中,到各区域数据中心的平均往返时延,由以下公式确定:
[0014][0015]
其中,rtt
k
为终端到第k个探测服务器的平均往返时延,x为终端接收到的第k个探测服务器返回的响应数据包的个数,t
k
为终端接收到的第k个探测服务器返回第i个响应数据包的时间,t
i
为终端接收到的第k个探测服务器返回的第i个响应数据包中包含的测试数据包发送时间。
[0016]
在本技术的一种实现方式中,到各区域数据中心的路径分值,由以下公式确定:
[0017]
pathscore
k
=a(100

2*pktlossrate
k
) b(100

0.5*rtt
k
)
[0018]
其中,pathscore
k
为终端到第k个探测服务器的路径分值a为丢包率的权重,b为平均往返时延的权重。
[0019]
在本技术的一种实现方式中,将到各区域数据中心的路径分值发送给核心数据中心的资源调度服务器,具体包括:终端将各区域数据中心的路径分值与所属区域数据中心名称对应存储,并按照路径分值由高到低排列,以生成路径分值序列;基于路径分值序列,生成获取最佳媒体服务器地址的指令包,并将指令包发送给核心数据中心的资源调度服务器。
[0020]
在本技术的一种实现方式中,在将到各区域数据中心的路径分值发送给核心数据中心的资源调度服务器之后,方法还包括:资源调度服务器解析指令包,以确定路径分值最高的所属区域数据中心名称;基于路径分值最高的所属区域数据中心名称,确定注册信息表中相应的若干个媒体服务器注册信息;资源调度服务器基于相应的若干个媒体服务器注册信息,获取相应的若干个媒体服务器的实时负载信息,并确定实时负载信息中负载值最小的媒体服务器地址为最佳服务器地址。
[0021]
另一方面,本技术实施例还提供了一种音视频通信链路的探测设备,其特征在于,包括:处理器;及存储器,其上存储有可执行代码,当可执行代码被执行时,使得处理器执行如权利要求1

9任一项的一种通信规约的开发方法。
附图说明
[0022]
此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
[0023]
图1为本技术实施例提供的一种音视频通信链路的探测方法流程图;
[0024]
图2为本技术实施例提供的一种采用音视频通信链路的探测方法探测通信链路的描述示意图;
[0025]
图3为本技术实施例提供的一种音视频通信链路的探测设备结构示意图。
具体实施方式
[0026]
为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0027]
本技术实施例提供了一种音视频通信链路的探测方法及设备,解决了由于现有音视频通信时终端到媒体服务器之间的通信链路不稳定,从而无法保证音视频的通信质量的技术问题。
[0028]
下面通过附图对本技术实施例提出的技术方案进行详细的说明。
[0029]
图1为本技术实施例提供的一种音视频通信链路的探测方法流程图。如图1所示,本技术实施例提供的一种音视频通信链路的探测方法,具体包括以下步骤:
[0030]
步骤101、响应于基于触发产生的探测信号,终端通过udp通信,分别向各区域数据中心中的探测服务器发送预设数量的测试数据包。
[0031]
需要说明的是,在实行本技术实施例提供的一种音视频通信链路的探测方法之前,首先需要在核心数据中心中部署资源调度服务器,在各区域数据中心中部署一个探测服务器和若干个媒体服务器。其中,核心数据中心是各区域数据中心的调度中心;资源调度服务器用于为终端分配最佳的媒体服务器,以使终端可以建立最佳的音视频通信链路;探测服务器用于接收终端发送的测试数据包,并基于测试数据包,生成响应数据包返回给终端;媒体服务器用于与终端建立音视频通信链路。
[0032]
还需要说明的是,在实行本技术实施例提供的一种音视频通信链路的探测方法之前,各区域数据中心中的媒体服务器还需要将各自的媒体服务器注册信息发送给资源调度服务器。资源调度服务器基于接收到的各区域数据中心发送的若干个媒体服务器注册信息,生成注册信息表。其中,媒体服务器注册信息包含媒体服务器标号、ip地址、端口号以及所属区域数据中心名称。
[0033]
在本技术的一个实施例中,生成的注册信息表可以是一个也可以是多个,即各区域数据中心中的媒体服务器统一注册在同一注册信息表下,或者各区域数据中心中的媒体服务器分别注册在对应各区域数据中心的注册信息表下,本技术在此不做限定。
[0034]
图2为本技术实施例提供的一种采用音视频通信链路的探测方法探测通信链路的描述示意图。如图2所示,华东数据中心、华北数据中心、华南数据中心均为区域数据中心,每个区域数据中心中都设置有一个命名为探测服务的探测服务器和编号为媒体服务1—媒体服务n的若干个媒体服务器。在实行本技术实施例提供的一种音视频通信链路的探测方法之前,各区域数据中心中的媒体服务器将各自的媒体服务器注册信息发送给资源调度服务器。
[0035]
在本技术的一个实施例中,终端在发起音视频通话时,首先会基于触发音视频通信,产生探测信号,探测信号触发终端通过udp通信,分别向各区域数据中心中预设的探测服务器发送预设数量的测试数据包。
[0036]
具体地,在第二预设时长内,终端通过udp通信,将包含测试数据包发送时间的测试数据包,每隔第三预设时长分别向各区域数据中心中的探测服务器发送一个,直至分别向各区域数据中心中的探测服务器发送预设数量的测试数据包。需要说明的是,第三预设时长小于第二预设时长,且第三预设时长等于预设数量个第二预设时长的和。
[0037]
如图2所示,以上海地区的命名为上海终端的终端为例,假设第二预设时长为1s,预设数量为100,则第三预设时长为10ms,上海终端通过udp通信,每隔10ms分别向华东数据中心中的探测服务器、华北数据中心中的探测服务器、华南数据中心中的探测服务器发送一个测试数据包,直至分别发送测试数据包的个数达到100个。在图2中,上述示例即上海终端发送的过程。
[0038]
在本技术的一个实施例中,探测服务器在接收到终端发送的测试数据包的情况下,首先会解析接收到的测试数据包,以获得发送该测试数据包对应终端的终端ip地址。然后依据该终端ip地址生成对应该终端的响应数据包,通过预设的通信方式,发送给终端。
[0039]
需要说明的是,预设的通信方式为在音视频通信时所采用的通信方式,包括但不限于tcp通信等。
[0040]
步骤102、终端接收自发送测试数据包开始第一预设时长内,各探测服务器返回的响应数据包,并基于响应数据包,计算到各区域数据中心的丢包率以及平均往返时延。
[0041]
在本技术的一个实施例中,在终端通过udp通信开始向各区域数据中心中的探测服务器发送测试数据包的同时,开启对响应数据包的接收。为了测试终端到各区域数据中心的通信质量,因此设定仅接收自开启对响应数据包的接收开始第一预设时长内,终端能够接收到的响应数据包。可以理解的是,第一预设时长会大于第二预设时长。
[0042]
如图2所示,各区域数据中心中的探测服务器对上海终端接收的过程即为各区域数据中心中的探测服务器返回响应数据包的过程。
[0043]
需要说明的是,为方便计算终端到各区域数据中心的往返时延,会将测试数据包中包含的测试数据包发送时间同步到响应数据包中。
[0044]
在本技术的一个实施例中,终端在第一预设时长内接收到各区域数据中心返回的若干个响应数据包之后,会基于各区域数据中心返回的响应数据包的个数、终端接收到响应数据包的时间、各响应数据包中包含的测试数据包发送时间,计算终端到各区域数据中心的丢包率以及平均往返时延。其中,到各区域数据中心的丢包率,由以下公式确定:
[0045]
[0046]
其中,pktlossrate
k
为终端到第k个探测服务器的丢包率,a为预设数量,x为终端接收到的第k个探测服务器返回的响应数据包的个数。
[0047]
到各区域数据中心的平均往返时延,由以下公式确定:
[0048][0049]
其中,rtt
k
为终端到第k个探测服务器的平均往返时延,x为终端接收到的第k个探测服务器返回的响应数据包的个数,t
i
为终端接收到的第k个探测服务器返回第i个响应数据包的时间,t
i
为终端接收到的第k个探测服务器返回的第i个响应数据包中包含的测试数据包发送时间。
[0050]
可以理解的是,终端到探测服务器的丢包率即可视为终端到对应区域数据中心的丢包率,终端到探测服务器的平均往返时延即可视为终端到对应区域数据中心的平均往返时延。因此,终端到第k个探测服务器的丢包率pktlossrate
k
,即可视为终端到第k个探测服务器对应区域数据中心的丢包率;终端到第k个探测服务器的平均往返时延rtt
k
,即可视为终端到第k个探测服务器对应区域数据中心的平均往返时延。
[0051]
步骤103、终端基于到各区域数据中心的丢包率以及平均往返时延,计算到各区域数据中心的路径分值,并将到各区域数据中心的路径分值发送给核心数据中心的资源调度服务器。
[0052]
在本技术的一个实施例中,终端在确定到各区域数据中心的丢包率以及平均往返时延后,会基于到各区域数据中心的丢包率以及平均往返时延计算到各区域数据中心的路径分值。可以理解的是,到各区域数据中心的路径分值是为了体现终端到各区域数据中心的通信质量,从而根据通信质量的高低确定选择哪个区域数据中心内的媒体服务器,进行该终端到区域数据中心通信链路的建立。
[0053]
在本技术的一个实施例中,到各区域数据中心的路径分值,由以下公式确定:
[0054]
pathscore
k
=a(100

2*pktlossrate
k
) b(100

0.5*rtt
k
)
[0055]
其中,pathscore
k
为终端到第k个探测服务器的路径分值,a为丢包率的权重,b为平均往返时延的权重。可以理解的是,终端到探测服务器的路径分值即可视为终端到对应区域数据中心的路径分值。
[0056]
需要说明的是,丢包率的权重应远大于平均往返时延的权重,即a大于b。一方面原因是丢包会使终端在进行音视频通信时,丢失音视频通信信息,从而造成卡顿和断连,从而使音视频通信质量大大降低;另一方面是因为,在第二预设时长内,在往返时延过久时,也会造成终端不能收到响应数据包的情况。经试验确定,丢包率的权重与平均往返时延的权重可选为a=0.8、b=0.2。
[0057]
在本技术的一个实施例中,终端在确定到各区域数据中心的路径分值之后,将各区域数据中心的路径分值与所属区域数据中心名称对应存储,并按照分值大小由高到低排列,以生成路径分值序列。其中,将各区域数据中心的路径分值与所属区域数据中心名称对应存储是为了使资源调度服务器可以区分路径分值对应的区域数据中心。最后将生成的路径分值序列,打包生成获取最佳媒体服务器地址的指令包,并将生成的指令包发送给核心数据中心的资源调度服务器。
[0058]
步骤104、终端接收资源调度服务器返回的最佳媒体服务器地址,并确定最佳媒体
服务器为音视频通信链路。
[0059]
在本技术的一个实施例中,在将到各区域数据中心的路径分值发送给核心数据中心的资源调度服务器之后,资源调度服务器首先解析指令包,以获得指令包中的路径分值序列,然后基于路径分值序列中对应的第一个路径分值信息,确定路径分值最高的所属区域数据中心名称;基于路径分值最高的所属区域数据中心名称,确定注册信息表中相应的若干个媒体服务器注册信息;资源调度服务器根据相应的若干个媒体服务器注册信息,获取相应的若干个媒体服务器的实时负载信息,并确定实时负载信息中负载值最小的媒体服务器地址为最佳服务器地址。
[0060]
需要说明的是,实时负载信息是媒体服务器实时的工作处理量,负载值最小的媒体服务器则为若干个媒体服务器中当前工作处理量最小的媒体服务器。
[0061]
在本技术的一个实施例中,在资源调度服务器确定最佳媒体服务器地址之后,将最佳媒体服务器地址返回给终端,终端基于该最佳媒体服务器地址,建立以该最佳媒体服务器为基础的音视频通信链路。
[0062]
基于同样的发明构思,本技术实施例还提供了一种音视频通信链路的探测设备,其内部结构如图3所示。
[0063]
图3为本技术实施例提供的一种音视频通信链路的探测设备内部结构示意图。如图3所示,设备包括:处理器301;存储器302,其上存储有可执行指令,当可执行指令被执行时,使得处理器301执行如上述的一种音视频通信链路的探测方法。
[0064]
在本技术的一个实施例中,处理器301用于响应于基于触发产生的探测信号,终端通过udp通信,分别向各区域数据中心中的探测服务器发送预设数量的测试数据包;终端接收自发送测试数据包开始第一预设时长内,各探测服务器返回的响应数据包,并基于响应数据包,计算到各区域数据中心的丢包率以及平均往返时延;终端基于到各区域数据中心的丢包率以及平均往返时延,计算到各区域数据中心的路径分值,并将到各区域数据中心的路径分值发送给核心数据中心的资源调度服务器;终端接收资源调度服务器返回的最佳媒体服务器地址,并确定最佳媒体服务器为音视频通信链路;其中,最佳媒体服务器地址是由资源调度服务器基于到各区域数据中心的路径分值而得到的。
[0065]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0066]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献