欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法

文檔序號(hào):7555858閱讀:183來(lái)源:國(guó)知局
專利名稱:面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種基于IP的面向流媒體傳輸質(zhì)量監(jiān) 控的監(jiān)控信息壓縮方法。
背景技術(shù)
隨著計(jì)算機(jī)網(wǎng)絡(luò)和流媒體技術(shù)的快速發(fā)展,流媒體已經(jīng)成為互聯(lián)網(wǎng)應(yīng)用的主流, 特別是隨著IPTV業(yè)務(wù)的迅猛發(fā)展,人們對(duì)基于IP的視頻會(huì)議、視頻點(diǎn)播、遠(yuǎn)程教學(xué)、在線游 戲和娛樂(lè)等多媒體實(shí)時(shí)應(yīng)用的需求越來(lái)越多,對(duì)傳輸質(zhì)量的要求也越來(lái)越高。但是IP網(wǎng)絡(luò) 是一個(gè)只提供“盡力服務(wù)”的網(wǎng)絡(luò),它不能保障流媒體傳輸質(zhì)量,因此與當(dāng)前人們的要求相 矛盾。因而對(duì)流媒體傳輸質(zhì)量進(jìn)行監(jiān)控、迅速發(fā)現(xiàn)流媒體報(bào)文在傳輸過(guò)程中的質(zhì)量問(wèn)題并 及時(shí)報(bào)告和處理很有必要。目前由思科公司和heoQuest公司共同提出的MDI(Media Delivery Index, RFC4445)指標(biāo)已經(jīng)成為流媒體網(wǎng)絡(luò)傳輸質(zhì)量監(jiān)控的行業(yè)指標(biāo)。根據(jù)MDI指標(biāo)的計(jì)算要求, 流媒體傳輸質(zhì)量監(jiān)控信息中必須包含如下參數(shù)流標(biāo)志、流報(bào)文序列號(hào)或丟包數(shù)、報(bào)文長(zhǎng) 度、報(bào)文到達(dá)時(shí)間等。另一方面,國(guó)防科大計(jì)算機(jī)學(xué)院網(wǎng)絡(luò)與信息安全研究所提出的一種傳 輸層協(xié)議“l(fā)abelcast協(xié)議”,該協(xié)議能夠標(biāo)識(shí)報(bào)文優(yōu)先級(jí)、預(yù)留帶寬、計(jì)算時(shí)間差、統(tǒng)計(jì)報(bào)文 丟失率等,具有強(qiáng)大的視頻流分發(fā)和傳輸質(zhì)量監(jiān)測(cè)的功能,對(duì)流媒體傳輸質(zhì)量監(jiān)控有著重 大的意義。綜合MDI指標(biāo)和Iabelcast協(xié)議,單個(gè)監(jiān)控信息體積不大,但是與流媒體相結(jié)合 之后將會(huì)占用大量網(wǎng)絡(luò)資源,給流媒體網(wǎng)絡(luò)傳輸增加額外的負(fù)擔(dān),因此,減少流媒體報(bào)文傳 輸質(zhì)量監(jiān)控信息占用網(wǎng)絡(luò)資源成為當(dāng)前亟待解決的問(wèn)題。

