CN111404908B - 数据交互方法、装置、电子设备及可读存储介质 - Google Patents

数据交互方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN111404908B
CN111404908B CN202010162718.6A CN202010162718A CN111404908B CN 111404908 B CN111404908 B CN 111404908B CN 202010162718 A CN202010162718 A CN 202010162718A CN 111404908 B CN111404908 B CN 111404908B
Authority
CN
China
Prior art keywords
real
protocol data
control protocol
time transmission
transmission control
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.)
Active
Application number
CN202010162718.6A
Other languages
English (en)
Other versions
CN111404908A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010162718.6A priority Critical patent/CN111404908B/zh
Publication of CN111404908A publication Critical patent/CN111404908A/zh
Application granted granted Critical
Publication of CN111404908B publication Critical patent/CN111404908B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • 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/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及数据处理技术领域,公开了一种数据交互方法、装置、电子设备和可读存储介质,数据交互方法包括:接收中转服务器发送的至少两个发送终端的实时传输协议数据流;确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据;对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据;将聚合实时传输控制协议数据发送至中转服务器,以使中转服务器将聚合实时传输控制协议数据分别返回至至少两个发送终端。本申请提供的数据交互方法将至少两个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。

Description

数据交互方法、装置、电子设备及可读存储介质
技术领域
本申请涉及数据处理技术领域,具体而言,本申请涉及一种数据交互方法、装置、电子设备及可读存储介质。
背景技术
随着互联网技术的发展,越来越多的用户通过互联网开发商提供的各种业务进行数据交互,这种数据交互给用户在线上进行沟通交流带来了便利。
在实时语音通话或视频通话***中,一般用实时传输协议(Real-time TransportProtocol,RTP)或实时传输控制协议(Real-time Transport Control Protocol,RTCP)来实现音频流或视频流的传输和控制,当参与实时音频或视频的人数较多时,随着发送实时音频流或视频流的终端数量的增加,实时传输控制协议的流量成指数增长,造成了带宽的极大浪费。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:
第一方面,提供了一种数据交互方法,应用于接收终端,包括:
接收中转服务器发送的至少两个发送终端的实时传输协议数据流;
确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据;
对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据;
将聚合实时传输控制协议数据发送至中转服务器,以使中转服务器将聚合实时传输控制协议数据分别返回至至少两个发送终端。
在第一方面的可选实施例中,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据之前,还包括:
确定发送终端的数量;
对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,包括:
若发送终端的数量大于或等于预设阈值,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据。
在第一方面的可选实施例中,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,包括如下步骤中的至少一种:
基于第一聚合函数对各个实时传输控制协议数据中的接收丢包率进行计算得到聚合实时传输控制协议数据中的接收丢包率;
基于第二聚合函数对各个实时传输控制协议数据中的接收延迟进行计算得到聚合实时传输控制协议数据中的接收延迟;
基于第三聚合函数对各个实时传输控制协议数据中的接收抖动进行计算得到聚合实时传输控制协议数据中的接收抖动。
在第一方面的可选实施例中,将聚合实时传输控制协议数据发送至中转服务器之前,还包括:
将聚合实时传输控制协议数据中的预设字段的数值替换为预设范围内的数值,以对聚合实时传输控制协议数据进行标记;
将聚合实时传输控制协议数据发送至中转服务器,包括:
将标记后的聚合实时传输控制协议数据发送至中转服务器。
第二方面,提供另一种数据交互方法,应用于发送终端,包括:
通过中转服务器发送实时传输协议数据流到接收终端,以使接收终端根据接收到的实时传输协议数据流的会话信息,获取对应的实时传输控制协议数据;
接收终端通过中转服务器返回的聚合实时传输控制协议数据;聚合实时传输控制协议数据是基于接收终端对至少两个发送终端对应的实时传输控制协议数据进行聚合得到的。
在第二方面的可选实施例中,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
聚合实时传输控制协议数据中的接收丢包率是基于第一聚合函数和各个发送终端对应的实时传输控制协议数据中的接收丢包率进行计算得到的;
聚合实时传输控制协议数据中的接收延迟是基于第二聚合函数和各个发送终端对应的实时传输控制协议数据中的接收延迟进行计算得到的;
聚合实时传输控制协议数据中的接收抖动是基于第三聚合函数和各个发送终端对应的实时传输控制协议数据中的接收抖动进行计算得到的。
在第二方面的可选实施例中,还包括:
获取聚合实时传输控制协议数据的预设字段的数值;
若预设字段的数值符合预设范围,基于预设调整规则对实时传输协议数据流进行发送控制。
第三方面,提供了一种数据交互***,包括:
至少两个发送终端,每一发送终端用于发送实时传输协议数据流到中转服务器,并接收中转服务器返回的聚合实时传输控制协议数据;
中转服务器,用于接收至少两个发送终端发送的实时传输协议数据流,并将至少两个发送终端发送的实时传输协议数据流发送至接收终端;将接收终端发送的聚合实时传输控制协议数据分别返回到至少两个发送终端;
接收终端,用于获取至少两个发送终端发送的实时传输协议数据流分别对应的实时传输控制协议数据,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,并将聚合实时传输控制协议数据发送至中转服务器。
第四方面,提供了一种数据交互装置,包括:
第一接收模块,用于接收中转服务器发送的至少两个发送终端的实时传输协议数据流;
确定模块,用于确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据;
聚合模块,用于对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据;
第一发送模块,用于将聚合实时传输控制协议数据发送至中转服务器,以使中转服务器将聚合实时传输控制协议数据分别返回至至少两个发送终端。
在第四方面的可选实施例中,数据交互装置还包括数量确定模块,用于:
确定发送终端的数量;
聚合模块在对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据时,具体用于:
若发送终端的数量大于或等于预设阈值,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据。
在第四方面的可选实施例中,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
聚合模块在对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据时,具体用于以下情况中的至少一种:
基于第一聚合函数对各个实时传输控制协议数据中的接收丢包率进行计算得到聚合实时传输控制协议数据中的接收丢包率;
基于第二聚合函数对各个实时传输控制协议数据中的接收延迟进行计算得到聚合实时传输控制协议数据中的接收延迟;
基于第三聚合函数对各个实时传输控制协议数据中的接收抖动进行计算得到聚合实时传输控制协议数据中的接收抖动。
在第四方面的可选实施例中,数据交互装置还包括标记模块,用于:
将聚合实时传输控制协议数据中的预设字段的数值替换为预设范围内的数值,以对聚合实时传输控制协议数据进行标记;
第一发送模块在将聚合实时传输控制协议数据发送至中转服务器时,具体用于:
将标记后的聚合实时传输控制协议数据发送至中转服务器。
第五方面,提供了一种数据交互装置,包括:
第二发送模块,用于通过中转服务器发送实时传输协议数据流到接收终端,以使接收终端根据接收到的实时传输协议数据流的会话信息,获取对应的实时传输控制协议数据;
第二接收模块,用于接收终端通过中转服务器返回的聚合实时传输控制协议数据;聚合实时传输控制协议数据是基于接收终端对至少两个发送终端对应的实时传输控制协议数据进行聚合得到的。
在第五方面的可选实施例中,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
聚合实时传输控制协议数据中的接收丢包率是基于第一聚合函数和各个发送终端对应的实时传输控制协议数据中的接收丢包率进行计算得到的;
聚合实时传输控制协议数据中的接收延迟是基于第二聚合函数和各个发送终端对应的实时传输控制协议数据中的接收延迟进行计算得到的;
聚合实时传输控制协议数据中的接收抖动是基于第三聚合函数和各个发送终端对应的实时传输控制协议数据中的接收抖动进行计算得到的。
在第五方面的可选实施例中,数据交互装置还包括获取模块,用于:
获取聚合实时传输控制协议数据的预设字段的数值;
若预设字段的数值符合预设范围,基于预设调整规则对实时传输协议数据流进行发送控制。
第六方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现本申请第一方面或第二方面所示的数据交互方法。
第七方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面或第二方面所示的数据交互方法。
本申请提供的技术方案带来的有益效果是:若接收到至少两个发送终端的实时传输协议数据流,获取与各个实时传输协议数据流分别对应的实时传输控制协议数据后,对至少两个实时传输控制协议数据进行聚合得到聚合实时传输控制协议数据,然后再通过中转服务器将聚合实时传输控制协议数据分别返回至两个发送终端,随着发送实时音频流或视频流的发送终端数量的增加,将多个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
进一步的,将聚合实时传输控制协议数据发送到中转服务器之前,先将聚合实时传输控制协议数据中的预设字段的数值替换为预设数值,以使接收终端可以通过识别预设字段的数值,确认接收到的是将至少两个实时传输控制协议数据聚合得到的聚合实时传输控制协议数据,从而基于聚合实时传输控制协议数据针对发送码率或发送冗余率进行相应的处理。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为现有技术中实时通话的交互方案的示意图;
图2为现有技术中数据交互的方案的示意图;
图3为现有技术一个示例中数据交互时客户端A接收流量的方案的示意图;
图4为本申请实施例提供的一种数据交互方法的应用环境的界面示意图;
图5为本申请实施例提供的一种数据交互方法的流程示意图;
图6为本申请实施例提供的一个示例中实时传输控制协议数据的字段示意图;
图7为本申请实施例提供的一个示例中对实时传输控制协议数据进行聚合的示意图;
图8为本申请实施例提供的一种数据交互方法的流程示意图;
图9为本申请实施例提供的发送终端对实时传输控制协议数据进行处理的示意图;
图10为本申请实施例提供的各个终端进行数据交互的示意图;
图11为本申请实施例中流量消耗和现有技术中流量消耗的对比示意图;
图12为本申请实施例提供的一种数据交互***的结构示意图;
图13为本申请实施例提供的一种数据交互装置的结构示意图;
图14为本申请实施例提供的一种数据交互装置的结构示意图;
图15为本申请实施例提供的一种数据交互的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
实时传输协议:实时传输协议详细说明了在互联网上传递音频和视频的标准数据包格式。它一开始被设计为一个多播协议,但后来被用在很多单播应用中。实时传输协议常用于流媒体***(配合RTSP协议),视频会议和一键通(Push to Talk)***(配合H.323或SIP),使它成为IP电话产业的技术基础。实时传输协议和实时传输控制协议一起使用,而且它是创建在UDP协议上的。
实时传输控制协议协议:实时传输控制协议收集相关媒体连接的统计信息,例如:传输字节数,传输分组数,丢失分组数,jitter,单向和双向网络延迟等等,网络应用程序即可利用实时传输控制协议的统计信息来控制传输的品质,比如当网络带宽高负载时限制信息流量或改用压缩比较小的编解码器。
本申请中的实时传输控制协议指接收端报告RR(ReceiverReport)。
在实时语音通话(VoIP)或是实时视频通话***中,一般用实时传输协议/实时传输控制协议协议来实现音频流的传输和控制。其中,实时传输协议用来传输音频流,实时传输协议被设计成可以支持单播或者多播的***,即一对一和多对多。实时传输控制协议在接收端周期性地收集和计算发送端的实时传输协议流的会话信息,并且反馈给发送端,发送端利用这些信息可以调整发送策略,比如丢包率比较高可以增加发送冗余率用来对抗网络丢包。如图1所示,以实时语音为例,一般基于Internet的实时语音通话服务,除了客户端,还需要一个中转服务器,用于转发音频数据包。
如图2所示,以实时音频为例,图2是多对多的VoIP***实时传输协议流转发示意图。图中虚线箭头是客户端上行的实时传输协议流,实线是下行实时传输协议流,可以看中转服务器的转发规则是接收某一客户端的上行实时传输协议流,然后分发给除了本客户端以外的其他所有终端(比如接收客户端的A流,然后转发给客户端B和C)。
由图1所示可以看出,对于每个实时传输协议流接收端,需要向其他每一路发送端反馈实时传输控制协议接收报告,而由图2所示,可以得出的中转服务器转发规则,该实时传输控制协议接收报告也会转发给除本客户端以外的其他客户端。如图3所示,图3是多对多的VoIP***实时传输控制协议流转发示意图,实线箭头是客户端反馈的实时传输控制协议接收报告,BA是客户端B反馈给客户端A的实时传输控制协议接收报告,BC是客户端B反馈给客户端C的实时传输控制协议接收报告,同理,虚线箭头为客户端C的接收报告。根据中转服务器转发规则,实时传输控制协议接收报告BC会同时转发给客户端C和客户端A。特别地,对于客户端A,会收到实时传输控制协议接收报告BC、BA、CA、CB。
通过图3可以看到,对于客户端A,实时传输控制协议接收报告BC和CB都是不需要的,这势必会造成带宽的浪费。平均每一个客户端接收到的下行流量T如下:
T=TRTP×(n-1)+TRTCP×(n-1)2 (1)
式中,n表示多人VoIP通话的客户端数量;TRTP表示平均一路实时传输协议流的流量;TRTCP表示平均一路实时传输控制协议流的流量。
由此得出,在多人语音通话中,随着参与人数的增加,实时传输控制协议的流量成指数增长,造成了带宽的极大浪费,甚至直接影响用户体验。本文,在现有中转服务器转发规则的基础上,提出一种数据交互的方法,可以保证大幅减少实时传输控制协议流量的损耗。
如图4所示,本申请的应用场景可以是多人语音会议。如图4所示,该会议会话中,每一个头像对应一个图2和图3中的客户端,每个客户端可以发送一路上行语音流,并且可以接收多路下行语音流,即每一个客户端可以作为一个发送终端,则其他客户端对应为接收终端;同时每一个客户端可以作为一个接收终端,则其他客户端中对应有发送终端。
本申请提供的数据交互方法、装置、电子设备及计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例中提供了一种可能的实现方式,如图5所示,提供了一种数据交互方法,以该方法应用于在交互中接收实时传输协议数据流的接收终端为例进行说明,可以包括以下步骤:
步骤S501,接收中转服务器发送的至少两个发送终端的实时传输协议数据流。
其中,实时传输协议数据流可以包括音频流,也可以包括视频流。
具体的,至少两个发送终端将实时传输协议数据流发送至中转服务器,中转服务器将实时传输协议数据流发送至接收终端。
步骤S502,确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据。
其中,实时传输协议数据流的会话信息可以包括接收丢包率、接收延迟、接收抖动等。
具体的,可以周期性的,即间隔预设时间收集和计算发送端的实时传输协议流的会话信息,根据所收集和计算得到的会话信息生成实时传输控制协议数据。
步骤S503,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据。
具体的,可以采用预设的函数对各个实时传输控制协议数据进行聚合,得到一个聚合实时传输控制协议数据。
步骤S504,将聚合实时传输控制协议数据发送至中转服务器,以使中转服务器将聚合实时传输控制协议数据分别返回至至少两个发送终端。
具体的,将聚合实时传输控制协议数据发送至中转服务器,中转服务器将聚合实时传输控制协议数据分别返回至两个发送终端,至少两个发送终端再根据聚合实时传输控制协议数据调整发送码率和发送冗余率等。
本实施例中,若接收到至少两个发送终端的实时传输协议数据流,获取与各个实时传输协议数据流分别对应的实时传输控制协议数据后,对至少两个实时传输控制协议数据进行聚合得到聚合实时传输控制协议数据,然后再通过中转服务器将实时传输控制协议数据分别返回至两个发送终端,随着发送实时音频流或视频流的发送终端数量的增加,将多个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
本申请实施例中提供了一种可能的实现方式,步骤S503的对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据之前,还可以包括:
确定发送终端的数量;
步骤S503的对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,可以包括:
若发送终端的数量大于或等于预设阈值,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据。
具体的,在对实时传输控制协议数据进行聚合之前,可以先确定发送终端的数量,也就是确定各个实时传输控制协议数据的数量,若发送终端,即实时传输控制协议数据的数量大于或等于预设阈值,例如大于10,再将各个实时传输控制协议数据聚合,可以有效减少实时传输控制协议数的流量;若实时传输控制协议数据的数量小于预设阈值,可以直接将每一个实时传输控制协议数据分别返回到各个发送终端。
本申请实施例中提供了一种可能的实现方式,步骤S503的对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,可以包括如下步骤中的至少一种:
(1)基于第一聚合函数对各个实时传输控制协议数据中的接收丢包率进行计算得到聚合实时传输控制协议数据中的接收丢包率;
(2)基于第二聚合函数对各个实时传输控制协议数据中的接收延迟进行计算得到聚合实时传输控制协议数据中的接收延迟;
(3)基于第三聚合函数对各个实时传输控制协议数据中的接收抖动进行计算得到聚合实时传输控制协议数据中的接收抖动。
具体的,假设有n个发送实时传输协议数据流的发送终端,即接收终端收到n路下行实时传输协议流,分别为S1,S2,...,Sn,在实时传输控制协议接收报告(即各个实时传输控制协议数据)发送间隔内,统计到的平均延迟分别为d1,d2,...,dn,丢包率分别为l1,l2,...,ln,抖动分别为j1,j2,...,jn,第一聚合函数、第二聚合函数和第三聚合函数可以相同,均为最大值函数。
也就是说,对于接收延迟可以按照如下方式计算:
d=max(d1,d2,...,dn) (2)
式中,d为聚合实时传输控制协议数据中的接收延迟;d1,d2,...,dn分别为与各个实时传输协议数据流对应的接收延迟。
对于接收丢包率可以按照如下方式计算:
l=max(l1,l2,...,ln) (3)
式中,l为聚合实时传输控制协议数据中的接收丢包率;l1,l2,...,ln分别为与各个实时传输协议数据流对应的接收丢包率。
对于接收抖动可以按照如下方式计算:
j=max(j1,j2,...,jn) (4)
式中,j为聚合实时传输控制协议数据中的接收抖动;j1,j2,...,jn分别为与各个实时传输协议数据流对应的接收抖动。
在其他实施方式中,第一聚合函数、第二聚合函数和第三聚合函数也可以不同,可以分别为或者均为平均值函数、最大值函数、方差函数、中值函数等等,具体的计算方式在此不作限制。
本申请实施例中提供了一种可能的实现方式,步骤S504的将聚合实时传输控制协议数据发送至中转服务器之前,还可以包括:
将聚合实时传输控制协议数据中的预设字段的数值替换为预设范围内的数值,以对聚合实时传输控制协议数据进行标记;
步骤S504的将聚合实时传输控制协议数据发送至中转服务器,可以包括:
将标记后的聚合实时传输控制协议数据发送至中转服务器。
具体的,可以将聚合实时传输控制协议数据中的预设字段的数值,替换为区别于通用的合法数值。
如图6所示,在将聚合实时传输控制协议数据发送到中转服务器之前,可以将聚合实时传输控制协议数据中的PT字段的数值替换为区别于通用的PT字段的数值,或者替换为预设的一个数值,这样当发送终端接收到聚合实时传输控制协议数据时,可以通过PT字段识别并确认这是由多个实时传输控制协议数据聚合形成的聚合实时传输控制协议数据,从而基于聚合实时传输控制协议数据进行相应的处理。
为了更清楚的阐述本申请提供的数据交互方法,以下将结合示例对本申请的数据交互方法进行进一步说明。
如图7所示,在一个示例中,本申请提供的数据交互方法可以包括:
1)接收终端(本示例中为客户端B)周期性的检测所接收到的实时传输协议数据流;
2)客户端B检测到两个发送终端(本示例中为客户端C和客户端A)通过中转服务器发送的实时传输协议数据流;
3)客户端B基于两个实时传输协议数据流生成相应的实时传输控制协议数据;
4)客户端B将各实时传输控制协议数据流中的接收抖动、接收丢包率、接收延迟分别取最大值,得到聚合实时传输控制协议数据;
5)客户端B修改聚合实时传输控制协议数据中的PT字段,使其区别于通用的PT字段;
6)客户端B将聚合实时传输控制协议数据返回到中转服务器;
7)中转服务器将聚合实时传输控制协议数据分别发送到客户端C和客户端A;
8)客户端C和客户端A基于聚合实时传输控制协议数据分别调节发送冗余率和发送码率。
上述的数据交互方法,若接收到至少两个发送终端的实时传输协议数据流,获取与各个实时传输协议数据流分别对应的实时传输控制协议数据后,对至少两个实时传输控制协议数据进行聚合得到聚合实时传输控制协议数据,然后再通过中转服务器将实时传输控制协议数据分别返回至两个发送终端,随着发送实时音频流或视频流的发送终端数量的增加,将多个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
进一步的,将聚合实时传输控制协议数据发送到中转服务器之前,先将聚合实时传输控制协议数据中的预设字段的数值替换为预设数值,以使接收终端可以通过识别预设字段的数值,确认接收到的是将至少两个实时传输控制协议数据聚合得到的聚合实时传输控制协议数据,从而基于聚合实时传输控制协议数据针对发送码率或发送冗余率进行相应的处理。
本申请实施例中提供了一种可能的实现方式,如图8所示,提供了一种数据交互方法,以该方法应用于在交互中发送实时传输协议数据流的发送终端为例进行说明,可以包括以下步骤:
步骤S801,通过中转服务器发送实时传输协议数据流到接收终端,以使接收终端根据接收到的实时传输协议数据流的会话信息,获取对应的实时传输控制协议数据。
其中,实时传输协议数据流可以包括音频流,也可以包括视频流。
具体的,至少两个发送终端将实时传输协议数据流发送至中转服务器,中转服务器将实时传输协议数据流发送至接收终端。
步骤S802,接收终端通过中转服务器返回的聚合实时传输控制协议数据;聚合实时传输控制协议数据是基于接收终端对至少两个发送终端对应的实时传输控制协议数据进行聚合得到的。
其中,实时传输协议数据流的会话信息可以包括接收丢包率、接收延迟、接收抖动等。
具体的,接收终端可以周期性的,即间隔预设时间收集和计算发送端的实时传输协议流的会话信息,根据所收集和计算得到的会话信息生成实时传输控制协议数据;接收终端可以采用预设的函数对各个实时传输控制协议数据进行聚合,得到一个聚合实时传输控制协议数据。
本实施例中,至少两个发送终端发送实时传输协议数据流到接收终端,接收终端获取与各个实时传输协议数据流分别对应的实时传输控制协议数据后,对至少两个实时传输控制协议数据进行聚合得到聚合实时传输控制协议数据,然后再通过中转服务器将实时传输控制协议数据分别返回至两个发送终端,随着发送实时音频流或视频流的发送终端数量的增加,将多个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
本申请实施例中提供了一种可能的实现方式,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
聚合实时传输控制协议数据中的接收丢包率是基于第一聚合函数和各个发送终端对应的实时传输控制协议数据中的接收丢包率进行计算得到的;
聚合实时传输控制协议数据中的接收延迟是基于第二聚合函数和各个发送终端对应的实时传输控制协议数据中的接收延迟进行计算得到的;
聚合实时传输控制协议数据中的接收抖动是基于第三聚合函数和各个发送终端对应的实时传输控制协议数据中的接收抖动进行计算得到的。
具体的,实时传输控制协议数据的具体聚合过程中在上述应用于接收终端的数据交互方法的实施例中已经进行详细阐述,在此不做赘述。
本申请实施例中提供了一种可能的实现方式,数据交互方法还可以包括:
(1)获取聚合实时传输控制协议数据的预设字段的数值;
(2)若预设字段的数值符合预设范围,基于预设调整规则对实时传输协议数据流进行发送控制。
具体的,如图9所示,当接收到聚合实时传输控制协议数据时,由于发送终端并不能直接判定所接收的聚合实时传输控制协议数据就是由至少两个实时传输控制协议数据聚合得到的,因此,会先检测聚合实时传输控制协议数据的预设字段的数值,若预设字段的数值符合预设范围,判定所接收的聚合实时传输控制协议数据就是由至少两个实时传输控制协议数据聚合得到的,再基于预设调整规则对实时传输协议数据流进行发送控制,例如控制本端的发送码率、发送冗余率等。
上述的数据交互方法,若接收到至少两个发送终端的实时传输协议数据流,获取与各个实时传输协议数据流分别对应的实时传输控制协议数据后,对至少两个实时传输控制协议数据进行聚合得到聚合实时传输控制协议数据,然后再通过中转服务器将实时传输控制协议数据分别返回至两个发送终端,随着发送实时音频流或视频流的发送终端数量的增加,将多个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
进一步的,将聚合实时传输控制协议数据发送到中转服务器之前,先将聚合实时传输控制协议数据中的预设字段的数值替换为预设数值,以使接收终端可以通过识别预设字段的数值,确认接收到的是将至少两个实时传输控制协议数据聚合得到的聚合实时传输控制协议数据,从而基于聚合实时传输控制协议数据针对发送码率或发送冗余率进行相应的处理。
为了更清楚的阐述本申请提供的数据交互方法的技术效果,以下将从每一发送终端或接收终端所接收到的流量的角度进行阐述。
如图10所示,从终端1的角度而言,终端1接收到从终端2至终端n的n-1个终端发送的实时传输控制协议数据,终端1将n-1个实时传输控制协议数据聚合,得到聚合实时传输控制协议数据,并将聚合实时传输控制协议数据通过中转服务器返回到各个发送终端;同时,终端1也会给每一个其他终端发送实时传输协议数据流,此时终端1就作为发送端,也会接收到每一个其他终端返回的聚合实时传输控制协议数据流。
也就是说,对于任何一个终端,都是作为发送终端的同时也作为接收终端,每一个终端接收到的流量为:
T=(TRTP+TRTCP)×(n-1) (5)
其中,n表示多人VoIP通话的客户端数量,即终端的数量;TRTP表示平均一路实时传输协议流的流量;TRTCP表示平均一路实时传输控制协议流的流量。
如图11所示,将本申请的交互数据方法计算得到的流量和现有技术中的流量,即上文中的公式(1)进行对比,图11中的横坐标表示参与人数(也就是参与的终端数量),纵坐标表示流量,黑色曲线和灰色曲线分别是现有技术和本申请的流量随着人数(终端数量)增长的趋势。可以看到10人以下两者差别不大,但是随着参与人数的增长,现有技术的流量会呈***增长趋势,而本申请的流量呈现线性增长,所以在10人以上的多人实时语音会议场景,本申请在流量优势上大幅领先。
本申请实施例中提供了一种可能的实现方式,如图12所示,提供了一种数据交互***1200,该数据交互***1200可以包括:至少两个发送终端1201、中转服务器1202和接收终端1203,其中:
至少两个发送终端1201,每一发送终端用于发送实时传输协议数据流到中转服务器,并接收中转服务器返回的聚合实时传输控制协议数据;
中转服务器1202,用于接收至少两个发送终端发送的实时传输协议数据流,并将至少两个发送终端发送的实时传输协议数据流发送至接收终端;将接收终端发送的聚合实时传输控制协议数据分别返回到至少两个发送终端;
接收终端1203,用于获取至少两个发送终端发送的实时传输协议数据流分别对应的实时传输控制协议数据,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,并将聚合实时传输控制协议数据发送至中转服务器。
本申请实施例中提供了一种可能的实现方式,如图13所示,提供了一种数据交互装置1300,该数据交互装置1300可以包括:第一接收模块1301、确定模块1302、聚合模块1303和第一发送模块1304,其中:
第一接收模块1301,用于接收中转服务器发送的至少两个发送终端的实时传输协议数据流;
确定模块1302,用于确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据;
聚合模块1303,用于对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据;
第一发送模块1304,用于将聚合实时传输控制协议数据发送至中转服务器,以使中转服务器将聚合实时传输控制协议数据分别返回至至少两个发送终端。
本申请实施例中提供了一种可能的实现方式,数据交互装置1300还包括数量确定模块,用于:
确定发送终端的数量;
聚合模块1303在对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据时,具体用于:
若发送终端的数量大于或等于预设阈值,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据。
本申请实施例中提供了一种可能的实现方式,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
聚合模块1303在对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据时,具体用于以下情况中的至少一种:
基于第一聚合函数对各个实时传输控制协议数据中的接收丢包率进行计算得到聚合实时传输控制协议数据中的接收丢包率;
基于第二聚合函数对各个实时传输控制协议数据中的接收延迟进行计算得到聚合实时传输控制协议数据中的接收延迟;
基于第三聚合函数对各个实时传输控制协议数据中的接收抖动进行计算得到聚合实时传输控制协议数据中的接收抖动。
本申请实施例中提供了一种可能的实现方式,数据交互装置1300还包括标记模块,用于:
将聚合实时传输控制协议数据中的预设字段的数值替换为预设范围内的数值,以对聚合实时传输控制协议数据进行标记;
第一发送模块1304在将聚合实时传输控制协议数据发送至中转服务器时,具体用于:
将标记后的聚合实时传输控制协议数据发送至中转服务器。
本申请实施例中提供了一种可能的实现方式,如图14所示,提供了一种数据交互装置1400,该数据交互装置1400可以包括:第二发送模块1401和第二接收模块1402,其中:
第二发送模块1401,用于通过中转服务器发送实时传输协议数据流到接收终端,以使接收终端根据接收到的实时传输协议数据流的会话信息,获取对应的实时传输控制协议数据;
第二接收模块1402,用于接收终端通过中转服务器返回的聚合实时传输控制协议数据;聚合实时传输控制协议数据是基于接收终端对至少两个发送终端对应的实时传输控制协议数据进行聚合得到的。
本申请实施例中提供了一种可能的实现方式,实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
聚合实时传输控制协议数据中的接收丢包率是基于第一聚合函数和各个发送终端对应的实时传输控制协议数据中的接收丢包率进行计算得到的;
聚合实时传输控制协议数据中的接收延迟是基于第二聚合函数和各个发送终端对应的实时传输控制协议数据中的接收延迟进行计算得到的;
聚合实时传输控制协议数据中的接收抖动是基于第三聚合函数和各个发送终端对应的实时传输控制协议数据中的接收抖动进行计算得到的。
本申请实施例中提供了一种可能的实现方式,数据交互装置1400还包括获取模块,用于:
获取聚合实时传输控制协议数据的预设字段的数值;
若预设字段的数值符合预设范围,基于预设调整规则对实时传输协议数据流进行发送控制。
上述的数据交互装置,若接收到至少两个发送终端的实时传输协议数据流,获取与各个实时传输协议数据流分别对应的实时传输控制协议数据后,对至少两个实时传输控制协议数据进行聚合得到聚合实时传输控制协议数据,然后再通过中转服务器将实时传输控制协议数据分别返回至两个发送终端,随着发送实时音频流或视频流的发送终端数量的增加,将多个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
进一步的,将聚合实时传输控制协议数据发送到中转服务器之前,先将聚合实时传输控制协议数据中的预设字段的数值替换为预设数值,以使接收终端可以通过识别预设字段的数值,确认接收到的是将至少两个实时传输控制协议数据聚合得到的聚合实时传输控制协议数据,从而基于聚合实时传输控制协议数据针对发送码率或发送冗余率进行相应的处理。
本公开实施例的图片的数据交互装置可执行本公开的实施例所提供的一种图片的数据交互方法,其实现原理相类似,本公开各实施例中的图片的数据交互装置中的各模块所执行的动作是与本公开各实施例中的图片的数据交互方法中的步骤相对应的,对于图片的数据交互装置的各模块的详细功能描述具体可以参见前文中所示的对应的图片的数据交互方法中的描述,此处不再赘述。
基于与本公开的实施例中所示的方法相同的原理,本公开的实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机操作指令;处理器,用于通过调用计算机操作指令执行实施例所示的数据交互方法。与现有技术相比,本申请中的数据交互方法将至少两个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
在一个可选实施例中提供了一种电子设备,如图15所示,图15所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图15中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图15示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请中的数据交互方法将至少两个实时传输控制协议数据进行聚合,可以有效减少实时传输控制协议数据的流量,节省流量资源。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,聚合模块还可以被描述为“对实时传输控制协议数据进行聚合的模块”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (12)

