丢包重传方法、分组确定方法、装置、设备以及存储介质制造方法及图纸

技术编号:37052268 阅读:9 留言:0更新日期:2023-03-29 19:29
本申请用于提供一种丢包重传方法、分组确定方法、装置、设备以及存储介质。该方法应用于包括用户终端、至少一个其他终端以及服务器的电子系统,包括:所述用户终端确定所述服务器发送的媒体数据流发生丢包;所述用户终端向所述至少一个其他终端中基于预设关联指定的目标终端发送重传请求;其中,所述预设关联至少包括位于同一分组;所述目标终端响应于所述重传请求,发送对应于所述重传请求的媒体数据至所述用户终端。本申请实施例提供的方法通过在用户终端发生丢包的情况下,向具有预设关联的其他终端请求重传数据,能够降低终端与服务器之间的网络带宽消耗,进而降低网关等设备网络拥塞的可能性,保障了用户体验,同时降低了带宽成本。宽成本。宽成本。

【技术实现步骤摘要】
丢包重传方法、分组确定方法、装置、设备以及存储介质


[0001]本申请涉及网络通信
,尤其涉及一种丢包重传方法、分组确定方法、装置、设备以及存储介质。

技术介绍

[0002]在实时通信(Real Time Communications,RTC)场景中,比如电话会议、互动直播、在线教育等,通信参与者(可能是双方或者多方)之间需要进行实时的音视频互动,区别于传统点播、无互动的直播、文件下载等业务,实时通信场景中的通信参与者互相之间的音视频通信时延要尽量低(通常要求小于400ms)才能保证基本的音视频体验不受影响。
[0003]目前在RTC场景中,每个通信参与者(例如主播或观众)的客户端都是直接和选择性转发单元(Selective Forwarding Unit,SFU)通信,将媒体数据流发送至SFU或者从SFU接收媒体数据流。当发生丢包时,客户端会主动发送自动重传请求(Automatic Repeat

reQuest,ARQ)至SFU,由SFU进行选择性重传或增加前向纠错(Forward ErrorCorrection,FEC)冗余等。
[0004]当前在发生丢包的情况下,采用的ARQ重传或增加FEC冗余的方案,可能会导致通信质量变差,这可能导致出现如下缺陷的至少一种:1)占用额外的带宽,造成网络带宽成本升高,并且可能导致的用户侧网关网络拥塞,尤其是在网络状态本身就不好的情况下,额外再增加网络带宽占用,有可能导致网络拥塞加剧、丢包增加等,造成用户体验进一步恶化;2)数据恢复的时延较大,进而导致音视频卡顿等问题,用户体验差;3)增加服务器侧的中央处理器(Central Processing Unit,CPU)资源消耗。

技术实现思路

