RTP、RTCP、RTSP協(xié)議詳解_第1頁
RTP、RTCP、RTSP協(xié)議詳解_第2頁
RTP、RTCP、RTSP協(xié)議詳解_第3頁
RTP、RTCP、RTSP協(xié)議詳解_第4頁
RTP、RTCP、RTSP協(xié)議詳解_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、RTP、RTCP、RTSP協(xié)議詳解一、 RTP協(xié)議實(shí)時(shí)傳輸協(xié)議(RTP)為數(shù)據(jù)提供了具有實(shí)時(shí)特征的端對(duì)端傳送服務(wù),如在組播或單播網(wǎng)絡(luò)服務(wù)下的交互式視頻音頻或模擬數(shù)據(jù)。應(yīng)用程序通常在 UDP 上運(yùn)行RTP以便使用其多路結(jié)點(diǎn)和校驗(yàn)服務(wù);這兩種協(xié)議都提供了傳輸層協(xié)議的功能。但是RTP可以與其它適合的底層網(wǎng)絡(luò)或傳輸協(xié)議一起使用。如果底層網(wǎng)絡(luò)提供組播方式,那么RTP可以使用該組播表傳輸數(shù)據(jù)到多個(gè)目的地。RTP本身并沒有提供按時(shí)發(fā)送機(jī)制或其它服務(wù)質(zhì)量(QoS)保證,它依賴于低層服務(wù)去實(shí)現(xiàn)這一過程。RTP協(xié)議并不保證傳送或防止無序傳送,也不確定底層網(wǎng)絡(luò)的可靠性。RTP實(shí)行有序傳送, RTP中的序列號(hào)允許接收

2、方重組發(fā)送方的包序列,同時(shí)序列號(hào)也能用于決定適當(dāng)?shù)陌恢?,例如:在視頻解碼中,就不需要順序解碼。RTP協(xié)議由兩個(gè)緊密鏈接部分組成:RTP傳送具有實(shí)時(shí)屬性的數(shù)據(jù);RTP控制協(xié)議(RTCP) 監(jiān)控服務(wù)質(zhì)量并傳送正在進(jìn)行的會(huì)話參與者的相關(guān)信息。RTCP 第二方面的功能對(duì)于“松散受控”會(huì)話是足夠的,也就是說,在沒有明確的成員控制和組織的情況下,它并不非得用來支持一個(gè)應(yīng)用程序的所有控制通信請(qǐng)求。協(xié)議結(jié)構(gòu)1238916bitVPXCSRC CountMPayload TypeSequence numberTimestampSSRCCSRC (variable 0 15 items 32bits each)

3、V 版本。識(shí)別RTP版本。P 間隙(Padding)。設(shè)置時(shí),數(shù)據(jù)包包含一個(gè)或多個(gè)附加間隙位組,其中這部分不屬于有效載荷。X 擴(kuò)展位。設(shè)置時(shí),在固定頭后面,根據(jù)指定格式設(shè)置一個(gè)擴(kuò)展頭。CSRC Count 包含 CSRC 標(biāo)識(shí)符(在固定頭后)的編號(hào)。M 標(biāo)記。標(biāo)記由 Profile 文件定義。允許重要事件如幀邊界在數(shù)據(jù)包流中進(jìn)行標(biāo)記。Payload Type 識(shí)別RTP有效載荷的格式,并通過應(yīng)用程序決定其解釋。Profile 文件規(guī)定了從 Payload 編碼到 Payload 格式的缺省靜態(tài)映射。另外的 Payload Type 編碼可能通過非RTP方法實(shí)現(xiàn)動(dòng)態(tài)定義。Sequence Num

