RTP/RTCP/RTSP协议初探
From:http://apps.hi.baidu.com/share/detail/24794429
一.產生的背景
隨著互連網的發展,人們已經不滿足于傳統的HTTP,FTP和電子郵件等文本信息和服務,而對內容豐富多彩的多媒體信息,服務以及多媒體通信方式提出了需求,包括聲音,圖象,圖形,視頻信息等等,而這些不但傳輸的數據量大而且對交互性和實時性要求很高。
這時,基于HTTP的TCP協議無法達到要求,故產生RTP協議來進行多媒體數據實時傳輸.
二.RTP/RTCP/RTSP協議與TCP/IP協議對比
那么,現在有個疑問是:為什么TCP/IP協議就不能滿足多媒體通信的要求呢?
這是因為TCP有以下4個特點:
1.TCP重傳機制
2.TCP擁塞控制機制
3.TCP報文頭比UDP保文頭要大
4.TCP的啟動速度慢
RTP 由IETF(Internet Engineering Task Force,互聯網工程任務組)的音頻/視頻傳輸工作組制定,主要實現實時數據的傳輸,它在包頭中提供編碼類型,包中數據的采樣時刻和數據包的序號,根據 這些信息發送和接受方可以協商編碼類型,可以對接收到的數據包進行排序等工作;RTCP主要負責傳輸質量的監控以及傳送發送者的一些標志信息。試驗和研究 表明,RTP/RTCP所提出的實時數據的傳輸機制是行之有效的。
對比記憶
IP:數據傳輸? RTP:多媒體數據實時傳輸
TCP:保證數據傳輸可靠? RTCP:保證多媒體數據傳輸的可靠
三.RTP/RTCP,RTSP協議說明
RTP:Realtime Transport Potocol 實時傳輸協議
RTCP:Realtime Transport Control Potocol 實時傳輸控制協議
RTSP:RealTime Streaming Potocol 實時流協議
RSVP:Resource Reserve Potocol 資源預留協議
1.RTP提供時間標志,序列號以及其他能夠保證在實時數據傳輸時處理時間的方法
2.RTCP是RTP的控制部分,是用來保證服務質量和成員管理的
3.RTSP具體數據傳輸交給RTP,提供對流的遠程控制
4.RSVP預留帶寬,提高QoS(Quality of Sever)
RTP為實時應用提供端到端的運輸,但不提供任何服務質量的保證。多媒體數據塊經過壓縮編碼處理后,先送給RTP封裝成為RTP分組,RTP分組再裝入UDP用戶數據報,然后再向下地交給IP層。RTP是一個協議框架,因為它只包含了實時應用的一些共同的功能。
RTP分組只包含RTP數據,而控制是由另一個配套協議RTCP提供。
RTP在端口號1025到65535之間選擇一個未使用的偶數UDP端口號,而在同一次會話中的RTCP則使用下一個奇數UDP端口號。但端口號5004和5005則分別用作RTP和RTCP的默認端口號。
RTP位于傳輸層(通常是UDP)之上,應用程序之下。它提供同步播放媒體數據所需要的時間戳和序列號,并不具有差錯和流量控制機制,這些需要應用程序實現。
RTCP通常和RTCP一起提供流量控制和擁塞控制服務。在RTP會話期間,各參與者周期的發送RTCP數據報。RTCP數據報含有已發送數據的數量丟失的數據報的數量等統計資料,因此,服務器可以利用這些信息動態的改變傳輸速率,甚至改變凈荷的類型。
(照我目前的理解是:RTP和RTCP提供了這些信息給應用程序,但是RTP和RTCP并不定義根據這些信息的動作,
就像TCP的重發和滑動窗口等都是協議自己完成的。但是RTP并不自己做這些事情。)
RTSP(Real Time Streaming Protocol)是用來控制聲音或影像的多媒體串流協議,并允許同時多個串流需求控制,傳輸時所用的網絡通訊協定并不在其定義的范圍內,服務器端可以自 行選擇使用TCP或UDP來傳送串流內容,它的語法和運作跟HTTP 1.1類似,但并不特別強調時間同步,所以比較能容忍網絡延遲。而前面提到的允許同時多個串流需求控制
總結
以上是生活随笔為你收集整理的RTP/RTCP/RTSP协议初探的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sysctl.conf工作原理
- 下一篇: 王道考研系列 计算机考研 ——机试指南(