小白入门音视频第十天

1.RTP

1.1 概念

        RTP 是一个应用型的传输层协议,它并不提供任何传输可靠性的保证和流量的拥塞控制机制。RTP 位于 UDP(User Datagram Protocol) 之上。UDP 虽然没有 TCP 那么可靠,并且无法保证实时业务的服务质量,需要 RTCP 实时监控数据传输和服务质量。但是,由于 UDP 的传输时延低于 TCP ,能与音频和视频很好地配合。因此,在实际应用中,RTP/ RTCP/ UDP 用于音频/ 视频媒体,而 TCP 用于数据和控制信令的传输。

        目前,支持流媒体传输的协议主要有实时传输协议 RTP( Real-Time Transport Protocol) 、实时传输控制协议 RTCP(Real-Time Transport Control Protocol) 和实时流协议 RTSP(Real-Time

Streaming Protocol) 等。

1.2 工作机制

        rtp 协议就是提供了时间标签,序列号以及其它的结构用于控制适时数据的流放。在流的概念中”时间标签”是最重要的信息。发送端依照即时的采样在数据包里隐蔽的设置了时间标签。在接受端收到数据包后,就依照时间标签按照正确的速率恢复成原始的适时数据。不同的媒体格式调时属性是不一样的。

        但是 rtp 本身并不负责同步,rtp 只是传输层协议,为了简化运输层处理,提高该层的效率。将部分运输层协议功能(比如流量控制)上移到应用层完成。同步就是属于应用层协议完成的。它没有运输层协议的完整功能,不提供任何机制来保证实时地传输数据,不支持资源预留,也不保证服务质量。rtp 报文甚至不包括长度和报文边界的描述。同时 rtp 协议的数据报文和控制报文的使用相邻的不同端口,这样大大提高了协议的灵活性和处理的简单性。

        rtp 协议和 udp 二者共同完成运输层协议功能。

        udp 协议只是传输数据包,不管数据包传输的时间顺序。

        rtp 的协议数据单元是用 udp 分组来承载的。在承载 rtp 数据包的时候,有时候一帧数据被分割成几个包具有相同的时间标签,则可以知道时间标签并不是必须的。而 udp 的多路复用让 rtp 协议利用支持显式的多点投递,可以满足多媒体会话的需求。

        rtp 协议虽然是传输层协议但是它没有作为 osi 体系结构中单独的一层来实现。rtp 协议通常根据一个具体的应用来提供服务,rtp 只提供协议框架,开发者可以根据应用的具体要求对协议进行充分的扩展。

1.3 报文结构

        RTP报文结构如下图所示:

2.RTCP

2.1 概念

        RTCP 负责管理传输质量在当前应用进程之间交换控制信息。

        在 RTP 会话期间,各参与者周期性地传送 RTCP 包,包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料。因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。

        RTP 和 RTCP 配合使用,能以有效的反馈和最小的开销使传输效率最佳化,故特别适合传送网上的实时数据。

2.2 工作机制

        

        当应用程序开始一个 rtp 会话时将使用两个端口:一个给 rtp,一个给 rtcp。rtp 本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠 rtcp 提供这些服务。在 rtp 的会话之间周期的发放一些 rtcp 包以用来传监听服务质量和交换户信息等功能。rtcp 包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料。

        因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。rtp 和 rtcp 配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。根据用户间的数据传输反馈信息,可以制定流量控制的策略,而会话用户信息的交互,可以制定会话控制的策略。

2.3 数据报

在 RTCP 通信控制中,RTCP 协议的功能是通过不同的 RTCP 数据报来实现的,主要有如下几种类型:

SR:发送端报告,所谓发送端是指发出 RTP 数据报的应用程序或者终端,发送端同时也可以是接收端。

RR:接收端报告,所谓接收端是指仅接收但不发送 RTP 数据报的应用程序或者终端。

SDES:源描述,主要功能是作为会话成员有关标识信息的载体,如用户名、邮件地址、电话号码等,此外还具有向会话成员传达会话控制信息的功能。

BYE:通知离开,主要功能是指示某一个或者几个源不再有效,即通知会话中的其他成员自己将退出会话。

APP:由应用程序自己定义,解决了 RTCP 的扩展性问题,并且为协议的实现者提供了很大的灵活性。

        

                

                

                        

        

                

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深蔚蓝i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值