[0005]本申请的一些实施方式提供了一种丢包重传方法、分组确定方法、装置、设备以及存储介质,以下从多个方面介绍本申请,以下多个方面的实施方式和有益效果可互相参考。
[0006]第一方面,本申请实施方式提供了一种丢包重传方法,应用于包括用户终端、至少一个其他终端以及服务器的电子系统,所述方法包括:所述用户终端确定所述服务器发送的媒体数据流发生丢包;所述用户终端向所述至少一个其他终端中基于预设关联指定的目标终端发送重传请求;其中,所述预设关联至少包括位于同一分组;所述目标终端响应于所述重传请求,发送对应于所述重传请求的媒体数据至所述用户终端。
[0007]根据本申请实施方式,通过基于P2P技术建立终端间的预设关联,在用户终端发生丢包的情况下,可以向具有预设关联的其他终端请求与丢包对应的媒体数据,无需向服务器请求重传数据,能够降低终端与服务器之间的网络带宽消耗,以及降低服务器侧的CPU资源消耗,还能够在多个终端位于同一个网关之内时,降低网关等设备网络拥塞的可能性,保障了用户体验,同时降低了带宽成本。
[0008]在一些实施方式中,所述媒体数据流通过对每一媒体数据帧添加对应的数据帧标识后进行封装得到。
[0009]在一些实施方式中,所述用户终端向所述至少一个其他终端中基于预设关联指定的目标终端发送重传请求,包括:所述用户终端确定所述媒体数据流中丢失的媒体数据帧的数据帧标识;所述用户终端向所述目标终端发送携带所述数据帧标识的重传请求,以使得所述目标终端响应于所述重传请求,根据所述数据帧标识选择对应的媒体数据帧作为对应于所述重传请求的媒体数据。
[0010]根据本申请实施方式,通过利用数据帧标识来标识每个媒体数据帧,在用户终端发生丢包的情况下,可以基于帧粒度进行P2P重传,相对于基于文件或文件分片粒度进行重传的方式,能够降低重传的数据量,进一步降低系统时延。
[0011]在一些实施方式中,所述分组通过所述服务器基于终端的属性信息以及终端间的通信状况确定。
[0012]根据本申请实施方式,通过利用P2P技术,基于终端的属性信息以及终端间的通信状况生成不同的分组,使得同一个分组内的终端可以就近完成丢包对应的媒体数据的重复发送,无需向服务器请求重传数据,不仅能够满足系统低时延要求,还能够降低终端与服务器之间的网络带宽消耗。
[0013]在一些实施方式中,所述预设关联还包括传输质量满足预设传输质量条件。
[0014]根据本申请实施方式,通过在用户终端发生丢包的情况下,向同一个分组内传输质量较高的终端请求丢包对应的媒体数据,不再发送给该分组中的其他终端成员以及服务器,能够在满足低时延要求的情况下,减少用户终端发送重传请求的数量以及减少服务器发送重传报文的数量,从而同时降低终端侧和服务器侧的网络资源消耗。
[0015]在一些实施方式中,确定所述分组的方法包括:所述服务器分别获取所述用户终端以及各个所述其他终端的属性信息;所述服务器根据所述属性信息对所述用户终端以及各个所述其他终端进行分组,得到多个候选分组;所述服务器分别从各个所述候选分组中选取满足预设分组条件的终端集合,形成最终的分组;其中,所述预设分组条件包括:所述终端集合中的任意两个终端之间能够实现双向通信;以及,所述终端集合中的任意两个终端之间的通信状况,优于所述两个终端中每个终端与所述服务器之间的通信状况。
[0016]根据本申请实施方式,通过基于终端间的通信状况生成分组,能够确保同一分组中各终端之间的数据发送时延不高于各终端和服务器之间时延,保障了用户体验。
[0017]在一些实施方式中,所述预设分组条件还包括:所述终端集合中的任意两个终端之间的通信状况满足预设条件。
[0018]根据本申请实施方式,通过选择满足时延条件的终端生成分组,能够确保同一分组中各终端之间的数据发送时延满足实时通信的时延要求。
[0019]在一些实施方式中,所述属性信息包括接收媒体数据流的分辨率信息。
[0020]在一些实施方式中,所述属性信息还包括位置信息和/或网络连接信息。
[0021]根据本申请实施方式,通过订阅的分辨率信息,以及位置信息和/或网络连接信息预先对各个终端进行分组,再从得到的候选分组中选择满足条件的终端生成最终的分组,可以节省分组所需的时间,提高分组效率。
[0022]在一些实施方式中,所述方法还包括:所述用户终端向所述服务器发送重传请求;所述服务器响应于所述重传请求,发送对应于所述重传请求的媒体数据至所述用户终端。
[0023]根据本申请实施方式,在用户终端发生丢包的情况下,通过在向具有预设关联的其他终端请求与丢包对应的媒体数据的同时,向服务器也请求重传数据,能够确保获取到丢包的媒体数据,确保用户体验能够不受影响。
[0024]第二方面,本申请实施方式提供了一种丢包重传方法,应用于用户终端,所述方法包括:确定接收的媒体数据流发生丢包;生成并输出重传请求,所述重传请求用于向与所述用户终端具有预设关联的目标终端请求与丢包对应的媒体数据;其中,所述目标终端为所述媒体数据流的数据来源之外的其他数据来源,所述预设关联至少包括位于同一分组;接收对应于所述重传请求的媒体数据。
[0025]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种丢包重传方法,应用于包括用户终端、至少一个其他终端以及服务器的电子系统,其特征在于,所述方法包括:所述用户终端确定所述服务器发送的媒体数据流发生丢包;所述用户终端向所述至少一个其他终端中基于预设关联指定的目标终端发送重传请求;其中,所述预设关联至少包括位于同一分组;所述目标终端响应于所述重传请求,发送对应于所述重传请求的媒体数据至所述用户终端;其中,所述分组的确定方法包括:所述服务器分别获取所述用户终端以及各个所述其他终端的属性信息;所述服务器根据所述属性信息对所述用户终端以及各个所述其他终端进行分组,得到多个候选分组;所述服务器分别从各个所述候选分组中选取满足预设分组条件的终端集合,形成最终的分组;其中,所述预设分组条件包括:所述终端集合中的任意两个终端之间能够实现双向通信;以及,所述终端集合中的任意两个终端之间的通信状况,优于所述两个终端中每个终端与所述服务器之间的通信状况。2.根据权利要求1所述的方法,其特征在于,所述媒体数据流通过对每一媒体数据帧添加对应的数据帧标识后进行封装得到。3.根据权利要求1所述的方法,其特征在于,所述用户终端向所述至少一个其他终端中基于预设关联指定的目标终端发送重传请求,包括:所述用户终端确定所述媒体数据流中丢失的媒体数据帧的数据帧标识;所述用户终端向所述目标终端发送携带所述数据帧标识的重传请求,以使得所述目标终端响应于所述重传请求,根据所述数据帧标识选择对应的媒体数据帧作为对应于所述重传请求的媒体数据。4.根据权利要求1所述的方法,其特征在于,所述预设关联还包括传输质量满足预设传输质量条件。5.根据权利要求1所述的方法,其特征在于,所述预设分组条件还包括:所述终端集合中的任意两个终端之间的通信状况满足预设条件。6.根据权利要求1所述的方法,其特征在于,所述属性信息包括接收媒体数据流的分辨率信息。7.根据权利要求6所述的方法,其特征在于,所述属性信息还包括位置信息和/或网络连接信息。8.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述用户终端向所述服务器发送重传请求;所述服务器响应于所述重传请求,发送对应于所述重传请求的媒体数据至所述用户终端。9.一种丢包重传方法,应用于用户终端,其特征在于,所述方法包括:确定接收的媒体数据流发生丢包;生成并输出重传请求,所述重传请求用于向与所述用户终端具有预设关联的目标终端
请求与丢包对应的媒体数据;其中,所述目标终端为所述媒体数据流的数据来源之外的其他数据来源,所述预设关联至少包括位于同一分组;接收对应于所述重传请求的媒体数据;其中,所述分组的确定方法包括:分别获取所述用户终端以及至少一个其他终端的属性信息,所述其他终端为所述媒体数据流的数据来源之外的其他数据来源;根据所述属性信息对所述用户终端以及各个所述其他终端进行分组,得到多个候选分组;分别从各个所述候选分组中选取满足预设分组条件的终端集合,形成最终的分组;其中,所述预设分组条件包括:所述终端集合中的任意两个终端之间能够实现双向通信;以及,所述终端集合中的任意两个终端之间的通信状况,优于所述两个终端中每个终端与所述服务器之间的通信状况。10.根据权利要求9所述的方法,其特征在于,所述媒体数据流通过对每一媒体数据帧添加对应的数据帧标识后进行封装得到。11.根据权利要求9所述的方法,其特征在于,所述生成并输出重传请求,包括:确定所述媒体数据流中丢失的媒体数据帧的数据帧标识;生成携带所述数据帧标识的重传请求,并发送至所述目标终端,以使得所述目标终端响应于所述重传请求,根据所述数据帧标识选择对应的媒体数据帧作为对应于所述重传请求的媒体数据。12.根据权利要求9所述的方法,其特征在于,所述预设关联还包括传输质量满足预设传输质量条件。13.根据权利要求9所述的方法,其特征在于,所述方法还包括:将所述重传请求发送至所述媒体数据流的数据来源;接收所述媒体数据流的数据来源响应于所述重传请求,发送的对应于所述重传请求的媒体数据。14.一种分组确定方法,应用于服务器,其特征在于,所述方法包括:分别获取多个终端的属性信息;根据所述属性信息对所述多个终端进行分组,得到多个候选分组;分...

【专利技术属性】
技术研发人员:李先明
申请(专利权)人:花瓣云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1