国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種VoIP數(shù)據(jù)包的處理方法及系統(tǒng)的制作方法

      文檔序號(hào):7901175閱讀:217來(lái)源:國(guó)知局
      專利名稱:一種VoIP數(shù)據(jù)包的處理方法及系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及通信技術(shù)領(lǐng)域,特別地涉及一種VoIP數(shù)據(jù)包的處理方法及系統(tǒng)。
      背景技術(shù)
      VoIP (Voice over Internet Protocol,互聯(lián)網(wǎng)協(xié)議語(yǔ)音)是將模擬語(yǔ)音信號(hào)數(shù)字化,以數(shù)據(jù)包(Data Packet)的形式在IP數(shù)據(jù)網(wǎng)絡(luò)(IP Network)上做實(shí)時(shí)傳遞;通俗地說(shuō),VoIP就是網(wǎng)絡(luò)電話。近年來(lái),網(wǎng)絡(luò)通信勢(shì)不可擋,基于VoIP技術(shù)的各種通信方式?jīng)_擊著傳統(tǒng)的電話通信方式,基于VoIP的各種即時(shí)通訊軟件,被企業(yè)和個(gè)人廣泛應(yīng)用于國(guó)內(nèi)外長(zhǎng)途通話中。在如今的Internet網(wǎng)絡(luò)環(huán)境中,大多數(shù)計(jì)算機(jī)主機(jī)都位于防火墻或NAT (NetworkAddress Translation,網(wǎng)絡(luò)地址轉(zhuǎn)換)之后,且在網(wǎng)絡(luò)環(huán)境較差時(shí),為保證通信的進(jìn)行,VoIP信令和媒體都基于TCP協(xié)議傳輸。目前大多數(shù)的VoIP數(shù)據(jù)包分析還原都是基于理想 的信令及媒體協(xié)議架構(gòu)及簡(jiǎn)單的組網(wǎng)場(chǎng)景,不能滿足復(fù)雜場(chǎng)景的需要。

      發(fā)明內(nèi)容
      本發(fā)明解決的技術(shù)問(wèn)題在于提供了一種VoIP數(shù)據(jù)包的處理方法及系統(tǒng),以滿足復(fù)雜場(chǎng)景的需要。本發(fā)明提供了一種VoIP數(shù)據(jù)包的處理方法,包括,接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行預(yù)處理,將所述VoIP數(shù)據(jù)包分為信令數(shù)據(jù)包和普通數(shù)據(jù)包;對(duì)所述信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息;根據(jù)所述會(huì)話控制通知消息完成對(duì)媒體會(huì)話節(jié)點(diǎn)的管理;在建立媒體會(huì)話節(jié)點(diǎn)后,解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器;在需要實(shí)時(shí)播放時(shí),文件服務(wù)器將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放。上述方法中,其中,所述對(duì)信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息具體為,收到SIP(Session Initiation Protocol,會(huì)話初始協(xié)議)協(xié)議消息后進(jìn)行SIP協(xié)議解析,查找所述信令數(shù)據(jù)包對(duì)應(yīng)的信令會(huì)話,若沒(méi)有對(duì)應(yīng)信令會(huì)話則新建信令對(duì)話;判斷SIP協(xié)議消息的消息類型,若為結(jié)束消息時(shí),判斷信令會(huì)話的狀態(tài),若處于穩(wěn)定狀態(tài),向媒體處理模塊發(fā)送關(guān)閉媒體會(huì)話通知,否則關(guān)閉信令會(huì)話;若不為結(jié)束消息,判斷該消息是否攜帶會(huì)話描述協(xié)議SDP信息;若有SDP信息,則解析SDP信息后存儲(chǔ)在信令會(huì)話中,判斷SIP信令消息是否是呼叫請(qǐng)求INVITE請(qǐng)求對(duì)應(yīng)的呼叫應(yīng)答200 OK消息,若是則通知媒體處理模塊新建媒體會(huì)話,并將媒體通道地址和媒體編碼信息發(fā)送至媒體處理模塊。上述方法中,其中,所述根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn)具體為,收到會(huì)話控制通知消息后,查找基于TCP傳輸?shù)膶?shí)時(shí)傳輸協(xié)議RTP數(shù)據(jù)包的媒體會(huì)話地址信息,若找到將該地址信息添加到媒體地址數(shù)組中;
      判斷會(huì)話控制通知消息的類型,若為會(huì)話創(chuàng)建通知?jiǎng)t查找媒體地址數(shù)組中對(duì)應(yīng)的媒體會(huì)話節(jié)點(diǎn),在找到媒體會(huì)話節(jié)點(diǎn)后更新媒體會(huì)話的媒體信息,結(jié)束處理,否則,創(chuàng)建媒體地址對(duì)應(yīng)的會(huì)話節(jié)點(diǎn),判斷媒體地址中的媒體元素是否匹配完,匹配完成后結(jié)束處理;上述方法中,其中,所述解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器具體為,收到普通數(shù)據(jù)包,進(jìn)行IP和傳輸層協(xié)議解析,判斷數(shù)據(jù)包是否符合實(shí)時(shí)傳送協(xié)議RTP數(shù)據(jù)包格式;若符合RTP格式,查找普通數(shù)據(jù)包對(duì)應(yīng)的媒體會(huì)話,若沒(méi)有找到丟棄該數(shù)據(jù)包;若找到媒體會(huì)話確定該數(shù)據(jù)包的會(huì)話方法、媒體格式信息,判斷該數(shù)據(jù)包是否為該媒體會(huì)話收到的第一條媒體流,若是發(fā)送相關(guān)報(bào)告給后臺(tái)服務(wù)器,并由后臺(tái)服務(wù)器寫發(fā)送至客戶端,將媒體流封裝成客戶端播放器需要的碼流格式;否則將媒體流封裝成客戶端播放器需要的碼流格式; 若不符合RTP格式,則判斷數(shù)據(jù)包的傳輸層協(xié)議類型,若不是用戶數(shù)據(jù)包協(xié)議UDP則查找TCP方式的RTP協(xié)商媒體地址的關(guān)鍵數(shù)據(jù),找到則存儲(chǔ)該媒體地址的關(guān)鍵數(shù)據(jù),以備在收到信令處理模塊的新建媒體會(huì)話通知時(shí)用;否則丟棄數(shù)據(jù)包,結(jié)束處理;若為UDP包則丟棄,處理后續(xù)包。上述方法中,其中,在需要實(shí)時(shí)播放時(shí),文件服務(wù)器將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放具體為判斷是否有實(shí)時(shí)播放語(yǔ)音流的需求,若是將封裝后的實(shí)時(shí)碼流發(fā)送至文件服務(wù)器,由文件服務(wù)器發(fā)送至客戶端的播放器,實(shí)時(shí)解碼并播放,將封裝后碼流存入對(duì)應(yīng)的數(shù)據(jù)緩存,若數(shù)據(jù)緩存已達(dá)到閾值,將緩存的數(shù)據(jù)發(fā)送至文件服務(wù)器寫文件,處理后續(xù)包。本發(fā)明還提供了一種VoIP數(shù)據(jù)包的處理系統(tǒng),包括,預(yù)處理模塊,用于接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行預(yù)處理,將所述VoIP數(shù)據(jù)包分為信令數(shù)據(jù)包和普通數(shù)據(jù)包;信令處理模塊,用于對(duì)所述信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息;媒體處理模塊,用于根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn),解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器;文件服務(wù)器,用于在需要實(shí)時(shí)播放時(shí),將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放。采用本發(fā)明的方法及系統(tǒng),能在處理各種復(fù)雜場(chǎng)景中對(duì)VoIP數(shù)據(jù)包進(jìn)行還原處理,增強(qiáng)了 VoIP數(shù)據(jù)包處理的適應(yīng)性。


      此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中圖I是本發(fā)明第一實(shí)施例流程圖;圖2是信令處理模塊對(duì)信令數(shù)據(jù)包的解析流程圖;圖3是媒體處理模塊的數(shù)據(jù)包處理流程圖4是媒體處理模塊的媒體會(huì)話控制處理流程圖;圖5是本發(fā)明第二實(shí)施例系統(tǒng)結(jié)構(gòu)圖。
      具體實(shí)施例方式為了使本發(fā)明所要解決的技術(shù)問(wèn)題、技術(shù)方案及有益效果更加清楚、明白,以下結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
      如圖I所示,是本發(fā)明第一實(shí)施例流程圖,提供了一種VoIP數(shù)據(jù)包的處理方法,具體包括,步驟S101,預(yù)處理模塊接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行過(guò)濾,分為信令數(shù)據(jù)包和普通數(shù)據(jù)包(無(wú)明顯協(xié)議特征的數(shù)據(jù)包),將所述信令數(shù)據(jù)包發(fā)送給信令處理模塊,將所述普通數(shù)據(jù)包發(fā)送給媒體處理模塊;步驟S102,信令處理模塊對(duì)接收到的所述信令數(shù)據(jù)包進(jìn)行解析,將得到的媒體會(huì)話控制信息、媒體通道地址及媒體編碼信息發(fā)送至媒體處理模塊;步驟S103,媒體處理模塊根據(jù)所述媒體會(huì)話控制信息、媒體通道地址及媒體編碼信息完成對(duì)媒體會(huì)話節(jié)點(diǎn)的管理,包括對(duì)媒體會(huì)話節(jié)點(diǎn)的建立、更新和刪除等操作,在建立媒體會(huì)話節(jié)點(diǎn)后解析普通數(shù)據(jù)包以匹配媒體會(huì)話節(jié)點(diǎn),在匹配成功后將相關(guān)報(bào)告信息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件存儲(chǔ)和轉(zhuǎn)發(fā)模塊;步驟S104,在需要實(shí)時(shí)播放時(shí),文件存儲(chǔ)和轉(zhuǎn)發(fā)模塊將媒體流實(shí)時(shí)發(fā)送至客戶端進(jìn)行解碼播放。上述方法中,如圖2所示,是信令處理模塊對(duì)一個(gè)信令數(shù)據(jù)包的解析流程圖,具體包括,步驟S201,信令處理模塊對(duì)接收到的所述信令數(shù)據(jù)包后,所述信令數(shù)據(jù)包為SIP協(xié)議消息,進(jìn)行SIP協(xié)議解析,查找所述信令數(shù)據(jù)包對(duì)應(yīng)的信令會(huì)話,若沒(méi)有找到對(duì)應(yīng)的信令會(huì)話進(jìn)入步驟S202,找到對(duì)應(yīng)的信令會(huì)話轉(zhuǎn)入步驟S203 ;步驟S202,判斷所述SIP信令消息是否為關(guān)鍵信令消息,若是呼叫請(qǐng)求INVITE消息或其對(duì)應(yīng)的呼叫應(yīng)答200 OK消息,新建信令會(huì)話;否則,丟棄該數(shù)據(jù)包,結(jié)束處理;步驟S203,判斷SIP信令消息的消息類型,若為結(jié)束消息時(shí),判斷信令會(huì)話的狀態(tài),若處于穩(wěn)定狀態(tài),向媒體處理模塊發(fā)送關(guān)閉媒體會(huì)話通知,否則關(guān)閉信令會(huì)話;若不為結(jié)束消息,判斷該消息是否攜帶SDP(Session Description Protocol,會(huì)話描述協(xié)議)描述信息,若有SDP載荷則轉(zhuǎn)入步驟204 ;否則結(jié)束處理;步驟S204,解析SDP信息后存儲(chǔ)在信令會(huì)話中,判斷當(dāng)前消息是否是INVITE請(qǐng)求對(duì)應(yīng)的200 OK消息,若是則通知媒體處理模塊新建媒體會(huì)話,并將媒體通道地址和媒體編碼信息等相關(guān)信息發(fā)送至媒體處理模塊,否則結(jié)束處理。上述方法中,其中,如圖3所示,是媒體處理模塊的數(shù)據(jù)包處理流程圖,具體包括,步驟S301,收到預(yù)處理的數(shù)據(jù)包,進(jìn)行IP和傳輸層協(xié)議解析,獲取IP和PORT(端口)及傳輸協(xié)議等信息,判斷數(shù)據(jù)包是否符合實(shí)時(shí)RTP(Real-time Transport Protocol,傳送協(xié)議包)的格式,若符合轉(zhuǎn)入步驟S302,否則轉(zhuǎn)入步驟S305 ;步驟S302,查找數(shù)據(jù)包對(duì)應(yīng)的媒體會(huì)話,若沒(méi)有找到丟棄該數(shù)據(jù)包;若找到媒體會(huì)話確定該消息的會(huì)話方法、媒體格式等信息,判斷該消息是否為該會(huì)話收到的第一條媒體包,若是發(fā)送相關(guān)報(bào)告給后臺(tái)服務(wù)器,由后臺(tái)服務(wù)器寫發(fā)送至客戶端,并將媒體流封裝成客戶端播放器需要的碼流格式;若為后續(xù)媒體包,則將媒體流封裝成客戶端播放器需要的碼流格式即可;步驟S303,判斷是否有實(shí)時(shí)播放語(yǔ)音流的需求,若是將封裝后的實(shí)時(shí)碼流發(fā)送至文件服務(wù)器,由文件服務(wù)器發(fā)送至客戶端的播放器,實(shí)時(shí)解碼并播放,并將封裝后碼流存入對(duì)應(yīng)的數(shù)據(jù)緩存;若沒(méi)有實(shí)施播放語(yǔ)音流需求,則將封裝后碼流存入對(duì)應(yīng)的數(shù)據(jù)緩存;步驟S304,判斷數(shù)據(jù)緩存是否已到閾值,若是發(fā)送碼流給文件服務(wù)器存文件,結(jié)束處理;否則直接結(jié)束處理;
      步驟S305,判斷數(shù)據(jù)包的傳輸層協(xié)議類型,若不是UDP(User Datagram Protocol,用戶數(shù)據(jù)包協(xié)議)則從該包中查找TCP方式的RTP協(xié)商媒體地址的關(guān)鍵數(shù)據(jù),找到則存儲(chǔ)該媒體地址的關(guān)鍵數(shù)據(jù),以備在收到信令處理模塊的新建媒體會(huì)話通知時(shí)用;否則丟棄數(shù)據(jù)包,結(jié)束處理;若為m)P則丟棄數(shù)據(jù)包,結(jié)束處理。上述方法中,其中,如圖4所示,是媒體處理模塊的媒體會(huì)話控制處理流程圖,具體包括,步驟S401,收到信令處理模塊的會(huì)話控制通知消息,查找基于TCP的媒體會(huì)話地址信息,若找到將該地址信息添加到信令處理模塊送過(guò)來(lái)的媒體地址數(shù)組中,進(jìn)入步驟S402,否則進(jìn)入步驟S402 ;步驟S402,判斷通知消息的類型,若為會(huì)話創(chuàng)建通知?jiǎng)t轉(zhuǎn)入步驟S403,否則轉(zhuǎn)入步驟S405 ;步驟S403,查找媒體地址數(shù)組中對(duì)應(yīng)的媒體會(huì)話節(jié)點(diǎn),若找到該會(huì)話后更新媒體會(huì)話的媒體信息,結(jié)束處理,否則,創(chuàng)建媒體地址對(duì)應(yīng)的會(huì)話節(jié)點(diǎn),進(jìn)入S404 ;步驟S404,判斷媒體地址中的媒體元素是否匹配完,匹配完則結(jié)束處理,否則轉(zhuǎn)入步驟S403 ;步驟S405,查找媒體地址數(shù)組中對(duì)應(yīng)的媒體會(huì)話節(jié)點(diǎn),若找到會(huì)話后關(guān)閉媒體地址對(duì)應(yīng)的會(huì)話節(jié)點(diǎn),進(jìn)入下一步;步驟S406,判斷媒體地址中的媒體元素匹配完,匹配完后結(jié)束處理,否則轉(zhuǎn)入步驟S405。如圖5所示,是本發(fā)明第二實(shí)施例系統(tǒng)結(jié)構(gòu)圖,提供了一種VoIP數(shù)據(jù)包的處理系統(tǒng),包括,預(yù)處理模塊501,用于接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行預(yù)處理,將所述VoIP數(shù)據(jù)包分為信令數(shù)據(jù)包和普通數(shù)據(jù)包;信令處理模塊502,用于對(duì)所述信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息;媒體處理模塊503,用于根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn),解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器;文件服務(wù)器504,用于在需要實(shí)時(shí)播放時(shí),將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放。所述信令處理模塊,用于對(duì)信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息具體為,
      所述信令處理模塊用于收到SIP協(xié)議消息后進(jìn)行SIP協(xié)議解析,查找所述信令數(shù)據(jù)包對(duì)應(yīng)的信令會(huì)話,若沒(méi)有對(duì)應(yīng)信令會(huì)話則新建信令對(duì)話;以及用于判斷SIP協(xié)議消息的消息類型,若為結(jié)束消息時(shí),判斷信令會(huì)話的狀態(tài),若處于穩(wěn)定狀態(tài),向媒體處理模塊發(fā)送關(guān)閉媒體會(huì)話通知,否則關(guān)閉信令會(huì)話;若不為結(jié)束消息,判斷該消息是否攜帶會(huì)話描述協(xié)議SDP信息;以及用于在有SDP信息時(shí),解析SDP信息后存儲(chǔ)在信令會(huì)話中,判斷SIP信令消息是否是呼叫請(qǐng)求INVITE請(qǐng)求對(duì)應(yīng)的呼叫應(yīng)答200 OK消息,若是則通知媒體處理模塊新建媒體會(huì)話,并將媒體通道地址和媒體編碼信息等相關(guān)信息發(fā)送至媒體處理模塊。所述媒體處理模塊,用于根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn)具體為,所述媒體處理模塊,用于收到會(huì)話控制通知消息后,查找基于TCP的媒體會(huì)話地址信息,若找到將該地址信息添加到媒體地址數(shù)組中;以及·用于判斷會(huì)話控制通知消息的類型,若為會(huì)話創(chuàng)建通知?jiǎng)t查找媒體地址數(shù)組中對(duì)應(yīng)的媒體會(huì)話節(jié)點(diǎn),在找到媒體會(huì)話節(jié)點(diǎn)后更新媒體會(huì)話的媒體信息,結(jié)束處理,否則,創(chuàng)建媒體地址對(duì)應(yīng)的會(huì)話節(jié)點(diǎn),判斷媒體地址中的媒體元素是否匹配完,匹配完成后結(jié)束處理。所述媒體處理模塊,用于解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器具體為,所述媒體處理模塊,用于收到普通數(shù)據(jù)包,進(jìn)行IP和傳輸層協(xié)議解析,判斷數(shù)據(jù)包是否符合實(shí)時(shí)傳送協(xié)議RTP格式;若符合RTP格式,查找普通數(shù)據(jù)包對(duì)應(yīng)的媒體會(huì)話,若沒(méi)有找到丟棄該數(shù)據(jù)包;若找到媒體會(huì)話確定該數(shù)據(jù)包的會(huì)話方法、媒體格式信息,判斷該數(shù)據(jù)包是否為該媒體會(huì)話收到的第一條媒體流,若是發(fā)送相關(guān)報(bào)告給后臺(tái)服務(wù)器,并由后臺(tái)服務(wù)器寫發(fā)送至客戶端,將媒體流封裝成客戶端播放器需要的碼流格式;否則將媒體流封裝成客戶端播放器需要的碼流格式;若不符合RTP格式,則判斷數(shù)據(jù)包的傳輸層協(xié)議類型,若不是為用戶數(shù)據(jù)包協(xié)議UDP則查找TCP方式的RTP協(xié)商媒體地址的關(guān)鍵數(shù)據(jù),找到則存儲(chǔ)該媒體地址的關(guān)鍵數(shù)據(jù),以備在收到信令處理模塊的新建媒體會(huì)話通知時(shí)用;否則丟棄數(shù)據(jù)包,結(jié)束處理;若是UDP則丟棄數(shù)據(jù)包,結(jié)束處理。所述文件服務(wù)器,用于在需要實(shí)時(shí)播放時(shí),將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放具體為所述文件服務(wù)器用于判斷是否有實(shí)時(shí)播放語(yǔ)音流的需求,若是將封裝后的實(shí)時(shí)碼流發(fā)送至文件服務(wù)器,由文件服務(wù)器發(fā)送至客戶端的播放器,實(shí)時(shí)解碼并播放,將封裝后碼流存入對(duì)應(yīng)的數(shù)據(jù)緩存;以及用于判斷數(shù)據(jù)緩存是否已到閾值,在到閾值時(shí)發(fā)送碼流給文件服務(wù)器存儲(chǔ),結(jié)束處理。上述說(shuō)明示出并描述了本發(fā)明的一個(gè)優(yōu)選實(shí)施例,但如前所述,應(yīng)當(dāng)理解本發(fā)明并非局限于本文所披露的形式,不應(yīng)看作是對(duì)其他實(shí)施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文所述發(fā)明構(gòu)想范圍內(nèi),通過(guò)上述教導(dǎo)或相關(guān)領(lǐng)域的技術(shù)或知識(shí)進(jìn)行改動(dòng)。而本領(lǐng)域人員所進(jìn)行的改動(dòng)和變化不脫離本發(fā)明的精神和范圍,則都應(yīng)在本發(fā)明所附權(quán)利要求的保 護(hù)范圍內(nèi)。
      權(quán)利要求
      1.一種VoIP數(shù)據(jù)包的處理方法,其特征在于,包括, 接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行預(yù)處理,將所述VoIP數(shù)據(jù)包分為信令數(shù)據(jù)包和普通數(shù)據(jù)包; 對(duì)所述信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息; 根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn),解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器; 在需要實(shí)時(shí)播放時(shí),文件服務(wù)器將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放。
      2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述對(duì)信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息具體為, 收到會(huì)話初始協(xié)議SIP協(xié)議消息后進(jìn)行SIP協(xié)議解析,查找所述信令數(shù)據(jù)包對(duì)應(yīng)的信令會(huì)話,若沒(méi)有對(duì)應(yīng)信令會(huì)話則新建信令對(duì)話; 判斷SIP協(xié)議消息的消息類型,若為結(jié)束消息時(shí),判斷信令會(huì)話的狀態(tài),若處于穩(wěn)定狀態(tài),向媒體處理模塊發(fā)送關(guān)閉媒體會(huì)話通知,否則關(guān)閉信令會(huì)話;若不為結(jié)束消息,判斷該消息是否攜帶會(huì)話描述協(xié)議SDP信息; 若有SDP信息,則解析SDP信息后存儲(chǔ)在信令會(huì)話中,判斷SIP信令消息是否是呼叫請(qǐng)求INVITE請(qǐng)求對(duì)應(yīng)的呼叫應(yīng)答200 OK消息,若是則通知媒體處理模塊新建媒體會(huì)話,并將媒體通道地址和媒體編碼信息發(fā)送至媒體處理模塊。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn)具體為, 收到會(huì)話控制通知消息后,查找基于TCP傳輸?shù)膶?shí)時(shí)傳輸協(xié)議RTP數(shù)據(jù)包的媒體會(huì)話地址信息,若找到將該地址信息添加到媒體地址數(shù)組中; 判斷會(huì)話控制通知消息的類型,若為會(huì)話創(chuàng)建通知?jiǎng)t查找媒體地址數(shù)組中對(duì)應(yīng)的媒體會(huì)話節(jié)點(diǎn),在找到媒體會(huì)話節(jié)點(diǎn)后更新媒體會(huì)話的媒體信息,結(jié)束處理,否則,創(chuàng)建媒體地址對(duì)應(yīng)的會(huì)話節(jié)點(diǎn),判斷媒體地址中的媒體元素是否匹配完,匹配完成后結(jié)束處理。
      4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器具體為, 收到普通數(shù)據(jù)包,進(jìn)行IP和傳輸層協(xié)議解析,判斷數(shù)據(jù)包是否符合實(shí)時(shí)傳送協(xié)議RTP格式; 若符合RTP格式,查找普通數(shù)據(jù)包對(duì)應(yīng)的媒體會(huì)話,若沒(méi)有找到丟棄該數(shù)據(jù)包;若找到媒體會(huì)話確定該數(shù)據(jù)包的會(huì)話方法、媒體格式信息,判斷該數(shù)據(jù)包是否為該媒體會(huì)話收到的第一條媒體流,若是發(fā)送相關(guān)報(bào)告給后臺(tái)服務(wù)器,并由后臺(tái)服務(wù)器寫發(fā)送至客戶端,將媒體流封裝成客戶端播放器需要的碼流格式;否則將媒體流封裝成客戶端播放器需要的碼流格式; 若不符合RTP格式,則判斷數(shù)據(jù)包的傳輸層協(xié)議類型,若不是用戶數(shù)據(jù)包協(xié)議UDP則查找TCP方式的RTP協(xié)商媒體地址的關(guān)鍵數(shù)據(jù),找到則存儲(chǔ)該媒體地址的關(guān)鍵數(shù)據(jù),以備在收到信令處理模塊的新建媒體會(huì)話通知時(shí)用;否則丟棄數(shù)據(jù)包,結(jié)束處理;若為UDP則丟棄數(shù)據(jù)包。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在需要實(shí)時(shí)播放時(shí),文件服務(wù)器將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放具體為 判斷是否有實(shí)時(shí)播放語(yǔ)音流的需求,若是將封裝后的實(shí)時(shí)碼流發(fā)送至文件服務(wù)器,由文件服務(wù)器發(fā)送至客戶端的播放器,實(shí)時(shí)解碼并播放,將封裝后碼流存入對(duì)應(yīng)的數(shù)據(jù)緩存; 判斷數(shù)據(jù)緩存是否已到閾值,若是發(fā)送碼流給文件服務(wù)器寫文件。
      6.一種VoIP數(shù)據(jù)包的處理系統(tǒng),其特征在于,包括, 預(yù)處理模塊,用于接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行預(yù)處理,將所述VoIP數(shù)據(jù)包分為信令數(shù)據(jù)包和普通數(shù)據(jù)包; 信令處理模塊,用于對(duì)所述信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息; 媒體處理模塊,用于根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn),解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器; 文件服務(wù)器,用于在需要實(shí)時(shí)播放時(shí),將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放。
      7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述信令處理模塊,用于對(duì)信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息具體為, 所述信令處理模塊用于收到SIP協(xié)議消息后進(jìn)行SIP協(xié)議解析,查找所述信令數(shù)據(jù)包對(duì)應(yīng)的信令會(huì)話,若沒(méi)有對(duì)應(yīng)信令會(huì)話則新建信令對(duì)話;以及 用于判斷SIP協(xié)議消息的消息類型,若為結(jié)束消息時(shí),判斷信令會(huì)話的狀態(tài),若處于穩(wěn)定狀態(tài),向媒體處理模塊發(fā)送關(guān)閉媒體會(huì)話通知,否則關(guān)閉信令會(huì)話;若不為結(jié)束消息,判斷該消息是否攜帶會(huì)話描述協(xié)議SDP信息;以及 用于在有SDP信息時(shí),解析SDP信息后存儲(chǔ)在信令會(huì)話中,判斷SIP信令消息是否是呼叫請(qǐng)求INVITE請(qǐng)求對(duì)應(yīng)的呼叫應(yīng)答200 OK消息,若是則通知媒體處理模塊新建媒體會(huì)話,并將媒體通道地址和媒體編碼信息等相關(guān)信息發(fā)送至媒體處理模塊。
      8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述媒體處理模塊,用于根據(jù)所述會(huì)話控制通知消息建立媒體會(huì)話節(jié)點(diǎn)具體為, 所述媒體處理模塊,用于收到會(huì)話控制通知消息后,查找基于TCP的媒體會(huì)話地址信息,若找到將該地址信息添加到媒體地址數(shù)組中;以及 用于判斷會(huì)話控制通知消息的類型,若為會(huì)話創(chuàng)建通知?jiǎng)t查找媒體地址數(shù)組中對(duì)應(yīng)的媒體會(huì)話節(jié)點(diǎn),在找到媒體會(huì)話節(jié)點(diǎn)后更新媒體會(huì)話的媒體信息,結(jié)束處理,否則,創(chuàng)建媒體地址對(duì)應(yīng)的會(huì)話節(jié)點(diǎn),判斷媒體地址中的媒體元素是否匹配完,匹配完成后結(jié)束處理。
      9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述媒體處理模塊,用于解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器具體為, 所述媒體處理模塊,用于收到普通數(shù)據(jù)包,進(jìn)行IP和傳輸層協(xié)議解析,判斷數(shù)據(jù)包是否符合實(shí)時(shí)傳送協(xié)議RTP格式; 若符合RTP格式,查找普通數(shù)據(jù)包對(duì)應(yīng)的媒體會(huì)話,若沒(méi)有找到丟棄該數(shù)據(jù)包;若找到媒體會(huì)話確定該數(shù)據(jù)包的會(huì)話方法、媒體格式信息,判斷該數(shù)據(jù)包是否為該媒體會(huì)話收到的第一條媒體流,若是發(fā)送相關(guān)報(bào)告給后臺(tái)服務(wù)器,并由后臺(tái)服務(wù)器寫發(fā)送至客戶端,將媒體流封裝成客戶端播放器需要的碼流格式;否則將媒體流封裝成客戶端播放器需要的碼流格式; 若不符合RTP格式,則判斷數(shù)據(jù)包的傳輸層協(xié)議類型,若不是用戶數(shù)據(jù)包協(xié)議UDP則查找TCP方式的RTP協(xié)商媒體地址的關(guān)鍵數(shù)據(jù),找到則存儲(chǔ)該媒體地址的關(guān)鍵數(shù)據(jù),以備在收到信令處理模塊的新建媒體會(huì)話通知時(shí)用;否則丟棄數(shù)據(jù)包,結(jié)束處理;若為UDP則丟棄數(shù)據(jù)包。
      10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述文件服務(wù)器,用于在需要實(shí)時(shí)播放時(shí),將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放具體為 所述文件服務(wù)器用于判斷是否有實(shí)時(shí)播放語(yǔ)音流的需求,若是將封裝后的實(shí)時(shí)碼流發(fā)送至文件服務(wù)器,由文件服務(wù)器發(fā)送至客戶端的播放器,實(shí)時(shí)解碼并播放,將封裝后碼流存入對(duì)應(yīng)的數(shù)據(jù)緩存;以及 用于判斷數(shù)據(jù)緩存是否已到閾值,在到閾值時(shí)發(fā)送碼流給文件服務(wù)器存儲(chǔ)。
      全文摘要
      本發(fā)明涉及一種VoIP數(shù)據(jù)包的處理方法,包括,接收到網(wǎng)元側(cè)發(fā)送的VoIP數(shù)據(jù)包后進(jìn)行預(yù)處理,將所述VoIP數(shù)據(jù)包分為信令數(shù)據(jù)包和普通數(shù)據(jù)包;對(duì)所述信令數(shù)據(jù)包進(jìn)行解析,得到會(huì)話控制通知消息;根據(jù)所述會(huì)話控制通知消息媒體會(huì)話節(jié)點(diǎn),解析普通數(shù)據(jù)包與媒體會(huì)話節(jié)點(diǎn)進(jìn)行匹配,在匹配成功后將報(bào)告消息通過(guò)后臺(tái)服務(wù)器發(fā)送至客戶端,并將媒體數(shù)據(jù)發(fā)送至文件服務(wù)器;在需要實(shí)時(shí)播放時(shí),文件服務(wù)器將所述媒體數(shù)據(jù)發(fā)送至客戶端進(jìn)行解碼播放。本發(fā)明還提供了一種VoIP數(shù)據(jù)包的處理系統(tǒng)。采用本發(fā)明的技術(shù)方案,能在各種復(fù)雜場(chǎng)景中對(duì)VoIP數(shù)據(jù)包進(jìn)行還原處理,增強(qiáng)了VoIP數(shù)據(jù)包處理的適應(yīng)性。
      文檔編號(hào)H04M7/00GK102984402SQ201110261690
      公開日2013年3月20日 申請(qǐng)日期2011年9月6日 優(yōu)先權(quán)日2011年9月6日
      發(fā)明者吳銀霞, 許建昆, 曹明明 申請(qǐng)人:中興通訊股份有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1