專利名稱:服務(wù)通用分組無線業(yè)務(wù)支持節(jié)點(diǎn)中數(shù)據(jù)包的轉(zhuǎn)發(fā)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及GPRS(無線通用業(yè)務(wù)分組)系統(tǒng)中的SGSN(服務(wù)GPRS支持節(jié)點(diǎn))中分組數(shù)據(jù)包的處理方法。
GPRS作為一種新地GSM(全球移動(dòng)通信系統(tǒng))數(shù)據(jù)業(yè)務(wù),可以給移動(dòng)用戶提供無線分組數(shù)據(jù)接入服務(wù),為此需要在傳統(tǒng)的GSM系統(tǒng)中引入新的網(wǎng)絡(luò)接口和通信協(xié)議,目前在GPRS系統(tǒng)中引入GSN(GPRS支持節(jié)點(diǎn))節(jié)點(diǎn)。在GPRS系統(tǒng)中,主要增加了兩種核心節(jié)點(diǎn)設(shè)備,一種是SGSN(服務(wù)GSN),一種是GGSN(網(wǎng)關(guān)GSN)。其中SGSN負(fù)責(zé)將分組發(fā)送到服務(wù)區(qū)內(nèi)的MS(移動(dòng)臺(tái)),PDU(協(xié)議數(shù)據(jù)單元)在源GSN被封裝,在目的GSN拆包;GGSN負(fù)責(zé)將PDU通過隧道傳送到為MS服務(wù)的當(dāng)前SGSN;在兩個(gè)GSN之間,GTP(GPRS隧道協(xié)議)通過對(duì)PDU添加路由信息把PDU送入GPRS骨干網(wǎng)內(nèi)的隧道。在GPRS系統(tǒng)的傳輸層和網(wǎng)絡(luò)層使用UDP(用戶數(shù)據(jù)報(bào)協(xié)議)/IP(互聯(lián)網(wǎng)協(xié)議)協(xié)議,因此在SGSN、GGSN的設(shè)計(jì)過程中,需要處理上述協(xié)議。在GPRS系統(tǒng)的SGSN中,GTP協(xié)議要完成路徑管理、隧道管理、位置管理和移動(dòng)管理等功能,它用于在用戶面通過隧道傳送分組包,包括IP包和PPP包,在控制面?zhèn)魉鸵苿?dòng)管理、會(huì)話管理等控制信息。由于GTP協(xié)議運(yùn)行在UDP協(xié)議之上,單是處理IP協(xié)議,所耗資源就比較大,采用軟件處理分組包每塊單板的處理能力只有每秒十幾萬包,如果加上UDP和GTP協(xié)議層處理,經(jīng)實(shí)際測(cè)試處理能力不超過每秒3萬包,對(duì)于需要每秒處理幾十萬乃至上百萬包的GPRS核心網(wǎng)設(shè)備,一個(gè)GTP協(xié)議處理模塊顯然無法滿足性能需求,因此需要多塊GTP協(xié)議處理模塊。如果采用通常處理方法,每塊GTP協(xié)議處理模塊分配一個(gè)IP地址,以便在IP層與外界通信,結(jié)果是每個(gè)GSN會(huì)占用多個(gè)IP地址。由于目前IPv4的地址長度只有4個(gè)字節(jié),IP地址已經(jīng)非常緊張,為了實(shí)現(xiàn)不同PL刪之間的漫游,運(yùn)營商通常在PLMN(公用陸地移動(dòng)通信網(wǎng))中為節(jié)點(diǎn)設(shè)備分配公共的IP地址空間。如果一個(gè)GSN就占用多個(gè)IP地址,對(duì)地址資源是一個(gè)浪費(fèi)。
為有效利用IP地址,本發(fā)明的目的在于,提供一種GPRS系統(tǒng)SGSN中的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,使得在不影響GPRS系統(tǒng)SGSN中的分組數(shù)據(jù)包處理效率的基礎(chǔ)上有效利用IP地址。
為達(dá)到上述目的,本發(fā)明提供了一種服務(wù)通用分組無線業(yè)務(wù)支持節(jié)點(diǎn)中數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,該方法包括
接收傳送到本SGSN節(jié)點(diǎn)的數(shù)據(jù)包;
判斷所述數(shù)據(jù)包的目的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
上面所述將數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。首先判斷所述數(shù)據(jù)包的GTP版本,如果所述GTP版本為版本1,根據(jù)所述數(shù)據(jù)包的TEID(隧道端點(diǎn)標(biāo)識(shí))轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,如果所述GTP版本為版本0,根據(jù)所述數(shù)據(jù)包的Flow Label ID(流標(biāo)識(shí))轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
上面所述根據(jù)數(shù)據(jù)包的TEID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是當(dāng)所述數(shù)據(jù)包的TEID≠0,且在本SGSN中存在相應(yīng)TEID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;當(dāng)所述數(shù)據(jù)包的TEID=0,或者在本SGSN中不存在相應(yīng)TEID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)特定的GTP處理模塊。
上面所述根據(jù)數(shù)據(jù)包的Flow Label ID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是當(dāng)所述數(shù)據(jù)包的Flow Label ID≠0,且在本SGSN中存在相應(yīng)Flow Label ID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;當(dāng)所述數(shù)據(jù)包的Flow Label ID=0,或者在本SGSN中不存在相應(yīng)Flow Label ID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)特定的GTP處理模塊。
本發(fā)明還提供一種服務(wù)通用分組無線業(yè)務(wù)支持節(jié)點(diǎn)中數(shù)據(jù)包的轉(zhuǎn)發(fā)裝置,該裝置位于SGSN中的GTP處理模塊與核心路由模塊之間,它包括
接收模塊,用于接收傳送到本SGSN節(jié)點(diǎn)的數(shù)據(jù)包;
數(shù)據(jù)包判斷轉(zhuǎn)發(fā)模塊,用于判斷所述數(shù)據(jù)包的目的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
上述數(shù)據(jù)包判斷轉(zhuǎn)發(fā)模塊包括
第一判斷轉(zhuǎn)發(fā)模塊,用于判斷所述數(shù)據(jù)包的目的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第二判斷轉(zhuǎn)發(fā)模塊;
第二判斷轉(zhuǎn)發(fā)模塊,用于判斷所述數(shù)據(jù)包的GTP版本,如果為版本1,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第三判斷轉(zhuǎn)發(fā)模塊;如果為版本0,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第四判斷轉(zhuǎn)發(fā)模塊;
第三判斷轉(zhuǎn)發(fā)模塊,用于根據(jù)所述數(shù)據(jù)包的TEID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;
第四判斷轉(zhuǎn)發(fā)模塊,用于根據(jù)所述數(shù)據(jù)包的Flow Label ID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
由于本發(fā)明在SGSN中的GTP處理模塊與核心路由模塊之間設(shè)置了數(shù)據(jù)包轉(zhuǎn)發(fā)模塊,因此可以由該轉(zhuǎn)發(fā)模塊把所有進(jìn)入本SGSN的GTP包按照GTP標(biāo)識(shí)轉(zhuǎn)發(fā)到相應(yīng)的GTP處理模塊上,在定義轉(zhuǎn)發(fā)規(guī)則時(shí),對(duì)于GTP版本1,為每個(gè)GTP處理模塊分配一段TEID空間,對(duì)于GTP版本0,為每個(gè)GTP處理模塊分配一段Flow Label ID,這樣,當(dāng)轉(zhuǎn)發(fā)模塊收到傳送到本SGSN節(jié)點(diǎn)的數(shù)據(jù)包時(shí),根據(jù)所述數(shù)據(jù)包的TEID或Flow Label ID的值的范圍與GTP處理模塊的TEID或Flow Label ID值的范圍的對(duì)應(yīng)關(guān)系,即可將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到相應(yīng)的GTP處理模塊上。采用上述工作方式,數(shù)據(jù)包轉(zhuǎn)發(fā)模塊在SGSN內(nèi)部的工作僅僅是根據(jù)數(shù)據(jù)包的TEID或Flow Label ID對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā),這樣,數(shù)據(jù)包的轉(zhuǎn)發(fā)可以采用網(wǎng)絡(luò)處理器進(jìn)行,以使數(shù)據(jù)包轉(zhuǎn)發(fā)模塊取得接近線速的轉(zhuǎn)發(fā)速度,而且使得整個(gè)SGSN內(nèi)部的多個(gè)GTP處理模塊在不超過所述數(shù)據(jù)包轉(zhuǎn)發(fā)模塊的轉(zhuǎn)發(fā)能力時(shí),可以通過一個(gè)對(duì)外的IP地址進(jìn)行數(shù)據(jù)包的傳送,進(jìn)而達(dá)到在不影響GPRS系統(tǒng)SGSN中的分組數(shù)據(jù)包處理效率的基礎(chǔ)上有效利用IP地址的目的。
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)的描述。
圖1是本發(fā)明所述方法的實(shí)施例流程圖2是本發(fā)明所述轉(zhuǎn)發(fā)裝置的實(shí)施例框圖3是GPRS系統(tǒng)邏輯結(jié)構(gòu)圖4是SGSN原理結(jié)構(gòu)圖。
GPRS是一種新的GSM數(shù)據(jù)業(yè)務(wù),它可以給移動(dòng)用戶提供無線分組接入服務(wù),它主要是在移動(dòng)用戶和遠(yuǎn)端的數(shù)據(jù)網(wǎng)絡(luò)之間提供一種連接,從而給移動(dòng)用戶提供高速無線IP業(yè)務(wù)和其它業(yè)務(wù)。GPRS系統(tǒng)邏輯結(jié)構(gòu)參考圖3。如圖3所示,GSN是GPRS系統(tǒng)的重要網(wǎng)絡(luò)節(jié)點(diǎn),它可以連接各種類型的數(shù)據(jù)網(wǎng)絡(luò),且具有移動(dòng)路由管理功能。GSN有兩種類型,一種為SSGN,一種為GGSN,在由移動(dòng)臺(tái)發(fā)起數(shù)據(jù)傳送時(shí),SGSN對(duì)傳送來的分組數(shù)據(jù)進(jìn)行封裝并選擇路由,將封裝好的數(shù)據(jù)包送到相應(yīng)的主機(jī)。來自相應(yīng)主機(jī)的分組數(shù)據(jù)包,在檢查其目的地址之后,通過PDN(分組數(shù)據(jù)網(wǎng))路由到GGSN,GGSN在檢查與目的地址有關(guān)的路由信息,確定出SSGN的地址和隧道信息,然后將分組封裝后轉(zhuǎn)發(fā)到SGSN,由SGSN發(fā)送到移動(dòng)臺(tái)。SGSN作為GPRS系統(tǒng)的核心節(jié)點(diǎn),能夠完成移動(dòng)性管理、會(huì)話管理、數(shù)據(jù)轉(zhuǎn)發(fā)等功能,在無線側(cè)SGSN與BSS(基站系統(tǒng))或者UTRAN(UMTS陸地?zé)o線接入網(wǎng))相連,在網(wǎng)絡(luò)側(cè)與GGSN相連,為移動(dòng)用戶提供分組數(shù)據(jù)業(yè)務(wù)。
由于SSGN需要處理的分組數(shù)據(jù)包的數(shù)量巨大,因此在其內(nèi)部有多個(gè)GTP協(xié)議處理模塊進(jìn)行數(shù)據(jù)包的處理,如果按照通常的方法,每個(gè)GTP協(xié)議處理模塊都要具有一個(gè)IP地址,對(duì)IP地址資源帶來了浪費(fèi)。為了解決這個(gè)問題,本發(fā)明提供了一種能夠節(jié)省IP地址的、在SSGN中數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,同時(shí)還提供了在SSGN中數(shù)據(jù)包的轉(zhuǎn)發(fā)實(shí)現(xiàn)機(jī)制。
按照本發(fā)明所述的方法,在SSGN中,多個(gè)GTP協(xié)議處理模塊共用一個(gè)IP地址進(jìn)行分組數(shù)據(jù)包的傳送。為實(shí)現(xiàn)該方法,首先要?jiǎng)?chuàng)建IP地址屬性表,用于判斷接收到的數(shù)據(jù)包的IP地址,以轉(zhuǎn)發(fā)所述數(shù)據(jù)包到相應(yīng)的GTP協(xié)議處理模塊。根據(jù)本發(fā)明,所述IP地址屬性表應(yīng)包括以下字段
IP地址,IP地址類型,輸出VPI值,輸出VCI值。其中,
IP地址IP協(xié)議頭中的地址標(biāo)識(shí),用戶標(biāo)識(shí)網(wǎng)絡(luò)中的節(jié)點(diǎn)地址。
IP地址類型用以描述所述IP地址是本SGSN RNC地址、上一個(gè)SGSN地址或者GGSN地址。
VPI/VCI輸出值A(chǔ)TM(異步傳模式)網(wǎng)絡(luò)中的鏈路標(biāo)識(shí)。一組VPI/VCI標(biāo)識(shí)一個(gè)虛鏈接。
GTP模塊狀態(tài)指明當(dāng)前的GTP處理模塊是否處于正常工作狀態(tài)。
TEID/Flow Label ID的最大值、最小值用于指明該段標(biāo)識(shí)屬于本GTP處理模塊。
上述IP地址表以HASH表組織,這樣查詢速度快,不但提高IP地址HASH表的直接命中率,查詢的效率比較高,而且在增加和修改IP地址表優(yōu)化表的組織時(shí),增加和修改的頻率的不高,所以最好采用這種HASH表的方式。實(shí)際中,HASH表可以用數(shù)組實(shí)現(xiàn)。
上述IP地址表還可以包括一個(gè)狀態(tài)字段,用以指示所述IP地址表中的設(shè)備或模塊是否有效,這樣更能方便所述IP地址表的使用和維護(hù)。
該方法還創(chuàng)建所述GTP處理模塊的TEID表,用于判斷所述數(shù)據(jù)包的TEID的范圍,以有效轉(zhuǎn)發(fā)接收到的分組數(shù)據(jù)包。所述TEID表包括以下字段
GTP處理模塊TEID的最小值,GTP處理模塊TEID的最大值,輸出VPI值,輸出VCI值,GTP模塊狀態(tài)。
該TEID表可以用數(shù)組組織,在制定分組數(shù)據(jù)包的轉(zhuǎn)發(fā)規(guī)則時(shí),可以將每個(gè)GTP協(xié)議模塊的TEID范圍設(shè)置為等長,假設(shè)該長度記為TEID_INT,這樣查找時(shí)用分組數(shù)據(jù)包的TEID除以TEID_INT可以直接得到數(shù)組下標(biāo),找到VPI/VCI,一次命中。
考慮到實(shí)現(xiàn)GTP版本1的SSGN和GGSN能夠處理GTP版本0的數(shù)據(jù),因此還要?jiǎng)?chuàng)建所述GTP處理模塊的Flow Label ID表,用于判斷所述數(shù)據(jù)包的FlowLabel ID,以轉(zhuǎn)發(fā)所述GTP版本0的數(shù)據(jù)包。所述Flow Label ID表包括以下字段
GTP處理模塊Flow Label ID的最小值,GTP處理模塊Flow Label ID的最大值,輸出VPI值,輸出VCI值,GTP模塊狀態(tài)。
同樣,所述Flow Label ID表可以采用TEID表的組織方式,將每個(gè)GTP協(xié)議模塊的Flow Label ID范圍設(shè)置為等長,以快速找到出相應(yīng)的VPI/VCI。
圖1是本發(fā)明所述方法的實(shí)施例流程圖。按照?qǐng)D1,在SGSN內(nèi)部實(shí)現(xiàn)本發(fā)明所述方法的步驟1,接收傳送到本SGSN節(jié)點(diǎn)的數(shù)據(jù)包。由于所述數(shù)據(jù)包的目的地址不同,例如可能不屬于本節(jié)點(diǎn),或者可能是從本節(jié)點(diǎn)的GTP協(xié)議處理模塊接收到的需要轉(zhuǎn)發(fā)到本節(jié)點(diǎn)的路由模塊的數(shù)據(jù)包,因此,在步驟2,判斷所述數(shù)據(jù)包的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,則在步驟3,判斷所述數(shù)據(jù)包的GTP版本,如果為版本l,根據(jù)所述數(shù)據(jù)包的TEID(隧道端點(diǎn)標(biāo)識(shí))轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,如果為版本0,在步驟4,根據(jù)所述數(shù)據(jù)包的Flow Label ID(流標(biāo)識(shí))轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
上述根據(jù)數(shù)據(jù)包的TEID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是當(dāng)所述數(shù)據(jù)包的TEID≠0,且在本SGSN中存在相應(yīng)TEID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;當(dāng)所述數(shù)據(jù)包的TEID=0,或者在本SGSN中不存在相應(yīng)TEID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)特定的GTP處理模塊。
同樣,上述根據(jù)數(shù)據(jù)包的Flow Label ID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是當(dāng)所述數(shù)據(jù)包的Flow Label ID≠0,且在本SGSN中存在相應(yīng)Flow Label ID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;當(dāng)所述數(shù)據(jù)包的Flow Label ID=0,或者在本SGSN中不存在相應(yīng)Flow Label ID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)特定的GTP處理模塊。
在轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊過程中定位所述GTP處理模塊時(shí),即可用接收到的分組數(shù)據(jù)包的TEID或Flow Label ID的值除以上述GTP協(xié)議處理模塊的TEID或Flow Label ID的范圍長度直接找到相應(yīng)的GTP處理模塊,當(dāng)然實(shí)際中也可以采用比較的方法,即用分組數(shù)據(jù)包的TEID或Flow Label ID范圍與GTP處理模塊的TEID或Flow LabelID相比較,進(jìn)而定位所述GTP處理模塊。
本發(fā)明提供的數(shù)據(jù)包的轉(zhuǎn)發(fā)裝置位于SGSN中的GTP處理模塊與核心路由模塊之間,參考圖4。本發(fā)明所述轉(zhuǎn)發(fā)模塊的實(shí)施例參考圖2;圖2所示的數(shù)據(jù)包的轉(zhuǎn)發(fā)模塊包括
接收模塊1,用于接收傳送到本SGSN節(jié)點(diǎn)的數(shù)據(jù)包;
數(shù)據(jù)包判斷轉(zhuǎn)發(fā)模塊2,用于判斷所述數(shù)據(jù)包的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
所述數(shù)據(jù)包判斷轉(zhuǎn)發(fā)模塊具體包括
第一判斷轉(zhuǎn)發(fā)模塊21,用于判斷所述數(shù)據(jù)包的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第二判斷轉(zhuǎn)發(fā)模塊;
第二判斷轉(zhuǎn)發(fā)模塊22,用于判斷所述數(shù)據(jù)包的GTP版本,如果為版本1,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第三斷轉(zhuǎn)發(fā)模塊;如果為版本0,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第四斷轉(zhuǎn)發(fā)模塊;
第三斷轉(zhuǎn)發(fā)模塊23用于根據(jù)所述數(shù)據(jù)包的TEID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;
第四斷轉(zhuǎn)發(fā)模塊24用于根據(jù)所述數(shù)據(jù)包的Flow Label ID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
由于上述轉(zhuǎn)發(fā)過程中只涉及到對(duì)特定的字段進(jìn)行讀取和判斷,不涉及對(duì)數(shù)據(jù)包的折分和組裝功能(該功能放在GTP處理模塊上實(shí)現(xiàn)),可能通過網(wǎng)絡(luò)處理器實(shí)現(xiàn)數(shù)據(jù)包的轉(zhuǎn)發(fā),從而達(dá)到線速處理的速度。
根據(jù)上述裝置,對(duì)于本SGSN節(jié)點(diǎn)接收到的任意分組數(shù)據(jù)包,經(jīng)所述模塊相應(yīng)的第一至第四判斷轉(zhuǎn)發(fā)模塊即可將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到該數(shù)據(jù)包的目的地址。假設(shè)本SGSN的IP地址為10.110.1.1,內(nèi)部有3個(gè)GTP處理模塊,每個(gè)GTP處理模塊的TEID范圍如下表所示IP地址表的內(nèi)容如下所示
當(dāng)接收到的分組數(shù)據(jù)包攜帶的IP地址為10.110.1.1,IP的負(fù)載協(xié)議為UDP協(xié)議,GTP版本為版本1,TEID值為15-25,該數(shù)據(jù)包經(jīng)第一判斷轉(zhuǎn)發(fā)模塊21判斷后,由于所述數(shù)據(jù)包的目的IP地址為本SGSN的IP地址,所以將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到所述第二判斷轉(zhuǎn)發(fā)模塊22,該模塊繼續(xù)對(duì)所述數(shù)據(jù)包的GTP版本進(jìn)行判斷,由于所述GTP版本為版本1,進(jìn)而將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第四判斷轉(zhuǎn)發(fā)模塊23,該模塊繼續(xù)對(duì)所述數(shù)據(jù)包的TEID值進(jìn)行判斷,由于所述TEID值的范圍為15-25,進(jìn)而根據(jù)上述TEID的值將數(shù)據(jù)包轉(zhuǎn)發(fā)到與該TEID值相對(duì)應(yīng)的GTP處理模塊。
由上述可見,采用本發(fā)明進(jìn)行SGSN內(nèi)部的數(shù)據(jù)包轉(zhuǎn)發(fā),能夠達(dá)到有效利用IP地址的目的。
權(quán)利要求
1、一種服務(wù)通用分組無線業(yè)務(wù)支持節(jié)點(diǎn)中數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,該方法包括
接收傳送到本SGSN(服務(wù)GPRS支持節(jié)點(diǎn),GPRS通用分組無線業(yè)務(wù))節(jié)點(diǎn)的數(shù)據(jù)包;
判斷所述數(shù)據(jù)包的目的IP(互聯(lián)網(wǎng)協(xié)議)地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC(無線網(wǎng)絡(luò)控制器)/GSN(GPRS支持節(jié)點(diǎn));如果是本節(jié)點(diǎn)GTP(GPRS隧道協(xié)議)隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
2、根據(jù)權(quán)利要求1所述的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,其特征在于所述將數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是對(duì)所述數(shù)據(jù)包的GTP版本號(hào)進(jìn)行判斷,如果為版本1,根據(jù)所述數(shù)據(jù)包的TEID(隧道端點(diǎn)標(biāo)識(shí))轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,如果為版本0,根據(jù)所述數(shù)據(jù)包的Flow Label ID(流標(biāo)識(shí))轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
3、根據(jù)權(quán)利要求2所述的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,其特征在于所述根據(jù)數(shù)據(jù)包的TEID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是當(dāng)所述數(shù)據(jù)包的TEID≠0,且在本SGSN中存在相應(yīng)TEID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;當(dāng)所述數(shù)據(jù)包的TEID=0,或者在本SGSN中不存在相應(yīng)TEID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)特定的GTP處理模塊。
4、根據(jù)權(quán)利要求2所述的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,其特征在于所述根據(jù)數(shù)據(jù)包的Flow Label ID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊,是當(dāng)所述數(shù)據(jù)包的Flow Label ID≠0,且在本SGSN中存在相應(yīng)FlowLabel ID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;當(dāng)所述數(shù)據(jù)包的Flow Label ID=0,或者在本SGSN中不存在相應(yīng)Flow Label ID的GTP處理模塊時(shí),轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)特定的GTP處理模塊。
5、根據(jù)權(quán)利要求1、2、3或4所述的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,其特征在于該方法還創(chuàng)建IP地址屬性表,用于判斷所述數(shù)據(jù)包的目的IP地址,以轉(zhuǎn)發(fā)所述數(shù)據(jù)包;所述IP地址屬性表包括以下字段
IP地址,IP地址類型,輸出VPI(虛通路識(shí)別符)值,輸出VCI(虛信道識(shí)別符)值。
6、根據(jù)權(quán)利要求3所述的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,其特征在于該方法還創(chuàng)建所述GTP處理模塊的TEID表,用于判斷所述數(shù)據(jù)包的TEID,以轉(zhuǎn)發(fā)所述數(shù)據(jù)包;所述TEID表包括以下字段
GTP處理模塊TEID的最小值,GTP處理模塊TEID的最大值,輸出VPI值,輸出VCI值,GTP模塊狀態(tài)。
7、根據(jù)權(quán)利要求4所述的數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,其特征在于該方法還創(chuàng)建所述GTP處理模塊的Flow Label ID表,用于判斷所述數(shù)據(jù)包的FlowLabel ID,以轉(zhuǎn)發(fā)所述數(shù)據(jù)包;所述Flow Label ID表包括以下字段
GTP處理模塊Flow Label ID的最小值,GTP處理模塊Flow Label ID的最大值,輸出VPI值,輸出VCI值,GTP模塊狀態(tài)。
8、一種服務(wù)通用分組無線業(yè)務(wù)支持節(jié)點(diǎn)中數(shù)據(jù)包的轉(zhuǎn)發(fā)裝置,該裝置位于SGSN中的GTP處理模塊與核心路由模塊之間,其特征在于該裝置包括
接收模塊,用于接收傳送到本SGSN節(jié)點(diǎn)的數(shù)據(jù)包;
數(shù)據(jù)包判斷轉(zhuǎn)發(fā)模塊,用于判斷所述數(shù)據(jù)包的目的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
9、根據(jù)權(quán)利要求8所述的數(shù)據(jù)包轉(zhuǎn)發(fā)裝置,其特征在于所述數(shù)據(jù)包判斷轉(zhuǎn)發(fā)模塊包括
第一判斷轉(zhuǎn)發(fā)模塊,用于判斷所述數(shù)據(jù)包的IP地址,如果是本節(jié)點(diǎn)使用的路由協(xié)議信息地址或非本節(jié)點(diǎn)的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到本SGSN的路由模塊,以進(jìn)一步對(duì)所述數(shù)據(jù)包進(jìn)行處理,或者轉(zhuǎn)發(fā)到相應(yīng)的RNC/GSN;如果是本節(jié)點(diǎn)GTP隧道使用的IP地址,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第二判斷轉(zhuǎn)發(fā)模塊;
第二判斷轉(zhuǎn)發(fā)模塊,用于判斷所述數(shù)據(jù)包的GTP版本,如果為版本1,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第三判斷轉(zhuǎn)發(fā)模塊;如果為版本0,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到第四判斷轉(zhuǎn)發(fā)模塊;
第三判斷轉(zhuǎn)發(fā)模塊,用于根據(jù)所述數(shù)據(jù)包的TEID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊;
第四判斷轉(zhuǎn)發(fā)模塊,用于根據(jù)所述數(shù)據(jù)包的Flow Label ID轉(zhuǎn)發(fā)所述數(shù)據(jù)包到本SGSN節(jié)點(diǎn)相應(yīng)的GTP處理模塊。
10、根據(jù)權(quán)利要求9所述的數(shù)據(jù)包轉(zhuǎn)發(fā)裝置,其特征在于使用網(wǎng)絡(luò)處理器實(shí)現(xiàn)所述數(shù)據(jù)包的轉(zhuǎn)發(fā)。
全文摘要
本發(fā)明公開了一種服務(wù)通用分組無線業(yè)務(wù)支持節(jié)點(diǎn)中數(shù)據(jù)包的轉(zhuǎn)發(fā)方法,在SGSN中的GTP處理模塊與核心路由模塊之間增加一個(gè)數(shù)據(jù)包轉(zhuǎn)發(fā)模塊,該模塊根據(jù)接收的數(shù)據(jù)包的TEID的值與GTP處理模塊的TEID值的對(duì)應(yīng)關(guān)系,可將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到相應(yīng)的GTP處理模塊上,使得整個(gè)SGSN內(nèi)部的多個(gè)GTP處理模塊可以通過一個(gè)對(duì)外的IP地址進(jìn)行數(shù)據(jù)包的傳送,進(jìn)而達(dá)到在不影響SGSN中的分組數(shù)據(jù)包處理效率的基礎(chǔ)上有效利用IP地址的目的。
文檔編號(hào)H04L12/54GK1388682SQ0111829
公開日2003年1月1日 申請(qǐng)日期2001年5月29日 優(yōu)先權(quán)日2001年5月29日
發(fā)明者陳殿福 申請(qǐng)人:華為技術(shù)有限公司