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

一種a10接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)vpn數(shù)據(jù)的方法及系統(tǒng)的制作方法

文檔序號(hào):7862707閱讀:376來(lái)源:國(guó)知局
專利名稱:一種a10接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)vpn數(shù)據(jù)的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)接ロ數(shù)據(jù)的轉(zhuǎn)換,特別涉及ー種CDMA2000核心網(wǎng)中AlO接ロ數(shù)據(jù)轉(zhuǎn)換為骨干網(wǎng)VPN接口數(shù)據(jù)的方法及系統(tǒng)。屬于移動(dòng)互聯(lián)網(wǎng)領(lǐng)域。
背景技術(shù)
這幾年移動(dòng)通信迅猛發(fā)展,越來(lái)越多的用戶選擇使用移動(dòng)設(shè)備連接網(wǎng)絡(luò),因此運(yùn)營(yíng)商迫切需要快速準(zhǔn)確地了解移動(dòng)用戶的上網(wǎng)行為特點(diǎn),通過(guò)對(duì)移動(dòng)用戶的上網(wǎng)行為分析,可以提供更好的增值業(yè)務(wù)。由于互聯(lián)網(wǎng)的骨干網(wǎng)發(fā)展已經(jīng)非常成熟,很多現(xiàn)有的業(yè)務(wù)系統(tǒng)都是基于互聯(lián)網(wǎng)的骨干網(wǎng)接ロ實(shí)現(xiàn)的,無(wú)法兼容處理移動(dòng)核心網(wǎng)的數(shù)據(jù),尤其是CDMA2000核心網(wǎng)的數(shù)據(jù)。
CDMA2000為三大3G標(biāo)準(zhǔn)之一,除傳統(tǒng)的語(yǔ)音通信外,還支持高速數(shù)據(jù)業(yè)務(wù)。CDMA2000核心網(wǎng)可向移動(dòng)用戶提供基于簡(jiǎn)單IP的公網(wǎng)、專網(wǎng)接入業(yè)務(wù)和基于移動(dòng)IP的公網(wǎng)、專網(wǎng)接入業(yè)務(wù)。基于移動(dòng)IP的CDMA2000分組核心網(wǎng)絡(luò)包括分組控制功能PCF(PacketControlFunction)、分組數(shù)據(jù)服務(wù)節(jié)點(diǎn)]3DSN Packet Data Serving Node)等,業(yè)務(wù)數(shù)據(jù)接ロ為AlO接ロ。骨干網(wǎng)的虛擬專用網(wǎng)絡(luò)VPN (Virtual Private Network)數(shù)據(jù)的簡(jiǎn)單應(yīng)用是在業(yè)務(wù)數(shù)據(jù)的網(wǎng)絡(luò)層外直接封裝GRE (Generic Routing Encapsulation,通用路由封裝)協(xié)議,通過(guò)GRE隧道傳輸業(yè)務(wù)數(shù)據(jù)。AlO接ロ為CDMA2000核心網(wǎng)的業(yè)務(wù)數(shù)據(jù)接ロ,AlO接ロ采用GRE協(xié)議對(duì)ニ層PPP協(xié)議進(jìn)行封裝,PPP點(diǎn)到點(diǎn)協(xié)議又封裝了經(jīng)過(guò)壓縮之后的業(yè)務(wù)數(shù)據(jù)。

