通信人家园

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索

军衔等级:

  中校

注册:2005-1-2643
跳转到指定楼层
1#
发表于 2022-2-17 15:41:28 |只看该作者 |正序浏览
RTP与RTCP有啥不一样?Original Mr.Kang [url=]和老康一起学5G[/url] 2022-02-16 09:38
收录于话题
#RTP1个
#RTCP1个


1.RTP
RTP(实时传输协议)位于OSI网络模型的表示层和会话层中。它主要用于实时应用,例如网络广播、视频点播、音乐点播、实现VOIP的视频会议。它工作在UDP协议而不是TCP上,因此不能保证数据的及时传递。
1.1RTP工作原理
现在这个RTP协议是如何工作的?正如大家所知它是传输多媒体应用程序,例如一个以上的音频、文本、视频流,与其他应用程序一起插入到存在于用户空间的 RTP 库中。然后,该库通过将流编码为 RTP 数据包来对流进行多路复用,并将其打包到套接字中。然后在套接字的操作系统端创建UDP数据包以封装 RTP 数据包。
UDP数据包被传递到IP,该IP通过以太网等链路传输它。整个过程发生在发送者端,而相反的过程发生在接收者端。这就是多媒体应用程序最终从 RTP 库接收多媒体数据的方式。
1.2RTP格式
在RTP流中发送的数据包分配的编号高于其先前编号。编号有助于识别丢失的数据包。即使数据包丢失目标端应用程序也会决定要执行的操作。
但是,对于包含视频数据的数据包,最可能的操作是避开视频帧,如果数据包携带音频数据,则可以估计丢失的数据。然而,重传并不是一个实际可实现的想法,因为重传的数据包到达得太晚而没有用处。RTP不提供请求重传和确认消息的方法。
1.3RTP Payload可能包含多个样本,可以以应用程序需要的任何方式对其进行编码。实时应用程序还需要时间戳,其中时间戳分配给每个数据包中的第一个样本的源。时间戳有助于消除网络延迟变化的影响,并且还允许多个流彼此同步。
1.4RTP报头
RTP头由32位字和各种字段组成,例如Ver、P、X、CC、M、有效负载类型、序列号、时间戳、同步源标识符、贡献源标识符。
  • 版本字段——Ver,该字段指定协议版本。
  • 填充位——P,位以4字节的倍数描述用于数据包的填充位。
  • 扩展报头——X,表示存在扩展报头。这里扩展头的第一个字提供了长度。
  • 贡献来源---CC,此字段指示从0到15的贡献来源。
  • 标记位——M,标头中的 指定用于标记帧开始和结束的标记位。
  • 序列号----SN,序列号显示已发送的RTP数据包数量,每次发送数据包时,序列号增加一个值。
  • 时间戳——正如我们在文章上面讨论的时间戳,时间戳字段有助于减少抖动。它由流的源生成,以便在生成第一个数据包时调用。
  • 同步源标识符——它提供了有关与哪个流相关的数据包的信息。
  • Contributing source identifiers–当混音器出现在工作室中时,此字段用于混音器是同步源并且要混音的流列在此字段下。


2.RTCP
RTCP(实时传输控制协议)是RTP协议(也称为姊妹协议)的伴随协议,与RTP一起定义。它是RTP协议的一个组成部分,为RTP提供所需的控制功能,例如反馈、同步和用户界面。
RTCP允许发送方和接收方相互传输一系列报告,其中包含有关正在传输的数据和网络性能的补充信息。RTCP消息也被封装在一个UDP数据包中进行传输,并根据大于它们关联的RTP流的端口号的协议号发送。
在RTCP中提供反馈有助于在编码过程中在网络运行良好时提高数据速率,并在网络出现故障时降低数据速率。Payload字段向目的地提供有关所采用的编码算法的信息。
2.1RTCP 数据包类型
RTCP协议承载的五类信息分别是RR、SR、SDES、BYE和APP。
  • RR(接收器报告)——非活动发送器负责生成接收器报告,其中包括有关数据传递的接收质量反馈。它通过计算时间戳来保存接收到的最高数据包数、到达间隔抖动、丢失的数据包数、发送方和接收方之间的往返延迟等信息。
  • SR(发送者报告)——主动发送者创建发送者报告,其中包含发送者信息部分,包括有关媒体间同步、传递的字节数和累积数据包计数器的信息。
  • SDES(源描述项)——为了识别源,使用SDES,其中以规范名称的形式为会话参与者存储文本信息。例如,用户的姓名、电子邮件地址、电话号码和其他信息。
  • BYE – 表示连接结束。
  • APP(应用程序特定功能)——这是为新的开发功能、特性和实验使用而保留的。


3.RTP与RTCP主要区别
  • RTP协议是传输实时应用数据的标准。RTCP与RTP一起用于跟踪传输统计信息和服务质量,以保证传输。
  • RTP使用偶数端口号,而RTCP使用奇数端口号
  • RTP有助于实现可互操作的环境。相反RTCP通过生成反馈来控制数据交换的性能。
  • RTCP通常包含发送方和接收方报告,而RTP包含有效负载类型、时间戳、序列号等字段。
  • RTP中的源识别是通过32位随机标识符完成的。相反在RTCP中,使用了人类也可以理解的全局唯一标识符。


结论
RTP用于交换多媒体数据。RTCP是控制部分,用于定期获取有关与数据流相关的传输质量的反馈控制信息。



举报本楼

本帖有 2 个回帖,您需要登录后才能浏览 登录 | 注册
您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系我们 |网站地图  

GMT+8, 2024-11-24 23:40 , Processed in 0.178141 second(s), 15 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部