RTP/RTCP/RTSP
From: http://www.51testing.com/html/44/17144-18146.html
1. 基本概念
實(shí)時(shí)傳輸協(xié)議(RTP,Real-time Transport Protocol)是用于Internet上針對(duì)多媒體數(shù)據(jù)流的一種傳輸協(xié)議。傳送音視頻數(shù)據(jù)通常都會(huì)采用基于UDP的RTP傳輸,RTP為數(shù)據(jù)流提供時(shí)間信息和實(shí)現(xiàn)流同步。但RTP本身并不能為按順序傳送數(shù)據(jù)包提供可靠的傳送機(jī)制,也不提供流量控制或擁塞控制,它依靠RTCP提供這些服務(wù)。
實(shí)時(shí)傳輸控制協(xié)議(RTCP,Real-time Transport Control Protocol)和RTP一起提供流量控制和擁塞控制服務(wù)。在RTP會(huì)話期間,各參與者周期性地傳送RTCP包。RTCP包中含有已發(fā)送的數(shù)據(jù)包的數(shù)量、丟失的數(shù)據(jù)包的數(shù)量等統(tǒng)計(jì)資料,因此,服務(wù)器可以利用這些信息動(dòng)態(tài)地改變傳輸速率,甚至改變有效載荷類型。RTP和RTCP配合使用,它們能以有效的反饋和最小的開銷使傳輸效率最佳化,因而特別適合傳送網(wǎng)上的實(shí)時(shí)數(shù)據(jù)。
實(shí)時(shí)流協(xié)議(RTSP,Real-time Streaming Protocol)是由Real Networks和Netscape共同提出的。該協(xié)議定義了一對(duì)多應(yīng)用程序如何有效地通過IP網(wǎng)絡(luò)傳送多媒體數(shù)據(jù)。RTSP提供了一個(gè)可擴(kuò)展框架,使實(shí)時(shí)數(shù)據(jù),如音頻與視頻的受控、點(diǎn)播成為可能。數(shù)據(jù)源包括現(xiàn)場(chǎng)數(shù)據(jù)與存儲(chǔ)在剪輯中的數(shù)據(jù)。該協(xié)議目的在于控制多個(gè)數(shù)據(jù)發(fā)送連接,為選擇發(fā)送通道,如UDP、多播UDP與TCP提供途徑,并為選擇基于RTP上發(fā)送機(jī)制提供方法。
資源預(yù)訂協(xié)議(RSVP,Resource Reserve Protocol)是網(wǎng)絡(luò)控制協(xié)議,它使Internet應(yīng)用傳輸數(shù)據(jù)流時(shí)能夠獲得特殊服務(wù)質(zhì)量(QoS);RSVP是非路由協(xié)議,它同路由協(xié)議協(xié)同工作,建立與路由協(xié)議計(jì)算出路由等價(jià)的動(dòng)態(tài)訪問列表。
2. RTP VS RTCP
RTP不象http和ftp可完整的下載整個(gè)影視文件,它是以固定的數(shù)據(jù)率在網(wǎng)絡(luò)上發(fā)送數(shù)據(jù),客戶端也是按照這種速度觀看影視文件,當(dāng)影視畫面播放過后,就不可以再重復(fù)播放,除非重新向服務(wù)器端要求數(shù)據(jù)。
RTSP與RTP最大的區(qū)別在于:RTSP是一種雙向?qū)崟r(shí)數(shù)據(jù)傳輸協(xié)議,它允許客戶端向服務(wù)器端發(fā)送請(qǐng)求,如回放、快進(jìn)、倒退等操作。
當(dāng)然,RTSP可基于RTP來傳送數(shù)據(jù),還可以選擇TCP、UDP、組播UDP等通道來發(fā)送數(shù)據(jù),具有很好的擴(kuò)展性。它時(shí)一種類似與http協(xié)議的網(wǎng)絡(luò)應(yīng)用層協(xié)議。目前碰到的一個(gè)應(yīng)用:服務(wù)器端實(shí)時(shí)采集、編碼并發(fā)送兩路視頻,客戶端接收并顯示兩路視頻。由于客戶端不必對(duì)視頻數(shù)據(jù)做任何回放、倒退等操作,可直接采用UDP+RTP+組播實(shí)現(xiàn)。
3. 協(xié)議標(biāo)準(zhǔn)
具體協(xié)議內(nèi)容可參看以下標(biāo)準(zhǔn)文檔:
RTP/RTCP-------------------------RFC3550/RFC3551
RTSP??????? --------------------------RFC2326
總結(jié)
以上是生活随笔為你收集整理的RTP/RTCP/RTSP的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows下安装BeautifulS
- 下一篇: Linux下find用法总结