亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

通信設備和通信方法

文檔序號:7664002閱讀:127來源:國知局
專利名稱:通信設備和通信方法
技術領域
本發(fā)明涉及通信設備和通信方法。
背景技術
RTP (Real-Time Transport Protocol (實時傳輸協(xié)議))是一種能夠包括一些諸如不隨每 一個傳輸數(shù)據(jù)包一起通過UDP (User Datagram Protocol (用戶數(shù)據(jù)報協(xié)議))傳輸?shù)膶崟r數(shù) 據(jù)流所必須的接收序列和接收時序等附加信息的傳輸協(xié)議,RTP也是一種在接收數(shù)據(jù)時 基于所述附加信息執(zhí)行接收處理,并能夠在與傳輸時相同的條件下在必要的時間接收必要 的數(shù)據(jù)的傳輸協(xié)議。RTP允許接收側在傳輸間隔校正網(wǎng)絡中發(fā)生的數(shù)據(jù)包之間的序列誤差 和變化,丟棄極度延時的數(shù)據(jù)包和探測丟失的數(shù)據(jù)包。
另一方面,由于RTP是基于繼承作為組成網(wǎng)絡的傳輸協(xié)議的IP (InternetProtocol (互 聯(lián)網(wǎng)協(xié)議))的初始最高功效特征的更高級協(xié)議的UDP的傳輸協(xié)議,而且由于RTP不單獨 提供對于傳輸數(shù)據(jù)丟失的措施,所以有必要通過附加的方法以及作為用于該目的的技術存 在的再傳輸控制和誤差校正補充丟失的數(shù)據(jù)。
FEC (Forward Error Correction (向前誤差校正))及類似的技術總體被認為是一種針對 錯誤校正的特殊技術。
根據(jù)FEC,傳輸側組合初始數(shù)據(jù),利用預定的技術實行計算,從而為每一數(shù)據(jù)組產(chǎn)生 冗余數(shù)據(jù)并且把該冗余數(shù)據(jù)與每一數(shù)據(jù)組的數(shù)據(jù)并行傳輸。當每個數(shù)據(jù)組里有部分數(shù)據(jù)丟 失時,在接收側可以通過利用預定技術從接收到的剩下的數(shù)據(jù)和所述冗余數(shù)據(jù)實行計算恢 復丟失的數(shù)據(jù)。
有一種通過RFC2733定義的作為可以應用于RTP的FEC方案的方案。 常規(guī)的基于RFC2733的用于RTP的FEC的設計是針對于網(wǎng)絡上極少的數(shù)據(jù)包丟失, 該技術首先被認為具有高質(zhì)量,但同時又被認為具有對于連續(xù)突發(fā)的數(shù)據(jù)丟失的抵抗能力 低的問題。這是因為該技術可以達到的恢復性能局限于僅可在24個連續(xù)數(shù)據(jù)包之間進行 計算,并且如果把異或用作計算技術,則恢復就被局限于最多丟失一個數(shù)據(jù)包,而且試圖
實現(xiàn)更高的恢復性能將提高冗余度,導致不實際的帶寬增加。因此,常規(guī)的FEC方案只對 于離散的數(shù)據(jù)丟失有效,而對于被認為在互聯(lián)網(wǎng)中頻繁發(fā)生的突發(fā)的數(shù)據(jù)丟失沒有作用。 另一方面,常規(guī)的FEC不能處理的突發(fā)丟失被認為需要通過利用諸如ARQ (Automatic Repeat Request (自動重復請求))的再次傳輸而不是極端提高冗余度進行處理。但是ARQ 有各種問題,諸如所使用的通信帶寬的不穩(wěn)定和延時的過度增加,而且還涉及實現(xiàn)數(shù)據(jù)流 傳輸中的值得重視的副效應。
但是,當實時數(shù)據(jù)流傳輸導致高比特率時,也就意味著單位時間內(nèi)傳輸?shù)臄?shù)據(jù)包數(shù)量 增加,并且當錯誤發(fā)生的時間相同時,在低比特率的情況下單位時間內(nèi)受影響的數(shù)據(jù)包最 多一個,而在高比特率的情況下多個數(shù)據(jù)包受到影響,突發(fā)丟失的數(shù)量也將隨之增加。因 此,即使在一定程度的高質(zhì)量的網(wǎng)絡中, 一直都是離散的丟失往往轉變成突發(fā)丟失,增加 可通過FEC處理的突發(fā)的數(shù)量的技術已經(jīng)被提出以使FEC也可以應用于這樣的情況。
其中一種這樣的技術是伴隨也在Pro-MPEG (Moving Picture Expert Group (移動圖片專 家組))方案中采用的矩陣形式的方案的FEC方案。這是一個當形成FEC組時多個將要計 算的數(shù)據(jù)包被排成一個正方形的形式并按照行與列編組的方案。由于行是按照數(shù)據(jù)包的序 列排列,與序列垂直的列與離散選中的列相等,即使行中有數(shù)據(jù)包以突發(fā)的形式丟失時, 每個數(shù)據(jù)包從屬的計算組都互不相同,因此可以對每一列進行計算,并且只有一個單行丟 失時,從列的角度看該丟失可以作為離散的丟失進行處理。這樣,矩陣形式可以簡單,有 效,清晰地實現(xiàn)數(shù)據(jù)包重新排列(插入),被認為對于突發(fā)丟失有效,而且改變矩陣的垂直 /水平長度可以靈活地改變FEC抗誤差的能力。
更進一步,當不能僅通過對列組的計算恢復丟失數(shù)據(jù)時,可以通過把對列組的恢復與 通過對行組的計算的恢復相組合以及重復對列與行的計算處理更多的數(shù)據(jù)丟失。
這樣,矩陣形式允許抵抗突發(fā)的數(shù)據(jù)丟失,而這種丟失被認為是常規(guī)的FEC方案中需 要進一步加強的薄弱點。
附帶一提的是,技術背景中引用了 J.Rosenberg等人的論文"RFC2733 AnRTP Payload Format for Generic Forward Error Correction" IETF, December 1999,禾口 "Pro-MPEG Code of Practice #3 release 2", Pro-MPEG Forum, July 2004。
但是,由于RTP的FEC方案認為可以在探測到數(shù)據(jù)包丟失時開始恢復處理,因此當 伴隨矩陣形式的FEC方案中發(fā)生突發(fā)的數(shù)據(jù)丟失時存在一個問題,即當恢復操作發(fā)生時操 作處理將暫時顯著增加。 也就是,當某個矩陣中的所有的行數(shù)據(jù)包都以突發(fā)的形式丟失時,將要被計算的數(shù)據(jù) 包的數(shù)量就是列數(shù)據(jù)包的數(shù)量與行數(shù)據(jù)包的數(shù)量相乘得到的數(shù)據(jù)包的數(shù)量,也就是與矩陣 的大小對應的數(shù)據(jù)包的數(shù)量。當所有的行數(shù)據(jù)包都以突發(fā)的形式丟失時,所產(chǎn)生的計算數(shù) 量來自于將冗余數(shù)據(jù)包的數(shù)量(這里為l)加到從列數(shù)據(jù)包的數(shù)量減去列丟失數(shù)據(jù)包的數(shù)量 (這里為1)得到的數(shù)值,然后將相加值與行的數(shù)目相乘,并且在不干擾原來的傳輸時序的 情況下執(zhí)行這些計算需要在探測到數(shù)據(jù)丟失后極短的時間內(nèi)集中完成恢復處理。
數(shù)據(jù)包丟失的發(fā)生可能不僅由于傳輸中的錯誤,還因為接收側的處理過程中的錯誤,
因此在突發(fā)形式下暫時實行處理會增加接收側對其它處理的影響(特別是接下來的處理),
而這是不希望發(fā)生的情況。特別是隨著近幾年設備性能的不斷提高變得可行的高視頻級的
媒體流的傳輸與至今的實時數(shù)據(jù)流相比以巨大的比特率實行傳輸,因此進行接收每個數(shù)據(jù)
包的處理的空置時間變得最小。因此,防止錯誤需要在該空置時間內(nèi)完成并需要極大量的
處理,這對整個系統(tǒng)結構會有非常大的影響。也就是說,當實行高比特率數(shù)據(jù)流傳輸時, 必須具有一種對接收側的其它處理幾乎沒有諸如干擾的影響的恢復計算方法。