4、ber 每發(fā)送一個(gè)RTP數(shù)據(jù)包,序列號(hào)增加1。接收方可以依次檢測(cè)數(shù)據(jù)包的丟失并恢復(fù)數(shù)據(jù)包序列。Timestamp 反映RTP數(shù)據(jù)包中的第一個(gè)八位組的采樣時(shí)間。采樣時(shí)間必須通過時(shí)鐘及時(shí)提供線性無變化增量獲取,以支持同步和抖動(dòng)計(jì)算。SSRC 同步源。該標(biāo)識(shí)符隨機(jī)選擇,旨在確保在同一個(gè)RTP協(xié)議會(huì)話中不存在兩個(gè)同步源具有相同的 SSRC 標(biāo)識(shí)符。CSRC 貢獻(xiàn)源標(biāo)識(shí)符。識(shí)別該數(shù)據(jù)包中的有效載荷的貢獻(xiàn)源。二、 RTCP:RTP 控制協(xié)議RTP 控制協(xié)議(RTCP)采用與數(shù)據(jù)包相同的分發(fā)機(jī)制,將控制包周期性傳輸?shù)剿袝?huì)話參與者中。底層協(xié)議必須提供數(shù)據(jù)和控制包的多路發(fā)送,例如使用不同的 UDP 端口號(hào)。

5、RTCP 主要完成四個(gè)功能服務(wù): RTCP 提供數(shù)據(jù)分發(fā)質(zhì)量反饋信息。這是 RTP 作為傳輸協(xié)議的部分功能并且它涉及到了其它傳輸協(xié)議的流控制和擁塞控制。 RTCP 為 RTP 源攜帶一個(gè)持久性傳輸層標(biāo)識(shí)符,稱為規(guī)范名或 CNAME 。由于一旦發(fā)現(xiàn)沖突或程序重啟時(shí), SSRC 標(biāo)識(shí)符會(huì)隨之改變,所以接收方需要 CNAME 來跟蹤每一個(gè)參與者。同時(shí)接收方還要求 CNAME 能夠與一組相關(guān) RTP 會(huì)話中來自于給定參與者的多重?cái)?shù)據(jù)流相關(guān)聯(lián),例如同步視頻和音頻。 上述前兩個(gè)功能要求所有的參與者都要發(fā)送 RTCP 包,因此必須控制速率以便 RTP 按比例增加大量的參與者。通過每一個(gè)參與者發(fā)送各自的控制包

6、給其它所有參與者,每一個(gè)參與者能夠獨(dú)立觀察到參與者數(shù)量,該數(shù)量可用來計(jì)算控制包的發(fā)送速率。 OPTIONAL 功能用于傳送最少會(huì)話控制信息,例如在用戶界面顯示參與者標(biāo)識(shí)。這對(duì)于“松散受控”會(huì)話(在沒有成員控制或闡述協(xié)商的情況下,參與者可以加入或退出該會(huì)話)是非常有用的。 上述功能 1 3 適用于所有環(huán)境,尤其是 IP 組播環(huán)境。 RTP 應(yīng)用程序設(shè)計(jì)者應(yīng)該避免設(shè)計(jì)只能工作于單播模式并且不能增加到大量數(shù)量的機(jī)制。在某些情況下如單向鏈接中,不可能有來自接收方的反饋,所以 RTCP 的傳輸就可能由發(fā)送方和接收方分別獨(dú)立控制。 協(xié)議結(jié)構(gòu) 2 3 8 16 bit Ver P RC Packet typ

7、e Length Version 識(shí)別 RTP 版本。 RTP 數(shù)據(jù)包中的該值與 RTCP 數(shù)據(jù)包中的一樣。 當(dāng)前規(guī)范定義的版本值為 2 。 P 間隙(Padding)。設(shè)置時(shí), RTCP 數(shù)據(jù)包包含一些其它 padding 八位位組,它們不屬于控制信息。 Padding 的最后八位是用于計(jì)算應(yīng)該忽略多少間隙八位位組。一些加密算法中需要計(jì)算固定塊大小時(shí)也可能需要使用 Padding 字段。在一個(gè)復(fù)合 RTCP 數(shù)據(jù)包中,只有最后的個(gè)別數(shù)據(jù)包中才需要使用 padding ,這是因?yàn)閺?fù)合數(shù)據(jù)包是作為一個(gè)整體來加密的。 RC 接收方報(bào)告計(jì)數(shù)。包含在該數(shù)據(jù)包中的接收方報(bào)告塊的數(shù)量,有效值為 0 。 P

