`
shinfocom
  • 浏览: 1185958 次
文章分类
社区版块
存档分类
最新评论

RTCP:RTP 控制协议(RTP Control Protocol)

 
阅读更多

RTP 控制协议(RTCP)采用与数据包相同的分发机制,将控制包周期性传输到所有会话参与者中。底层协议必须提供数据和控制包的多路发送,例如使用不同的 UDP 端口号。RTCP 主要完成四个功能服务:

  1. RTCP 提供数据分发质量反馈信息。这是 RTP 作为传输协议的部分功能并且它涉及到了其它传输协议的流控制和拥塞控制。
  2. RTCP 为 RTP 源携带一个持久性传输层标识符,称为规范名或 CNAME。由于一旦发现冲突或程序重启时,SSRC 标识符会随之改变,所以接收方需要 CNAME 来跟踪每一个参与者。同时接收方还要求 CNAME 能够与一组相关 RTP 会话中来自于给定参与者的多重数据流相关联,例如同步视频和音频。
  3. 上述前两个功能要求所有的参与者都要发送 RTCP 包,因此必须控制速率以便 RTP 按比例增加大量的参与者。通过每一个参与者发送各自的控制包给其它所有参与者,每一个参与者能够独立观察到参与者数量,该数量可用来计算控制包的发送速率。
  4. OPTIONAL 功能用于传送最少会话控制信息,例如在用户界面显示参与者标识。这对于“松散受控”会话(在没有成员控制或阐述协商的情况下,参与者可以加入或退出该会话)是非常有用的。

上述功能1-3适用于所有环境,尤其是 IP 组播环境。RTP 应用程序设计者应该避免设计只能工作于单播模式并且不能增加到大量数量的机制。在某些情况下如单向链接中,不可能有来自接收方的反馈,所以 RTCP 的传输就可能由发送方和接收方分别独立控制。

协议结构

2 3 8 16 bit
Version P RC Packet type
Length
  • Version ― 识别 RTP 版本。RTP 数据包中的该值与 RTCP 数据包中的一样。 当前规范定义的版本值为2。
  • P ― 间隙(Padding)。设置时,RTCP 数据包包含一些其它 padding 八位位组,它们不属于控制信息。Padding 的最后八位是用于计算应该忽略多少间隙八位位组。一些加密算法中需要计算固定块大小时也可能需要使用 Padding 字段。在一个复合 RTCP 数据包中,只有最后的个别数据包中才需要使用 padding,这是因为复合数据包是作为一个整体来加密的。
  • RC ― 接收方报告计数。包含在该数据包中的接收方报告块的数量,有效值为0。
  • Packet type ― 包括常量200,识别这是一个 RTCP SR 数据包。
  • Length ― RTCP 数据包的大小(32位字减去1),包含头和任意间隙(偏移量的引入使得0成为有效值,并避免了扫描复合 RTCP 数据包过程中的无限循环现象,而采用32位字计数方法则避免了对4的倍数的有效性校验)。

相关协议:RTPRTSPUDPTCPIP

组织来源:RTCP 由 IETF(www.ietf.org)定义在 RFC 3550中。

相关链接:http://www.javvin.com/protocol/rfc3550.pdf: RTP: A Transport Protocol for Real-Time Applications

分享到:
评论

相关推荐

    RFC3550中文版 (RTP/RTCP)

    6 RTP控制协议(RTP Control Protocol)-- RTCP 6 1 RTCP包格式(RTCP Packet Format) 6 2 RTCP传输间隔(RTCP Transmission Interval) 6 2 1 维护会话成员数目(Maintaining the number of ...

    RFC3550_RTP:实时应用程序传输协议

    6 RTP控制协议(RTP Control Protocol) -- RTCP 6 1 RTCP包格式(RTCP Packet Format) 6 2 RTCP传输间隔(RTCP Transmission Interval) 6 2 1 维护会话成员数目(Maintaining the number of session ...

    rfc3550 RTP协议中文版本

    6 RTP控制协议(RTP Control Protocol) -- RTCP 6 1 RTCP包格式(RTCP Packet Format) 6 2 RTCP传输间隔(RTCP Transmission Interval) 6 2 1 维护会话成员数目(Maintaining the number of session ...

    流媒体协议介绍(rtp_rtcp_rtsp_rtmp_mms_hls).doc

    介绍RTP( Real-time Transport Protocol) RTCP(实时传输控制协议(Real-time Transport Control Protocol))安全实时传输协议(Secure Real-time Transport Protocol或SRTP)等协议

    rfc3550 rtp协议 中文版本

    6 RTP控制协议(RTP Control Protocol) -- RTCP 6 1 RTCP包格式(RTCP Packet Format) 6 2 RTCP传输间隔(RTCP Transmission Interval) 6 2 1 维护会话成员数目(Maintaining the number of session ...

    基于linux系统的RTP/RTCP/RTSP源代码

    The standards for RTP and the RTP Control Protocol (RTCP)are RFCs 1889 and 1890. Also contained in the directory ``main'' is an application that uses the library to play real-time audio streams in ...

    UDP、TCP、RTP三种协议的总结.doc

    RFC3550不仅定义了RTP,而且定义了配套的相关协议RTCP(Real-time Transport Control Protocol,即实时传输控制协议)。RTP用来为IP网上的语音、图像、传真等多种需要实时传输的多媒体数据提供端到端的实时传输服务...

    RTP协议分析

    RTP 全名是Real-time Transport Protocol(实时传输协议)。它是IETF 提出的一 个标准,对应的RFC 文档为...仅定义了RTP,而且定义了配套的相关协议RTCP(Real-time Transport Control Protocol,即实时传输控制协议)

    rfc3550中文版

    6 RTP控制协议(RTP Control Protocol) -- RTCP 6 1 RTCP包格式(RTCP Packet Format) 6 2 RTCP传输间隔(RTCP Transmission Interval) 6 2 1 维护会话成员数目(Maintaining the number of session ...

    3-IMS培训教程---SIP协议.pdf

    语音,视频 RTCP (Real-time Transmission Control Protocol) – 用于反馈媒体传输的质量报告信息 7 简单SIP网络架构 SIP Request SIP Request Media Stream (RTP) User Agent (Server) 接受SIP 请求 Request Proxy...

    支持rtsp协议的开源项目libnemesi

    libnemesi implements RTSP – Real-Time Streaming Protocol (RFC2326) and RTP/RTCP – Real-Time Transport Protocol/RTP Control Protocol (RFC3550) supporting the RTP Profile for Audio and Video ...

    feng-0.1.99.1.tar.gz_ feng-0.1.99.1.tar_For Real_feng-0.1.99.1_r

    Feng implements RTSP (Real-Time Streaming Protocol) (rfc2326) and RTP/RTCP (Real-Time Transport Protocol/RTP Control Protocol) (rfc3550). It supports the RTP Profile for Audio and Video Conferences ...

    rfc4571-rtpovertcp.pdf

    国标281818-rfc4571.Framing-Real-time-Transport-Protocol-(RTP)-and-RTP-Control-Protocol-(RTCP)-Packets-over-Conn.pdf

    基于mediastreamer2的网络电话实现流程以及源码库

    oss-wrapper --disable-x11 --enable-neon-opt=no --with-database=simple PKG_CONFIG_PATH=/home/protocol_stack/install/lib/pkgconfig CPPFLAGS=-I/home/protocol_stack/install/include LDFLAGS=-L/home/...

    移动流媒体业务和功能接口协议分析 (2013年)

    详细分析系统各构成部分的功能以及移动流媒体服务器的RTSP(real time stream protocol),SDP(session description protocol),RTP(real time transport protcol)/RTCP(real time transport control pr

    视音频最经典名著 Video Demystified

    A Handbook for the Digital Engineer Fourth Edition Chapter 1 • Introduction 1 Contents . . . ....Organization Addresses ....Analog vs....Video Data ....Digital Video ....Video Timing ....Video Resolution ....

Global site tag (gtag.js) - Google Analytics