实时传输协议
外观
网际网路协议套组 |
---|
应用层 |
传输层 |
网路层 |
连结层 |
实时传输协议(Real-time Transport Protocol或简写RTP)是一个网络传输协议,它是由IETF的多媒体传输工作小组1996年在RFC 1889中公布的。
国际电信联盟ITU-T也发布了自己的RTP文档,作为H.225.0,但是后来当IETF发布了关于它的稳定的标准RFC后就被取消了。它作为因特网标准在RFC 3550(该文档的旧版本是RFC 1889)有详细说明。RFC 3551(STD 65,旧版本是RFC 1890)详细描述了使用最小控制的音频和视频会议。
RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。它一开始被设计为一个多播协议,但后来被用在很多单播应用中。RTP协议常用于流媒体系统(配合RTSP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础。
RTP协议和RTP控制协议RTCP一起使用,传输层协议主要建立在UDP协议上。
帧结构
[编辑]
|
- Ver.(2 bits):目前协定的版本号码,目前版号是2
- P(1 bit):用于RTP封包(packet)结束点的预留空间,视封包是否需要多馀的填塞空间
- X(1 bit):否在使用延伸空间于封包之中
- CC(4 bits):包含了CSRC数目用于修正标头(fixed header)
- M(1 bit):是用于应用等级以及其原型(profile)的定义。如果不为零表示目前的资料有特别的程式解译
- PT(7 bits):是指payload的格式并决定将如何去由应用程式加以解译
- Sequence Number: 序列号
- TimeStamp (32bit):产生payload的时间戳
- SSRC:同步源
相关协议
[编辑]- RFC 3550: RTP: A Transport Protocol for Real-Time Applications
- RFC 5506: Support for Reduced-Size Real-Time Transport Control Protocol (RTCP): Opportunities and Consequences
- RFC 5761: Multiplexing RTP Data and Control Packets on a Single Port
- RFC 6051: Rapid Synchronisation of RTP Flows
- RFC 7022: Guidelines for Choosing RTP Control Protocol (RTCP) Canonical Names (CNAMEs)
参见
[编辑]- Real time control protocol(RTCP)
- Real Time Streaming Protocol (RTSP)
- Secure Real-time Transport Protocol
- Stream Control Transmission Protocol
- ZRTP
- Real time communications
参考书目
[编辑]- RTP: Audio and Video for the Internet by Colin Perkins, ISBN 0672322498