實時傳輸協議
外觀
![本頁使用了標題或全文手工轉換](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
網際網路協定套組 |
---|
應用層 |
傳輸層 |
網路層 |
連結層 |
實時傳輸協議(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