專利名稱:一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)、方法和用戶設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通訊技術(shù)領(lǐng)域,具體涉及一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)、方法和用戶設(shè)備。
背景技術(shù):
隨著基于TCP/IP(傳輸控制協(xié)議/網(wǎng)際協(xié)議)的互聯(lián)網(wǎng)的普及,私網(wǎng)的數(shù)量和規(guī)模也越來(lái)越大。為了能夠讓這些私網(wǎng)設(shè)備可以訪問(wèn)私網(wǎng)外部的資源,NAT技術(shù)應(yīng)運(yùn)而生。
NAT是通過(guò)修改UDP(用戶數(shù)據(jù)報(bào)協(xié)議)或TCP(傳輸控制協(xié)議)的報(bào)文頭的地址和端口信息,來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)層地址轉(zhuǎn)換的,但對(duì)于VOIP(IP話音)應(yīng)用,在TCP/UDP凈載中也攜帶有地址信息。NAT不能夠?qū)@部分地址信息進(jìn)行轉(zhuǎn)換,導(dǎo)致私網(wǎng)內(nèi)的設(shè)備對(duì)外網(wǎng)不可見(jiàn),使私網(wǎng)內(nèi)的設(shè)備無(wú)法接受外網(wǎng)發(fā)來(lái)的呼叫請(qǐng)求。這種問(wèn)題被統(tǒng)稱為NAT問(wèn)題,而解決NAT問(wèn)題的方法被統(tǒng)稱為NAT穿透。
目前,NAT穿透主要包括ALG(應(yīng)用層網(wǎng)關(guān))、MIDCOM(中間件通信)、STUN(UDP的簡(jiǎn)單NAT穿透)、PROXY(代理)等等。
STUN是解決NAT問(wèn)題的一種方法,主要的實(shí)現(xiàn)原理為私網(wǎng)中的用戶設(shè)備通過(guò)某種機(jī)制預(yù)先得到出口NAT上的對(duì)外地址和端口,然后,在凈載中所填寫(xiě)的地址信息直接填寫(xiě)出口NAT上的對(duì)外地址和端口,而不是私網(wǎng)內(nèi)用戶設(shè)備的私有地址和端口,這樣凈載中的內(nèi)容在經(jīng)過(guò)NAT時(shí)就無(wú)需被修改了,只需按普通NAT流程轉(zhuǎn)換報(bào)文頭的IP地址和端口即可,這時(shí)凈載中的地址和端口信息與報(bào)文頭的地址和端口信息是一致的。
IMS(IP Multimedia Subsystem,IP多媒體子系統(tǒng))是3GPP(3rd GenerationPartnership Project,第三代合作工程)在Release 5中提出的支持IP多媒體業(yè)務(wù)的子系統(tǒng),它的核心特點(diǎn)是采用SIP協(xié)議和與接入的無(wú)關(guān)性。當(dāng)前IMS支持2G和3G的移動(dòng)接入方式,還不能支持固定接入方式。在網(wǎng)絡(luò)融合的發(fā)展趨勢(shì)下,許多國(guó)際國(guó)內(nèi)組織都在研究基于IMS的網(wǎng)絡(luò)融合方案,目的是使IMS成為基于SIP會(huì)話的通用平臺(tái),以實(shí)現(xiàn)固定網(wǎng)和移動(dòng)網(wǎng)的融合。目前ETSI(European Telecommunications Standards Institute,歐洲電信標(biāo)準(zhǔn)委員會(huì))和3GPP聯(lián)合起來(lái)一起研究討論并制定固網(wǎng)接入IMS的相關(guān)規(guī)范,并把固網(wǎng)接入IMS簡(jiǎn)稱為FBI(Fixed Broadband Access to IMS,固網(wǎng)接入IMS)。
在固網(wǎng)接入IMS中,采用NAT設(shè)備是相當(dāng)普遍的,所以,不得不考慮NAT問(wèn)題,而目前還沒(méi)有任何技術(shù)規(guī)范提供解決固網(wǎng)接入IMS的NAT穿透方案。
發(fā)明內(nèi)容
本發(fā)明的目的在于,提供一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)、方法和用戶設(shè)備,利用STUN協(xié)議,明確了IMS網(wǎng)絡(luò)中用戶設(shè)備的NAT穿透流程,有效解決了固網(wǎng)接入IMS情況下的NAT穿透問(wèn)題。
為達(dá)到上述目的,本發(fā)明提供的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng),所述系統(tǒng)包括至少一個(gè)用戶設(shè)備、網(wǎng)絡(luò)地址轉(zhuǎn)換NAT設(shè)備和IMS網(wǎng)絡(luò)側(cè),IMS網(wǎng)絡(luò)側(cè)設(shè)置有至少一個(gè)UDP的簡(jiǎn)單NAT穿透STUN服務(wù)器,用戶設(shè)備作為STUN客戶端;用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息;所述用戶設(shè)備將其獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
所述用戶設(shè)備包括獲取STUN服務(wù)器地址信息模塊通過(guò)與域名服務(wù)器/動(dòng)態(tài)主機(jī)配置協(xié)議DNS/DHCP服務(wù)器的信息交互獲取STUN服務(wù)器的地址信息,并將其傳輸至獲取對(duì)外地址端口模塊;獲取對(duì)外地址端口模塊根據(jù)其接收的STUN服務(wù)器的地址信息將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器,并將其接收的、STUN服務(wù)器傳輸來(lái)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息傳輸至呼叫控制消息傳輸模塊;呼叫控制消息傳輸模塊將其接收的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)其接收的P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
所述STUN服務(wù)器包括獲取P-CSCF地址信息模塊在STUN服務(wù)器接收到用戶設(shè)備通過(guò)NAT設(shè)備傳輸來(lái)的請(qǐng)求消息時(shí),從DNS/DHCP服務(wù)器處獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息,并將其傳輸至響應(yīng)模塊;響應(yīng)模塊從STUN服務(wù)器接收的請(qǐng)求消息中獲取NAT出口的對(duì)外地址、端口信息,并將NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息承載于響應(yīng)消息中,通過(guò)NAT設(shè)備傳輸至相應(yīng)的用戶設(shè)備。
本發(fā)明還提供一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,包括a、作為STUN客戶端的用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息;b、用戶設(shè)備將獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
所述步驟a具體包括
a1、用戶設(shè)備獲取STUN服務(wù)器的地址信息;a2、用戶設(shè)備中將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器;a3、STUN服務(wù)器在接收到請(qǐng)求消息后,獲取用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址和端口信息,并從DNS/DHCP服務(wù)器處獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息;a4、STUN服務(wù)器將其獲取的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息承載于響應(yīng)消息中,并通過(guò)NAT設(shè)備傳輸至用戶設(shè)備。
所述步驟a1具體為用戶設(shè)備通過(guò)與DNS/DHCP服務(wù)器的信息交互獲取STUN服務(wù)器的地址信息。
所述步驟a2具體為用戶設(shè)備將用戶數(shù)據(jù)報(bào)協(xié)議的請(qǐng)求消息傳輸至NAT設(shè)備;NAT設(shè)備將請(qǐng)求消息中的源地址變換為用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址,將請(qǐng)求消息中的端口號(hào)信息變換為NAT設(shè)備的端口信息,并將請(qǐng)求消息傳輸至STUN服務(wù)器。
所述步驟a3具體為STUN服務(wù)器從NAT設(shè)備傳輸來(lái)的請(qǐng)求消息中獲取用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息,并通過(guò)與DNS/DHCP服務(wù)器的信息交互獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息。
所述步驟a4具體為STUN服務(wù)器將NAT出口的對(duì)外地址和端口信息承載于STUN響應(yīng)消息的MAPPED-ADDRESS屬性中,將P-CSCF地址信息承載于擴(kuò)展設(shè)置的CSCF地址信息屬性中,并將STUN響應(yīng)消息傳輸至用戶設(shè)備。
所述步驟b中呼叫控制消息的負(fù)載包括呼叫控制消息的SIP負(fù)載。
所述方法還包括在用戶設(shè)備的會(huì)話描述協(xié)議SDP報(bào)文中承載實(shí)時(shí)傳輸控制協(xié)議RTCP的端口屬性信息。
本發(fā)明還提供一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)中的用戶設(shè)備,所述用戶設(shè)備作為UDP的簡(jiǎn)單NAT穿透STUN客戶端;用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息;用戶設(shè)備將其獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
所述用戶設(shè)備包括獲取STUN服務(wù)器地址信息模塊通過(guò)與域名服務(wù)器/動(dòng)態(tài)主機(jī)配置協(xié)議DNS/DHCP服務(wù)器的信息交互獲取STUN服務(wù)器的地址信息,并將其傳輸至獲取對(duì)外地址端口模塊;獲取對(duì)外地址端口模塊根據(jù)其接收的STUN服務(wù)器的地址信息將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器,并將其接收的、STUN服務(wù)器傳輸來(lái)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息傳輸至呼叫控制消息傳輸模塊;呼叫控制消息傳輸模塊將其接收的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)其接收的P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
通過(guò)上述技術(shù)方案的描述可知,本發(fā)明通過(guò)在IMS網(wǎng)絡(luò)側(cè)設(shè)置STUN服務(wù)器、將用戶設(shè)備作為STUN客戶端,使STUN協(xié)議適用于IMS網(wǎng)絡(luò)中的NAT穿透流程,明確了IMS網(wǎng)絡(luò)中用戶設(shè)備的NAT穿透流程,使用戶設(shè)備對(duì)外網(wǎng)可見(jiàn),有效解決了固網(wǎng)接入IMS情況下的NAT穿透問(wèn)題;本發(fā)明可以在不對(duì)目前現(xiàn)有的NAT設(shè)備的地址轉(zhuǎn)換處理流程進(jìn)行任何改動(dòng)的情況下,通過(guò)對(duì)STUN協(xié)議中的消息進(jìn)行簡(jiǎn)單擴(kuò)展即可使用戶設(shè)備獲得NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息,使本發(fā)明的技術(shù)方案易于實(shí)施、可適用性好;從而通過(guò)本發(fā)明提供的技術(shù)方案實(shí)現(xiàn)了完善固網(wǎng)接入IMS的規(guī)范流程的目的。
圖1是本發(fā)明的基于IMS的NAT穿透系統(tǒng)示意圖;圖2是本發(fā)明的基于IMS的NAT穿透方法的流程圖。
具體實(shí)施例方式
本發(fā)明的基于IMS的NAT穿透系統(tǒng)和方法的核心均在于在IMS網(wǎng)絡(luò)側(cè)設(shè)置至少一個(gè)STUN(UDP的簡(jiǎn)單NAT穿透)服務(wù)器,將用戶設(shè)備作為STUN客戶端,用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息,所述用戶設(shè)備將其獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載如SIP負(fù)載中,并通過(guò)NAT設(shè)備將呼叫控制消息傳輸至P-CSCF。
本發(fā)明的網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)如附圖1所示,下面結(jié)合附圖1對(duì)本發(fā)明的網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)、方法和用戶設(shè)備進(jìn)行說(shuō)明。
圖1中,本發(fā)明的IMS的NAT穿透系統(tǒng)包括IMS網(wǎng)絡(luò)側(cè)、至少一個(gè)用戶設(shè)備和NAT設(shè)備,用戶設(shè)備為FBI(固網(wǎng)接入IMS)的用戶設(shè)備。用戶設(shè)備中含有STUN Client(STUN客戶端)實(shí)體,即用戶設(shè)備作為STUN客戶端。相應(yīng)的,在IMS網(wǎng)絡(luò)側(cè)的核心控制網(wǎng)中需要增加STUN Server實(shí)體。IMS核心控制網(wǎng)中的STUN Server可以為一個(gè)或多個(gè),用戶設(shè)備可以通過(guò)與DNS/DHCP(域名服務(wù)器/動(dòng)態(tài)主機(jī)配置協(xié)議)服務(wù)器的信息交互獲得與之通信的STUNServer的地址信息,這部分功能由用戶設(shè)備中的獲取STUN服務(wù)器地址信息模塊來(lái)實(shí)現(xiàn)。本發(fā)明可以不對(duì)目前現(xiàn)有的NAT設(shè)備的地址轉(zhuǎn)換處理流程做任何改動(dòng),從而使本發(fā)明的技術(shù)方案易于實(shí)施、可適用性好,但是,由于現(xiàn)有NAT設(shè)備實(shí)現(xiàn)地址轉(zhuǎn)換處理流程的差異,本發(fā)明也不排除對(duì)部分現(xiàn)有NAT設(shè)備的地址轉(zhuǎn)換處理流程進(jìn)行改變的可能性。
用戶設(shè)備在獲得STUN Server的地址信息、并需要通過(guò)SIP進(jìn)行呼叫時(shí),通過(guò)NAT設(shè)備向STUN Server發(fā)送STUN Query(STUN請(qǐng)求)消息,以獲取其對(duì)應(yīng)的NAT出口的地址信息、端口信息及P-CSCF的地址信息。這部分功能由用戶設(shè)備中的獲取對(duì)外地址端口模塊來(lái)完成,即獲取STUN服務(wù)器地址信息模塊將其獲取到的STUN服務(wù)器地址信息傳輸至獲取對(duì)外地址端口模塊,獲取對(duì)外地址端口模塊根據(jù)其接收的STUN服務(wù)器的地址信息將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的STUN Query消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器。
NAT設(shè)備接收到用戶設(shè)備傳輸來(lái)的STUN Query消息后,對(duì)STUN Query消息中的地址信息進(jìn)行轉(zhuǎn)換,本發(fā)明中的NAT設(shè)備的地址信息轉(zhuǎn)換過(guò)程遵循現(xiàn)有的地址信息轉(zhuǎn)換過(guò)程,如轉(zhuǎn)換過(guò)程可以為NAT設(shè)備將STUN Query消息中的源地址信息轉(zhuǎn)換為其上與用戶設(shè)備對(duì)應(yīng)的出口的地址信息,將STUNQuery消息中的端口信息轉(zhuǎn)換為其上與用戶設(shè)備對(duì)應(yīng)的端口信息。NAT設(shè)備將地址信息轉(zhuǎn)換后的STUN Query消息傳輸至STUN Server。
STUN Server主要用于接收用戶設(shè)備通過(guò)NAT傳輸來(lái)的STUN Query消息,并通過(guò)與DNS/DHCP服務(wù)器的信息交互獲取用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息,并將這些信息承載于STUN Response(STUN響應(yīng))消息中通過(guò)NAT設(shè)備傳輸至對(duì)應(yīng)的用戶設(shè)備。
STUN Server的功能主要由獲取P-CSCF地址信息模塊和響應(yīng)模塊來(lái)實(shí)現(xiàn)。
獲取P-CSCF地址信息模塊主要用于在STUN服務(wù)器接收到用戶設(shè)備通過(guò)NAT設(shè)備傳輸來(lái)的STUN Query消息時(shí),通過(guò)向DNS/DHCP服務(wù)器發(fā)送請(qǐng)求消息,并與DNS/DHCP服務(wù)器進(jìn)行一系列的信息交互,以實(shí)現(xiàn)從DNS/DHCP服務(wù)器處獲得用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息;獲取P-CSCF地址信息模塊接收DNS/DHCP服務(wù)器返回的攜帶有P-CSCF地址信息的消息,并從DNS/DHCP服務(wù)器返回的消息中獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息,并將P-CSCF地址信息傳輸至響應(yīng)模塊。
響應(yīng)模塊主要用于從STUN服務(wù)器接收的、用戶設(shè)備端通過(guò)NAT設(shè)備傳輸來(lái)的STUN Query消息中獲取NAT出口的對(duì)外地址、端口信息,將NAT出口的對(duì)外地址和端口信息承載于STUN Response消息的MAPPED-ADDRESS屬性中,將P-CSCF地址信息承載于STUN Response消息中的擴(kuò)展的、用于傳輸P-CSCF地址信息的CSCF-ADDRESS屬性中,并將STUN Response消息通過(guò)NAT設(shè)備傳輸至對(duì)應(yīng)的用戶設(shè)備。
用戶設(shè)備中的獲取對(duì)外地址端口模塊從STUN Response消息中獲取NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息,并將其傳輸至呼叫控制消息傳輸模塊。此時(shí),用戶設(shè)備進(jìn)入已激活狀態(tài)。這樣,用戶設(shè)備在向P-CSCF發(fā)送呼叫控制消息如Register消息、Invite消息時(shí),通過(guò)將NAT出口的對(duì)外地址、端口信息承載于呼叫控制消息的SIP負(fù)載中,就能夠使呼叫控制消息的IP地址信息和SIP負(fù)載中的地址信息一致,從而使用戶設(shè)備對(duì)于外網(wǎng)可見(jiàn),實(shí)現(xiàn)了NAT穿透。用戶設(shè)備發(fā)送呼叫控制消息的功能由呼叫控制消息傳輸模塊來(lái)實(shí)現(xiàn)。
在用戶設(shè)備與被叫用戶設(shè)備進(jìn)行媒體流傳輸過(guò)程中,由于NAT設(shè)備需要對(duì)基于RTP的數(shù)據(jù)報(bào)文的源地址和端口號(hào)進(jìn)行變換,而SDP(會(huì)話描述協(xié)議)中默認(rèn)RTP、RTCP使用的端口是順序遞增的關(guān)系,但是,經(jīng)過(guò)NAT設(shè)備的地址變換后的端口號(hào)破壞了這種順序遞增的關(guān)系,破壞了實(shí)時(shí)業(yè)務(wù)的端到端屬性,所以,SDP協(xié)議需要適當(dāng)?shù)臄U(kuò)展以支持NAT的應(yīng)用。
具體的擴(kuò)展方法為在SDP中增加RTCP端口屬性的說(shuō)明,如m=audio 49170 RTP/AVP 0a=rtcp53020 IN IP4 126.16.64.4表示RTP端口49170對(duì)應(yīng)的RTCP端口為53020,而不是49171。
下面結(jié)合附圖2對(duì)本發(fā)明的IMS網(wǎng)絡(luò)中NAT穿透方法進(jìn)行說(shuō)明。
圖2中,在步驟2-1,UE(用戶設(shè)備)通過(guò)與DNS/DHCP服務(wù)器的一系列信息交互后,得到STUN Server的地址信息。
在步驟2-2、UE通過(guò)UDP發(fā)送STUN Query消息給網(wǎng)絡(luò)側(cè)的STUN Server,STUN Query消息首先傳輸至NAT設(shè)備。
到步驟2-3、NAT設(shè)備將其接收的STUN Query消息的IP地址信息進(jìn)行地址轉(zhuǎn)換,具體的地址轉(zhuǎn)換過(guò)程為將STUN Query消息中的源地址信息轉(zhuǎn)換為其上與用戶設(shè)備對(duì)應(yīng)的出口的地址信息,將STUN Query消息中的端口信息轉(zhuǎn)換為其上與用戶設(shè)備對(duì)應(yīng)的端口信息。在地址轉(zhuǎn)換完成后,NAT設(shè)備將STUNQuery消息傳輸至STUN Server。
到步驟2-4、STUN Server接收到STUN Query消息后,經(jīng)過(guò)與DNS/DHCP服務(wù)器一系列的信息交互,得到UE對(duì)應(yīng)的P-CSCF的地址信息。
步驟2-5至步驟2-6、STUN Server在得到P-CSCF的地址消息后,產(chǎn)生STUNResponse消息,STUN Response消息中的MAPPED-ADDRESS屬性攜帶有其接收到的STUN Query消息中的源地址信息和端口信息,即UE在NAT上對(duì)應(yīng)的外部地址信息和端口信息,如圖2中,外部地址信息為210.123.34.12,端口信息為5678。另外,STUN Response消息的CSCF-ADDRESS屬性中還攜帶有P-CSCF地址信息,如圖2中,P-CSCF地址信息為xx.xx.xx.xx。CSCF-ADDRESS屬性是STUN Response消息的擴(kuò)展屬性。STUN Response消息通過(guò)NAT設(shè)備傳輸至UE。
到步驟2-7、UE通過(guò)STUN Response消息體中承載的信息得知其在NAT上的外部地址信息、端口信息和P-CSCF的地址信息,將NAT上的外部地址信息和端口信息填入呼叫控制消息的SIP負(fù)載中,并根據(jù)P-CSCF的地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。呼叫控制消息如Register,Invite消息等。圖2中,呼叫控制消息的SIP負(fù)載中的地址信息、端口信息為210.123.34.125678。
到步驟2-8、NAT設(shè)備接收呼叫控制消息,轉(zhuǎn)換呼叫控制消息中的IP地址信息,并將呼叫控制消息傳輸至P-CSCF,這樣,呼叫控制消息中的IP地址信息和SIP負(fù)載中的IP地址信息一致,如均為圖2中的210.123.34.125678,使UE對(duì)外網(wǎng)可見(jiàn),實(shí)現(xiàn)了NAT穿透。
到步驟2-9至步驟2-10、P-CSCF將響應(yīng)成功的200OK消息通過(guò)NAT設(shè)備傳輸至UE。
雖然通過(guò)實(shí)施例描繪了本發(fā)明,本領(lǐng)域普通技術(shù)人員知道,本發(fā)明有許多變形和變化而不脫離本發(fā)明的精神,本發(fā)明的申請(qǐng)文件的權(quán)利要求包括這些變形和變化。
權(quán)利要求
1.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng),其特征在于,所述系統(tǒng)包括至少一個(gè)用戶設(shè)備、網(wǎng)絡(luò)地址轉(zhuǎn)換NAT設(shè)備和IMS網(wǎng)絡(luò)側(cè),IMS網(wǎng)絡(luò)側(cè)設(shè)置有至少一個(gè)UDP的簡(jiǎn)單NAT穿透STUN服務(wù)器,用戶設(shè)備作為STUN客戶端;用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息;所述用戶設(shè)備將其獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
2.如權(quán)利要求1所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng),其特征在于,所述用戶設(shè)備包括獲取STUN服務(wù)器地址信息模塊通過(guò)與域名服務(wù)器/動(dòng)態(tài)主機(jī)配置協(xié)議DNS/DHCP服務(wù)器的信息交互獲取STUN服務(wù)器的地址信息,并將其傳輸至獲取對(duì)外地址端口模塊;獲取對(duì)外地址端口模塊根據(jù)其接收的STUN服務(wù)器的地址信息將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器,并將其接收的、STUN服務(wù)器傳輸來(lái)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息傳輸至呼叫控制消息傳輸模塊;呼叫控制消息傳輸模塊將其接收的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)其接收的P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
3.如權(quán)利要求1或2所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng),其特征在于,所述STUN服務(wù)器包括獲取P-CSCF地址信息模塊在STUN服務(wù)器接收到用戶設(shè)備通過(guò)NAT設(shè)備傳輸來(lái)的請(qǐng)求消息后,從DNS/DHCP服務(wù)器處獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息,并將其傳輸至響應(yīng)模塊;響應(yīng)模塊從STUN服務(wù)器接收的請(qǐng)求消息中獲取NAT出口的對(duì)外地址、端口信息,并將NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息承載于響應(yīng)消息中,通過(guò)NAT設(shè)備傳輸至相應(yīng)的用戶設(shè)備。
4.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,包括a、作為STUN客戶端的用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息;b、用戶設(shè)備將獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
5.如權(quán)利要求4所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述步驟a具體包括a1、用戶設(shè)備獲取STUN服務(wù)器的地址信息;a2、用戶設(shè)備中將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器;a3、STUN服務(wù)器在接收到請(qǐng)求消息后,獲取用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址和端口信息,并從DNS/DHCP服務(wù)器處獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息;a4、STUN服務(wù)器將其獲取的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息承載于響應(yīng)消息中,并通過(guò)NAT設(shè)備傳輸至用戶設(shè)備。
6.如權(quán)利要求5所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述步驟a1具體為用戶設(shè)備通過(guò)與DNS/DHCP服務(wù)器的信息交互獲取STUN服務(wù)器的地址信息。
7.如權(quán)利要求5所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述步驟a2具體為用戶設(shè)備將用戶數(shù)據(jù)報(bào)協(xié)議的請(qǐng)求消息傳輸至NAT設(shè)備;NAT設(shè)備將請(qǐng)求消息中的源地址變換為用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址,將請(qǐng)求消息中的端口號(hào)信息變換為NAT設(shè)備的端口信息,并將請(qǐng)求消息傳輸至STUN服務(wù)器。
8.如權(quán)利要求7所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述步驟a3具體為STUN服務(wù)器從NAT設(shè)備傳輸來(lái)的請(qǐng)求消息中獲取用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息,并通過(guò)與DNS/DHCP服務(wù)器的信息交互獲取用戶設(shè)備對(duì)應(yīng)的P-CSCF地址信息。
9.如權(quán)利要求5、6、7或8所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述步驟a4具體為STUN服務(wù)器將NAT出口的對(duì)外地址和端口信息承載于STUN響應(yīng)消息的MAPPED-ADDRESS屬性中,將P-CSCF地址信息承載于擴(kuò)展設(shè)置的CSCF地址信息屬性中,并將STUN響應(yīng)消息傳輸至用戶設(shè)備。
10.如權(quán)利要求4、5、6、7或8所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述步驟b中呼叫控制消息的負(fù)載包括呼叫控制消息的SIP負(fù)載。
11.如權(quán)利要求4、5、6、7或8所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,所述方法還包括在用戶設(shè)備的會(huì)話描述協(xié)議SDP報(bào)文中承載實(shí)時(shí)傳輸控制協(xié)議RTCP的端口屬性信息。
12.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)中的用戶設(shè)備,其特征在于,所述用戶設(shè)備作為UDP的簡(jiǎn)單NAT穿透STUN客戶端;用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息;用戶設(shè)備將其獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
13.如權(quán)利要求1所述的一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)中的用戶設(shè)備,其特征在于,所述用戶設(shè)備包括獲取STUN服務(wù)器地址信息模塊通過(guò)與域名服務(wù)器/動(dòng)態(tài)主機(jī)配置協(xié)議DNS/DHCP服務(wù)器的信息交互獲取STUN服務(wù)器的地址信息,并將其傳輸至獲取對(duì)外地址端口模塊;獲取對(duì)外地址端口模塊根據(jù)其接收的STUN服務(wù)器的地址信息將請(qǐng)求用戶設(shè)備對(duì)應(yīng)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息的消息通過(guò)NAT設(shè)備傳輸至STUN服務(wù)器,并將其接收的、STUN服務(wù)器傳輸來(lái)的NAT出口的對(duì)外地址、端口信息和P-CSCF地址信息傳輸至呼叫控制消息傳輸模塊;呼叫控制消息傳輸模塊將其接收的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并根據(jù)其接收的P-CSCF地址信息將呼叫控制消息通過(guò)NAT設(shè)備傳輸至P-CSCF。
全文摘要
本發(fā)明提供一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透系統(tǒng)、方法和用戶設(shè)備,其系統(tǒng)和方法的核心均為在IMS網(wǎng)絡(luò)側(cè)設(shè)置至少一個(gè)STUN服務(wù)器,用戶設(shè)備作為STUN客戶端,用戶設(shè)備通過(guò)NAT設(shè)備從STUN服務(wù)器處獲取其對(duì)應(yīng)的NAT出口的對(duì)外地址信息、端口信息和P-CSCF地址信息,用戶設(shè)備將其獲取的NAT出口的對(duì)外地址信息、端口信息承載于呼叫控制消息的負(fù)載中,并通過(guò)NAT設(shè)備將呼叫控制消息傳輸至P-CSCF。本發(fā)明利用STUN協(xié)議,明確了IMS網(wǎng)絡(luò)中用戶設(shè)備的NAT穿透流程,使用戶設(shè)備對(duì)外網(wǎng)可見(jiàn),有效解決了固網(wǎng)接入IMS情況下的NAT穿透問(wèn)題,實(shí)現(xiàn)了完善固網(wǎng)接入IMS的規(guī)范流程的目的。
文檔編號(hào)H04L29/06GK1976356SQ20051012406
公開(kāi)日2007年6月6日 申請(qǐng)日期2005年11月28日 優(yōu)先權(quán)日2005年11月28日
發(fā)明者楊雁飛, 黃華 申請(qǐng)人:華為技術(shù)有限公司