




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、RTPRTC流量控制算法Flow Control Algorithm for RTP/RTCPLIANG Hong-bo(Anhui Communications Technology Institute,Hefei230051,China)Abstract:On the base of research on RTP/RTCP,four flow control algorithm are proposed consisting: constant multiplicative increase and constant multiplicative decrease, constant a
2、dditive increase and constant multiplicative decrease, variable increase and constant decrease, and variable increase and variable decrease.目前, 視頻會議、在線視頻、 VOIP(Voice on IP) 、實時監(jiān)控、實時報 警等網(wǎng)絡(luò)實時業(yè)務(wù)非常廣泛 , 這些環(huán)境需要數(shù)據(jù)在網(wǎng)絡(luò)上進行實時傳輸。 隨著用戶的增加 , 帶寬資源顯得非常有限和十分緊張 , 網(wǎng)絡(luò)擁塞時常出現(xiàn)。 對每個用戶而言 , 因特網(wǎng)是一個公平的 ,不限制數(shù)據(jù)發(fā)送的網(wǎng)絡(luò)。但如果用 戶向因特網(wǎng)中發(fā)
3、送大量的數(shù)據(jù) , 而不考慮網(wǎng)絡(luò)傳輸能力的話 , 就會導(dǎo)致網(wǎng) 絡(luò)擁塞 , 因而對用戶數(shù)據(jù)流進行控制是必須的。目前,考慮到網(wǎng)絡(luò)實時業(yè)務(wù)的廣播特性和實時的特性 ,一般用UDP協(xié)議 作為其傳輸層協(xié)議。由于 UDP協(xié)議缺少擁塞控制機制,當(dāng)大量的實時業(yè)務(wù) 進入網(wǎng)絡(luò)時,網(wǎng)絡(luò)可能產(chǎn)生嚴重的擁塞,給UDP增加流量控制成為當(dāng)務(wù)之急 1-3 。而 RTP/RTCP(Real-time Transport Protocol/ Real-time Transport Control Protocol) 協(xié)議為網(wǎng)絡(luò)實時業(yè)務(wù)提供了一種解決的方 法4-5由于RTP流的速度和編碼方式可以反映媒體流的質(zhì)量。用戶一般不希 望媒體流
4、速度變化較快 ,所以要合理調(diào)節(jié)發(fā)送速度 , 減少流的抖動 ,提高平 穩(wěn)性。1 RTP/RTCP 協(xié)議RTP/RTC協(xié)議是用于In ter net上針對多媒體數(shù)據(jù)流的一種傳輸協(xié)議。RTP/RTCF協(xié)議被定義為在一對一或一對多的傳輸情況下工作其目的是提 供時間信息和實現(xiàn)流同步。RTP/RTCF協(xié)議通常使用UDP來傳送數(shù)據(jù),但 RTP/RTCF協(xié)議也可以在TCP或其他協(xié)議之上工作。RTP/RTCF協(xié)議本身包括兩部分:RTP數(shù)據(jù)傳輸協(xié)議和RTCP傳輸控制協(xié) 議。為了可靠、高效地傳送實時數(shù)據(jù),RTP和RTCP必須配合使用。通常RTCP 傳輸控制協(xié)議包的數(shù)量占所有傳輸量的5%。RTCF傳輸控制協(xié)議主要用于
5、周期的傳送RTC電,監(jiān)視RTP傳輸?shù)姆?wù)質(zhì)量 (Qos) 。1.1 RTP 協(xié)議RTP實時傳輸協(xié)議主要用于負載多媒體數(shù)據(jù)并通過包頭時間參數(shù)的配置使其具有實時的特征。RTP協(xié)議的數(shù)據(jù)包格式4如圖1所示。RTP報文格式中包括固定的 RTP報文頭,可選用的作用標(biāo)識(CSRC項) 和負載數(shù)據(jù)。如果RTP所依賴的底層協(xié)議對RTP報文的格式有所要求,RTP 報文的格式必須進行修改或重新定義。RTP報文中參數(shù)的意義如下:1) extension (X,1 bit, 擴展位): 若設(shè)置擴展位 , 在固定頭部后將有一個頭部擴展位,這在RFC1889有詳細的定義。2) CSRC count (CC,4 bits,
6、CSRC數(shù)):包含 CSRC標(biāo)示符的個數(shù)。3)marker (M,1 bit, 標(biāo)記位 ): 在數(shù)據(jù)流中標(biāo)記一些重大的事情 , 比如 幀邊界。 也可以定義其他的標(biāo)記位。 如果無標(biāo)記位 , 可以通過改變 payload type 位的數(shù)目來設(shè)定標(biāo)記位。4)payload type (PT,7 bits, 負載類型):定義了 RTP負載的格式,由 應(yīng)用程序決定其含義。最初為視頻和音頻定義的映射集合在Internet-Draft draft-ietf-avt-profile中, 后又被 the AssignedNumbers RFC的后來版本中進行了擴展。RTP發(fā)送者可以在任何時候發(fā)送一個單獨的RT
7、P負載類型,PT不是專為合成單獨媒體流而設(shè)置的。5)sequence number(16 bits, 序列號 ): 每個發(fā)出數(shù)據(jù)包都有一個序 列號, 且是按 1 遞增的。有時也被接受者用來檢查包的丟失和修復(fù)包的順 序。序列號的初始值是隨機的 (不可預(yù)測的 ), 這使得對加密的純文本的攻 擊變得更加困難 ( 即使沒有加密的文本 ), 因為數(shù)據(jù)包是通過翻譯器進行傳 輸?shù)摹?)timestamp(32 bits, 時間戳):時間戳反映了 RTP包第一個字節(jié)的 直接抽樣。時間戳為同步不同的媒體流提供采樣時間用于重新建立原始音 頻或視頻的時序。另外它還可以幫助接收方確定數(shù)據(jù)到達時間的同步或抖 動。7)S
8、SRC(32 bits, 同步資源 ): 幫助接收方利用發(fā)送方生成的唯一的數(shù)值來區(qū)分多個同時的數(shù)據(jù)流。必須是一個嚴格的隨機數(shù)。在同一個RTP報文中,沒有兩個同步資源具有相同的SSRC標(biāo)識。8)CSRC( 作用標(biāo)識 ):CC 給出了標(biāo)識符的個數(shù)。如果有多于15個的貢獻資源,只有15個可被標(biāo)識。CSRC勺標(biāo)識是利用貢獻資源的SSRC標(biāo)識,由混頻器嵌入的就整個RTP所提供的應(yīng)用類中,就一般情況所需要的功能來說,現(xiàn)有的 RTP數(shù)據(jù)包頭是完善的。但是,為了與ALF設(shè)計協(xié)議一致,報文頭部還可以 通過改變、增加參數(shù)實現(xiàn)優(yōu)化或適應(yīng)特殊應(yīng)用。1.2 RTCP 協(xié)議RTCP是建立在在一個會議中需要周期地向每個參會
9、者傳輸控制包,運用的是數(shù)據(jù)包的分發(fā)機制。RTCP主要支持以下四種功能4:1)提供數(shù)據(jù)傳輸?shù)馁|(zhì)量反饋。是作為RTP傳輸協(xié)議的一部分,與其他傳輸協(xié)議的流和阻塞控制有關(guān)。反饋對自適應(yīng)編碼控制直接起作用 , 但 IP 組播經(jīng)驗表明 , 從發(fā)送者收到反饋對診斷發(fā)送錯誤是致關(guān)重要的。給所有 參加者發(fā)送接收反饋報告允許問題觀察者估計那些問題是局部的 , 還是全 局的。反饋功能由RTCP發(fā)送者和接收者報告執(zhí)行。2)RTCP帶有稱作規(guī)范名字(CNAME的RTP源持久傳輸層標(biāo)識。如發(fā)現(xiàn) 沖突,或程序重新啟動,既然SSRC標(biāo)識可改變,接收者需要CNAM跟蹤參加 者。接收者也需要CNAME與相關(guān)RTP連接中給定的幾個
10、數(shù)據(jù)流聯(lián)系3)用于控制RTCP包數(shù)量的數(shù)量用語。前兩種功能要求所有參加者發(fā) 送包,因此,為了 RTP擴展到大規(guī)模數(shù)量,速率必須受到控制。讓每個參加 者給其它參加者發(fā)送控制包 , 就大獨立觀察參加者數(shù)量。該數(shù)量用語計算 包發(fā)送的速率。4)傳送最小連接控制信息 , 如參加者辨識。最可能用在 " 松散控制 " 連 接,那里參加者自由進入或離幵,沒有成員控制或參數(shù)協(xié)調(diào),RTCP充當(dāng)通往 所有參加者的方便通道 ,但不必支持應(yīng)用的所有控制通訊要求。在IP組播場合應(yīng)用RTP時,前3個功能是必須的,推薦用于所有情形。類似于RTP數(shù)據(jù)包,每個RTCP包以固定部分幵始,緊接著的是可變長 結(jié)構(gòu)元
11、素 , 但以一個 32 位邊界結(jié)束。包含安排要求和固定部分中長度段 , 使RTCP包可堆疊,不需要插入任何分隔符將多個 RTCP包連接起來形成一個RTCP組合包,以低層協(xié)議用單一包發(fā)送出去。RTCP包主要包含五種類型4:1) SR: 發(fā)送報告 , 當(dāng)前活動發(fā)送者發(fā)送、接收統(tǒng)計。2) RR: 接收報告 , 非活動發(fā)送者接收統(tǒng)計。3) SDES:源描述項,包括CNAME4) BYE: 表示結(jié)束。5) APP: 應(yīng)用特定函數(shù)。其中最主要的報文是 SR和 RR通常SR報文占總RTCP包數(shù)量的25%,RR 報文占 75%。由于RTCP包含了含有已發(fā)送數(shù)據(jù)包的數(shù)量、丟失數(shù)據(jù)包的數(shù)量、傳輸間隔等統(tǒng)計資料。因
12、此 , 我們可以利用這些信息動態(tài)地改變傳輸速率 , 實 現(xiàn)流量控制或擁塞控制。2 RTP/RTCP流量控制算法本文介紹四種常用的流量控制算法 : 常數(shù)乘增長和常數(shù)乘減少 , 常數(shù) 加增長和常數(shù)乘減少 , 變常數(shù)增長和常數(shù)減少 , 變常數(shù)增長和變常數(shù)減少。2.1 常數(shù)乘增長和常數(shù)乘減少文獻6 采用了乘增長和乘減少的方法進行流量控制 , 如公式 (1) 。(1)其中 ,currentRate 為當(dāng)前的發(fā)送速率 ;packetLoss 為丟包率 , 可有RTCPfft文得出threshold為閾值,可以取值為0,0.5, 1, 1.5, 2, 2.5,3%;alpha 為乘減少因子 ,一般小于 1,
13、 文獻6 設(shè) alpha=0.9;beat 為乘增 加因子,文獻6 設(shè) beta=1.2 。該算法在一定程度上可以減少報文的擁塞 , 但是 , 當(dāng)丟報率較小時 , 發(fā) 送速度的快速增加會導(dǎo)致網(wǎng)絡(luò)的擁塞 , 以致發(fā)送速度的快速減少 , 容易導(dǎo) 致流的較大抖動 , 不能保證流的平穩(wěn)性。2.2 常數(shù)加增長和常數(shù)乘減少為了保證每個流的公平性 , 自適應(yīng)算法應(yīng)該采用加增長和乘減少的策 略 , 如公式 (2) 。(2)aI 為常數(shù)加增長因子 ,bD 為乘減少因子 , 一般小于 1。常數(shù)加增長和常數(shù)乘減少控制算法可以保證每個流的公平性 , 但是 , 如果常數(shù)al和bD設(shè)定得太大,RTP流的抖動會很大,也會加
14、劇網(wǎng)絡(luò)的擁塞 如果設(shè)定得太小,RTP流的速度增加就會太慢或減小的太快,不利于網(wǎng)絡(luò)帶 寬利用率的提高。2.3 變常數(shù)增長和常數(shù)減少一種平穩(wěn)的、變常數(shù)增長的自適應(yīng)算法 , 如公式(3) 。(3)其中 al 不再為常數(shù) , 而是按如下的邏輯變換 :(1)如果網(wǎng)絡(luò)中未曾發(fā)生過擁塞,即RTP流第一次進入網(wǎng)絡(luò),則al=radd(4)這時,RTP流按常量增長。(2) 如果網(wǎng)絡(luò)中發(fā)生過擁塞 , 則(5)其中 R 發(fā)送端到接收端之間可以利用的最大帶寬 , 它可以是發(fā)送端的 先驗知識得出 ;Xcong 為上次發(fā)生擁塞的速度。變常數(shù)增長和常數(shù)減少的控制方法在一定程度上可以保證流的平穩(wěn) 性 , 但由于其增長函數(shù)設(shè)置不
15、合理 , 使傳輸?shù)膸捪拗圃谇耙淮螕砣l(fā)生 時的擁塞帶寬之下 , 不能適合網(wǎng)絡(luò)帶寬動態(tài)變化的特點 , 不利于提高網(wǎng)絡(luò) 帶寬的利用率。2.4 變常數(shù)增長和變常數(shù)減少一種自適應(yīng)流量控制算法 , 如公式 (6) 。(6)其中v0為初始的發(fā)送速度,r為綜合預(yù)測量,如公式(7)。(7)J可以直接從RTCP報文中獲取,J=jitter 4, 而L的計算方法如(8)式所示(8)其中 :cumu_lostn 表示從會話開始到第 n 個傳輸間隔內(nèi)所丟失的 RTP 包總數(shù) ;highest_mum_receiven 表示從會話開始到第 n 個傳輸間隔內(nèi)所接 收到的RTP包的最大序列號4。變常數(shù)增長和變常數(shù)減少的方法綜合考慮長期的網(wǎng)絡(luò)背景和當(dāng)前的 網(wǎng)絡(luò)狀態(tài) , 采用變常數(shù)增長和變常數(shù)減少的方法對發(fā)送速度進行自適應(yīng)調(diào)整,避免網(wǎng)絡(luò)的擁塞 , 在一定程度上保證了流的平穩(wěn)性。3 結(jié)論流量控制算法在實時業(yè)務(wù)中的具有非常重要的地位 ,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廠家生產(chǎn)合同范本
- 蒸汽購銷合同范本
- 2025年Α-烯基磺酸鹽(AOS9235)項目發(fā)展計劃
- 教師開課報告范文
- 膠料環(huán)保報告范文
- 建筑處理報告范文
- 二零二五年度個人間借款及法律援助協(xié)議
- 二零二五年度外資企業(yè)股權(quán)變更合同范本
- 2025年度金融借款合同糾紛答辯狀制作指南
- 酒店與客戶2025年度會議場地租賃及訂房合同
- 《傲慢與偏見》讀書匯報
- 上海??茖哟巫灾髡猩荚嚵?xí)題集④(含答案)
- 房屋信息查詢情況表((2022年-2023年))
- (演唱)在葡萄架下教學(xué)設(shè)計
- 室上性心動過速的鑒別診斷課件
- 蛋白質(zhì)纖維-纖維化學(xué)與物理課件
- 婦科疾病 陰道炎 (婦產(chǎn)科學(xué)課件)
- 樂理講座:音程與和弦課件
- 馬工程西方經(jīng)濟學(xué)(第二版)教學(xué)課件-5
- 馬工程西方經(jīng)濟學(xué)(第二版)教學(xué)課件-7
- 皮膚性病學(xué)-真菌性皮膚病
評論
0/150
提交評論