8、acket type 包括常量 200 ,識(shí)別這是一個(gè) RTCP SR 數(shù)據(jù)包。 Length RTCP 數(shù)據(jù)包的大?。?2 位字減去 1),包含頭和任意間隙 (偏移量的引入使得 0 成為有效值,并避免了掃描復(fù)合 RTCP 數(shù)據(jù)包過程中的無限循環(huán)現(xiàn)象,而采用 32 位字計(jì)數(shù)方法則避免了對(duì) 4 的倍數(shù)的有效性校驗(yàn) )。 三、 實(shí)時(shí)流協(xié)議RTSPRTSP3協(xié)議以客戶服務(wù)器方式工作,它是一個(gè)多媒體播放控制協(xié)議,用來使用戶在播放從因特網(wǎng)下載的實(shí)時(shí)數(shù)據(jù)時(shí)能夠進(jìn)行控制,如:暫停/繼續(xù)、后退、前進(jìn)等。因此 RTSP 又稱為“因特網(wǎng)錄像機(jī)遙控協(xié)議”。RTSP協(xié)議簡(jiǎn)介要實(shí)現(xiàn) RTSP 的控制功能,不僅要有協(xié)議,

9、而且要有專門的媒體播放器(media player)和媒體服務(wù)器(media server)。媒體服務(wù)器與媒體播放器的關(guān)系是服務(wù)器與客戶的關(guān)系。媒體服務(wù)器與普通的萬維網(wǎng)服務(wù)器的最大區(qū)別就是媒體服務(wù)器支持流式音頻和視頻的傳送,因而在客戶端的媒體播放器可以邊下載邊播放(需要先緩存一小段時(shí)間的節(jié)目)。但從普通萬維網(wǎng)服務(wù)器下載多媒體節(jié)目時(shí),是先將整個(gè)文件下載完畢,然后再進(jìn)行播放。圖1 RTSP與RTP和RTCP的關(guān)系RTSP 僅僅是使媒體播放器能控制多媒體流的傳送。因此,RTSP 又稱為帶外協(xié)議,而多媒體流是使用 RTP 在帶內(nèi)傳送的。RTSP的報(bào)文結(jié)構(gòu)RTSP有兩類報(bào)文:請(qǐng)求報(bào)文和響應(yīng)報(bào)文。請(qǐng)求報(bào)文

10、是指從客戶向服務(wù)器發(fā)送請(qǐng)求報(bào)文,響應(yīng)報(bào)文是指從服務(wù)器到客戶的回答。由于 RTSP 是面向正文的(text-oriented),因此在報(bào)文中的每一個(gè)字段都是一些 ASCII 碼串,因而每個(gè)字段的長(zhǎng)度都是不確定的。RTSP報(bào)文由三部分組成,即開始行、首部行和實(shí)體主體。在請(qǐng)求報(bào)文中,開始行就是請(qǐng)求行,RTSP請(qǐng)求報(bào)文的結(jié)構(gòu)如圖2所示。圖2 RTSP請(qǐng)求報(bào)文的結(jié)構(gòu)RTSP請(qǐng)求報(bào)文的方法包括:OPTIONS、DESCRIBE、SETUP、TEARDOWN、PLAY、PAUSE、GET_PARAMETER和SET_PARAMETER。RTSP請(qǐng)求報(bào)文的常用方法及作用如表1所示。表1 RTSP請(qǐng)求報(bào)文的常用

11、方法及作用方法作用OPTIONS獲得服務(wù)器提供的可用方法DESCRIBE得到會(huì)話描述信息SETUP客戶端提醒服務(wù)器建立會(huì)話,并確定傳輸模式TEARDOWN客戶端發(fā)起關(guān)閉請(qǐng)求PLAY客戶端發(fā)送播放請(qǐng)求響應(yīng)報(bào)文的開始行是狀態(tài)行,RTSP響應(yīng)報(bào)文的結(jié)構(gòu)如圖3所示。圖3 RTSP響應(yīng)報(bào)文的結(jié)構(gòu)RTSP交互過程C表示RTSP客戶端,S表示RTSP服務(wù)端 C->S: OPTION request/詢問S有哪些方法可用S->C: OPTION response/S回應(yīng)信息中包括提供的所有可用方法 C->S: DESCRIBE request/要求得到S提供的媒體初始化描述信息S->C: DESCRIBE response/S回應(yīng)媒體初始化描述信息,主要是sdp C->S: SETUP request/設(shè)置會(huì)話屬性,及傳輸模式,提醒S建立會(huì)話S->C: SETUP response/S建立會(huì)話,返回會(huì)話標(biāo)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論