發(fā)明內(nèi)容
針對(duì)目前骨干網(wǎng)業(yè)務(wù)系統(tǒng)無(wú)法兼容處理移動(dòng)核心網(wǎng)數(shù)據(jù)的問(wèn)題,本發(fā)明的目的是實(shí)現(xiàn)了ー種CDMA2000核心網(wǎng)的AlO接口數(shù)據(jù)轉(zhuǎn)換為骨干網(wǎng)VPN數(shù)據(jù)的方法及系統(tǒng)。為了達(dá)到上述目的,本發(fā)明針對(duì)骨干網(wǎng)業(yè)務(wù)系統(tǒng)的兼容性、靈活性等問(wèn)題,通過(guò)分析CDMA 2000核心網(wǎng)的AlO接口數(shù)據(jù),提取業(yè)務(wù)數(shù)據(jù),重新設(shè)計(jì)封裝格式,使之成為骨干網(wǎng)的標(biāo)準(zhǔn)的VPN應(yīng)用,提供了ー種CDMA 2000核心網(wǎng)的AlO接口數(shù)據(jù)轉(zhuǎn)換為骨干網(wǎng)的VPN數(shù)據(jù)的方法及系統(tǒng)。本發(fā)明的主要技術(shù)內(nèi)容為ー種AlO接口數(shù)據(jù)轉(zhuǎn)化骨干網(wǎng)VPN數(shù)據(jù)的方法,其步驟包括I)接收到AlO接口數(shù)據(jù)包之前,初始化包含GRE節(jié)點(diǎn)的哈希表,所述GRE節(jié)點(diǎn)關(guān)鍵字包括源IP地址、目的IP地址和grekey、處理完后的包序號(hào)和緩存鏈表;2)接收到AlO接口數(shù)據(jù)包后,解析出源IP地址、目的IP地址和grekey,并將所述源IP地址、目的IP地址和grekey作為關(guān)鍵字在所述哈希表中查詢是否有相應(yīng)的GRE節(jié)點(diǎn)存在;2-1)若不存在GRE節(jié)點(diǎn),則新建GRE節(jié)點(diǎn);2-2)對(duì)出現(xiàn)亂序或者重傳的數(shù)據(jù)包進(jìn)行緩存或丟棄;
2-3)對(duì)正常有序傳輸?shù)臄?shù)據(jù)包繼續(xù)處理;3)通過(guò)提取所述存在GRE節(jié)點(diǎn)的數(shù)據(jù)包ppp負(fù)載幀得到用戶的業(yè)務(wù)數(shù)據(jù);4)對(duì)所述業(yè)務(wù)數(shù)據(jù)進(jìn)行VPN封裝,完成數(shù)據(jù)的轉(zhuǎn)換;5)檢查GRE節(jié)點(diǎn)的緩存鏈表中的緩存節(jié)點(diǎn)的包序號(hào),若是有序則處理該緩存節(jié)點(diǎn)的包;若不是則繼續(xù)緩存,開(kāi)始重新接收新的數(shù)據(jù)。所述對(duì)出現(xiàn)亂序或重傳的數(shù)據(jù)包進(jìn)行緩存或丟棄的方法是I)若GRE節(jié)點(diǎn)上已處理完數(shù)據(jù)包的序號(hào)值加I后小于接收到數(shù)據(jù)包序號(hào),說(shuō)明出現(xiàn)亂序,則接收的數(shù)據(jù)包緩存在GRE節(jié)點(diǎn)緩存鏈表上;2)若GRE節(jié)點(diǎn)上已處理完數(shù)據(jù)包的序號(hào)值加I后大于接收到數(shù)據(jù)包序號(hào),說(shuō)明出 現(xiàn)重傳,則丟棄當(dāng)前接收的數(shù)據(jù)包;3)如果GRE節(jié)點(diǎn)上已處理完數(shù)據(jù)包的序號(hào)值加I后等于接收到數(shù)據(jù)包序號(hào),說(shuō)明數(shù)據(jù)正常有序,繼續(xù)處理。所述骨干網(wǎng)VPN所有數(shù)據(jù)中,在每個(gè)用戶的數(shù)據(jù)建立兩個(gè)GRE節(jié)點(diǎn);在上行數(shù)據(jù)中,所述源IP地址為PCF地址,所述目的IP地址為PSDN地址;在下行數(shù)據(jù)中,所述源IP地址為PSDN地址,所述目的IP地址為PCF地址。所述步驟3) ppp負(fù)載數(shù)據(jù)巾貞根據(jù)0x7e標(biāo)志字節(jié)作為起始和結(jié)束標(biāo)志。所述PPP數(shù)據(jù)幀經(jīng)過(guò)解壓縮得到用戶業(yè)務(wù)信息;所述PPP數(shù)據(jù)幀的壓縮算法一般為MPPC、VJ壓縮算法。本發(fā)明還提出ー種AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的系統(tǒng),包括用于接收AlO接口數(shù)據(jù)的數(shù)據(jù)接收模塊、數(shù)據(jù)包排序模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)封裝模塊和用于發(fā)送轉(zhuǎn)化后VPN數(shù)據(jù)的發(fā)送模塊,所述數(shù)據(jù)包排序模塊根據(jù)接收到的數(shù)據(jù)包序號(hào)進(jìn)行數(shù)據(jù)包的排序;對(duì)用戶的上行和下行的第一個(gè)數(shù)據(jù)包新建GRE節(jié)點(diǎn)或?qū)Τ霈F(xiàn)亂序或重傳的數(shù)據(jù)包進(jìn)行緩存或丟棄,對(duì)有序傳輸?shù)臄?shù)據(jù)包繼續(xù)處理;所述數(shù)據(jù)解析模塊用于提取所述存在GRE節(jié)點(diǎn)的數(shù)據(jù)包ppp負(fù)載幀得到用戶的業(yè)務(wù)數(shù)據(jù);所述數(shù)據(jù)封裝模塊用于提取出的用戶業(yè)務(wù)數(shù)據(jù)封裝為骨干網(wǎng)的VPN數(shù)據(jù)的格式。優(yōu)選地,所述數(shù)據(jù)封裝模塊中,用戶的業(yè)務(wù)數(shù)據(jù)為ー完整IP包,所述IP包由GRE層、網(wǎng)絡(luò)層、鏈路層封裝。優(yōu)選地,所述網(wǎng)絡(luò)層包括源IP地址和目的IP地址;所述GRE層包括grekey和包序號(hào)。優(yōu)選地,所述數(shù)據(jù)包排序模塊新建GRE節(jié)點(diǎn)時(shí),將數(shù)據(jù)包的源IP和目的IP賦值給GRE節(jié)點(diǎn)的源IP和目的IP,將GRE層的grekey和包序號(hào)賦值給GRE節(jié)點(diǎn)的grekey和處理完的包序號(hào)。優(yōu)選地,所述數(shù)據(jù)包排序模塊檢查所述GRE節(jié)點(diǎn)的緩存鏈表中是否存在緩存節(jié)點(diǎn),若存在并且緩存節(jié)點(diǎn)的包序號(hào)為之前處理完的包序號(hào)加I,則將數(shù)據(jù)傳入數(shù)據(jù)解析模塊繼續(xù)處理;若不存在或者緩存節(jié)點(diǎn)的包序號(hào)不等于之前處理完的包序號(hào)加1,則轉(zhuǎn)至數(shù)據(jù)接收模塊接收新的數(shù)據(jù)。 本發(fā)明的優(yōu)點(diǎn)與積極效果
由于互聯(lián)網(wǎng)的骨干網(wǎng)的業(yè)務(wù)發(fā)展已經(jīng)非常成熟,很多現(xiàn)有的業(yè)務(wù)系統(tǒng)都是基于互聯(lián)網(wǎng)的骨干網(wǎng)接口數(shù)據(jù)實(shí)現(xiàn),無(wú)法兼容處理移動(dòng)核心網(wǎng)的數(shù)據(jù)。本發(fā)明所述方法只需將AlO接口數(shù)據(jù)引入AlO接口數(shù)據(jù)轉(zhuǎn)換為VPN數(shù)據(jù)的系統(tǒng),進(jìn)行數(shù)據(jù)的預(yù)處理,預(yù)處理之后再引入骨干網(wǎng)業(yè)務(wù)系統(tǒng),就可以實(shí)現(xiàn)骨干網(wǎng)業(yè)務(wù)系統(tǒng)處理AlO接口數(shù)據(jù)。利用本發(fā)明,可以使骨干網(wǎng)業(yè)務(wù)系統(tǒng)無(wú)需作任何修改便能兼容處理AlO接ロ的數(shù)據(jù)。