發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個方面提供一種通信設備,該通信設備由以下幾個組成部分構成 構造成嘗試從網(wǎng)絡接收媒體數(shù)據(jù)包的接收嘗試單元;
構造成對由接收嘗試單元接收到的媒體數(shù)據(jù)包進行緩沖的第一緩沖單元; 構造成接收FEC (向前誤差校正)數(shù)據(jù)包的FEC數(shù)據(jù)包接收器,該FEC數(shù)據(jù)包包括恢 復丟失的媒體數(shù)據(jù)包的冗余數(shù)據(jù)和規(guī)定與冗余數(shù)據(jù)相關的多個媒體數(shù)據(jù)包的信息; 構造成對由FEC數(shù)據(jù)包接收器接收到的FEC數(shù)據(jù)包進行緩沖的第二緩沖單元; 構造成從第二緩沖單元中選擇FEC數(shù)據(jù)包的選擇單元;
構造成把將要利用包括在選定的FEC數(shù)據(jù)包中的冗余數(shù)據(jù)和與冗余數(shù)據(jù)相關的媒體 數(shù)據(jù)包實行的FEC操作處理分成多個處理,然后按順序實行每個處理以使每次接收嘗試單 元嘗試接收媒體數(shù)據(jù)包時實行一個處理的FEC操作處理單元;
構造成把通過FEC操作處理恢復的媒體數(shù)據(jù)包嵌入第一緩沖單元的媒體數(shù)據(jù)包嵌入 單元;和
構造成按順序地把第一緩沖單元中的媒體數(shù)據(jù)包傳遞至預先指定的應用程序的媒體 數(shù)據(jù)包傳遞單元。
根據(jù)本發(fā)明的一個方面提供一種通信方法,該通信方法包括-嘗試從網(wǎng)絡接收媒體數(shù)據(jù)包;
把接收到的媒體數(shù)據(jù)包存儲在對媒體數(shù)據(jù)包進行緩沖的第一緩沖單元中; 接收FEC (向前誤差校正)數(shù)據(jù)包,該數(shù)據(jù)包包括恢復丟失的媒體數(shù)據(jù)包的冗余數(shù)據(jù)和 規(guī)定與冗余數(shù)據(jù)相關的多個媒體數(shù)據(jù)包的信息;
把接收到的FEC數(shù)據(jù)包存儲在對FEC數(shù)據(jù)包進行緩沖的第二緩沖單元中; 從第二緩沖單元中選擇FEC數(shù)據(jù)包;
把將要利用包括在選定的FEC數(shù)據(jù)包中的冗余數(shù)據(jù)和與冗余數(shù)據(jù)相關的媒體數(shù)據(jù)包
實行的FEC操作處理分成多個處理,然后按順序實行每個處理以使每次嘗試接收媒體數(shù)據(jù) 包時實行一個處理;
把通過FEC操作處理恢復的媒體數(shù)據(jù)包嵌入第一緩沖單元;和 接順序地把第一緩沖單元中的媒體數(shù)據(jù)包傳遞至預先指定的應用程序。


