RTP學習(一)RTP RTCP RTSP協議初探

2021-06-01 02:27:20 字數 1399 閱讀 1288

1) 下面的圖形象的說明了rtp相關協議的作用

一.產生的背景

這時,基於http的tcp協議無法達到要求,故產生rtp協議來進行多**資料實時傳輸.

二.rtp/rtcp/rtsp協議與tcp/ip協議對比

那麼,現在有個疑問是:為什麼tcp/ip協議就不能滿足多**通訊的要求呢?

這是因為tcp有以下4個特點:

1.tcp重傳機制

2.tcp擁塞控制機制

3.tcp報文頭比udp保文頭要大

4.tcp的啟動速度慢

對比記憶

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的預設埠號。

rtcp通常和rtcp一起提供流量控制和擁塞控**務。在rtp會話期間,各參與者週期的傳送rtcp資料報。rtcp資料報含有已傳送資料的數量丟失的資料報的數量等統計資料,因此,伺服器可以利用這些資訊動態的改變傳輸速率,甚至改變淨荷的型別。

(照我目前的理解是:rtp和rtcp提供了這些資訊給應用程式,但是rtp和rtcp並不定義根據這些資訊的動作,

就像tcp的重發和滑動視窗等都是協議自己完成的。但是rtp並不自己做這些事情。)

RTP協議學習

實時傳送協議 real time transport protocol或簡寫rtp 是乙個網路傳輸協議,它是由ietf的多 傳輸工作小組1996年在rfc 1889中公布的。編輯 封包結構 table 位元 0 1 2 3 4 7 8 9 15 16 31 0 ver.p x cc m pt 序號 ...

h264碼流rtp打包(一)

一幀image 編碼完的資料儲存在 h264buffer 中,編碼後的 h264 碼流的大小為 nh264size 因為對於nalu,並不是一幀對應乙個nalu,而是對於slice而言,乙個slice就封裝層乙個nal,所以一幀可以有多個slice,即一幀有多個nal。具體一幀中有幾個nalu則是可...

Python學習 學習筆記(一)

python是什麼?人們為和使用python python的缺點 如今誰在使用python 流行的p2p檔案分享系統bitjorrent是乙個python程式。eve online這款大型多人網路遊戲 massively multiplayer online game,mmog 廣泛地使用pytho...