1.一种数据交互方法,其特征在于,应用于接收终端,包括:
接收中转服务器发送的至少两个发送终端的实时传输协议数据流;
确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据;
确定所述发送终端的数量,基于所述发送终端的数量对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,对所述聚合实时传输控制协议数据进行标记;
将标记后的聚合实时传输控制协议数据发送至所述中转服务器,以使所述中转服务器将标记后的所述聚合实时传输控制协议数据分别返回至所述至少两个发送终端。
2.根据权利要求1所述的数据交互方法,其特征在于,
所述确定所述发送终端的数量,基于所述发送终端的数量对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,包括:
若所述发送终端的数量大于或等于预设阈值,对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据。
3.根据权利要求1所述的数据交互方法,其特征在于,所述实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
所述对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,包括如下步骤中的至少一种:
基于第一聚合函数对各个实时传输控制协议数据中的接收丢包率进行计算得到聚合实时传输控制协议数据中的接收丢包率;
基于第二聚合函数对各个实时传输控制协议数据中的接收延迟进行计算得到聚合实时传输控制协议数据中的接收延迟;
基于第三聚合函数对各个实时传输控制协议数据中的接收抖动进行计算得到聚合实时传输控制协议数据中的接收抖动。
4.根据权利要求1所述的数据交互方法,其特征在于,所述对所述聚合实时传输控制协议数据进行标记,包括:
将所述聚合实时传输控制协议数据中的预设字段的数值替换为预设范围内的数值。
5.一种数据交互方法,其特征在于,应用于发送终端,包括:
通过中转服务器发送实时传输协议数据流到接收终端,以使所述接收终端根据接收到的实时传输协议数据流的会话信息,获取对应的实时传输控制协议数据;
接收所述接收终端通过所述中转服务器返回的标记后的聚合实时传输控制协议数据;所述标记后的聚合实时传输控制协议数据是基于对聚合实时传输控制协议数据进行标记得到的;所述聚合实时传输控制协议数据是所述接收终端确定所述发送终端的数量,基于所述发送终端的数量对至少两个发送终端对应的实时传输控制协议数据进行聚合得到的。
6.根据权利要求5所述的数据交互方法,其特征在于,所述实时传输控制协议数据包括接收丢包率、接收延迟和接收抖动中的至少一种;
所述聚合实时传输控制协议数据中的接收丢包率是基于第一聚合函数和各个发送终端对应的实时传输控制协议数据中的接收丢包率进行计算得到的;
所述聚合实时传输控制协议数据中的接收延迟是基于第二聚合函数和各个发送终端对应的实时传输控制协议数据中的接收延迟进行计算得到的;
所述聚合实时传输控制协议数据中的接收抖动是基于第三聚合函数和各个发送终端对应的实时传输控制协议数据中的接收抖动进行计算得到的。
7.根据权利要求5所述的数据交互方法,其特征在于,还包括:
获取所述聚合实时传输控制协议数据的预设字段的数值;
若所述预设字段的数值符合预设范围,基于预设调整规则对实时传输协议数据流进行发送控制。
8.一种数据交互***,其特征在于,包括:
至少两个发送终端,每一发送终端用于发送实时传输协议数据流到中转服务器,并接收中转服务器返回的聚合实时传输控制协议数据;
中转服务器,用于接收至少两个发送终端发送的实时传输协议数据流,并将至少两个发送终端发送的实时传输协议数据流发送至接收终端;将接收终端发送的聚合实时传输控制协议数据分别返回到至少两个发送终端;
接收终端,用于获取至少两个发送终端发送的实时传输协议数据流分别对应的实时传输控制协议数据,确定所述发送终端的数量,基于所述发送终端的数量对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,对聚合实时传输控制协议数据进行标记得到标记后的聚合实时传输控制协议数据,并将标记后的所述聚合实时传输控制协议数据发送至中转服务器。
9.一种数据交互装置,其特征在于,包括:
第一接收模块,用于接收中转服务器发送的至少两个发送终端的实时传输协议数据流;
确定模块,用于确定各个实时传输协议数据流的会话信息,基于各个会话信息生成与各个实时传输协议数据流分别对应的实时传输控制协议数据;
聚合模块,用于确定所述发送终端的数量,基于所述发送终端的数量对各个实时传输控制协议数据进行聚合,得到聚合实时传输控制协议数据,对所述聚合实时传输控制协议数据进行标记;
第一发送模块,用于将标记后的聚合实时传输控制协议数据发送至所述中转服务器,以使所述中转服务器将标记后的所述聚合实时传输控制协议数据分别返回至所述至少两个发送终端。
10.一种数据交互装置,其特征在于,包括:
第二发送模块,用于通过中转服务器发送实时传输协议数据流到接收终端,以使所述接收终端根据接收到的实时传输协议数据流的会话信息,获取对应的实时传输控制协议数据;
第二接收模块,用于接收所述接收终端通过所述中转服务器返回的标记后的聚合实时传输控制协议数据;所述标记后的聚合实时传输控制协议数据是基于对聚合实时传输控制协议数据进行标记得到的;所述聚合实时传输控制协议数据是所述接收终端确定发送终端的数量,基于所述发送终端的数量对至少两个发送终端对应的实时传输控制协议数据进行聚合得到的。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述的数据交互方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现权利要求1-7任一项所述的数据交互方法。
CN202010162718.6A 2020-03-10 2020-03-10 数据交互方法、装置、电子设备及可读存储介质 Active CN111404908B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010162718.6A CN111404908B (zh) 2020-03-10 2020-03-10 数据交互方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010162718.6A CN111404908B (zh) 2020-03-10 2020-03-10 数据交互方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN111404908A CN111404908A (zh) 2020-07-10
CN111404908B true CN111404908B (zh) 2021-09-10