發(fā)明內(nèi)容
針對(duì)前述問(wèn)題,為了提高流媒體監(jiān)控信息在網(wǎng)絡(luò)中傳輸效率,減少對(duì)網(wǎng)絡(luò)資源的 消耗,本發(fā)明提出了一種面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法。該方法通過(guò)將流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息設(shè)為公共部分和變化部分從而對(duì) 連續(xù)接收到的流媒體報(bào)文的監(jiān)控信息進(jìn)行壓縮,特別地,本發(fā)明方法利用公共部分的信息 對(duì)監(jiān)控信息中的報(bào)文序列號(hào)和報(bào)文到達(dá)時(shí)間等參數(shù)進(jìn)行了高效的無(wú)損壓縮。發(fā)送端對(duì)監(jiān)控信息的壓縮方法如下步驟1 聲明一個(gè)結(jié)構(gòu)體變量,申請(qǐng)內(nèi)存空間用于存放監(jiān)控信息,聲明一個(gè)用于記 數(shù)的變量——計(jì)數(shù)器i,并對(duì)i進(jìn)行初始化。所述結(jié)構(gòu)體變量,如圖2所示,包括公共部分和報(bào)文部分,其中公共部分是用 于存儲(chǔ)監(jiān)控信息中相同部分,其長(zhǎng)度是固定的(共占用M字節(jié)),它包括sourcelP、 destinationIP、firstPacketTimeH、firstPacketTimeL、monitorlnfoSeq、bandwidth、 applicationID, ver、f irstPacketSeq ;報(bào)文部分用于存儲(chǔ)每個(gè)流媒體監(jiān)控信息報(bào)文的 被公共部分提取之外的監(jiān)控信息,它的長(zhǎng)度是變化的,當(dāng)不存儲(chǔ)下一個(gè)報(bào)文序列號(hào)時(shí),它 占6字節(jié),當(dāng)需要存儲(chǔ)下一個(gè)報(bào)文序列號(hào)時(shí),占8字節(jié),報(bào)文部分包括的域有timeStamp、timeOffset> packetLen> pri、L> nextPacketSeq (optional)。其中,firstPacketTimeH和firstPacketTimeL分別指監(jiān)控信息包中第一個(gè)報(bào)文 到達(dá)的時(shí)間高位和時(shí)間低位;monitorlnfoSeq代表監(jiān)控報(bào)文序列號(hào),它是在前一個(gè)被發(fā)送 的監(jiān)控信息包的監(jiān)控報(bào)文序列號(hào)的基礎(chǔ)上自動(dòng)加1的,若本監(jiān)控信息包為第1個(gè)監(jiān)控信息 包,則此值為0 ^irstfacketkq為監(jiān)控信息包中第一個(gè)報(bào)文的序列號(hào);timeOffset為當(dāng) 前流媒體報(bào)文到達(dá)的時(shí)間與前一報(bào)文到達(dá)時(shí)間之差,若當(dāng)前報(bào)文為本監(jiān)控信息包的第一個(gè) 報(bào)文,則此值為0 ;L表示監(jiān)控信息包中的當(dāng)前監(jiān)控報(bào)文與緊隨其后的報(bào)文的序列號(hào)是否連 續(xù),若連續(xù),則為0,否則為1 ;nextPacketSeq代表監(jiān)控信息包中的當(dāng)前監(jiān)控報(bào)文之后的監(jiān) 控報(bào)文對(duì)應(yīng)的流媒體報(bào)文序列號(hào),為可選,若L為1時(shí),則此域存在,否則,此域不存在。所述監(jiān)控信息pktInfo[i]為能反映流媒體報(bào)文傳輸質(zhì)量的相關(guān)信息,如圖 1 所不,包括 sourcelP、destinationIP、packetArrivedTimeH、packetArrivedTimeL、 bandwidth> applicationID> timeStamp> ver> pri、seq、packetLen。其中,sourcelP、destinationIP,是指監(jiān)控的流媒體報(bào)文的源IP和目的IP ; packetArrivedTimeH、packetArrivedTimeL分別代表流媒體報(bào)文到達(dá)的時(shí)間高位和到達(dá)的 時(shí)間低位;bandwidth為流媒體流的平均帶寬;applicationID為流媒體流的應(yīng)用ID,可用 于代表某一條流;timeStamp代表流媒體報(bào)文在上一跳的時(shí)間戳;pri代表流媒體報(bào)文在傳 輸節(jié)點(diǎn)發(fā)送的優(yōu)先級(jí);seq代表流媒體報(bào)文的序列號(hào);ver代表tim必tamp,pri,seq等參數(shù) 占用字節(jié)長(zhǎng)度的版本號(hào)° bandwidth、applicationID、timeStamp、 νθΓλ pl*i λ S6Q ^^f曰肩、土勾 可從Iabelcast報(bào)文頭中獲得。步驟2 獲取流媒體報(bào)文,提取此流媒體報(bào)文的監(jiān)控信息paCke nf0[i],并用它 對(duì)步驟1中的結(jié)構(gòu)體的公共部分common和第一個(gè)報(bào)文的除L域和nextPacketSeq域之外 的數(shù)據(jù)域進(jìn)行填充,之后進(jìn)入步驟3。步驟3 繼續(xù)獲取步驟2中所述流媒體報(bào)文,提取所得的流媒體報(bào)文的監(jiān)控信 息paCke nf0[i+l],判斷paCke nf0[i+l]中序列號(hào)與前一個(gè)流媒體報(bào)文的監(jiān)控信息 packetInfo[i]中序列號(hào)是否連續(xù),若連續(xù),則監(jiān)控信息包報(bào)文部分中的代表前一個(gè)流媒體 報(bào)文的監(jiān)控信息packet [i]的L域值為0且packet [i]的nextPacketSeq域不存在;否則 packet [i]的 L 域值為 1,并且 packet [i]的 nextPacketSeq 域的值等于 packetlnfo [i+1] 中的seq域的值;步驟4 計(jì)算當(dāng)前流媒體報(bào)文的監(jiān)控信息paCke nf0[i+l]中的時(shí)間信息與前一 個(gè)流媒體報(bào)文的監(jiān)控信息paCke nf0[i]中的時(shí)間信息的偏差,并用此偏差值填充監(jiān)控信 息包中當(dāng)前流媒體報(bào)文的監(jiān)控報(bào)文packet [i+Ι]的timeOffset域;步驟5 填充監(jiān)控信息包中當(dāng)前流媒體報(bào)文監(jiān)控信息paCket[i+l]中除L域和 nextPacketSeq域之外的域的信息,并且計(jì)數(shù)器i加1 ;步驟6 判斷存儲(chǔ)空間剩余部分能否存儲(chǔ)一個(gè)流媒體報(bào)文監(jiān)控信息的報(bào)文部分, 若能存儲(chǔ),則回到步驟3,否則壓縮結(jié)束。監(jiān)控信息的解壓縮算法如下步驟1 提取監(jiān)控信息包公共部分common,定義一個(gè)變量——計(jì)數(shù)器i,并對(duì)i初 始化。步驟2 提取第1個(gè)監(jiān)控信息包中報(bào)文packet [i]中除nextfktSeq域之外的各個(gè)域的值,輸出此監(jiān)控信息報(bào)文解壓后的流媒體報(bào)文的監(jiān)控信息PktInfo[i]。流媒體報(bào)文的監(jiān)控信息Pkthfo [i]的獲取方法如下解壓縮后的報(bào)文監(jiān)控信息pk nfo[i]中的sourcelP、destinationIP、 bandwidth、applicationID、ver域的值等于監(jiān)控信息包公共部分common中對(duì)應(yīng)的值;解 壓縮后的 艮文信息 pktlnfo [i]中的 packetArrivedTimeH、packetArrivedTimeL、seq 域 的值等于 common 中 firstPacketTimeH、firstPacketTimeL、firstPacketSeq 對(duì)應(yīng)的值。 pktlnfo[i]中pri、timeStamp, packetLen域的值等于監(jiān)控信息包中報(bào)文部分packet [i] 中的 pri、timeStamp、packetLen 域?qū)?yīng)的值。步驟3 計(jì)算對(duì)應(yīng)的解壓縮后的監(jiān)控信息pktlnfo [i+Ι]對(duì)應(yīng)的序列號(hào)seq域的 值,并提取監(jiān)控信息包中報(bào)文部分的下一個(gè)報(bào)文packet [i+1]除nextfktSeq域之外的各個(gè) 域的值。其中,解壓縮后的監(jiān)控信息pktInfo[i+l]對(duì)應(yīng)的序列號(hào)seq域的值的計(jì)算方法如 下判斷packet [i] · L的值是否等于0,若packet [i]. L = 0,則報(bào)文packet [i+1]解壓后的 監(jiān)控信息 pktlnfo [i+1]對(duì)應(yīng)的 seq 域的值 pktInfo[i+l]. seq = pktlnfo [i]. seq+1 ;否則, pktlnfo[i+1]. seq = pktlnfo[i]. nextPktSeq。步驟4 獲取監(jiān)控信息報(bào)文packet [i+1]解壓縮后的包括域packetArrivedTimeH 和域packetArrivedTimeL的時(shí)間信息。其計(jì)算方法如下pktlnfo [i + 1], packetArrivedTimeL = pktlnfo [ i ]. packetArrivedTimeL+packet[i]. timeOffset ;若 pktlnfo[i+1]. packetArrivedTimeL 不 [Hi if, JjllJ pktlnfo [i+1]. packetArrivedTimeH = pktlnfo [i]. packetArrivedTimeH ; ^ JjllJ pktlnfo[i+1]. packetArrivedTimeH = pktlnfo[i]. packetArrivedTimeH+1。步驟5 :輸出監(jiān)控信息報(bào)文pktlnfo [i+1]各個(gè)域的值,并且計(jì)數(shù)器i的值加1。步驟6 判斷監(jiān)控信息包中是否還有待解壓縮的包,若有,則回到步驟3,否則解壓 縮完成。本發(fā)明的優(yōu)點(diǎn)于1、本壓縮方法為無(wú)損壓縮。通過(guò)使用本發(fā)明提供的壓縮與解壓縮方法,所有的被 壓縮的信息均可被還原。2、對(duì)相同數(shù)量的監(jiān)控信息而言,需要的存儲(chǔ)空間明顯減少,從而減少了在傳輸過(guò) 程中對(duì)網(wǎng)絡(luò)資源的消耗。主要有以下幾點(diǎn)原因首先,監(jiān)控信息中很多部分如流媒體ID,流 的源IP、目的IP等占用空間大的參數(shù)是相同的,可以直接提取作為公共部分;其次,監(jiān)控信 息中相鄰報(bào)文到達(dá)時(shí)間間隔很小,而記錄每個(gè)報(bào)文到達(dá)時(shí)間會(huì)占用很大空間,因而可以用 偏移的方法進(jìn)行記錄,達(dá)到壓縮的目的;最后,對(duì)于報(bào)文序列號(hào)而言,由于大部分情況下是 連續(xù)的,因而通過(guò)只記錄不連續(xù)的報(bào)文序列號(hào),也可以大大減小監(jiān)控信息的體積。


圖1未壓縮的流媒體監(jiān)控信息結(jié)構(gòu)2壓縮后的流媒體監(jiān)控信息結(jié)構(gòu)3流媒體監(jiān)控信息壓縮流程4流媒體監(jiān)控信息解壓縮流程圖
具體實(shí)施例方式下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。監(jiān)控信息的壓縮過(guò)程如下如圖3所示,為一種監(jiān)控信息存儲(chǔ)圖,在本實(shí)例中采用1400字節(jié)作為一個(gè)監(jiān)控信 息數(shù)據(jù)包的大小。其中,公共部分?jǐn)?shù)據(jù)長(zhǎng)度M字節(jié),變化部分長(zhǎng)度為1376字節(jié)。流媒體監(jiān) 控信息的壓縮方法如下步驟1 聲明用于記數(shù)的變量i,i的初始值為1 ;聲明一個(gè)如圖3所示結(jié)構(gòu)的結(jié)構(gòu) 體變量,申請(qǐng)一個(gè)1400字節(jié)的存儲(chǔ)空間。依本算法可知公共部分存儲(chǔ)空間為M字節(jié),報(bào)文 部分存儲(chǔ)空間為1376字節(jié)。步驟2 獲取此流媒體報(bào)文的監(jiān)控信息paCke nf0[i],并用它對(duì)步驟1中的結(jié)構(gòu) 體的公共部分common和第一個(gè)報(bào)文packet [i]的除L域和nextPacketSeq域之外的數(shù)據(jù) 域進(jìn)行填充。進(jìn)入步驟3。其 中公共 部分 common 中 域 sourcelP、destinationIP、bandwidth、 applicationID, ver的值等于監(jiān)控信息packe nf0[i]中的對(duì)應(yīng)的域的值,公共部分 common 中域 firstPacketTimeH、firstPacketTimeL、firstPacketSeq 的值分另ll 為監(jiān)控 信息 packetlnfo[i]中對(duì)應(yīng)的域 packetArrivedTimeH、packetArrivedTimeL、seq 的值, monitorlnfoSeq的值等于本監(jiān)控信息包前一監(jiān)控信息包中的monitorlnfoSeq的值加1,若 本監(jiān)控信息包為第1個(gè),則此值為0。packet [i]中timeOffset值等于0,packet [i]中的 L域和nextPacketSeq域的值在下一個(gè)步驟中確定。步驟3 獲取流媒體報(bào)文,提取此流媒體報(bào)文的監(jiān)控信息paCke nf0[i+l],判 斷paCke nf0[i+l]中序列號(hào)與paCke nf0[i]中序列號(hào)是否連續(xù),若連續(xù),則監(jiān)控信息 包中前一報(bào)文packet[i]的L域值為0且packet[i]的nextfacketSeq域不存在;否則 packet [i]的 L 域值為 1,并且 packet [i]的 nextPacketSeq 域的值等于 packetlnfo [i+1] 中的seq域的值。步驟4 計(jì)算當(dāng)前監(jiān)控信息paCke nf0[i+l]與前一監(jiān)控信息packe nf0[i]到 達(dá)的時(shí)間偏差,并用此偏差值填充當(dāng)前監(jiān)控信息packet [i+Ι]的timeOffset域;步驟5 填充當(dāng)前監(jiān)控報(bào)文packet[i+Ι]中除L域和nextPacketSeq域之外的域 的信息,并且計(jì)數(shù)器i加1;步驟6 判斷存儲(chǔ)空間剩余部分能否存儲(chǔ)一個(gè)監(jiān)控信息包的報(bào)文部分,若能存儲(chǔ), 則回到步驟3,否則壓縮結(jié)束。監(jiān)控信息的解壓縮過(guò)程如下步驟1 定義變量i = 1,提取監(jiān)控信息包公共部分common。步驟2 提取監(jiān)控信息包中報(bào)文lpacket [i]的各個(gè)域的值,得到并輸出監(jiān)控信息 報(bào)文1解壓后的流數(shù)據(jù)包監(jiān)控信息PktInfo [i]。其中 pktInfo[l]中的 sourcelP、destinationIP、bandwidth> applicationID> ver域的值等于公共部分common中對(duì)應(yīng)的值;pktInfo[l]中的packetArrivedTimeH、 packetArrivedTimeL、seq 域的值等于 common 中 firstPacketTimeH、firstPacketTimeL、 firstPacketSeq 對(duì)應(yīng)的值。pk nfo[l]中 pri、timeStamp、packetLen 域的值等于監(jiān)控信息包中報(bào)文部分packet [1]中的pri、timeStamp、packetLen域?qū)?yīng)的值。步驟3 判斷packet [i]. L的值是否等于0,若packet [i]. L = 0,則報(bào)文 packet[i+Ι]解壓后的監(jiān)控信息 pktInfo[i+l]對(duì)應(yīng)的域 seq 的值 pktlnfo[i+1]. seq = pktInfo[i], seq+1 ;否則,pk nfo[i+1]· seq = pktlnfo[i]. nextPktSeq0 提取監(jiān)控信息包 中報(bào)文部分的下一個(gè)報(bào)文packet[i+Ι]中除nextfktSeq域之外的各個(gè)域的值。步驟4 獲取監(jiān)控信息解壓縮后的時(shí)間。pk nfo[i+1]. packetArrivedTimeL =pktlnfo [i].packetArrivedTimeL+packet[i] · timeOffset, pktlnfo[i + 1]. packetArrivedTimeH = pktlnfo[i] · packetArrivedTimeH。 若 pktlnfo[i + 1]. packetArrivedTimeL 回環(huán),則 pktlnfo [i+1]. packetArrivedTimeH 的值力口 1。步驟5 :輸出流數(shù)據(jù)包監(jiān)控信息pktlnfo [i+1]的各個(gè)域的值,并且i = i+1。其中 pktlnfo [i+Ι]中的 sourcelP、destinationIP、bandwidth、applicationID、 ver域的值等于公共部分common中對(duì)應(yīng)的值;pktlnfo [i+1]中的packetArrivedTimeH、 packetArrivedTimeL、seq域的值等于步驟3和步驟4中計(jì)算出的值。pk nfo[i+l]中 pri、timeStamp, packetLen域的值等于監(jiān)控信息包中報(bào)文部分packet[i+l]中的pri、 timeStamp、packetLen 域?qū)?yīng)的值。步驟6 判斷流媒體監(jiān)控信息包中是否還有待解壓縮的報(bào)文。若有,則回到步驟3 ; 否則,解壓縮結(jié)束。對(duì)本實(shí)例中流媒體傳輸質(zhì)量監(jiān)控信息傳輸?shù)膲嚎s性能分析壓縮前攜帶監(jiān)控信息個(gè)數(shù)為攜帶監(jiān)控信息個(gè)數(shù)=存儲(chǔ)空間/單個(gè)流監(jiān)控信息長(zhǎng)度= 1400 字節(jié) /24 字節(jié)=58壓縮后攜帶監(jiān)控信息個(gè)數(shù)為(1)網(wǎng)絡(luò)情況最好時(shí),即沒(méi)有流媒體報(bào)文丟失時(shí),流媒體傳輸質(zhì)量監(jiān)控信息包中報(bào) 文部分需要的存儲(chǔ)空間為都為6字節(jié),即攜帶監(jiān)控信息個(gè)數(shù)=(存儲(chǔ)空間-公共部分長(zhǎng)度)/單個(gè)流監(jiān)控信息長(zhǎng)度= (1400 字節(jié)字節(jié))/6 字節(jié)=229(2)網(wǎng)絡(luò)情況最差時(shí),即流媒體報(bào)文在傳輸過(guò)程中連續(xù)丟包時(shí),流媒體傳輸質(zhì)量監(jiān) 控信息包中報(bào)文部分需要的存儲(chǔ)空間都為8字節(jié),即攜帶監(jiān)控信息個(gè)數(shù)=(存儲(chǔ)空間-公共部分長(zhǎng)度)/單個(gè)流監(jiān)控信息長(zhǎng)度= (1400 字節(jié)字節(jié))/8 字節(jié)=172因此,經(jīng)過(guò)壓縮后一個(gè)監(jiān)控信息數(shù)據(jù)包能攜帶的監(jiān)控信息個(gè)數(shù)在172到2 個(gè)之 間,較原來(lái)的58個(gè)提高了 2. 96倍至3. 94倍,從而大大減少了傳輸監(jiān)控信息時(shí)對(duì)網(wǎng)絡(luò)資源 的消耗。
權(quán)利要求
1.面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,其特征在于該方法包括對(duì)監(jiān)控信 息的壓縮方法和解壓縮的算法,聲明結(jié)構(gòu)體變量、監(jiān)控信息,所述結(jié)構(gòu)體變量,包括公共 部分和報(bào)文部分,其中公共部分是用于存儲(chǔ)監(jiān)控信息中相同部分,其長(zhǎng)度是固定的,共占 用 24 字節(jié),它包括 sourcelP、destinationIP、firstPacketTimeH、firstPacketTimeL、 monitorlnfoSeq、bandwidth、applicationID、ver、firstPacketSeq ; 艮文部分用于存fi者 每個(gè)流媒體監(jiān)控信息報(bào)文的被公共部分提取之外的監(jiān)控信息,它的長(zhǎng)度是變化的,當(dāng)不存 儲(chǔ)下一個(gè)報(bào)文序列號(hào)時(shí),它占6字節(jié),當(dāng)需要存儲(chǔ)下一個(gè)報(bào)文序列號(hào)時(shí),占8字節(jié),報(bào)文部 分包括的域有timeStamp、timeOffset、packetLen、pri、L、nextPacketSeq(optional); 所述監(jiān)控信息為能反映流媒體報(bào)文傳輸質(zhì)量的相關(guān)信息,包括sourcelP、destinationIP. packetArrivedTimeH、packetArrivedTimeL、bandwidth、applicationID、timeStamp、ver、 pri、seq、packetLen。
2.根據(jù)權(quán)力要求1所述的面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,其特征在于 對(duì)監(jiān)控信息的壓縮方法如下步驟1 聲明一個(gè)結(jié)構(gòu)體變量,申請(qǐng)內(nèi)存空間用于存放監(jiān)控信息,聲明一個(gè)用于記數(shù)的 變量——計(jì)數(shù)器i并對(duì)i進(jìn)行初始化;步驟2 獲取流媒體報(bào)文,提取此流媒體報(bào)文的監(jiān)控信息paCke nf0[i],并用它對(duì)步 驟1中的結(jié)構(gòu)體的公共部分common和第一個(gè)報(bào)文的除L域和nextPacketSeq域之外的數(shù) 據(jù)域進(jìn)行填充,之后進(jìn)入步驟3 ;步驟3:繼續(xù)獲取步驟2中所述流媒體報(bào)文,提取所得的流媒體報(bào)文的監(jiān)控信息 packet hf ο [ i+1 ],判斷packet hf ο [ i+1 ]中序列號(hào)與前一個(gè)流媒體報(bào)文的監(jiān)控信息 packetInfo[i]中序列號(hào)是否連續(xù),若連續(xù),則監(jiān)控信息包報(bào)文部分中的代表前一個(gè)流媒體 報(bào)文的監(jiān)控信息packet [i]的L域值為0且packet [i]的nextPacketSeq域不存在;否則 packet [i]的 L 域值為 1,并且 packet [i]的 nextPacketSeq 域的值等于 packetlnfo [i+1] 中的seq域的值;步驟4 計(jì)算當(dāng)前流媒體報(bào)文的監(jiān)控信息paCke nf0[i+l]中的時(shí)間信息與前一個(gè)流 媒體報(bào)文的監(jiān)控信息paCke nf0[i]中的時(shí)間信息的偏差,并用此偏差值填充監(jiān)控信息包 中當(dāng)前流媒體報(bào)文的監(jiān)控報(bào)文packet [i+Ι]的timeOffset域;步驟5:填充監(jiān)控信息包中當(dāng)前流媒體報(bào)文監(jiān)控信息paCket[i+l]中除L域和 nextPacketSeq域之外的域的信息,并且計(jì)數(shù)器i加1 ;步驟6 判斷存儲(chǔ)空間剩余部分能否存儲(chǔ)一個(gè)流媒體報(bào)文監(jiān)控信息的報(bào)文部分,若能 存儲(chǔ),則回到步驟3,否則壓縮結(jié)束。
3.根據(jù)權(quán)力要求1所述的面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,其特征在于 監(jiān)控信息的解壓縮算法如下步驟1 提取監(jiān)控信息包公共部分common,定義一個(gè)變量——計(jì)數(shù)器i并對(duì)i初始化; 步驟2 提取第1個(gè)監(jiān)控信息包中報(bào)文packet [i]中除nextfktSeq域之外的的各個(gè)域 的值,輸出此監(jiān)控信息報(bào)文解壓后的流媒體報(bào)文的監(jiān)控信息PktInfo [i];步驟3 計(jì)算對(duì)應(yīng)的解壓縮后的監(jiān)控信息pktInfo[i+l]對(duì)應(yīng)的序列號(hào)seq域的值,并 提取監(jiān)控信息包中報(bào)文部分的下一個(gè)報(bào)文packet [i+Ι]除nextfktSeq域之外的各個(gè)域的步驟4 獲取監(jiān)控信息報(bào)文packet [i+Ι]解壓縮后的包括域packetArrivedTimeH和域 PacketArrivedTimeL 的時(shí)間信息;步驟5 輸出監(jiān)控信息報(bào)文Pkthfo [i+Ι]各個(gè)域的值,并且計(jì)數(shù)器i的值加1 ;步驟6 判斷監(jiān)控信息包中是否還有待解壓縮的包,若有,則回到步驟3,否則解壓縮完成。
4.根據(jù)權(quán)利要求1所述的面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,其特征在于 流媒體報(bào)文的監(jiān)控信息PktInfo [i]的獲取方法如下解壓縮后的報(bào)文信息 pktInfo[i]中的 sourcelP、destinationIP、bandwidth、 applicationlD.ver域的值等于監(jiān)控信息包公共部分common中對(duì)應(yīng)的值;解壓縮后的報(bào)文 信息 pktlnfo [i]中的 packetArrivedTimeH、packetArrivedTimeL、seq 域的值等于 common 中 firstPacketTimeH、firstPacketTimeL、firstPacketSeq 對(duì)應(yīng)的值;pktlnfo [i]中 pri、 timeStamp.packetLen域的值等于監(jiān)控信息包中報(bào)文部分packet [i]中的pri、timeMamp、 packetLen域?qū)?yīng)的值。
5.根據(jù)權(quán)利要求1所述的面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,其特征在于 解壓縮后的監(jiān)控信息pktlnfo [i+Ι]對(duì)應(yīng)的序列號(hào)seq域的值的計(jì)算方法如下判斷報(bào)文packet [i] · L的值是否等于0,若packet [i]. L = 0,則報(bào)文packet [i+1]解壓 后的監(jiān)控信息 pktlnfo [i+1]對(duì)應(yīng)的 seq 域的值 pktlnfo [i+1]. seq = pktlnfo [i], seq+1 ; ^lJlIj, pktlnfo [i+1]. seq = pktlnfo [i] · nextPktSeq。
6.根據(jù)權(quán)利要求1所述的面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,其特征在于 域packetArrivedTimeH和域packetArrivedTimeL的時(shí)間信息,計(jì)算方法如下pktlnfo[i+1]. packetArrivedTimeL = pktlnfo[i]. packetArrivedTimeL+packet [i]. timeOffset ; 若 pktlnfo [i+1]. packetArrivedTimeL 不 回 環(huán), 貝Ij pktlnfo[i+1]. packetArrivedTimeH = pktlnfo[i]. packetArrivedTimeH ;否則 pktlnfo [i+1]. packetArrivedTimeH = pktlnfo [i]. packetArrivedTimeH+1。
全文摘要
本發(fā)明公開(kāi)了一種面向流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息壓縮方法,該方法通過(guò)將流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息設(shè)為公共部分和變化部分從而對(duì)連續(xù)接收到的流媒體報(bào)文的監(jiān)控信息進(jìn)行壓縮,特別地,本發(fā)明方法利用公共部分的信息對(duì)監(jiān)控信息中的報(bào)文序列號(hào)和報(bào)文到達(dá)時(shí)間等參數(shù)進(jìn)行了高效的無(wú)損壓縮。通過(guò)本方法,我們將流媒體傳輸質(zhì)量監(jiān)控的監(jiān)控信息的傳送效率提高了3到4倍,極大地減少了監(jiān)控信息在傳輸過(guò)程中占用的網(wǎng)絡(luò)資源。
文檔編號(hào)H04L29/06GK102065102SQ201110001369
公開(kāi)日2011年5月18日 申請(qǐng)日期2011年1月5日 優(yōu)先權(quán)日2011年1月5日
發(fā)明者馮明智, 劉禮, 孫志剛, 張華 , 張子文, 王東, 王慧, 陳一驕 申請(qǐng)人:中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
米泉市| 兖州市| 阿克陶县| 娄底市| 广南县| 宁陕县| 会宁县| 扎兰屯市| 阿克陶县| 榆社县| 平阴县| 墨江| 芷江| 丘北县| 巫山县| 皮山县| 建瓯市| 平和县| 那曲县| 泰兴市| 同德县| 攀枝花市| 石棉县| 青河县| 庆安县| 加查县| 本溪市| 隆安县| 甘谷县| 和静县| 惠来县| 康马县| 独山县| 裕民县| 沙坪坝区| 稻城县| 同江市| 惠水县| 阿鲁科尔沁旗| 泽州县| 肃宁县|