私網(wǎng)穿越技術(shù)在軟交換體系中的應(yīng)用
三、一種私網(wǎng)穿越問(wèn)題的解決方法
1. 解決NAPT穿越問(wèn)題的各種方法
?。?)NAT/ALG方法
此方法通過(guò)在防火墻或路由器上,增加對(duì)VoIP相關(guān)的應(yīng)用層協(xié)議的識(shí)別和處理能力,來(lái)實(shí)現(xiàn)私網(wǎng)穿越。這種方案比較直觀,但是最大缺點(diǎn)就是對(duì)于用戶(hù)來(lái)說(shuō),必須更換或升級(jí)他們的路由器或防火墻,并且隨著相關(guān)協(xié)議的發(fā)展和擴(kuò)充,設(shè)備也必須跟著進(jìn)行升級(jí)。
(2)為私網(wǎng)設(shè)備設(shè)置代理的方法
這種方法不用對(duì)用戶(hù)設(shè)備做任何改動(dòng),僅在運(yùn)營(yíng)軟交換網(wǎng)絡(luò)的局端增加一種特殊的Proxy設(shè)備,就可以實(shí)現(xiàn)私網(wǎng)的穿越。筆者認(rèn)為,這種技術(shù)與前面的技術(shù)相比,具有更大的優(yōu)越性。這種Proxy,在進(jìn)行信令的代理和轉(zhuǎn)換的同時(shí),也進(jìn)行媒體流的代理,我們暫且稱(chēng)其為NAT/FW Proxy。
?。?)其它的一些方案
其它穿越私網(wǎng)的方案,還有MIDCOM 方案、STUN方案、TURN方案等,這些方案與NAT/ALG方案類(lèi)似,不是需要升級(jí)路由器、防火墻,就是需要升級(jí)終端設(shè)備。
2. 用NAT/FW Proxy解決私網(wǎng)PAT問(wèn)題
以圖1為例,將NAT/FW Proxy設(shè)備添加到軟交換網(wǎng)絡(luò)中,形成的如圖5所示的網(wǎng)絡(luò)結(jié)構(gòu)。添加了NAT/FW Proxy設(shè)備以后,所有私網(wǎng)網(wǎng)關(guān)(路由器或防火墻)后面的終端設(shè)備,都要將注冊(cè)地址從軟交換設(shè)備地址更改為NAT/FW Proxy設(shè)備的IP地址。而NAT/FW Proxy設(shè)備與軟交換設(shè)備之間的交互可以采用SIP,MGCP或者H.248等協(xié)議,這與其代理的設(shè)備類(lèi)型有關(guān)。
一方面,在設(shè)備向NAT/FW Proxy發(fā)出注冊(cè)信息后,NAT/FW Proxy會(huì)為設(shè)備分配一個(gè)代理信令端口,然后用NAT/FW Proxy的地址替換原注冊(cè)信息中的終端地址(Contact域),并通過(guò)這個(gè)端口向軟交換發(fā)送。這樣,今后無(wú)論是終端發(fā)向軟交換的信令消息,還是軟交換發(fā)向終端的信令消息,都會(huì)經(jīng)過(guò)NAT/FW Proxy,以便于其對(duì)這些信令進(jìn)行特殊處理。另一方面,當(dāng)私網(wǎng)中的終端設(shè)備向NAT/FW Proxy設(shè)備發(fā)出注冊(cè)消息時(shí),安裝在私網(wǎng)外層的私網(wǎng)網(wǎng)關(guān)就會(huì)給這個(gè)連接隨機(jī)分配一個(gè)合法IP地址與端口號(hào),形成一個(gè)“窗口”。NAT/FW PROXY設(shè)備收到注冊(cè)消息后,只要能夠設(shè)法保持這個(gè)“窗口”一直開(kāi)放,然后把這個(gè)端口號(hào)與在設(shè)備上分配的代理端口號(hào)綁定,就相當(dāng)于建立了一條設(shè)備到軟交換之間透明的信令通道,也就解決了NAPT中的PAT問(wèn)題。
保持這個(gè)“窗口”的方法,根據(jù)終端的不同也會(huì)有所區(qū)別。比如對(duì)于SIP終端,可以設(shè)置一個(gè)較小的注冊(cè)有效期,這樣終端設(shè)備就會(huì)不斷的向NAT/FW Proxy發(fā)出注冊(cè)消息。對(duì)于MGCP終端,可以讓NAT/FW Proxy向其不斷發(fā)送AUEP消息,然后由終端發(fā)相應(yīng)消息來(lái)保持“窗口”的開(kāi)放。無(wú)論哪種方式,都要保證終端發(fā)送消息的時(shí)間間隔要小于“窗口”的開(kāi)放時(shí)限。
3. 用NAT/FW Proxy解決私網(wǎng)NAT問(wèn)題
假設(shè)所有終端都是SIP終端,軟交換與終端間的通訊也采用標(biāo)準(zhǔn)的SIP協(xié)議。如圖5中的配置,由于終端A和終端B都是私網(wǎng)中的設(shè)備,因此在向NAT/FW Proxy注冊(cè)時(shí)在私網(wǎng)設(shè)備中被分配了訪問(wèn)外部的端口號(hào),假設(shè)分別為123.44.55.11:1050(終端A)和123.44.55.22:1060(終端B),同時(shí)在NAT/FW Proxy上都被分配了代理信令端口,假設(shè)分別為123.44.55.77:1001(終端A)和123.44.55.77:1002(終端B)?,F(xiàn)在由A向B發(fā)起呼叫,INVITE消息通過(guò)私網(wǎng)網(wǎng)關(guān)后到達(dá)NAT/FW PROXY,NAT/FW PROXY會(huì)將這條信令進(jìn)行代理轉(zhuǎn)換,并發(fā)給軟交換。如圖6、圖7所示:
軟交換在收到INVITE消息并做相應(yīng)處理后,準(zhǔn)備將其轉(zhuǎn)發(fā)給B,由于B也是通過(guò)NAT/FW Proxy代理注冊(cè)到軟交換的,因此發(fā)送的消息如圖8所示,由NAT/FW PROXY接收并做代理轉(zhuǎn)換后,發(fā)送給B外層的路由器或防火墻,轉(zhuǎn)換結(jié)果如圖9所示。
評(píng)論