rtp協議詳解 rtcp協議詳解

2021-06-02 21:26:13 字數 3759 閱讀 3654

2、rtp/rtcp協議簡介

rtp 由 ietf(定義在 rfc 3550和3551中。

rtp通常與輔助控制協議rtcp一起工作,rtp只負責實時資料的傳輸,rtcp負責對rtp的通訊和會話進行帶外管理(如流量控制、擁塞控制、會話源管理等)。

3、rtp/rtcp協議層次和封裝

rtp分組只包含rtp資料,而控制是由另乙個配套協議rtcp提供。rtp在埠號1025到65535之間選擇乙個未使用的偶數udp埠號,而在同一次會話中的rtcp則使用下乙個奇數udp埠號。

rtp通常和rtcp一起工作,在rtp會話期間,各參與者週期的傳送rtcp訊息。rtcp訊息含有已傳送資料的丟包統計和網路擁塞等資訊,伺服器可以利用這些資訊動態的改變傳輸速率,甚至改變淨荷的型別。rtcp訊息也被封裝為udp資料報進行傳輸。

4、rtp/rtcp協議頭資訊

version (v): 2 bits

標明rtp版本號。協議初始版本為0,rfc3550中規定的版本號為2。

padding (p): 1 bit

如果該位被設定,則在該packet末尾包含了額外的附加資訊,附加資訊的最後乙個位元組表示額外附加資訊的長度(包含該位元組本身)。該欄位之所以存在是因為一些加密機制需要固定長度的資料塊,或者為了在乙個底層協議資料單元中傳輸多個rtp packets。

extension (x): 1 bit

如果該位被設定,則在固定的頭部後存在乙個擴充套件頭部,格式定義在rfc3550 5.3.1節。

csrc count (cc): 4 bits

在固定頭部後存在多少個csrc標記。

marker (m): 1 bit

該位的功能依賴於profile的定義。profile可以改變該位的長度,但是要保持marker和payload type總長度不變(一共是8 bit)。

payload type (pt): 7 bits

標記著rtp packet所攜帶資訊的型別,標準型別列出在rfc3551中。如果接收方不能識別該型別,必須忽略該packet。

sequence number: 16 bits

序列號,每個rtp packet傳送後該序列號加1,接收方可以根據該序列號重新排列資料報順序。

timestamp: 32 bits

時間戳。反映rtp packet所攜帶資訊包中第乙個位元組的取樣時間。

ssrc: 32 bits

資料來源標識。在乙個rtp session其間每個資料流都應該有乙個不同的ssrc。

csrc list: 0 to 15 items, 每個源標識32 bits

貢獻資料來源標識。只有存在mixer的時候才有效。如乙個將多聲道的語音流合併成乙個單聲道的語音流,在這裡就列出原來每個聲道的ssrc。

5、rtcp協議

rtcp協議處理機根據定義了五種型別的報文:

rr: receiver report

sr: sender report

sdes: source description items.

bye: indicates end of participation.

它們完成接收、分析、產生和傳送控制報文的功能。

rtcp可以說是控制交通的協議,它提供了:

1)sr傳送者報告分組:用來使傳送端週期的向所有接收端用多播方式進行報告。內容包括:

絕對時鐘時間是必要的。因為rtp要求每一種**使用乙個流。有了絕對時鐘時間就可以進行圖形和聲音的同步。

2)rr接收者報告分組:用來使接收端週期性的向所有的點用多播方式進行報告。內容包括

所接收到的rtp流的ssrc;該rtp流的分組丟失率;在該rtp流中的最後乙個rtp分組的序號;分組到達時間間隔的抖動等。

傳送rr分組有兩個目的。第一,可以使所有的接收端和傳送端了解當前網路的狀態。

第二,可以使所有傳送rtcp分組的站點自適應的調整自己傳送rtcp分組的速率,rtcp分組的通訊量不超過網路中的資料分組的通訊量的5%,而接收端分組報告分組的通訊量又應小於所有rtcp分組的通訊量的75%。

3)sdes源描述分組:給出會話中參加者的描述,包括參加者的規範名(cname)

4)bye分組:關閉乙個資料流。

6、實時流協議rtsp協議

1) rtsp協議

rtsp(real time streaming protocol)協議定義了如何有效地通過ip網路傳送多**資料,是一種客戶端到伺服器端的多**描述協議,詳見rfc2326。

rtsp是乙個非常類似於http的應用層協議。每個發布和**檔案也被定義為rtsp upl。而**檔案的發布資訊被書寫進乙個被稱為**發布檔案裡,這個檔案在後面會說明。在這個檔案說明的包括編碼器,語言,rtsp uls,位址,埠號以幾其它引數。這個發布檔案可以在客戶端通過email形式或者http形式獲得。