圖1是顯示根據(jù)本發(fā)明的一個實施例的FEC接收處理設備的構造的方塊圖; 圖2是顯示本發(fā)明的第一實施例的操作的流程圖3顯示FEC數(shù)據(jù)包的產(chǎn)生;
圖4顯示媒體數(shù)據(jù)包和FEC數(shù)據(jù)包的傳輸過程;以及
圖5是顯示FEC接收處理設備的另一個結構實例的方塊圖。
具體實施例方式
圖1是顯示根據(jù)本發(fā)明的第一實施例的FEC (ForwardError Correction(向前誤差校正)) 接收處理設備(通信設備)的方塊圖。
FEC接收處理設備11構造成通過網(wǎng)絡12與FEC傳輸設備13通信。FEC傳輸設備13 產(chǎn)生包括將要在接收側再現(xiàn)的媒體數(shù)據(jù)和序列號等的媒體數(shù)據(jù)包和包括用于恢復在網(wǎng)絡 12中丟失的媒體數(shù)據(jù)包等的冗余數(shù)據(jù)并把該數(shù)據(jù)包通過網(wǎng)絡12發(fā)送至FEC接收處理設備 11的FEC數(shù)據(jù)包。媒體數(shù)據(jù)包和FEC數(shù)據(jù)包為例如符合RTP (Real-time Transport Protocol (實時傳輸協(xié)議))的數(shù)據(jù)包并且在該實施例中符合RTP。圖3顯示FEC傳輸設備13如何 產(chǎn)生FEC數(shù)據(jù)包。圖4顯示由FEC傳輸設備13產(chǎn)生的媒體數(shù)據(jù)包和FEC數(shù)據(jù)包是如何
傳輸?shù)摹?br> 如圖3所示,F(xiàn)EC傳輸設備13形成多個媒體數(shù)據(jù)包的矩陣(本實施例假定有100個媒 體數(shù)據(jù)包1, 2, 3, 4,....100。但是本發(fā)明當然不局限于此),該矩陣排列成由10行組和10列 組構成的正方形的形式。FEC傳輸設備13通過對每個列組實行媒體數(shù)據(jù)包組上的操作(本 實施例中假設為XOR)計算冗余數(shù)據(jù),并利用所計算的冗余數(shù)據(jù)從每個列組中得到FEC數(shù) 據(jù)包Fl, F2, F3.,.F10。 FEC數(shù)據(jù)包除了冗余數(shù)據(jù)外還包括指示與冗余數(shù)據(jù)(FEC數(shù)據(jù)包)相 聯(lián)系的媒體數(shù)據(jù)包和屬于與媒體數(shù)據(jù)包的系統(tǒng)不同的系統(tǒng)的序列號的信息。與冗余數(shù)據(jù) (FEC數(shù)據(jù)包)相聯(lián)系的媒體數(shù)據(jù)包涉及冗余數(shù)據(jù)從中起始的媒體數(shù)據(jù)包,并且例如與FEC 數(shù)據(jù)包Fl的冗余數(shù)據(jù)相聯(lián)系的媒體數(shù)據(jù)包為媒體數(shù)據(jù)包1, 11, 21, 31....81, 91 。在本實施例 中,F(xiàn)EC數(shù)據(jù)包可以只從列組產(chǎn)生,但是除了列組之外FEC數(shù)據(jù)包也可以從行組產(chǎn)生。
從各個列組產(chǎn)生FEC數(shù)據(jù)包之后,F(xiàn)EC傳輸設備13以如圖4所示的恒定的步幅(第 一步幅)按順序發(fā)送屬于同一矩陣(假設為第一矩陣)的媒體數(shù)據(jù)包1,2, 3, 4, ...99, 100,而且 也以恒定的步幅(第二步幅)與媒體數(shù)據(jù)包的傳輸同時發(fā)送各個FEC數(shù)據(jù)包Fl, F2, F3, F4...F10。在本實施例中,從第一矩陣中得到的各個FEC數(shù)據(jù)包與第二矩陣的媒體數(shù)據(jù)包 的傳輸同時發(fā)送。當屬于第一矩陣的媒體數(shù)據(jù)包的傳輸結束時,F(xiàn)EC傳輸設備13按順序 以第一步幅發(fā)送屬于第二矩陣的媒體數(shù)據(jù)包,與媒體數(shù)據(jù)包傳輸?shù)耐瑫r也發(fā)送從第二矩陣 得到的各個FEC數(shù)據(jù)包。在本實施例中,從第二矩陣得到的各個FEC數(shù)據(jù)包與第三矩陣 的媒體數(shù)據(jù)包的傳輸同時發(fā)送。假設第一矩陣的最后一個媒體數(shù)據(jù)包與第二矩陣的第一媒 體數(shù)據(jù)包之間的步幅保持上述第一步幅。
當網(wǎng)絡12中發(fā)生突發(fā)丟失并且例如如圖3所示丟失媒體數(shù)據(jù)包51至60時,接收側 (FEC接收處理設備ll)如下所述恢復丟失的數(shù)據(jù)包。即媒體數(shù)據(jù)包51通過對FEC數(shù)據(jù)包 Fl的冗余數(shù)據(jù)進行XOR得到恢復,媒體數(shù)據(jù)包1, 11, 21, 31, 41, 61, 71, 81, 91和其它媒體 數(shù)據(jù)包52至60的數(shù)據(jù)也用同樣的方法恢復。
FEC接收處理設備11的媒體數(shù)據(jù)包接收單元(接收嘗試單元)21通過網(wǎng)絡12從FEC傳 輸設備13接收媒體數(shù)據(jù)包,并且把所接收的媒體數(shù)據(jù)包移送到緩沖單元23,除非它們是 非法的數(shù)據(jù)包。更具體地,從網(wǎng)絡12到達的媒體數(shù)據(jù)包暫時存儲在例如由OS (Operating System (操作系統(tǒng)))管理的存儲器中,媒體數(shù)據(jù)包接收單元21嘗試從該存儲器中接收媒 體數(shù)據(jù)包(進行接收操作)。如果存儲器中包括該媒體數(shù)據(jù)包,則媒體數(shù)據(jù)包接收單元21從 該存儲器中接收該媒體數(shù)據(jù)包并且把所接收的媒體數(shù)據(jù)包移送到媒體數(shù)據(jù)包緩沖單元23。
如果存儲器中沒有媒體數(shù)據(jù)包(導致無效嘗試),則在一定時間后對該存儲器再次進行接收 操作。媒體數(shù)據(jù)包緩沖單元23把從媒體數(shù)據(jù)包接收單元21移送的媒體數(shù)據(jù)包存儲在內(nèi)部 緩沖器中。當把媒體數(shù)據(jù)包儲存儲在緩沖器中時,媒體數(shù)據(jù)包緩沖單元23記錄媒體數(shù)據(jù) 包的存儲時間Tin。
非法數(shù)據(jù)包的實例包括具有與即刻前一個接收到的媒體數(shù)據(jù)包相同序列號的媒體數(shù) 據(jù)包(重疊數(shù)據(jù)包),其所記錄的時間標記具有比預期值更過時的值的媒體數(shù)據(jù)包(接收這 樣的數(shù)據(jù)包已經(jīng)沒有意義,因為其再現(xiàn)時間已經(jīng)過去)。同樣的實例還包括源標識符與現(xiàn)有 數(shù)據(jù)流的源標識符不同的媒體數(shù)據(jù)包,解碼或認證失敗的數(shù)據(jù)包,這些數(shù)據(jù)包應該被作為 與現(xiàn)有數(shù)據(jù)流不相關的數(shù)據(jù)包進行處理。
通過這樣的方式,每次接收到一個不非法的數(shù)據(jù)包,數(shù)據(jù)包接收單元21就把所接收 的媒體數(shù)據(jù)包移送至媒體數(shù)據(jù)包緩沖單元23,媒體數(shù)據(jù)包緩沖單元23把所移送的媒體數(shù) 據(jù)包儲存在緩沖器中。這樣,媒體數(shù)據(jù)包一個接一個地儲存在媒體數(shù)據(jù)包緩沖單元23中。 媒體數(shù)據(jù)包緩沖單元23把緩沖器中的媒體數(shù)據(jù)包按照序列號升序進行排列。
另一方面,F(xiàn)EC接收處理設備11的FEC數(shù)據(jù)包接收單元(FEC數(shù)據(jù)包接收器)22通過 網(wǎng)絡12從FEC傳輸設備13接收FEC數(shù)據(jù)包并把這些接收到的FEC數(shù)據(jù)包移送至FEC數(shù) 據(jù)包緩沖單元24,除非它們是非法的數(shù)據(jù)包。FEC數(shù)據(jù)包緩沖單元24把所接收的FEC數(shù) 據(jù)包存儲在內(nèi)部緩沖器中。FEC數(shù)據(jù)包緩沖單元24根據(jù)FEC數(shù)據(jù)包的序列號排列FEC數(shù) 據(jù)包。
相應性探測單元26從FEC數(shù)據(jù)包的頭部信息(指示與FEC數(shù)據(jù)包相聯(lián)系的媒體數(shù)據(jù) 包的信息)中探測(找到FEC的恢復單元)與FEC數(shù)據(jù)包相聯(lián)系的媒體數(shù)據(jù)包組。當FEC數(shù) 據(jù)包被存儲在緩沖器中或者當FEC操作處理單元27進行錯誤校正處理(FEC操作處理)時 也可以進行探測。
當FEC數(shù)據(jù)包緩沖單元24中存在FEC數(shù)據(jù)包時,F(xiàn)EC操作處理單元27從FEC數(shù)據(jù) 包緩沖單元24中讀取FEC數(shù)據(jù)包并且利用所讀取的FEC數(shù)據(jù)包和在媒體數(shù)據(jù)包緩沖單元 23中與該FEC數(shù)據(jù)包相聯(lián)系的媒體數(shù)據(jù)包實行錯誤校正處理(FEC操作處理)。如上所述, FEC數(shù)據(jù)包在FEC數(shù)據(jù)包緩沖單元24中根據(jù)其序列號進行排列(例如升序排列),而且FEC 數(shù)據(jù)包根據(jù)該序列號被讀取。FEC操作處理單元27配備用于根據(jù)序列號選擇FEC數(shù)據(jù)包 的選擇單元。
這里,取代同時實行FEC操作處理,本實施例的一個特征是把FEC操作處理劃分成
多個操作處理,按順序實行所劃分的處理,每次由媒體數(shù)據(jù)包接收單元21進行接收操作 時實行一個處理,并實行在數(shù)目上與所劃分的操作處理相對應的接收操作,從而完成FEC 操作處理。無論是否存在媒體數(shù)據(jù)包的丟失或丟失了多少數(shù)量都實行這樣的FEC操作處 理。在下文將以FEC數(shù)據(jù)包Fl與媒體數(shù)據(jù)包1,11, 21, 31, 41, 51, 61, 71, 81, 91相聯(lián)系的情 況作為實例解釋本實施例中的FEC操作處理。在這里假設媒體數(shù)據(jù)包51在網(wǎng)絡中丟失。
首先,當媒體數(shù)據(jù)包接收單元21實行上述由OS管理的存儲器上的接收操作時,F(xiàn)EC 操作處理單元27計算FEC數(shù)據(jù)包Fl的冗余數(shù)據(jù)和媒體數(shù)據(jù)包1之間的XOR(進行第一劃 分操作處理),無論媒體數(shù)據(jù)包是否接收到都得到第一計算結果。然后,當媒體數(shù)據(jù)包接收 單元21進行存儲器上的接收操作時,F(xiàn)EC操作處理單元27計算第一計算結果和媒體數(shù)據(jù) 包11之間的XOR(進行第二劃分操作處理)并得到第二計算的結果。然后,當媒體數(shù)據(jù)包 接收單元21進行存儲器上的接收操作時,F(xiàn)EC操作處理單元27計算第二計算結果和媒體 數(shù)據(jù)包21之間的XOR(進行第三劃分操作處理)并得到第三計算的結果。通過這種方式, 每次媒體數(shù)據(jù)包接收單元21實行接收操作時就實行劃分操作處理, 一共實行9次接收操 作(注意媒體數(shù)據(jù)包51丟失),完成FEC操作處理并且從而媒體數(shù)據(jù)包51被恢復。如果 媒體數(shù)據(jù)包51沒有丟失,則通過10次接收操作完成FEC操作處理(在該情況中,計算結 果被忽略)。FEC操作處理單元27也對同一個矩陣內(nèi)的其它FEC數(shù)據(jù)包F2至F10進行這 樣的FEC操作處理。
通過這種方式,無論數(shù)據(jù)包丟失與否或者丟失的數(shù)量是多少,本實施例都進行FEC操 作處理,每次接收操作實行一個由把FEC操作處理劃分成多個處理得到的操作處理,從而 把矩陣尺寸中最大的媒體數(shù)據(jù)包上的FEC操作處理分配到與該矩陣尺寸對應的接收操作 時間。也就是,取代如常規(guī)情況下探測到媒體數(shù)據(jù)包丟失之后同時實行FEC操作處理,無 論是否存在媒體數(shù)據(jù)包的丟失,本實施例都對所有媒體數(shù)據(jù)包實行FEC操作處理,并且通 過把該處理分成多個處理實行該FEC的操作處理。這樣就防止FEC操作處理(媒體數(shù)據(jù)包 恢復處理)的負載突然(極大地)增加,并且事先以常數(shù)值使FEC操作處理必要的計算量 和操作時間(FEC操作時間)Tp得到估計。這將在下文進行更具體的描述。
當如在媒體再現(xiàn)的情況中需要周期性的操作時,應該在周期性操作之前實行的操作需 要在要求的時間內(nèi)完成,結果導致周期性被擾亂。如果應該在周期性操作之前實行的操作 的數(shù)量均勻,則處理需要的時間是自我明確的而且周期性容易保證。這在例如具有與可預 測的處理量相對應的計算能力并且同時實行多個周期性操作的內(nèi)置設備的情況下尤其有
效。尤其是,當應該在周期性操作之前進行的操作與該周期性操作沒有關系時,如果所討 論的處理的處理量不是一個常數(shù),則難以在適當?shù)臅r間進行周期性操作的規(guī)劃。因此,最 好應該在周期性操作之前進行的操作的數(shù)量以及操作時間恒定并且事先了解。對于這一 點,本實施例就可以如上所述用一個常數(shù)值估算FEC操作處理必須的操作量和操作時間, 這樣就可以防止諸如在FEC接收處理設備隨后階段的媒體再現(xiàn)等的周期性操作被擾亂。
FEC接收處理設備11的媒體數(shù)據(jù)包嵌入單元28檢査是否有丟失的數(shù)據(jù)包以及丟失數(shù) 據(jù)包的數(shù)量是否是1,當該數(shù)量是1時,媒體數(shù)據(jù)包嵌入單元28把作為FEC操作處理單元 27的計算結果的經(jīng)恢復的媒體數(shù)據(jù)包嵌入媒體數(shù)據(jù)包緩沖單元23中的緩沖器的相應位置。 也就是說,媒體數(shù)據(jù)包嵌入單元28把經(jīng)恢復的媒體數(shù)據(jù)包移送至媒體數(shù)據(jù)包緩沖單元23, 媒體數(shù)據(jù)包緩沖單元23基于媒體數(shù)據(jù)包的序列號把從媒體數(shù)據(jù)嵌入單元28接收到的媒體 數(shù)據(jù)包存儲在內(nèi)部緩沖器中的相應位置。在該情況中,媒體數(shù)據(jù)包緩沖單元23把媒體數(shù) 據(jù)包的存儲時間Tin記錄為"具有緊挨著的前一個序列號的數(shù)據(jù)包的Ti+接收時間間隔", 或者"具有緊挨著的后一個序列號的數(shù)據(jù)包的Ti -接收時間間隔"。作為"接收時間間隔", 可以釆用事先獲得的或設定的時間間隔,或者可以采用如下文所述的所計算時間間隔的平 均值。當丟失數(shù)據(jù)包的數(shù)目為2個或更多時,假定媒體數(shù)據(jù)包不能恢復而且設想處理將繼 續(xù)進行。
FEC接收處理設備11的媒體數(shù)據(jù)包傳遞單元29按順序從媒體數(shù)據(jù)包緩沖單元23中 的緩沖器提取媒體數(shù)據(jù)包并且把它們傳遞至更高級的應用程序。更具體地,媒體數(shù)據(jù)包傳 遞單元29將從計時器(沒有顯示)得到的當前時間與每個媒體數(shù)據(jù)包的存儲時間Ti進行比 較,并且從一個其從計時器得到的當前時間與存儲時間Ti之間的差別超過預設的緩沖時間 (預定時間)Tb的媒體數(shù)據(jù)包開始把媒體數(shù)據(jù)包發(fā)送至更高級的應用程序。
緩沖時間Tb可以表達為延遲時間Ts + FEC操作時間Tp。 FEC操作時間Tp是FEC操 作處理所需要的時間,并且如上所述,本實施例可以把該值估計為常數(shù)值。延遲時間Ts 是從一個矩陣中的第一媒體數(shù)據(jù)包到達(存儲在緩沖器中)開始直到同一個矩陣中所有其它 的媒體數(shù)據(jù)包和FEC數(shù)據(jù)包都到達時為止的一段時間。也就是,延遲時間Ts是從第一媒 體數(shù)據(jù)包被存儲在緩沖器開始直到整個矩陣的FEC操作處理可以開始所需要的時間。每個 媒體數(shù)據(jù)包或FEC數(shù)據(jù)包從FEC傳輸設備13傳輸?shù)牟椒既缟纤鍪浅A?,也就可能?常量估計延遲時間Ts。緩沖時間Tb通過這種方式與預先估計的延遲時間Ts和FEC操作 時間Tp的總和相對應而且由于延遲時間Ts和FEC操作時間Tp也可以被估計為常數(shù),所
以緩沖時間Tb也可以被估計為常數(shù)。媒體數(shù)據(jù)包傳遞單元29把媒體數(shù)據(jù)包以與緩沖時間 Tb相對應的延遲傳遞至更高級的應用程序。
在上文的解釋中,緩沖時間Tb被假定為是預先設定好的,但是緩沖時間Tb也可以是 如下通過FEC操作處理單元27計算得到。
假定所接收的來自一定的矩陣的FEC數(shù)據(jù)包中的最后一個FEC數(shù)據(jù)包的接收時間為 Tl,來自屬于該矩陣的媒體數(shù)據(jù)包的第一個到達的媒體數(shù)據(jù)包的接收時間為T0,則延遲時 間Ts = Tl - T0。假定Ts是根據(jù)本說明書的FEC操作處理開始的最差的時間值。
此外,假設媒體數(shù)據(jù)包的接收時間間隔為Tw,進行一個矩陣的FEC操作處理必須的 接收操作的最大數(shù)目為N個,則FEC操作時間為Tp = TwXN。
假定N與例如矩陣的尺寸相同而且傳輸側和接收側都已知該矩陣尺寸,或者從HTTP 服務器或使用RTSP的DESCRIBE方法獲得數(shù)據(jù)流信息,以及矩陣尺寸從該數(shù)據(jù)流信息得 到。
接收時間間隔Tw可以(l)預先設定或者可以(2)通過測量媒體數(shù)據(jù)包的接收時間間隔并 且對所測量的時間間隔取平均值得到。
在(l)情況下,傳輸側和接收側可以已知時間間隔Tw,或者數(shù)據(jù)流信息可以由分離的 通信單元從HTTP服務器得到,或者利用RTSP的DESCRIBE方法得到,比特率可以被除 以每個數(shù)據(jù)包的數(shù)據(jù)傳輸字節(jié)的數(shù)目,從而數(shù)據(jù)包的接收時間間隔可以基于所得到的數(shù)據(jù) 流信息得到。
在(2)情況下,如圖5所示,用于測量媒體數(shù)據(jù)包的接收時間間隔的媒體數(shù)據(jù)包時間間 隔測量單元(接收時間間隔測量單元)25被添加到FEC接收處理設備11中。每次接收到一 個媒體數(shù)據(jù)包,媒體數(shù)據(jù)包時間間隔測量單元25就測量媒體數(shù)據(jù)包的儲存時間Ti和存儲 在緩沖器中的緊挨著的前一個媒體數(shù)據(jù)包的儲存時間Tin之間的差別,把該差別除以所接 收到的媒體數(shù)據(jù)包的序列號和存儲在緩沖器中的緊挨著的前一個媒體數(shù)據(jù)包的序列號之 間的差別,這樣就計算出媒體數(shù)據(jù)包的接收時間間隔并把它的平均數(shù)看成是接收時間間隔 Tw。
FEC處理單元27把通過這種方式計算出的延遲時間Ts和FEC操作時間Tp進行合計, 這樣就可以得到緩沖時間Tb。
圖2(A)和圖2(B)是顯示FEC接收處理設備的操作的流程圖。尤其是圖2(A)顯示了媒 體數(shù)據(jù)包接收單元21,媒體數(shù)據(jù)包緩沖單元23和媒體數(shù)據(jù)包傳遞單元29之間的操作關系,
而圖2(B)顯示了媒體數(shù)據(jù)包接收單元21,FEC操作處理單元27和媒體數(shù)據(jù)包嵌入單元28 之間的操作關系。
如圖2(A)所示,媒體數(shù)據(jù)包接收單元21進行嘗試接收媒體數(shù)據(jù)包的接收操作(Sll), 當接收到媒體數(shù)據(jù)包時(S12中選項為是),媒體數(shù)據(jù)包接收單元21把接收到的媒體數(shù)據(jù)包 儲存在緩沖單元23的緩沖器中(S13)。把媒體數(shù)據(jù)包儲存在緩沖器中后,或者在S12中沒 有媒體數(shù)據(jù)包被接收到(S12中選項為非),媒體數(shù)據(jù)包傳遞單元29檢查是否有其當前時間 和存儲時間Ti之間的差別超過緩沖時間Tb的任何媒體數(shù)據(jù)包(S14),當存在這樣的媒體數(shù) 據(jù)包時(S14中選項為是),媒體數(shù)據(jù)包傳遞單元29從緩沖器中提取媒體數(shù)據(jù)包并且把它發(fā)送 至更高級的應用程序(S15)。之后,檢査用戶是否輸入結束命令(S16),當輸入這樣的結束命 令時(S16中選項為是),操作結束。當沒有輸入結束命令(S16中選項為非)或者當S14中沒 有其與當前時間Ti的差別是Tb或小于Tb(S14中選項為非)時,流程回到媒體數(shù)據(jù)包接收 單元21進行接收操作的Sll步驟。
如圖2(B)所示,當媒體數(shù)據(jù)包接收單元21對媒體數(shù)據(jù)包進行接收操作(S21)時,FEC操 作處理單元27進行把FEC操作處理劃分成多個處理產(chǎn)生的處理中的一個處理(還沒有進行 處理)(S22)。 FEC操作處理單元27判斷是否所有被劃分的操作的處理都已經(jīng)完成,也就是, FEC操作處理是否完成(S23),如果FEC操作處理已經(jīng)完成(S23中選項為是),則判斷是否應 該實行緩沖(S24)。也就是,F(xiàn)EC操作處理單元27判斷是否有丟失的數(shù)據(jù)包以及丟失數(shù)據(jù)包 的數(shù)量是否為1。如果應該實行緩沖(S24選項為是),則媒體數(shù)據(jù)包嵌入單元28把通過FEC 操作處理得到的媒體數(shù)據(jù)包(經(jīng)恢復的媒體數(shù)據(jù)包)嵌入到媒體數(shù)據(jù)包緩沖單元23中的緩沖 器的相應位置(S25)。之后,檢查用戶是否輸入結束命令(S26),如果輸入結束命令(S26中選項 為是),則操作結束。當沒有輸入結束命令時(S26中選項為非),當S23中判斷FEC操作處理 沒有結束(S23中選項為非)或者S24中判斷不應該進行緩沖(S24中選項為非)時,流程回到 S21步驟,系統(tǒng)等待由媒體數(shù)據(jù)包接收單元21進行的接收操作。
如上所述,本實施例相關于媒體數(shù)據(jù)包和FEC數(shù)據(jù)包適當設定延遲時間Ts(從一個矩 陣中的第一數(shù)據(jù)包到達開始直到FEC操作處理必須的所有數(shù)據(jù)包到達為止的最壞值),在 FEC操作時間內(nèi)分配FEC操作處理,這樣就能夠消除操作處理數(shù)量的突然增加,未完成的 操作處理或浪費的延遲時間,并能夠實現(xiàn)操作處理數(shù)量暫時的平滑均勻,使整個系統(tǒng)的負 載保持均衡并且達到數(shù)據(jù)包傳遞周期的恒定。
圖1和圖5中的接收處理單元也可以例如通過使用作為硬件的通用計算機實現(xiàn)。也就
是,單元21至29可以通過使在上述計算機機上安裝的處理器執(zhí)行程序而實現(xiàn)。這樣,也 可以通過在計算機中預安裝上述程序,把程序儲存在諸如CD-ROM的存儲媒介中,或者通 過網(wǎng)絡分配上述程序并且適當時在電腦中安裝該程序實現(xiàn)FEC接收處理設備。
權利要求
1.一種通信設備,其特征在于,所述通信設備包括構造成嘗試從網(wǎng)絡接收媒體數(shù)據(jù)包的接收嘗試單元;構造成對由接收嘗試單元接收到的媒體數(shù)據(jù)包進行緩沖的第一緩沖單元;構造成接收FEC(向前誤差校正)數(shù)據(jù)包的FEC數(shù)據(jù)包接收器,所述FEC數(shù)據(jù)包包括恢復丟失的媒體數(shù)據(jù)包的冗余數(shù)據(jù)和規(guī)定與冗余數(shù)據(jù)相關的多個媒體數(shù)據(jù)包的信息;構造成對由FEC數(shù)據(jù)包接收器接收到的FEC數(shù)據(jù)包進行緩沖的第二緩沖單元;構造成從所述第二緩沖單元中選擇FEC數(shù)據(jù)包的選擇單元;構造成把將要利用包括在選定的FEC數(shù)據(jù)包中的冗余數(shù)據(jù)和與冗余數(shù)據(jù)相關的媒體數(shù)據(jù)包實行的FEC操作處理分成多個處理,然后按順序實行每個處理以使每次接收嘗試單元嘗試接收媒體數(shù)據(jù)包時實行一個處理的FEC操作處理單元;構造成把通過FEC操作處理恢復的媒體數(shù)據(jù)包嵌入所述第一緩沖單元的媒體數(shù)據(jù)包嵌入單元;和構造成按順序地把所述第一緩沖單元中的媒體數(shù)據(jù)包傳遞至預先指定的應用程序的媒體數(shù)據(jù)包傳遞單元。
2. 如權利要求l所述的設備,其特征在于,所述媒體數(shù)據(jù)包和FEC數(shù)據(jù)包符合RTP (實 時傳輸協(xié)議)協(xié)議。
3. 如權利要求1所述的設備,其特征在于,當與冗余數(shù)據(jù)相聯(lián)系的媒體數(shù)據(jù)包被傳遞至 應用程序時,所述FEC操作處理單元從所述第二緩沖單元擦除包括所述冗余數(shù)據(jù)的FEC 數(shù)據(jù)包。
4. 如權利要求1所述的設備,其特征在于,所述FEC操作處理是在冗余數(shù)據(jù)和與冗余數(shù) 據(jù)相關的媒體數(shù)據(jù)包之間進行的異或(XOR)操作處理。
5. 如權利要求1所述的設備,其特征在于,當所述第一緩沖單元從所述接收嘗試單元得到 媒體數(shù)據(jù)包之后經(jīng)過一段預定時間,媒體數(shù)據(jù)包傳遞單元把所述媒體數(shù)據(jù)包傳遞至應用程 序。
6. 如權利要求5所述的設備,其特征在于,所述媒體數(shù)據(jù)傳遞單元作為延遲時間計算FEC 數(shù)據(jù)包和與FEC數(shù)據(jù)包相關的媒體數(shù)據(jù)包中第一個接收到的數(shù)據(jù)包的接收時間和最后接 收到的數(shù)據(jù)包的接收時間之間的差異, 通過把事先給出的媒體數(shù)據(jù)包接收時間間隔與FEC操作處理被劃分的被劃分次數(shù)相 乘計算FEC操作處理所需的FEC操作時間,合計延遲時間與FEC操作時間從而得到預定的時間。
7. 如權利要求6所述的設備,其特征在于,所述設備進一步包括構造成測量媒體數(shù)據(jù)包 的接收時間間隔的接收時間間隔測量單元,其中媒體數(shù)據(jù)包傳遞單元把由所述接收時間間隔測量單元測量的媒體數(shù)據(jù)包的接收 時間間隔的平均值用作媒體數(shù)據(jù)包接收時間間隔。
8. —種通信方法,其特征在于,所述通信方法包括嘗試從網(wǎng)絡接收媒體數(shù)據(jù)包;把接收到的媒體數(shù)據(jù)包存儲在對媒體數(shù)據(jù)包進行緩沖的第一緩沖單元中; 接收FEC (向前誤差校正)數(shù)據(jù)包,該數(shù)據(jù)包包括恢復丟失的媒體數(shù)據(jù)包的冗余數(shù)據(jù)和 規(guī)定與冗余數(shù)據(jù)相關的多個媒體數(shù)據(jù)包的信息;把接收到的FEC數(shù)據(jù)包存儲在對FEC數(shù)據(jù)包進行緩沖的第二緩沖單元中; 從第二緩沖單元中選擇FEC數(shù)據(jù)包;把將要利用包括在選定的FEC數(shù)據(jù)包中的冗余數(shù)據(jù)和與冗余數(shù)據(jù)相關的媒體數(shù)據(jù)包 實行的FEC操作處理分成多個處理,然后按順序實行每個處理以使每次嘗試接收媒體數(shù)據(jù) 包時實行一個處理;把通過FEC操作處理恢復的媒體數(shù)據(jù)包嵌入第一緩沖單元;和 接順序地把第一緩沖單元中的媒體數(shù)據(jù)包傳遞至預先指定的應用程序。
全文摘要
本發(fā)明提供的通信方法包括嘗試從網(wǎng)絡接收媒體數(shù)據(jù)包;把接收到的媒體數(shù)據(jù)包存儲在第一緩沖單元中;接收包括恢復丟失的數(shù)據(jù)包的冗余數(shù)據(jù)和規(guī)定與冗余數(shù)據(jù)相關的多個媒體數(shù)據(jù)包的信息的FEC數(shù)據(jù)包;把接收到的FEC數(shù)據(jù)包存儲在第二緩沖單元中;從第二緩沖單元中選擇FEC數(shù)據(jù)包;把將要利用包括在選定的FEC數(shù)據(jù)包中的冗余數(shù)據(jù)和與冗余數(shù)據(jù)相關的媒體數(shù)據(jù)包實行的FEC操作處理分成多個處理,然后按順序實行每個處理以使每次嘗試接收媒體數(shù)據(jù)包時實行一個處理;和把通過FEC操作恢復的媒體數(shù)據(jù)包嵌入第一緩沖單元。
文檔編號H04L12/56GK101184034SQ20071016943
公開日2008年5月21日 申請日期2007年11月12日 優(yōu)先權日2006年11月17日
發(fā)明者伊瀨恒太郎, 入江祐司, 安次富大介, 權藤俊一, 松澤茂雄 申請人:株式會社東芝
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1