Family

ID=71428704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010162718.6A Active CN111404908B (zh) 2020-03-10 2020-03-10 数据交互方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111404908B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0404154D0 (en) * 2003-02-28 2004-03-31 Zarlink Semiconductor Vn Inc Data structure providing storage and bandwidth savings for hardware RTCP statistics collection applications
CN101030924A (zh) * 2006-03-03 2007-09-05 中兴通讯股份有限公司 一种动态带宽适配的方法
CN101399685A (zh) * 2007-09-30 2009-04-01 华为技术有限公司 一种用于多媒体业务管理的方法、装置及其***
WO2014062443A1 (en) * 2012-10-16 2014-04-24 Motorola Solutions, Inc. Enhanced push to talk systems and methods with floor control and media traffic optimization
CN110248138A (zh) * 2018-03-08 2019-09-17 华为技术有限公司 进行音视频会议的方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1156125C (zh) * 2002-09-29 2004-06-30 清华大学 一种基于客户端反馈的流量控制方法
CN101150538A (zh) * 2007-10-23 2008-03-26 中兴通讯股份有限公司 一种收发即时多媒体信息的方法和装置
CN101895475B (zh) * 2010-07-30 2012-05-30 迈普通信技术股份有限公司 基于pim sm协议的优雅重启方法及其***
CN110022335B (zh) * 2018-01-09 2021-10-29 腾讯科技(深圳)有限公司 数据包发送方法、装置、服务器及计算机可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0404154D0 (en) * 2003-02-28 2004-03-31 Zarlink Semiconductor Vn Inc Data structure providing storage and bandwidth savings for hardware RTCP statistics collection applications
CN101030924A (zh) * 2006-03-03 2007-09-05 中兴通讯股份有限公司 一种动态带宽适配的方法
CN101399685A (zh) * 2007-09-30 2009-04-01 华为技术有限公司 一种用于多媒体业务管理的方法、装置及其***
WO2014062443A1 (en) * 2012-10-16 2014-04-24 Motorola Solutions, Inc. Enhanced push to talk systems and methods with floor control and media traffic optimization
CN110248138A (zh) * 2018-03-08 2019-09-17 华为技术有限公司 进行音视频会议的方法和装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
J.Ott et al.RTCP Extensions for Single-Source Multicast Sessions with Unicast Feedback.《https://tools.ietf.org/html/draft-ietf-avt-rtcpssm-13》.2007,第3-15节. *
RTCP Extensions for Single-Source Multicast Sessions with Unicast Feedback;J.Ott et al;《https://tools.ietf.org/html/draft-ietf-avt-rtcpssm-13》;20070305;第3-15节 *
基于RTCP分级反馈的IPTV视频质量监控***的研究与实现;王玲玲等;《微电子学与计算机》;20111231;第28卷(第12期);第157-160、1661页 *