2) rtsp協議的特點:

rtsp是應用層協議,與rtp、rsvp一起設計來完全流式服務。

rtsp有很大的靈活性,可被用在多種作業系統上,它允許客戶端和不同廠商的服務平台互動。

rtsp在體系結構上位於rtp和rtcp之上,它使用rtp完成資料傳輸。它將流式**資料可控制的通過網路傳輸到客戶端。

rtsp可以保持使用者計算機與傳輸流業務伺服器之間的固定連線,用於**者與單播(unicast)伺服器通訊並且還允許雙向通訊,**者可以同流**伺服器通訊.

提供類似「vcr」形式的例如暫停、快進、倒轉、跳轉等操作。操作的資源物件可以是直播流也可以是儲存片段。

rtsp是設還提供了選擇傳輸通道,如使用udp還是多點udp或是tcp。

7、資源預留協議rsvp

1) rsvp協議:

rsvp (resorce reservation protocol) 資源預留協議並不是乙個路由協議,而是一種ip網路中的信令協議,它與路由協議相結合來實現對網路傳輸服務質量(qos)的控制。rsvp是為支援網際網路綜合業務而提出的。這是解決ip通訊中qos(服務質量)問題的一種技術,用來保證點端到端的傳輸頻寬。

2) rsvp協議是如何工作:

rsvp使用控制資料報,這些資料報在向特定位址傳輸時包括了需要由路由器檢查(有些時候需要更新)的資訊,如果路由器需要決定是不是要檢查資料報的內容的時候對上層資料內容進行語法分析。這種分析的代價可不小。現在的情況是,網路終端利用它向網路申請資源,在這種表明「申請」 的訊號中,包含著如下的資訊:業務的種類? 使用者型別? 什麼時間? 需要多大頻寬? 其他參考資訊? 網路在接收到上類資訊後,會根據實際情況為此次連線分配乙個優先**,使用者利用優先**進行資訊傳遞時,網路不需重新對業務進行分析與判別,從另外乙個角度來說,利用rsvp 能從一定程度上減少網路對資訊處理的時延,提高網路節點的工作效率,改善資訊傳輸的服務質量(qos)。實時應用用rsvp是為了在傳輸路徑中保持必要的資源以保證請求能確保到達。

rsvp是ip路由器為提供更好的服務質量向前邁進的具有深刻意義的一步。傳統上ip路由器只負責分組**,通過路由協議知道鄰近路由器的位址。而rsvp則類似於電路交換系統的信令協議一樣,為乙個資料流通知其所經過的每個節點(ip路由器),與端點協商為此資料流提供質量保證。

8、結束語

在前面我們討論了一些與實時資料傳輸相關的四個協議:

1)rtp是實時資料傳輸協議。它提供時間標誌,序列號以及其它能夠保證在實時資料傳輸時處理時間的方法;它是依靠rvsp保證服務質量標準的。

2)rtcp是rtp的控制部分,是用來保證服務質量和成員管理的。

3)rtsp是開始和指引流**資料從流**伺服器。它又可叫做"網上錄影機控制協議".它是提供遠端的控制,具體的資料傳輸是交給rtp的。

4)rsvp是internet上的資源預訂協議,使用rsvp預留一部分網路資源(即頻寬),能在一定程度上為流**的傳輸提供qos。就像tcp的重發和滑動視窗等都是

rtp協議詳解 rtcp協議詳解

1 簡介 2 rtp rtcp協議簡介 rtp 由 ietf 定義在 rfc 3550和3551中。rtp通常與輔助控制協議rtcp一起工作,rtp只負責實時資料的傳輸,rtcp負責對rtp的通訊和會話進行帶外管理 如流量控制 擁塞控制 會話源管理等 3 rtp rtcp協議層次和封裝 rtp分組只...

rtp協議詳解 rtcp協議詳解

2 rtp rtcp協議簡介 rtp 由 ietf 定義在 rfc 3550和3551中。rtp通常與輔助控制協議rtcp一起工作,rtp只負責實時資料的傳輸,rtcp負責對rtp的通訊和會話進行帶外管理 如流量控制 擁塞控制 會話源管理等 3 rtp rtcp協議層次和封裝 rtp分組只包含rtp...

RTCP協議詳解

2.3.rtcp的封裝 rtp需要rtcp為其服務質量提供保證,因此下面介紹一下rtcp的相關知識。rtcp的主要功能是 服務質量的監視與反饋 間的同步,以及多播組中成員的標識。在rtp會話期 間,各參與者周期性地傳送rtcp包。rtcp包中含有已傳送的資料報的數量 丟失的資料報的數量等統計資料,因...