專利名稱:IP電話透過支持Sock5協(xié)議的代理設(shè)備的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明屬于一種IP電話的實(shí)現(xiàn)方法,特別是IP電話透過支持Sock5協(xié)議的代理設(shè)備的實(shí)現(xiàn)方法。
目前在企業(yè)網(wǎng)絡(luò)中,有很多都在訪問Internet的出口處設(shè)置一個(gè)代理(Proxy)設(shè)備,使得Internet用戶無法直接訪問內(nèi)部網(wǎng)絡(luò),同時(shí)也可以對(duì)內(nèi)部用戶訪問Internet進(jìn)行管理。
代理(Proxy)設(shè)備中對(duì)用戶管理的安全認(rèn)證功能大多是通過Sock5來實(shí)現(xiàn)的,用戶首先必須通過Sock5的認(rèn)證,然后才能夠正常訪問Internet,Sock5的原理如下1首先客戶端設(shè)備向代理(Proxy)設(shè)備指定端口建立一個(gè)TCP連接,然后發(fā)送一個(gè)Sock5協(xié)議協(xié)商請(qǐng)求;代理(Proxy)設(shè)備若接受此協(xié)議協(xié)商請(qǐng)求,則返回一個(gè)確認(rèn)消息,否則返回拒絕消息。
2當(dāng)代理(Proxy)設(shè)備接受協(xié)議協(xié)商請(qǐng)求后,根據(jù)具體的情況可以發(fā)送下列三種請(qǐng)求之一
(1)CONNECT客戶端需要與一個(gè)Internet上的服務(wù)器建立TCP連接,在CONNECT請(qǐng)求中攜帶上Internet上的服務(wù)器的IP地址和端口號(hào),代理(Proxy)設(shè)備建立一個(gè)自己到Internet上的服務(wù)器的TCP連接,進(jìn)行TCP報(bào)文的轉(zhuǎn)發(fā),代理(Proxy)設(shè)備建立內(nèi)部和外部連接的映射關(guān)系,然后返回給客戶端它在映射中的內(nèi)部網(wǎng)絡(luò)的地址和端口,客戶端收到代理(Proxy)設(shè)備返回的地址和端口后,向此地址和端口發(fā)起連接,即可建立與Internet服務(wù)器的TCP連接。
(2)BIND客戶端需要作為一個(gè)服務(wù)器接受Internet上的TCP請(qǐng)求,則發(fā)送一個(gè)BIND請(qǐng)求,代理(Proxy)設(shè)備建立內(nèi)部和外部連接的映射關(guān)系后,把外部網(wǎng)絡(luò)的地址和端口號(hào)返回給客戶端,這樣客戶端就可以把此外部網(wǎng)絡(luò)的地址和端口號(hào)告訴Internet上的應(yīng)用,Internet上的應(yīng)用向此地址和端口發(fā)起TCP連接就可以建立與客戶端的TCP連接。
(3)UDP(用戶數(shù)據(jù)報(bào)協(xié)議)UDP請(qǐng)求與CONNECT類似,只不過CONNCT請(qǐng)求建立的是TCP連接,而UDP請(qǐng)求建立的是UDP連接。
當(dāng)采用SOCK5之后,客戶端不能直接與Internet上的程序進(jìn)行通訊,這就給IP電話的應(yīng)用帶來了問題,企業(yè)內(nèi)部網(wǎng)絡(luò)上的客戶端不能與Internet上的IP電話互通,針對(duì)此問題,目前的解決方案僅僅有一種,即建立一個(gè)隧道來封裝IP電話的信令和語音報(bào)文,但這種方案需要在Internet上增加一個(gè)報(bào)文轉(zhuǎn)發(fā)的設(shè)備,它對(duì)報(bào)文轉(zhuǎn)發(fā)的速度請(qǐng)求很高,要做到大容量需要很高的成本,不容易實(shí)施。
本發(fā)明的方法包括下述步驟在用戶服務(wù)器中建立代理(Proxy)客戶端內(nèi)部網(wǎng)絡(luò)用戶的網(wǎng)絡(luò)地址轉(zhuǎn)換映射表;代理(Proxy)設(shè)備客戶端的內(nèi)部網(wǎng)絡(luò)用戶通過代理(Proxy)設(shè)備在用戶服務(wù)器中注冊(cè),并建立信令通道和語音通道連接;當(dāng)呼叫處理服務(wù)器收到相應(yīng)的呼叫信令時(shí),從用戶服務(wù)器中獲取代理(Proxy)客戶端用戶共享的IP地址,并用該IP地址替換呼叫信令中的代理(Proxy)客戶端內(nèi)部網(wǎng)絡(luò)用戶地址。
根據(jù)上述技術(shù)方案可通過管理程序提供的界面對(duì)用戶服務(wù)器中的網(wǎng)絡(luò)地址轉(zhuǎn)換映射表進(jìn)行動(dòng)態(tài)地修改;網(wǎng)絡(luò)地址轉(zhuǎn)換映射表為代理(Proxy)客戶端用戶共享的IP地址及端口號(hào)與代理(Proxy)客戶端用戶地址之間的一一對(duì)應(yīng)關(guān)系表;當(dāng)代理(Proxy)客戶端用戶在啟動(dòng)或需要呼叫時(shí)通過代理(Proxy)在用戶服務(wù)器中注冊(cè);注冊(cè)時(shí),內(nèi)部網(wǎng)絡(luò)用戶先與用戶服務(wù)器之間建立一個(gè)Sock5 TCP通道,進(jìn)行Sock5認(rèn)證,認(rèn)證通過后向用戶服務(wù)器發(fā)送一個(gè)CONNECT請(qǐng)求、一個(gè)BIND請(qǐng)求,兩個(gè)UDP請(qǐng)求,其中CONNECT請(qǐng)求用于與用戶服務(wù)器建立注冊(cè)通道,BIND請(qǐng)求用來建立信令通道,UDP請(qǐng)求用到建立兩個(gè)語音通道。
本發(fā)明通過在IP電話的用戶服務(wù)器、呼叫處理服務(wù)器和PC軟件進(jìn)行少量的修改,使得在不增加任何網(wǎng)絡(luò)設(shè)備的情況下,代理(Proxy)內(nèi)部網(wǎng)絡(luò)用戶和代理(Proxy)外部的公網(wǎng)用戶能夠能夠正常使用IP電話的所有業(yè)務(wù)。因此,本發(fā)明容易實(shí)現(xiàn)和修改,而且成本低。
圖3為一實(shí)施例的代理(Proxy)設(shè)備組網(wǎng)方式使用IP電話技術(shù)方案示意圖。
IP電話中的PC to Phone和Phone to PC的應(yīng)用環(huán)境根據(jù)采用的協(xié)議不同所采用的設(shè)備也不同,H.323、SIP、MGCP每個(gè)協(xié)議都對(duì)應(yīng)相應(yīng)的設(shè)備。但他們的具備結(jié)構(gòu)是完全類似的,可把這些設(shè)備簡(jiǎn)化成兩個(gè)設(shè)備用戶服務(wù)器和呼叫處理服務(wù)器,用戶服務(wù)器完成用戶的注冊(cè)和相關(guān)的管理,呼叫處理服務(wù)器完成用戶的語音信令處理。如圖2所示內(nèi)部網(wǎng)絡(luò)的PC啟動(dòng)后先與用戶服務(wù)器之間建立一個(gè)Sock5 TCP通道,進(jìn)行Sock5認(rèn)證,認(rèn)證通過代理設(shè)備后向用戶服務(wù)器發(fā)送一個(gè)CONNECT請(qǐng)求、一個(gè)BIND請(qǐng)求,兩個(gè)UDP請(qǐng)求,其中CONNECT請(qǐng)求用于與用戶服務(wù)器建立注冊(cè)通道,用TCP表示;BIND請(qǐng)求用來建立信令通道,用SIG表示;UDP請(qǐng)求用到建立兩個(gè)語音通道,用RTP和RTCP表示。當(dāng)呼叫處理服務(wù)器收到相應(yīng)的呼叫信令后,就從用戶服務(wù)器獲取SIG、RTP、RTCP的公網(wǎng)地址,以代替原來填寫的地址,這樣就會(huì)使得所有會(huì)話信令中使用的地址都是公網(wǎng)的地址,不管是發(fā)起呼叫還是接收呼叫,都可以自由的進(jìn)行通話。
由于代理(Proxy)設(shè)備具備地址映射功能,當(dāng)它收到SIG、RTP、RTCP報(bào)文后,它會(huì)轉(zhuǎn)發(fā)到正確的內(nèi)部網(wǎng)絡(luò)的PC上。這樣就不需要增加任何網(wǎng)絡(luò)設(shè)備,只需要在IP電話的用戶服務(wù)器、呼叫處理服務(wù)器和PC軟件上進(jìn)行上述修改即可。
下面以IP電話的H.323協(xié)議為例,來介紹本發(fā)明在H.323協(xié)議環(huán)境下的具體實(shí)現(xiàn)方式。
參閱圖3,在H.323協(xié)議中,用戶服務(wù)器和呼叫處理服務(wù)器為一個(gè)設(shè)備網(wǎng)守(GK),當(dāng)PC啟動(dòng)后,首先向代理(Proxy)設(shè)備發(fā)送SOCK5請(qǐng)求,進(jìn)行認(rèn)證;認(rèn)證通過后,發(fā)送一個(gè)CONNECT請(qǐng)求、一個(gè)BIND請(qǐng)求和兩個(gè)UDP請(qǐng)求;然后通過TCP通道向網(wǎng)守進(jìn)行注冊(cè),注冊(cè)成功后,通過SIG通道用于傳送H.225信令,通過RTP和RTCP通道用于傳送語音報(bào)文。當(dāng)電話用戶發(fā)起呼叫時(shí),網(wǎng)關(guān)向網(wǎng)守發(fā)起信令呼叫,網(wǎng)守根據(jù)預(yù)先建立的SIG信令通道向PC發(fā)出呼叫建立請(qǐng)求信令,目的地址為代理(Proxy)設(shè)備上登記的公網(wǎng)地址,代理(Proxy)設(shè)備完成公網(wǎng)到內(nèi)部網(wǎng)絡(luò)的PC的地址轉(zhuǎn)換和報(bào)文轉(zhuǎn)發(fā);當(dāng)PC接受呼叫后,網(wǎng)守通知網(wǎng)關(guān)PC的RTP和RTCP在代理(Proxy)設(shè)備上登記的公網(wǎng)地址,然后網(wǎng)關(guān)就把RTP和RTCP報(bào)文發(fā)送到代理(Proxy)設(shè)備上,代理(Proxy)設(shè)備完成公網(wǎng)到內(nèi)部網(wǎng)絡(luò)的PC的地址轉(zhuǎn)換和報(bào)文轉(zhuǎn)發(fā)。這樣PC和電話用戶就能夠自由的通話。
本發(fā)明方法通過首先向Proxy發(fā)送SOCK5請(qǐng)求,進(jìn)行認(rèn)證,認(rèn)證通過后,發(fā)送一個(gè)CONNECT請(qǐng)求、一個(gè)BIND請(qǐng)求和兩個(gè)UDP請(qǐng)求以建立認(rèn)證通道、信令通道和語音通道。當(dāng)呼叫處理服務(wù)器收到IP電話信令,把原有通道信息改寫為相應(yīng)的信令通道或者語音通道,從而實(shí)現(xiàn)了網(wǎng)絡(luò)中采用支持Sock5的代理(Pfoxy)設(shè)備用戶能夠方便的訪問Internet上的IP電話設(shè)備,能夠方便的進(jìn)行相互的通話。
權(quán)利要求
1.一種IP電話透過支持Sock5協(xié)議的代理設(shè)備的實(shí)現(xiàn)方法,其特征在于包括下述步驟在用戶服務(wù)器中建立代理(Proxy)客戶端內(nèi)部網(wǎng)絡(luò)用戶的網(wǎng)絡(luò)地址轉(zhuǎn)換映射表;代理客戶端的內(nèi)部網(wǎng)絡(luò)用戶通過代理設(shè)備在用戶服務(wù)器中注冊(cè),并建立信令通道和語音通道連接;當(dāng)呼叫處理服務(wù)器收到相應(yīng)的呼叫信令時(shí),從用戶服務(wù)器中獲取代理客戶端用戶共享的IP地址,并用該IP地址替換呼叫信令中的代理客戶端內(nèi)部網(wǎng)絡(luò)用戶地址。
2.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于可通過管理程序提供的界面對(duì)用戶服務(wù)器中的網(wǎng)絡(luò)地址轉(zhuǎn)換映射表進(jìn)行動(dòng)態(tài)地修改。
3.根據(jù)權(quán)利要求1或2所述的實(shí)現(xiàn)方法,其特征在于網(wǎng)絡(luò)地址轉(zhuǎn)換映射表為代理客戶端用戶共享的IP地址及端口號(hào)與代理(Proxy)客戶端用戶地址之間的一一對(duì)應(yīng)關(guān)系表。
4.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于當(dāng)代理(Proxy)客戶端用戶在啟動(dòng)或需要呼叫時(shí)通過代理(Proxy)設(shè)備在用戶服務(wù)器中注冊(cè)。
5.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于當(dāng)代理(Proxy)客戶端用戶在呼叫時(shí)通過呼叫處理服務(wù)器和用戶服務(wù)器的信息交互完成呼叫接續(xù)。
6.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于注冊(cè)時(shí)進(jìn)一步包括內(nèi)部網(wǎng)絡(luò)用戶先與用戶服務(wù)器之間建立一個(gè)Sock5 TCP通道,進(jìn)行Sock5認(rèn)證,認(rèn)證通過后向用戶服務(wù)器發(fā)送一個(gè)CONNECT請(qǐng)求、一個(gè)BIND請(qǐng)求,兩個(gè)UDP請(qǐng)求,其中CONNECT請(qǐng)求用于與用戶服務(wù)器建立注冊(cè)通道,BIND請(qǐng)求用來建立信令通道,UDP請(qǐng)求用到建立兩個(gè)語音通道。
全文摘要
本發(fā)明公開了一種IP電話透過支持Sock5協(xié)議的代理(Proxy)設(shè)備的實(shí)現(xiàn)方法,包括步驟在用戶服務(wù)器中建立代理(Proxy)客戶端內(nèi)部網(wǎng)絡(luò)用戶的網(wǎng)絡(luò)地址轉(zhuǎn)換映射表,代理(Proxy)客戶端的內(nèi)部網(wǎng)絡(luò)用戶通過代理(Proxy)在用戶服務(wù)器中注冊(cè),并建立信令通道和語音通道連接,當(dāng)呼叫處理服務(wù)器收到相應(yīng)的呼叫信令時(shí),從用戶服務(wù)器中獲取代理(Proxy)客戶端用戶共享的IP地址,并用該IP地址替換呼叫信令中的代理(Proxy)客戶端內(nèi)部網(wǎng)絡(luò)用戶地址。本發(fā)明通過對(duì)IP電話設(shè)備本身的修改,使得代理(Proxy)內(nèi)部和外部用戶能夠正常使用IP電話業(yè)務(wù)。
文檔編號(hào)H04M11/06GK1457188SQ02118998
公開日2003年11月19日 申請(qǐng)日期2002年5月10日 優(yōu)先權(quán)日2002年5月10日
發(fā)明者冒曉鳴 申請(qǐng)人:北京艾尼通科技有限公司