圖I是本發(fā)明AlO接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)VPN數(shù)據(jù)的系統(tǒng)所處網(wǎng)絡(luò)位置示意圖;圖2是本發(fā)明AlO接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)VPN數(shù)據(jù)的方法中GRE節(jié)點(diǎn)及哈希表組織結(jié)構(gòu)圖;圖3是本發(fā)明AlO接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)VPN數(shù)據(jù)的方法中封裝完的VPN數(shù)據(jù)格式;
圖4是本發(fā)明AlO接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)VPN數(shù)據(jù)的方法中數(shù)據(jù)處理流程圖;圖5是本發(fā)明AlO接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)VPN數(shù)據(jù)的系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施例方式本發(fā)明的一實(shí)施例如下ー種AlO接口數(shù)據(jù)轉(zhuǎn)換為骨干網(wǎng)的VPN數(shù)據(jù)的方法,其步驟為I)在系統(tǒng)啟動(dòng)時(shí)初始化包含GRE節(jié)點(diǎn)的哈希表,用于后續(xù)的哈希操作。2)收到AlO接口數(shù)據(jù)時(shí),從數(shù)據(jù)包中解析出網(wǎng)絡(luò)層的源IP和目的IP,解析出GRE層的grekey和包序號(hào)。以源IP、目的IP和grekey作為關(guān)鍵字在哈希表中查詢GRE節(jié)點(diǎn)。如果不存在,則新建GRE節(jié)點(diǎn),轉(zhuǎn)到步驟3)繼續(xù)處理該數(shù)據(jù)包。如果已經(jīng)存在,則查詢GRE節(jié)點(diǎn)上的已處理完的包序號(hào)的值,如果該值加I小于當(dāng)前接收的數(shù)據(jù)包的序號(hào),說(shuō)明出現(xiàn)亂序,將當(dāng)前接收的數(shù)據(jù)包緩存在GRE節(jié)點(diǎn)的緩存鏈表上,暫不處理,返回步驟2);如果該值加I大于當(dāng)前接收的數(shù)據(jù)包的序號(hào),說(shuō)明出現(xiàn)重傳等現(xiàn)象,直接丟棄當(dāng)前接收的數(shù)據(jù)包,返回步驟2);如果該值加I等于當(dāng)前接收的數(shù)據(jù)包的序號(hào),說(shuō)明包有序接收,轉(zhuǎn)到步驟3)繼續(xù)處理該數(shù)據(jù)包。3)提取數(shù)據(jù)包的PPP負(fù)載進(jìn)行處理。在PPP負(fù)載中以0x7e為標(biāo)志搜索PPP數(shù)據(jù)幀。提取到一個(gè)完整的PPP數(shù)據(jù)幀之后,查看協(xié)議域。如果協(xié)議域標(biāo)識(shí)為IP,則直接提取PPP數(shù)據(jù)幀的數(shù)據(jù)域,作為用戶的業(yè)務(wù)數(shù)據(jù);如果協(xié)議域標(biāo)識(shí)為壓縮格式,則提取PPP數(shù)據(jù)幀的數(shù)據(jù)域,進(jìn)行解壓縮,將解壓縮之后的數(shù)據(jù)作為用戶的業(yè)務(wù)數(shù)據(jù)。4)提取到用戶的業(yè)務(wù)數(shù)據(jù)之后,封裝在GRE協(xié)議中,將GRE協(xié)議的上層協(xié)議類型設(shè)為IP類型,保留GRE層的grekey。GRE層以下的各層內(nèi)容復(fù)制接收的原始數(shù)據(jù)包的GRE層以下的網(wǎng)絡(luò)層和鏈路層等。5)將封裝完的用戶的業(yè)務(wù)數(shù)據(jù)發(fā)送出去。6)檢查GRE節(jié)點(diǎn)的緩存鏈表中是否存在緩存節(jié)點(diǎn)。如果存在并且緩存節(jié)點(diǎn)的包序號(hào)為處理完的包序號(hào)加1,則轉(zhuǎn)至3)繼續(xù)處理;如果不存在或者緩存節(jié)點(diǎn)的包序號(hào)不等于處理完的包序號(hào)加1,則轉(zhuǎn)至2)繼續(xù)接收數(shù)據(jù)。對(duì)姆個(gè)步驟的詳細(xì)操作如下I)初始化包含GRE節(jié)點(diǎn)的哈希表。初始化首先申請(qǐng)一段空閑內(nèi)存,用于初始化包含GRE節(jié)點(diǎn)的哈希表。ー個(gè)GRE節(jié)點(diǎn)包含源IP地址、目的IP地址、grekey、處理完的包序號(hào)和緩存鏈表,其中以源IP地址、目的IP地址和grekey作為關(guān)鍵字。對(duì)于同一個(gè)用戶,grekey唯一,但上行數(shù)據(jù)的源IP對(duì)應(yīng)下行數(shù)據(jù)的目的IP,上行數(shù)據(jù)的目的IP對(duì)應(yīng)下行數(shù)據(jù)的源IP,因此建立兩個(gè)GRE節(jié)點(diǎn)。同一個(gè)用戶的數(shù)據(jù)包含上行流和下行流,在處理時(shí)會(huì)建立兩個(gè)GRE,分別為兩個(gè)方向。2)接收AlO接口數(shù)據(jù)包,解析數(shù)據(jù),查詢GRE節(jié)點(diǎn)的哈希表。如果沒(méi)有對(duì)應(yīng)的GRE節(jié)點(diǎn),則新建GRE節(jié)點(diǎn),進(jìn)入3)繼續(xù)處理。如果已經(jīng)存在,查詢當(dāng)前包是否是已處理完的數(shù)據(jù)包的下ー個(gè)包,如果不是則緩存在GRE節(jié)點(diǎn)的鏈表上,返回步驟2)接著接收數(shù)據(jù);如果當(dāng)前包是已處理完的數(shù)據(jù)包的下一包,則進(jìn)入3)繼續(xù)處理。3)處理AlO數(shù)據(jù)。在數(shù)據(jù)包的PPP協(xié)議負(fù)載中循環(huán)搜索以0x7e為起始標(biāo)志和結(jié)束標(biāo)志的PPP數(shù)據(jù)幀。提取到一個(gè)完整的PPP數(shù)據(jù)幀之后,進(jìn)行解壓縮,獲取用戶的業(yè)務(wù)數(shù)據(jù)。
4)提取到用戶的業(yè)務(wù)數(shù)據(jù)之后,封裝在GRE協(xié)議中,GRE協(xié)議層以下依舊使用接收到的原始數(shù)據(jù)包的GRE層以下的各層內(nèi)容。5)數(shù)據(jù)包封裝完成之后,將數(shù)據(jù)發(fā)送出去。在步驟1)A10接口數(shù)據(jù)的網(wǎng)絡(luò)層包含源IP地址和目的IP地址,GRE層包含grekey和包序號(hào)。grekey用來(lái)標(biāo)識(shí)隧道內(nèi)單個(gè)的業(yè)務(wù)流,屬于同一個(gè)用戶的業(yè)務(wù)流數(shù)據(jù)報(bào)文使用同一個(gè)grekey值來(lái)封裝。每個(gè)包在處理完成之后會(huì)將該包的序號(hào)更新至GRE節(jié)點(diǎn)中的處理完的包序號(hào)值。緩存鏈表用于接收的用戶數(shù)據(jù)包亂序時(shí)的緩存排序。此時(shí)步驟I)對(duì)于用戶的上行數(shù)據(jù),源IP地址為PCF的地址,目的IP地址為PSDN的地址;對(duì)于下行數(shù)據(jù),正好相反。在步驟2)新建GRE節(jié)點(diǎn)時(shí),將數(shù)據(jù)包的網(wǎng)絡(luò)層的源IP和目的IP賦值給GRE節(jié)點(diǎn)的源IP和目的IP,將GRE層的grekey和包序號(hào)賦值給GRE節(jié)點(diǎn)的grekey和處理完的包序號(hào)。在步驟3)每ー個(gè)PPP數(shù)據(jù)幀均是以ー個(gè)標(biāo)志字節(jié)起始和結(jié)束的,該字節(jié)為0x7e。在步驟3) PPP數(shù)據(jù)幀的壓縮算法一般為MPPC、VJ壓縮算法。解壓縮算法可參考MPPC、VJ壓縮算法實(shí)現(xiàn)。在步驟3)用戶的業(yè)務(wù)數(shù)據(jù)通常為ー個(gè)完整的IP包。在步驟4)GRE層以下的各層內(nèi)容包含網(wǎng)絡(luò)層和鏈路層等。ー種AlO接口數(shù)據(jù)轉(zhuǎn)換為骨干網(wǎng)VPN數(shù)據(jù)的系統(tǒng),包含數(shù)據(jù)接收模塊、數(shù)據(jù)包排序模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)封裝模塊及發(fā)送模塊。數(shù)據(jù)包排序模塊按照接收包的序號(hào)完成數(shù)據(jù)包的排序,使后面的數(shù)據(jù)解析有序進(jìn)行。數(shù)據(jù)解析模塊實(shí)現(xiàn)解析AlO接ロ的數(shù)據(jù),完成數(shù)據(jù)的解壓縮。數(shù)據(jù)封裝模塊負(fù)責(zé)將提取出來(lái)的用戶的業(yè)務(wù)數(shù)據(jù)封裝為骨干網(wǎng)的VPN數(shù)據(jù)的格式。下面結(jié)合附圖,進(jìn)ー步詳細(xì)描述
具體實(shí)施例方式圖I是AlO接口數(shù)據(jù)轉(zhuǎn)VPN數(shù)據(jù)系統(tǒng)所處網(wǎng)絡(luò)位置示意圖。圖I中,將CDMA 2000核心網(wǎng)中PCF和PSDN設(shè)備之間的數(shù)據(jù)鏡像ー份給AlO接ロ數(shù)據(jù)轉(zhuǎn)VPN數(shù)據(jù)系統(tǒng)。AlO接口數(shù)據(jù)轉(zhuǎn)VPN數(shù)據(jù)系統(tǒng)接收數(shù)據(jù)之后進(jìn)行圖4中的處理流程,實(shí)現(xiàn)將AlO接口數(shù)據(jù)轉(zhuǎn)換為VPN數(shù)據(jù)格式。圖2是GRE節(jié)點(diǎn)及哈希表的組織形式。GRE節(jié)點(diǎn)包含了源IP地址、目的IP地址、grekey、處理完的包序號(hào)和緩存鏈表等信息。哈希表用于GRE節(jié)點(diǎn)的快速查找、添加和刪除操作,以源IP地址、目的IP地址和grekey作為關(guān)鍵字。
圖3是封裝完的VPN數(shù)據(jù)格式。其中,鏈路層和網(wǎng)絡(luò)層復(fù)制原始數(shù)據(jù)包中的信息。用戶的業(yè)務(wù)數(shù)據(jù)通過(guò)數(shù)據(jù)處理得到。GRE層的各字段的具體含義可參考GRE協(xié)議的相關(guān)RFC文檔。GRE層的各字段的值設(shè)置為將K設(shè)為1,表示grekey域的存在;將Protocol Type設(shè)為0x0800,表示上層類型為IP ;grekey保留原始數(shù)據(jù)包中的值;其余字段均設(shè)為O。圖4是AlO接口數(shù)據(jù)轉(zhuǎn)換為VPN數(shù)據(jù)的處理流程圖。實(shí)施過(guò)程如下( I)系統(tǒng)啟動(dòng)初始化之后,開(kāi)始接收數(shù)據(jù)。(2)接收到數(shù)據(jù)包之后,解析數(shù)據(jù)包中的網(wǎng)絡(luò)層的源IP和目的IP,解析GRE層的grekey和包序號(hào)值。以源IP、目的IP和grekey作為關(guān)鍵字在哈希表中查詢GRE節(jié)點(diǎn)。如果不存在,新建GRE節(jié)點(diǎn),轉(zhuǎn)至步驟(4)進(jìn)行處理;如果存在,轉(zhuǎn)至步驟(3)進(jìn)行處理。(3)若比較GRE節(jié)點(diǎn)上的已處理完的包序號(hào)的值加上I和接收到的包序號(hào)的大小。 如果前者小于后者,說(shuō)明網(wǎng)絡(luò)傳輸數(shù)據(jù)包出現(xiàn)亂序,將接收的數(shù)據(jù)包暫時(shí)緩存在GRE節(jié)點(diǎn)的緩存鏈表上,返回步驟(2)繼續(xù)接收新的數(shù)據(jù)包;如果前者大于后者,說(shuō)明網(wǎng)絡(luò)傳輸出現(xiàn)重傳等情況,丟棄當(dāng)前接收的數(shù)據(jù)包,不予處理,返回步驟(2)繼續(xù)接收新的數(shù)據(jù)包;如果前者等于后者,說(shuō)明網(wǎng)絡(luò)傳輸正常,轉(zhuǎn)至步驟(4)繼續(xù)處理。(4)解析數(shù)據(jù)包的GRE層之上的信息,提取PPP負(fù)載。在PPP負(fù)載中以0x7e為標(biāo)志搜索PPP數(shù)據(jù)幀。提取到一個(gè)完整的PPP數(shù)據(jù)幀之后,查看PPP數(shù)據(jù)幀的協(xié)議域。如果協(xié)議域標(biāo)識(shí)為IP,則直接提取PPP數(shù)據(jù)幀的數(shù)據(jù)域,作為用戶的業(yè)務(wù)數(shù)據(jù);如果協(xié)議域標(biāo)識(shí)為MPPC、VJ等壓縮格式,則提取PPP數(shù)據(jù)幀的數(shù)據(jù)域,進(jìn)行解壓縮,將解壓縮之后的數(shù)據(jù)作為用戶的業(yè)務(wù)數(shù)據(jù)。(5)提取到用戶的業(yè)務(wù)數(shù)據(jù)之后,按照?qǐng)D3的VPN數(shù)據(jù)格式進(jìn)行封裝。(6)發(fā)送封裝之后的數(shù)據(jù)包,釋放數(shù)據(jù)空間。將數(shù)據(jù)包的包序號(hào)更新至GRE節(jié)點(diǎn)中的已處理完的包序號(hào)。(7)檢查GRE節(jié)點(diǎn)的緩存鏈表中是否存在緩存節(jié)點(diǎn)。如果存在并且緩存節(jié)點(diǎn)的包序號(hào)為之前處理完的包序號(hào)加1,則轉(zhuǎn)至步驟(4)繼續(xù)處理;如果不存在或者緩存節(jié)點(diǎn)的包序號(hào)不等于之前處理完的包序號(hào)加1,則轉(zhuǎn)至步驟(2)繼續(xù)接收數(shù)據(jù),并在數(shù)據(jù)排序模塊輔助完成。圖5是本發(fā)明的AlO接口數(shù)據(jù)轉(zhuǎn)換為VPN數(shù)據(jù)的系統(tǒng)的結(jié)構(gòu)示意圖,適用于上述方法,其包含數(shù)據(jù)接收模塊、數(shù)據(jù)包排序模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)封裝模塊及發(fā)送模塊。所述數(shù)據(jù)接收模塊實(shí)現(xiàn)實(shí)時(shí)接收網(wǎng)卡捕獲到的數(shù)據(jù)。所述數(shù)據(jù)包排序模塊負(fù)責(zé)根據(jù)接收包的序號(hào)進(jìn)行數(shù)據(jù)包的排序,如果有序則繼續(xù)處理數(shù)據(jù),如果亂序則暫時(shí)緩存數(shù)據(jù)。所述數(shù)據(jù)解析模塊實(shí)現(xiàn)解析PPP數(shù)據(jù)域,完成解壓縮,得到用戶的業(yè)務(wù)數(shù)據(jù)。所述數(shù)據(jù)封裝模塊負(fù)責(zé)將提取出的用戶的業(yè)務(wù)數(shù)據(jù)封裝為骨干網(wǎng)的VPN數(shù)據(jù)的格式。所述發(fā)送模塊實(shí)現(xiàn)將轉(zhuǎn)換完成的VPN數(shù)據(jù)輸出,將數(shù)據(jù)提供給后續(xù)業(yè)務(wù)系統(tǒng)。
權(quán)利要求
1.一種AlO接口數(shù)據(jù)轉(zhuǎn)化骨干網(wǎng)VPN數(shù)據(jù)的方法,其步驟包括 1)接收到AlO接口數(shù)據(jù)包之前,初始化包含GRE節(jié)點(diǎn)的哈希表,所述GRE節(jié)點(diǎn)關(guān)鍵字包括源IP地址、目的IP地址和grekey、處理完后的包序號(hào)和緩存鏈表; 2)接收到AlO接口數(shù)據(jù)包后,解析出源IP地址、目的IP地址和grekey,并將所述源IP地址、目的IP地址和grekey作為關(guān)鍵字在所述哈希表中查詢是否有相應(yīng)的GRE節(jié)點(diǎn)存在; 2-1)若不存在GRE節(jié)點(diǎn),則新建GRE節(jié)點(diǎn); 2-2)對(duì)出現(xiàn)亂序或者重傳的數(shù)據(jù)包進(jìn)行緩存或丟棄; 2-3)對(duì)正常有序傳輸?shù)臄?shù)據(jù)包繼續(xù)處理; 3)通過(guò)提取所述存在GRE節(jié)點(diǎn)的數(shù)據(jù)包ppp負(fù)載幀得到用戶的業(yè)務(wù)數(shù)據(jù); 4)對(duì)所述業(yè)務(wù)數(shù)據(jù)進(jìn)行VPN封裝,完成數(shù)據(jù)的轉(zhuǎn)換; 5)檢查GRE節(jié)點(diǎn)的緩存鏈表中的緩存節(jié)點(diǎn)的包序號(hào),若是有序則處理該緩存節(jié)點(diǎn)的包;若不是則繼續(xù)緩存,開(kāi)始重新接收新的數(shù)據(jù)。
2.如權(quán)利要求I所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的方法,其特征在于,所述對(duì)出現(xiàn)亂序或重傳的數(shù)據(jù)包進(jìn)行緩存或丟棄的方法是 1)若GRE節(jié)點(diǎn)上已處理完數(shù)據(jù)包的序號(hào)值加I后小于接收到數(shù)據(jù)包序號(hào),說(shuō)明出現(xiàn)亂序,則接收的數(shù)據(jù)包緩存在GRE節(jié)點(diǎn)緩存鏈表上; 2)若GRE節(jié)點(diǎn)上已處理完數(shù)據(jù)包的序號(hào)值加I后大于接收到數(shù)據(jù)包序號(hào),說(shuō)明出現(xiàn)重傳,則丟棄當(dāng)前接收的數(shù)據(jù)包; 3)如果GRE節(jié)點(diǎn)上已處理完數(shù)據(jù)包的序號(hào)值加I后等于接收到數(shù)據(jù)包序號(hào),說(shuō)明數(shù)據(jù)正常有序,繼續(xù)處理。
3.如權(quán)利要求I所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的方法,其特征在于,所述骨干網(wǎng)VPN所有數(shù)據(jù)中,在每個(gè)用戶的數(shù)據(jù)建立兩個(gè)GRE節(jié)點(diǎn);在上行數(shù)據(jù)中,所述源IP地址為PCF地址,所述目的IP地址為PSDN地址;在下行數(shù)據(jù)中,所述源IP地址為PSDN地址,所述目的IP地址為PCF地址。
4.如權(quán)利要求I所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的方法,其特征在于,所述步驟3) ppp負(fù)載數(shù)據(jù)巾貞根據(jù)0x7e標(biāo)志字節(jié)作為起始和結(jié)束標(biāo)志。
5.如權(quán)利要求I所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的方法,其特征在于,所述PPP數(shù)據(jù)幀經(jīng)過(guò)解壓縮得到用戶業(yè)務(wù)信息;所述PPP數(shù)據(jù)幀的壓縮算法一般為MPPC、VJ壓縮算法。
6.一種AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的系統(tǒng),包括用于接收AlO接口數(shù)據(jù)的數(shù)據(jù)接收模塊、數(shù)據(jù)包排序模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)封裝模塊和用于發(fā)送轉(zhuǎn)化后VPN數(shù)據(jù)的發(fā)送模塊,其特征在于, 所述數(shù)據(jù)包排序模塊根據(jù)接收到的數(shù)據(jù)包序號(hào)進(jìn)行數(shù)據(jù)包的排序;對(duì)用戶的上行和下行的第一個(gè)數(shù)據(jù)包新建GRE節(jié)點(diǎn)或?qū)Τ霈F(xiàn)亂序或重傳的數(shù)據(jù)包進(jìn)行緩存或丟棄,對(duì)有序傳輸?shù)臄?shù)據(jù)包繼續(xù)處理; 所述數(shù)據(jù)解析模塊用于提取所述存在GRE節(jié)點(diǎn)的數(shù)據(jù)包ppp負(fù)載幀得到用戶的業(yè)務(wù)數(shù)據(jù); 所述數(shù)據(jù)封裝模塊用于提取出的用戶業(yè)務(wù)數(shù)據(jù)封裝為骨干網(wǎng)的VPN數(shù)據(jù)的格式。
7.如權(quán)利要求6所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的系統(tǒng),其特征在于,所述數(shù)據(jù)封裝模塊中,用戶的業(yè)務(wù)數(shù)據(jù)為一完整IP包,所述IP包由GRE層、網(wǎng)絡(luò)層、鏈路層封裝。
8.如權(quán)利要求7所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的系統(tǒng),其特征在于,所述網(wǎng)絡(luò)層包括源IP地址和目的IP地址;所述GRE層包括grekey和包序號(hào)。
9.如權(quán)利要求6或8所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的系統(tǒng),其特征在于,所述數(shù)據(jù)包排序模塊新建GRE節(jié)點(diǎn)時(shí),將數(shù)據(jù)包的源IP和目的IP賦值給GRE節(jié)點(diǎn)的源IP和目的IP,將GRE層的grekey和包序號(hào)賦值給GRE節(jié)點(diǎn)的grekey和處理完的包序號(hào)。
10.如權(quán)利要求9所述的AlO接口數(shù)據(jù)轉(zhuǎn)化骨干VPN數(shù)據(jù)的系統(tǒng),其特征在于,所述數(shù)據(jù)包排序模塊檢查所述GRE節(jié)點(diǎn)的緩存鏈表中是否存在緩存節(jié)點(diǎn),若存在并且緩存節(jié)點(diǎn)的包序號(hào)為之前處理完的包序號(hào)加1,則將數(shù)據(jù)傳入數(shù)據(jù)解析模塊繼續(xù)處理;若不存在或者緩存節(jié)點(diǎn)的包序號(hào)不等于之前處理完的包序號(hào)加1,則轉(zhuǎn)至數(shù)據(jù)接收模塊接收新的數(shù)據(jù)。
全文摘要
本發(fā)明涉及一種A10接口數(shù)據(jù)轉(zhuǎn)換骨干網(wǎng)VPN數(shù)據(jù)的方法及系統(tǒng),系統(tǒng)包括數(shù)據(jù)接收模塊、數(shù)據(jù)包排序模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)封裝模塊和發(fā)送模塊,步驟如下1)接收到A10接口數(shù)據(jù)包之前,初始化包含GRE節(jié)點(diǎn)的哈希表;2)接收到A10接口數(shù)據(jù)包后,解析出源IP地址、目的IP地址和grekey,并將源IP地址、目的IP地址和grekey作為關(guān)鍵字在哈希表中查詢是否有相應(yīng)的GRE節(jié)點(diǎn)存在;3)通過(guò)提取存在GRE節(jié)點(diǎn)的數(shù)據(jù)包ppp負(fù)載幀得到用戶的業(yè)務(wù)數(shù)據(jù);4)對(duì)業(yè)務(wù)數(shù)據(jù)進(jìn)行VPN封裝,完成數(shù)據(jù)的轉(zhuǎn)換。5)檢查GRE節(jié)點(diǎn)的緩存鏈表中的緩存節(jié)點(diǎn)的包序號(hào)。本發(fā)明能夠?qū)崿F(xiàn)骨干網(wǎng)業(yè)務(wù)系統(tǒng)處理A10接口數(shù)據(jù),可以使骨干網(wǎng)業(yè)務(wù)系統(tǒng)無(wú)需作任何修改便能兼容處理A10接口的數(shù)據(jù)。
文檔編號(hào)H04L12/861GK102868587SQ201210385270
公開(kāi)日2013年1月9日 申請(qǐng)日期2012年10月11日 優(yōu)先權(quán)日2012年10月11日
發(fā)明者陳冬霞 申請(qǐng)人:北京銳安科技有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
德惠市| 松江区| 响水县| 东乡| 东辽县| 安泽县| 沧源| 平乐县| 广丰县| 宣汉县| 乌兰浩特市| 大姚县| 杨浦区| 岳西县| 长乐市| 南雄市| 长垣县| 东乌珠穆沁旗| 松滋市| 连云港市| 大荔县| 邓州市| 星座| 南乐县| 隆德县| 金坛市| 永登县| 松滋市| 祁门县| 绥化市| 海南省| 东乡县| 五莲县| 方山县| 新河县| 康乐县| 乐清市| 三明市| 南澳县| 丁青县| 鄂托克旗|