Also Published As

Publication number Publication date
CN111404908A (zh) 2020-07-10

Similar Documents

Publication Publication Date Title
CN111147893B (zh) 一种视频自适应方法、相关设备以及存储介质
KR100677462B1 (ko) 스트리밍서비스를 위한 휴대단말기의 대역폭산정시스템 및방법
CN103733680B (zh) 用于控制无线上行会话的方法和装置
EP3016395B1 (en) Video encoding device and video encoding method
US8842159B2 (en) Encoding processing for conferencing systems
JP2010521856A (ja) 通信システムにおけるデータ伝送方法
CN103348657B (zh) 流媒体播放方法、设备及***
CN111741248B (zh) 一种数据传输方法、装置、终端设备和存储介质
US20190200049A1 (en) Systems and methods of video forwarding with adaptive video transcoding capabilities
WO2023174254A1 (zh) 视频发布方法、装置、设备及存储介质
CN115484240A (zh) 解码、数据传输方法、装置、终端及服务器
US9509618B2 (en) Method of transmitting data in a communication system
CN111404908B (zh) 数据交互方法、装置、电子设备及可读存储介质
US11431779B2 (en) Network controlled uplink media transmission for a collaborative media production in network capacity constrained scenarios
CN108574840B (zh) 一种评估视频体验质量的方法及装置
US20220321625A1 (en) Video Communications Network With Value Optimization
CN115209189A (zh) 一种视频流传输方法、***、服务器及存储介质
EP2884743A1 (en) Process for managing the exchanges of video streams between users of a video conference service
CN115334059A (zh) 一种音视频互通方法、装置、设备及存储介质
Rodríguez et al. Adaptive cross-device videoconferencing solution for wireless networks based on QoS monitoring
CN112153322B (zh) 数据分发方法、装置、设备及存储介质
US20140244798A1 (en) TCP-Based Weighted Fair Video Delivery
CN114978935B (zh) 服务质量资源申请方法、设备及存储介质
CN113727183B (zh) 直播推流方法、装置、设备、存储介质及计算机程序产品
CN117041469A (zh) 视频会议码率平滑方法、装置、设备及存储介质

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
GR01 Patent grant
GR01 Patent grant