專利名稱:下一代網(wǎng)絡(luò)業(yè)務(wù)穿越網(wǎng)絡(luò)地址轉(zhuǎn)換設(shè)備/防火墻的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及下一代網(wǎng)絡(luò)(NGN)業(yè)務(wù)穿越網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)設(shè)備或/和防火墻的方法,其中,NAT設(shè)備和/或防火墻在本發(fā)明中簡(jiǎn)寫(xiě)為NAT設(shè)備/防火墻。
背景技術(shù):
隨著網(wǎng)際協(xié)議(IP)網(wǎng)絡(luò)的蓬勃發(fā)展,迫切需要在IP網(wǎng)絡(luò)上發(fā)展更多種類的寬帶業(yè)務(wù),為了適應(yīng)這一需要提出了NGN。NGN是集話音、數(shù)據(jù)、傳真和視頻業(yè)務(wù)于一體的全新的、融合的網(wǎng)絡(luò),該網(wǎng)絡(luò)采用分層開(kāi)放式的網(wǎng)絡(luò)框架,各層之間通過(guò)明確、標(biāo)準(zhǔn)的功能接口進(jìn)行通信,通信所采用的協(xié)議通常包括H.323、SIP、MGCP和H.248協(xié)議。
在NGN的實(shí)際應(yīng)用中,由于網(wǎng)絡(luò)中的地址數(shù)量有限,因此,通常在例如企業(yè)網(wǎng)的局域網(wǎng)出口部署NAT設(shè)備/防火墻,用以將局域網(wǎng)內(nèi)的地址和端口號(hào)與外部網(wǎng)絡(luò)的地址和端口號(hào)進(jìn)行相互轉(zhuǎn)換,從而解決網(wǎng)絡(luò)地址數(shù)量有限所帶來(lái)的問(wèn)題。但這些NAT設(shè)備/防火墻通常不支持H.323、SIP、MGCP、H.248等協(xié)議,因此造成了NGN業(yè)務(wù)難于通過(guò)NAT設(shè)備/防火墻接入局域網(wǎng),從而為在這些局域網(wǎng)上開(kāi)展NGN業(yè)務(wù)帶來(lái)困難?,F(xiàn)有技術(shù)中,可采用兩種方法解決該問(wèn)題一種方法是通過(guò)對(duì)NAT設(shè)備/防火墻進(jìn)行升級(jí),使其支持H.323、SIP、MGCP、H.248等協(xié)議,從而使得NGN業(yè)務(wù)得以通過(guò)升級(jí)之后的NAT設(shè)備/防火墻進(jìn)入局域網(wǎng);另一種方法則并不對(duì)現(xiàn)有的NAT設(shè)備/防火墻進(jìn)行升級(jí),而是采用代理技術(shù)實(shí)現(xiàn)NGN業(yè)務(wù)對(duì)NAT設(shè)備/防火墻的穿越。
參見(jiàn)圖1,在采用代理技術(shù)實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻時(shí),在IP骨干網(wǎng)上設(shè)置一個(gè)代理,通過(guò)該代理實(shí)現(xiàn)對(duì)于H.323、SIP或者H.248等協(xié)議的信令和媒體流的代理功能。參見(jiàn)圖1,該代理可以由信令代理和媒體代理組成,下面分別對(duì)信令代理和媒體代理的實(shí)現(xiàn)功能加以介紹信令代理完成NGN終端之間的信令代理功能,代理NGN中的軟交換(SoftSwitch)設(shè)備完成呼叫控制功能,從防火墻/NAT設(shè)備內(nèi)部的NGN終端來(lái)看,該信令代理相當(dāng)于IP骨干網(wǎng)中的SoftSwitch設(shè)備,而對(duì)于IP骨干網(wǎng)中的SoftSwitch設(shè)備來(lái)說(shuō),該信令代理為防火墻/NAT設(shè)備內(nèi)部的NGN終端代理完成終端發(fā)起和接收呼叫的功能;從SoftSwitch設(shè)備來(lái)看,該信令代理就相當(dāng)于防火墻/NAT設(shè)備內(nèi)部的NGN終端。
媒體代理完成語(yǔ)音、視頻等媒體流的代理功能,在兩個(gè)NGN終端之間完成媒體流中繼功能,在兩個(gè)NGN終端通過(guò)IP骨干網(wǎng)發(fā)送和接收媒體流時(shí),首先將媒體流發(fā)送給媒體代理,然后由媒體代理將該媒體流發(fā)送給另一個(gè)NGN終端,對(duì)于圖1中所示防火墻/NAT設(shè)備內(nèi)部的NGN終端來(lái)說(shuō),該媒體代理相當(dāng)于網(wǎng)絡(luò)中的另一個(gè)NGN終端。
采用此種代理技術(shù),雖然能夠?qū)崿F(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻,但是仍然具有如下缺點(diǎn)(1)、采用該種代理技術(shù)實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻,需要NGN終端設(shè)備中用于傳輸媒體流的實(shí)時(shí)傳輸協(xié)議(RTP)接收端口和RTP發(fā)送端口為同一端口,而當(dāng)前所采用的NGN終端并不都滿足這項(xiàng)要求;其中,該項(xiàng)代理技術(shù)要求NGN終端上的RTP接收端口和RTP發(fā)送端口為同一端口的原因在于按照協(xié)議的規(guī)定,對(duì)于NGN的一個(gè)呼叫來(lái)說(shuō),呼叫雙方所建立的用于傳輸媒體流的通道是單向的,也就是說(shuō),在NGN終端間傳輸媒體流時(shí),需要建立兩個(gè)RTP通道,一個(gè)為只用于發(fā)送媒體流的發(fā)送RTP通道,另一個(gè)為只用于接收媒體流的接收RTP通道,在NGN終端的RTP發(fā)送端口與RTP接收端口一致的情況下,在防火墻/NAT設(shè)備上與發(fā)送RTP通道和接收RTP通道相對(duì)應(yīng)的發(fā)送和接收會(huì)話連接也是相同的,在此情況下,NGN終端在發(fā)送RTP通道上發(fā)送一個(gè)報(bào)文后,防火墻/NAT設(shè)備就會(huì)打開(kāi)發(fā)送RTP通道的會(huì)話連接,于是,也就相當(dāng)于同時(shí)打開(kāi)了接收RTP通道的會(huì)話連接,這樣,NGN終端間就可以利用接通的發(fā)送RTP通道和接收RTP通道傳輸媒體流,從而實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻;但是,如果NGN終端的RTP發(fā)送端口與RTP接收端口不一致,那么在NAT設(shè)備/防火墻上的發(fā)送RTP通道和接收RTP通道的會(huì)話連接就會(huì)不同,在采用該現(xiàn)有代理技術(shù)的情況下,NGN終端在利用發(fā)送RTP通道發(fā)送報(bào)文時(shí),相應(yīng)地只能在防火墻/NAT設(shè)備上打開(kāi)發(fā)送RTP通道的會(huì)話連接,而接收RTP通道的會(huì)話連接則仍處于關(guān)閉狀態(tài),這樣,就不能利用接收RTP通道接收媒體流,從而無(wú)法完成NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻;(2)、根據(jù)防火墻/NAT設(shè)備所設(shè)置的限制,只有從相對(duì)于該防火墻/NAT設(shè)備的內(nèi)部網(wǎng)絡(luò)中所發(fā)送的報(bào)文才能打開(kāi)防火墻/NAT設(shè)備上的會(huì)話連接,而對(duì)于一些例如實(shí)現(xiàn)查詢業(yè)務(wù)的NGN終端來(lái)說(shuō),其被配置為只需接收?qǐng)?bào)文而無(wú)需發(fā)送報(bào)文,因此,這些NGN終端無(wú)法通過(guò)發(fā)送報(bào)文打開(kāi)防火墻/NAT設(shè)備上的會(huì)話連接,從而造成該現(xiàn)有代理技術(shù)無(wú)法應(yīng)用,NGN業(yè)務(wù)也就因此無(wú)法穿越防火墻/NAT設(shè)備;(3)、由于在采用該代理技術(shù)的過(guò)程中,設(shè)置于IP骨干網(wǎng)上的代理需要學(xué)習(xí)經(jīng)過(guò)防火墻/NAT設(shè)備后的RTP流的IP地址和端口號(hào),而惡意用戶可能在該過(guò)程中對(duì)代理進(jìn)行攻擊,利用假冒的IP地址欺騙報(bào)文使得代理學(xué)習(xí)到錯(cuò)誤的IP地址和端口號(hào),因此,采用此種代理技術(shù)實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備,容易受到IP地址欺騙的攻擊,安全性能差。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備的方法,該方法的應(yīng)用可以使得RTP發(fā)送端口與RTP接收端口不一致的NGN終端能夠?qū)崿F(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備,并且,本發(fā)明還能解決對(duì)于無(wú)發(fā)送報(bào)文能力的NGN終端實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備的方法。
本發(fā)明為一種下一代網(wǎng)絡(luò)NGN業(yè)務(wù)穿越網(wǎng)絡(luò)地址轉(zhuǎn)換NAT設(shè)備/防火墻的方法,其特征在于,在防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)中增加穿越客戶機(jī)TraverseClient,在骨干網(wǎng)上增加穿越服務(wù)器Traverse Server,Traverse Client與TraverseServer之間通過(guò)防火墻/NAT設(shè)備上所開(kāi)放的端口建立通信連接,該方法實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻具體包括以下步驟A、Traverse Server自骨干網(wǎng)代理設(shè)備中的信令代理上獲得至少包括通信雙方網(wǎng)際協(xié)議IP地址、實(shí)時(shí)傳輸協(xié)議RTP發(fā)送端口號(hào)和RTP接收端口號(hào)的信息;B、Traverse Server將步驟A中所獲得的信息發(fā)送給Traverse Client設(shè)備;C、Traverse Client根據(jù)所獲得的信息,模擬防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)中的NGN終端,在該NGN終端的發(fā)送RTP端口上和接收RTP端口上發(fā)送報(bào)文至防火墻/NAT設(shè)備;D、防火墻/NAT設(shè)備收到步驟C所述的報(bào)文后,分別打開(kāi)發(fā)送RTP通道的會(huì)話連接和接收RIP通道的會(huì)話連接,同時(shí),防火墻/NAT設(shè)備在對(duì)所收到的報(bào)文進(jìn)行地址轉(zhuǎn)換后,將這些報(bào)文發(fā)送到骨干網(wǎng)上的媒體代理;E、媒體代理收到步驟D中所發(fā)送來(lái)的報(bào)文,從這些報(bào)文中獲得進(jìn)行地址轉(zhuǎn)換后的地址信息,其中,該地址信息至少包括IP地址、RTP發(fā)送端口號(hào)和RTP接收端口號(hào),通信雙方利用媒體代理,在已經(jīng)打開(kāi)會(huì)話連接的發(fā)送RTP通道和接收RTP通道上傳輸NGN數(shù)據(jù)。
其中,步驟C包括Traverse Client將所述NGN終端的IP地址作為所述報(bào)文的源IP地址,將由信令代理所確定的發(fā)送RTP端口作為所述報(bào)文的源端口地址,Traverse Client將該報(bào)文發(fā)送給所述防火墻/NAT設(shè)備;和Traverse Client將所述NGN終端的IP地址作為所述報(bào)文的源IP地址,將由信令代理所確定的接收RTP端口作為所述報(bào)文的源端口地址,Traverse Client將該報(bào)文發(fā)送給所述防火墻/NAT設(shè)備。
其中,當(dāng)步驟C中所述NGN終端的發(fā)送RTP端口和接收RTP端口為同一端口時(shí),步驟C包括Traverse Client將所述NGN終端的IP地址作為所述報(bào)文的源IP地址,將所述的同一端口作為所述報(bào)文的源端口地址,Traverse Client將該報(bào)文發(fā)送給所述防火墻/NAT設(shè)備。
其中,所述Traverse Client與Traverse Server之間通過(guò)防火墻/NAT設(shè)備上所開(kāi)放的端口建立通信連接包括Traverse Client與Traverse Server之間采用相互認(rèn)證、通信數(shù)據(jù)加密的方式建立所述通信連接。
其中,步驟E中所述媒體收到報(bào)文進(jìn)一步包括媒體代理對(duì)接收到的報(bào)文進(jìn)行驗(yàn)證,驗(yàn)證通過(guò)后執(zhí)行所述從這些報(bào)文中獲得地址信息的步驟。
其中,步驟B進(jìn)一步包括Traverse Server向Traverse Client發(fā)送密鑰,并同時(shí)將該密鑰發(fā)送給媒體代理,步驟C進(jìn)一步包括在所述報(bào)文中添加所述密鑰,步驟E中所述媒體代理收到報(bào)文進(jìn)一步包括媒體代理根據(jù)所得到的密鑰對(duì)所述報(bào)文進(jìn)行解密。
其中,所述RTP通道為RTP數(shù)據(jù)通道和/或RTP控制通道。
其中,所述增加Traverse Client為將以軟件模塊實(shí)現(xiàn)的Traverse Client運(yùn)行于所述防火墻/NAT設(shè)備內(nèi)部的通信設(shè)備上。
其中,所述增加Traverse Client為將以獨(dú)立設(shè)備實(shí)現(xiàn)的Traverse Client增加于防火墻/NAT設(shè)備內(nèi)側(cè)的用戶網(wǎng)絡(luò)中。
其中,所述增加Traverse Server為將以獨(dú)立設(shè)備實(shí)現(xiàn)的Traverse Server增加在所述骨干網(wǎng)中。
其中,所述增加Traverse Server為將所述Traverse Server與骨干網(wǎng)上的信令代理和/或媒體代理集成在一起。
其中,所述增加Traverse Client和Traverse Server進(jìn)一步包括增加多個(gè)所述Traverse Client和Traverse Server,各個(gè)Traverse Client之間以及各個(gè)Traverse Server之間相互備份。
可見(jiàn),由于本發(fā)明新增加兩個(gè)穿越部件用以協(xié)助現(xiàn)有技術(shù)的代理部件共同完成代理,從而可以實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備,該種方法不要求NGN終端的RTP發(fā)送端口和RTP接收端口相一致,并且使得對(duì)于被配置為只需接收?qǐng)?bào)文的NGN終端也可實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備,并且,由于本發(fā)明能夠提供認(rèn)證和加密機(jī)制,以及本發(fā)明在傳輸報(bào)文時(shí)所具有難于被攻擊者盜用信息的特點(diǎn),本發(fā)明還具有安全性高的特點(diǎn)。
圖1為采用現(xiàn)有代理技術(shù)實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備的組網(wǎng)示意圖。
圖2為采用本發(fā)明代理技術(shù)實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備的組網(wǎng)示意圖。
圖3為本發(fā)明實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備的流程圖。
具體實(shí)施例方式
本發(fā)明為一種NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻的方法,該方法在現(xiàn)有代理技術(shù)的基礎(chǔ)上,新增加兩個(gè)用以進(jìn)行代理的穿越部件,使用新增的穿越部件實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻。
在NGN中,NGN終端之間采用RTP通道進(jìn)行通信,該RTP通道分為兩種類型,一種為RTP數(shù)據(jù)通道,用于傳輸NGN業(yè)務(wù)中的數(shù)據(jù)或媒體流,另一種為RTP控制通道(RTCP通道),該RTCP通道用于對(duì)RTP數(shù)據(jù)通道進(jìn)行監(jiān)控,以保證RTP數(shù)據(jù)通道傳輸數(shù)據(jù)的質(zhì)量;在NGN終端之間建立RTP數(shù)據(jù)通道的同時(shí)會(huì)建立相應(yīng)的RTCP通道,RTCP通道同與之對(duì)應(yīng)的RTP數(shù)據(jù)通道存在對(duì)應(yīng)關(guān)系,根據(jù)該對(duì)應(yīng)關(guān)系,可以利用RTP數(shù)據(jù)通道的IP地址和端口號(hào)確定相應(yīng)的RTCP通道的IP地址和端口號(hào)。以下具體實(shí)施例只針對(duì)RTP數(shù)據(jù)通道進(jìn)行描述,本發(fā)明所述的方法也同樣適用于RTCP通道。
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
參見(jiàn)圖2,在現(xiàn)有技術(shù)所述的代理技術(shù)基礎(chǔ)之上,本發(fā)明在IP骨干網(wǎng)中再設(shè)置一個(gè)穿越服務(wù)器(Traverse Server)部件,在防火墻/NAT設(shè)備內(nèi)部的網(wǎng)絡(luò)中再設(shè)置一個(gè)穿越客戶端(Traverse Client)部件,Traverse Server與Traverse Client之間通過(guò)防火墻/NAT設(shè)備進(jìn)行通信,其通信方式可以采用特定TCP端口通信或UDP端口通信,防火墻/NAT設(shè)備上開(kāi)放Traverse Server與Traverse Client之間進(jìn)行通信的端口,以使得兩者的通信不會(huì)受到防火墻/NAT設(shè)備的影響。
在本發(fā)明中,Traverse Server可以是獨(dú)立設(shè)備,與信令代理和媒體代理采用某種協(xié)議進(jìn)行通信,或者,Traverse Server也可與信令代理或媒體代理實(shí)現(xiàn)在一起;Traverse Client可以作為一個(gè)軟件模塊,運(yùn)行在PC機(jī)或者工作站上,也可以作為一個(gè)獨(dú)立設(shè)備提供;為了提高可靠性,在實(shí)際組網(wǎng)中可以部署多個(gè)Traverse Server和Traverse Client,各個(gè)Traverse Server之間以及各個(gè)Traverse Client之間互相備份,以提高組網(wǎng)的可靠性,在采取上述備份時(shí),信令代理配置選取相互備份的Traverse Server中的一個(gè)作為主用,其余的Traverse Server作為備用,當(dāng)主用Traverse Server出現(xiàn)故障時(shí),選取另一個(gè)備用Traverse Server作為主用;在各個(gè)相互備份的Traverse Client中,通過(guò)配置確定一個(gè)主用Traverse Client,其余的Traverse Client作為備用,一個(gè)備用Traverse Client對(duì)主用Traverse Client的工作狀態(tài)進(jìn)行監(jiān)視,當(dāng)發(fā)現(xiàn)主用Traverse Client出現(xiàn)故障時(shí),該備用Traverse Client向主用TraverseServer發(fā)起連接,用以充當(dāng)主用Traverse Client。
采用圖2所示的組網(wǎng)方式,本發(fā)明可以通過(guò)圖3所示步驟實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻
步驟301IP骨干網(wǎng)上的信令代理利用信令代理功能獲得防火墻/NAT設(shè)備內(nèi)側(cè)和外側(cè)的通訊雙方NGN終端的IP地址、NGN終端協(xié)商出的RTP端口號(hào),并且,信令代理為媒體代理動(dòng)態(tài)分配本次呼叫在媒體代理上進(jìn)行傳輸時(shí)的IP地址和端口號(hào),然后Traverse Server從信令代理得到上述信令代理已經(jīng)獲得的信息,該信息至少包括IP地址、發(fā)送RTP端口號(hào)和接收RTP端口號(hào);其中,在該步驟中,信令代理能夠根據(jù)所獲得的IP地址、端口號(hào)以及協(xié)議號(hào),利用信令代理功能確定雙方的發(fā)送和接收RTP的連接;步驟302Traverse Server將步驟301所獲得的通信雙方的IP地址、端口號(hào)發(fā)送給企業(yè)網(wǎng)上的Traverse Client;步驟303Traverse Client根據(jù)所得到的通信雙方的IP地址、端口號(hào)以及協(xié)議號(hào),模擬企業(yè)網(wǎng)內(nèi)部的NGN終端,在發(fā)送RTP端口上和接收RTP端口上分別向防火墻/NAT設(shè)備發(fā)送報(bào)文,防火墻/NAT設(shè)備收到這兩個(gè)報(bào)文后,分別打開(kāi)與這兩個(gè)報(bào)文相對(duì)應(yīng)的發(fā)送RTP通道的會(huì)話連接和接收RTP通道的會(huì)話連接,然后,防火墻/NAT設(shè)備對(duì)這兩個(gè)報(bào)文中企業(yè)網(wǎng)的IP地址和端口號(hào)與外部網(wǎng)絡(luò)的地址和端口號(hào)進(jìn)行相互轉(zhuǎn)換,將這兩個(gè)報(bào)文發(fā)送到媒體代理;其中,本步驟中Traverse Client模擬企業(yè)網(wǎng)上的NGN終端在發(fā)送RTP端口上和接收RTP端口上發(fā)送報(bào)文的具體實(shí)現(xiàn)方法為T(mén)raverse Client將企業(yè)網(wǎng)中的NGN終端的IP地址填入所發(fā)送的用戶數(shù)據(jù)報(bào)協(xié)議(UDP)報(bào)文的源IP地址項(xiàng)中,將Traverse Server傳輸來(lái)的該NGN終端的發(fā)送RTP端口或接收RTP端口填入所分別發(fā)送的UDP報(bào)文的源端口號(hào)中,這樣,Traverse Client所發(fā)送的UDP報(bào)文在發(fā)送過(guò)程中,其源IP地址就為企業(yè)網(wǎng)NGN終端的IP地址,其源端口號(hào)就為信令代理所確定的企業(yè)網(wǎng)NGN終端的發(fā)送RTP端口或接收RTP端口,以此方式實(shí)現(xiàn)了所述的模擬NGN終端發(fā)送報(bào)文過(guò)程;其中,本步驟所發(fā)送的報(bào)文的目的地址和端口號(hào)是信令代理為這次呼叫所分配的媒體代理上的一個(gè)IP地址和端口號(hào),該IP地址和端口號(hào)由Traverse Server在步驟302中傳輸給Traverse Client;
其中,在本發(fā)明的其它實(shí)施例中,NGN終端的發(fā)送RTP端口和接收RTP端口可以為同一端口,在此種情況下,Traverse Client只需按照上述方法構(gòu)造一個(gè)UDP報(bào)文發(fā)送到防火墻/NAT設(shè)備即可,該UDP報(bào)文的源IP地址為防火墻/NAT設(shè)備內(nèi)側(cè)的NGN終端的IP地址,其源端口號(hào)就為NGN終端上所述的同一端口;步驟304媒體代理收到步驟303所發(fā)送的兩個(gè)報(bào)文后,從這兩個(gè)報(bào)文中得到在經(jīng)過(guò)NAT設(shè)備/防火墻進(jìn)行地址轉(zhuǎn)換之后的企業(yè)網(wǎng)中的終端IP地址和RTP接收和發(fā)送端口號(hào);媒體代理得到該IP地址和端口號(hào)之后,就可以使得企業(yè)網(wǎng)中的NGN終端與另一NGN終端通過(guò)發(fā)送RTP通道和接收RTP通道傳輸媒體流,從而實(shí)現(xiàn)NGN業(yè)務(wù)穿越防火墻/NAT設(shè)備。
在本發(fā)明中,出于安全性的考慮,Traverse Server與Traverse Client在建立連接時(shí)可以采用高安全性的認(rèn)證方式,在數(shù)據(jù)傳輸時(shí)采用數(shù)據(jù)加密的方式,其中,認(rèn)證方式可以采用現(xiàn)有技術(shù)中的MD5或者SHA-1認(rèn)證方式,數(shù)據(jù)加密可以采用DES或3DES算法;其中,MD5和SHA-1是IP網(wǎng)絡(luò)中通用的認(rèn)證方式,用于需要通信雙方互相認(rèn)證,DES和3DES是通用加密算法,用于IP網(wǎng)絡(luò)中對(duì)稱方式加密。另外,同樣出于安全性的考慮,在TraverseClient向媒體代理發(fā)送數(shù)據(jù)報(bào)文時(shí),也可采用認(rèn)證加密方式,在本發(fā)明實(shí)施例中的具體實(shí)現(xiàn)方法為在Traverse Server向Traverse Client發(fā)送IP地址、端口號(hào)以及協(xié)議號(hào)時(shí),同時(shí)攜帶一個(gè)密鑰和需要被加密的數(shù)據(jù),Traverse Server同時(shí)將該密鑰以及需要被加密的數(shù)據(jù)告訴給媒體代理,Traverse Client在向媒體代理發(fā)送數(shù)據(jù)時(shí)對(duì)發(fā)送報(bào)文的數(shù)據(jù)部分利用該密鑰進(jìn)行加密,而媒體代理則根據(jù)得到的密鑰對(duì)接收到的報(bào)文的數(shù)據(jù)部分進(jìn)行解密,從而可以對(duì)數(shù)據(jù)部分進(jìn)行驗(yàn)證;采用此種方式,可以更好地防止可能出現(xiàn)的IP地址欺騙情況。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種下一代網(wǎng)絡(luò)NGN業(yè)務(wù)穿越網(wǎng)絡(luò)地址轉(zhuǎn)換NAT設(shè)備/防火墻的方法,其特征在于,在防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)中增加穿越客戶機(jī)TraverseClient,在骨干網(wǎng)上增加穿越服務(wù)器Traverse Server,Traverse Client與TraverseServer之間通過(guò)防火墻/NAT設(shè)備上所開(kāi)放的端口建立通信連接,該方法實(shí)現(xiàn)NGN業(yè)務(wù)穿越NAT設(shè)備/防火墻具體包括以下步驟A、Traverse Server自骨干網(wǎng)代理設(shè)備中的信令代理上獲得至少包括通信雙方網(wǎng)際協(xié)議IP地址、實(shí)時(shí)傳輸協(xié)議RTP發(fā)送端口號(hào)和RTP接收端口號(hào)的信息;B、Traverse Server將步驟A中所獲得的信息發(fā)送給Traverse Client設(shè)備;C、Traverse Client根據(jù)所獲得的信息,模擬防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)中的NGN終端,在該NGN終端的發(fā)送RTP端口上和接收RTP端口上發(fā)送報(bào)文至防火墻/NAT設(shè)備;D、防火墻/NAT設(shè)備收到步驟C所述的報(bào)文后,分別打開(kāi)發(fā)送RTP通道的會(huì)話連接和接收RTP通道的會(huì)話連接,同時(shí),防火墻/NAT設(shè)備在對(duì)所收到的報(bào)文進(jìn)行地址轉(zhuǎn)換后,將這些報(bào)文發(fā)送到骨干網(wǎng)上的媒體代理;E、媒體代理收到步驟D中所發(fā)送來(lái)的報(bào)文,從這些報(bào)文中獲得進(jìn)行地址轉(zhuǎn)換后的地址信息,其中,該地址信息至少包括IP地址、RTP發(fā)送端口號(hào)和RTP接收端口號(hào),通信雙方利用媒體代理,在已經(jīng)打開(kāi)會(huì)話連接的發(fā)送RTP通道和接收RTP通道上傳輸NGN數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟C包括Traverse Client將所述NGN終端的IP地址作為所述報(bào)文的源IP地址,將由信令代理所確定的發(fā)送RTP端口作為所述報(bào)文的源端口地址,Traverse Client將該報(bào)文發(fā)送給所述防火墻/NAT設(shè)備;和Traverse Client將所述NGN終端的IP地址作為所述報(bào)文的源IP地址,將由信令代理所確定的接收RTP端口作為所述報(bào)文的源端口地址,Traverse Client將該報(bào)文發(fā)送給所述防火墻/NAT設(shè)備。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)步驟C中所述NGN終端的發(fā)送RTP端口和接收RTP端口為同一端口時(shí),步驟C包括Traverse Client將所述NGN終端的IP地址作為所述報(bào)文的源IP地址,將所述的同一端口作為所述報(bào)文的源端口地址,Traverse Client將該報(bào)文發(fā)送給所述防火墻/NAT設(shè)備。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于所述Traverse Client與TraverseServer之間通過(guò)防火墻/NAT設(shè)備上所開(kāi)放的端口建立通信連接包括Traverse Client與Traverse Server之間采用相互認(rèn)證、通信數(shù)據(jù)加密的方式建立所述通信連接。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于步驟E中所述媒體收到報(bào)文進(jìn)一步包括媒體代理對(duì)接收到的報(bào)文進(jìn)行驗(yàn)證,驗(yàn)證通過(guò)后執(zhí)行所述從這些報(bào)文中獲得地址信息的步驟。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟B進(jìn)一步包括TraverseServer向Traverse Client發(fā)送密鑰,并同時(shí)將該密鑰發(fā)送給媒體代理,步驟C進(jìn)一步包括在所述報(bào)文中添加所述密鑰,步驟E中所述媒體代理收到報(bào)文進(jìn)一步包括媒體代理根據(jù)所得到的密鑰對(duì)所述報(bào)文進(jìn)行解密。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于所述RTP通道為RTP數(shù)據(jù)通道和/或RTP控制通道。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于所述增加Traverse Client為將以軟件模塊實(shí)現(xiàn)的Traverse Client運(yùn)行于所述防火墻/NAT設(shè)備內(nèi)部的通信設(shè)備上。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于所述增加Traverse Client為將以獨(dú)立設(shè)備實(shí)現(xiàn)的Traverse Client增加于防火墻/NAT設(shè)備內(nèi)側(cè)的用戶網(wǎng)絡(luò)中。
10.根據(jù)權(quán)利要求1所述的方法,其特征在于所述增加Traverse Server為將以獨(dú)立設(shè)備實(shí)現(xiàn)的Traverse Server增加在所述骨干網(wǎng)中。
11.根據(jù)權(quán)利要求1所述的方法,其特征在于所述增加Traverse Server為將所述Traverse Server與骨干網(wǎng)上的信令代理和/或媒體代理集成在一起。
12.根據(jù)權(quán)利要求1所述的方法,其特征在于所述增加Traverse Client和Traverse Server進(jìn)一步包括增加多個(gè)所述Traverse Client和Traverse Server,各個(gè)Traverse Client之間以及各個(gè)Traverse Server之間相互備份。
全文摘要
本發(fā)明公開(kāi)了一種下一代網(wǎng)絡(luò)NGN業(yè)務(wù)穿越網(wǎng)絡(luò)地址轉(zhuǎn)換NAT設(shè)備/防火墻的方法,該方法在防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)中增加穿越客戶機(jī)Traverse Client,在骨干網(wǎng)上增加穿越服務(wù)器Traverse Server,Traverse Client與Traverse Server之間通過(guò)防火墻/NAT設(shè)備上所開(kāi)放的端口建立通信連接,Traverse Server自骨干網(wǎng)的信令代理上獲得通信雙方至少包括IP地址和端口號(hào)的信息,然后將該信息傳輸給防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)中的Traverse Client,Traverse Client根據(jù)所收到的信息,模擬NGN終端在該終端的RTP發(fā)送端口和RTP接收端口上發(fā)送報(bào)文,打開(kāi)防火墻/NAT設(shè)備上的會(huì)話連接,從而接通防火墻/NAT設(shè)備內(nèi)側(cè)用戶網(wǎng)絡(luò)上的NGN終端與媒體代理之間的RTP通道。
文檔編號(hào)H04L29/06GK1606304SQ20031010052
公開(kāi)日2005年4月13日 申請(qǐng)日期2003年10月10日 優(yōu)先權(quán)日2003年10月10日
發(fā)明者王世宏 申請(qǐng)人:華為技術(shù)有限公司