欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于橫越防火墻和網(wǎng)絡(luò)地址轉(zhuǎn)換(nat)設(shè)置的通信系統(tǒng)的制作方法

文檔序號(hào):7609438閱讀:303來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):用于橫越防火墻和網(wǎng)絡(luò)地址轉(zhuǎn)換(nat)設(shè)置的通信系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及使客戶(hù)端能夠橫越防火墻和NAT裝置。本發(fā)明尤其涉及利用服務(wù)器和客戶(hù)端之間的探測(cè)分組來(lái)傳遞由NAT所修正的地址。
背景技術(shù)
以下是本文件中所使用的首字母縮寫(xiě)詞的列表ALG-應(yīng)用級(jí)網(wǎng)關(guān);ASSENT-擴(kuò)充的會(huì)話(huà)信令啟動(dòng)的NAT橫越;DMZ-解除武裝區(qū)域;FW-防火墻;H.323-用于通過(guò)非QoS分組網(wǎng)絡(luò)的基于分組的通信的ITU標(biāo)準(zhǔn);ITU-國(guó)際電信聯(lián)盟;IP-網(wǎng)際協(xié)議;NAT-網(wǎng)絡(luò)地址轉(zhuǎn)換(RFC1631);NAPT-網(wǎng)絡(luò)地址端口轉(zhuǎn)換;SIP-會(huì)話(huà)啟動(dòng)協(xié)議(RFC3261);
TCP-傳輸控制協(xié)議(RFC793);UDP-用戶(hù)數(shù)據(jù)報(bào)協(xié)議(RFC768)。
快速發(fā)展的IP(網(wǎng)際協(xié)議)數(shù)據(jù)網(wǎng)絡(luò)正在為多媒體和話(huà)音通信服務(wù)提供商創(chuàng)造新的機(jī)會(huì)和挑戰(zhàn)??涨八降耐顿Y正由現(xiàn)任電信運(yùn)營(yíng)商和下一代載體和服務(wù)提供商投入到數(shù)據(jù)網(wǎng)主干中。同時(shí),諸如DSL和電纜調(diào)制解調(diào)器的寬帶接入技術(shù)正為廣大用戶(hù)帶來(lái)高速因特網(wǎng)接入。服務(wù)提供商的想象是利用EP數(shù)據(jù)網(wǎng)直接向桌面、辦公和家用高速因特網(wǎng)接入傳送新的話(huà)音、視頻和數(shù)據(jù)業(yè)務(wù)。
H.323標(biāo)準(zhǔn)應(yīng)用于通過(guò)沒(méi)有服務(wù)質(zhì)量保證的基于分組網(wǎng)絡(luò)的多媒體通信。其已經(jīng)設(shè)計(jì)成獨(dú)立于底層的傳輸網(wǎng)絡(luò)和協(xié)議。目前IP數(shù)據(jù)網(wǎng)是默認(rèn)的和普遍存在的分組網(wǎng)絡(luò),而且H.323的實(shí)現(xiàn)的大部分(如果不是全部)都通過(guò)IP數(shù)據(jù)網(wǎng)。用于實(shí)時(shí)(話(huà)音和視頻)通信的其它協(xié)議,例如SIP和MGCP,也利用IP數(shù)據(jù)網(wǎng)來(lái)傳輸呼叫信令和媒體。還期望開(kāi)發(fā)用于與經(jīng)IP數(shù)據(jù)網(wǎng)傳輸實(shí)時(shí)話(huà)音和視頻相關(guān)的新應(yīng)用的新協(xié)議。本發(fā)明涉及上述內(nèi)容以及對(duì)單個(gè)會(huì)話(huà)都需要多個(gè)業(yè)務(wù)流的其它協(xié)議。
如果來(lái)自不同制造商的終端能互操作,則對(duì)于廣泛分布的通信來(lái)說(shuō)標(biāo)準(zhǔn)的重要性是最根本的。在多媒體業(yè)界,當(dāng)前用于通過(guò)分組網(wǎng)絡(luò)(如IP數(shù)據(jù)網(wǎng))的實(shí)時(shí)通信的標(biāo)準(zhǔn)為ITU標(biāo)準(zhǔn)H.323。H.323是目前相對(duì)成熟的標(biāo)準(zhǔn),其具有來(lái)自多媒體通信業(yè)的支持,包括諸如Microsoft、Cisco和Intel公司,例如,估計(jì)有75%的PC都安裝了Microsoft的Netmeeting(商標(biāo))程序。Netmeeting是用于多媒體(話(huà)音、視頻和數(shù)據(jù))通信的適應(yīng)性軟件應(yīng)用。來(lái)自不同制造商的設(shè)備之間的互操作性目前也得以實(shí)現(xiàn)。超過(guò)120家世界范圍內(nèi)的公司參加了由國(guó)際多媒體電信協(xié)會(huì)(IMTC)主辦的最近一次互操作活動(dòng),IMTC是一家獨(dú)立存在的組織,用于促進(jìn)多媒體通信設(shè)備的互操作性。該活動(dòng)是允許制造商測(cè)試和解決交互工作問(wèn)題的一次例會(huì)。
迄今為止,對(duì)于多媒體(尤其是視頻)通信的大眾理解存在多種阻礙。方便使用、質(zhì)量、成本和通信帶寬都妨礙了其在市場(chǎng)上的發(fā)展。視頻編碼上的技術(shù)進(jìn)步、廉價(jià)的IP接入的普遍存在,以及當(dāng)前在與DSL連同ISDN和電纜調(diào)制解調(diào)器的首次展示結(jié)合的數(shù)據(jù)網(wǎng)中的投資,目前減緩了大部分這些問(wèn)題,使得多媒體通信更容易利用。
由于H.323被定義為標(biāo)準(zhǔn),假設(shè)在網(wǎng)絡(luò)域的邊緣存在H.323-H.320網(wǎng)關(guān)將H.323轉(zhuǎn)換為H.320,以通過(guò)專(zhuān)用網(wǎng)之間的廣域傳輸。因此,通過(guò)IP實(shí)現(xiàn)H.323集中在單個(gè)網(wǎng)絡(luò)內(nèi)的通信上。
然而,作為廣域協(xié)議,IP繼續(xù)得到偏愛(ài)。越來(lái)越多的組織仍舊將它們整個(gè)的數(shù)據(jù)網(wǎng)基于IP。均基于EP的高速因特網(wǎng)接入、可控內(nèi)聯(lián)網(wǎng)、虛擬專(zhuān)用網(wǎng)(VPN)是常見(jiàn)的。IP的趨勢(shì)是使作為多媒體協(xié)議的H.320削弱。市場(chǎng)需求是完全用經(jīng)IP的H.323替代H.320。但是,很可能用于通過(guò)經(jīng)IP跨越WAN(廣域網(wǎng))傳輸實(shí)時(shí)通信的主要市場(chǎng)驅(qū)動(dòng)力是話(huà)音。利用諸如H.323和SIP的標(biāo)準(zhǔn),用戶(hù)已經(jīng)開(kāi)始利用因特網(wǎng)用他們的計(jì)算機(jī)進(jìn)行廉價(jià)的話(huà)音呼叫。這就標(biāo)記了全新的話(huà)音經(jīng)IP(VoIP)產(chǎn)業(yè)的開(kāi)始,其看到了新的Vole產(chǎn)品的開(kāi)發(fā),Vole產(chǎn)品包括以太網(wǎng)電話(huà)、IP PBX、SoftSwitches和IP/PSTN網(wǎng)關(guān),它們均適合于在企業(yè)和用戶(hù)之間無(wú)縫傳輸Vole。在此預(yù)期H.323、SIP和MGCP將成為主流標(biāo)準(zhǔn)。
遺憾的是,仍存在對(duì)于H.323和SIP的現(xiàn)實(shí)世界的廣泛部署的不可預(yù)見(jiàn)的技術(shù)阻礙。這些技術(shù)阻礙涉及在IP數(shù)據(jù)網(wǎng)邊界處的通信基礎(chǔ)設(shè)施。
因此,目前經(jīng)IP的多媒體或話(huà)音通信的成功實(shí)現(xiàn)被局限于內(nèi)聯(lián)網(wǎng)或?qū)S每煽豂P網(wǎng)絡(luò)。
由于以下兩種IP技術(shù)問(wèn)題出現(xiàn)了網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)和防火墻。在考慮對(duì)這些問(wèn)題的解決方案時(shí)安全也是個(gè)問(wèn)題。在通過(guò)數(shù)據(jù)網(wǎng)絡(luò)的實(shí)時(shí)通信的部署橫越共享網(wǎng)絡(luò)(例如,公眾因特網(wǎng))時(shí),企業(yè)需要確保不會(huì)危及它們的數(shù)據(jù)安全。對(duì)這些問(wèn)題的當(dāng)前解決方案需要企業(yè)的外側(cè)或外部IP地址對(duì)企業(yè)希望與之通信(話(huà)音通信通常包括所有人)的人變成公知的。在此提出的本發(fā)明并沒(méi)有經(jīng)受這個(gè)不足,因?yàn)槠髽I(yè)外部IP地址僅僅需要對(duì)于“信任的”服務(wù)提供商是已知的,這就是為什么公眾因特網(wǎng)得以大規(guī)模發(fā)展的原因。
NAT已經(jīng)被引入用于解決‘地址短缺’的問(wèn)題。IP網(wǎng)中的任何一個(gè)端點(diǎn)或‘主機(jī)’都具有用于識(shí)別該端點(diǎn)的‘IP地址’,使得數(shù)據(jù)分組能夠被正確發(fā)送或路由到該端點(diǎn),以及從該端點(diǎn)接收的分組能夠從它們被始發(fā)的位置被識(shí)別。在定義EP地址字段時(shí),沒(méi)有人預(yù)測(cè)到桌面設(shè)備的大量增長(zhǎng)。在全球IP部署多年之后,人們意識(shí)到,想利用IP協(xié)議通信的端點(diǎn)數(shù)將超過(guò)可能從地址字段獲得的不同EP地址數(shù)。為了增大地址字段以及使更多地址可用,需要升級(jí)整個(gè)IP基礎(chǔ)設(shè)施。(業(yè)界正計(jì)劃用EP版本6在某個(gè)地點(diǎn)實(shí)現(xiàn))。
當(dāng)前的解決方案稱(chēng)為NAT。在IETF RFC 1631中被稱(chēng)作簡(jiǎn)單NAT的第一種NAT解決方案利用一對(duì)一映射,其出現(xiàn)在萬(wàn)維網(wǎng)存在之前以及在組織內(nèi)只有少量主機(jī)(例如,郵件服務(wù)器、文件傳送服務(wù)器)需要與該裝置的外部進(jìn)行通信時(shí)。NAT允許企業(yè)創(chuàng)建專(zhuān)用EP網(wǎng),在該專(zhuān)用EP網(wǎng)中,該企業(yè)內(nèi)的每個(gè)端點(diǎn)都具有僅在該企業(yè)內(nèi)唯一但對(duì)全球不是唯一的地址。它們是專(zhuān)用IP地址。這允許組織內(nèi)的每個(gè)主機(jī)都能與該組織內(nèi)的任何其它主機(jī)通信(即,尋址)。對(duì)于外部通信而言,需要公眾的或全球唯一的EP地址。在專(zhuān)用IP網(wǎng)的邊緣是負(fù)責(zé)將專(zhuān)用IP地址轉(zhuǎn)換成公眾IP地址或從公眾IP地址轉(zhuǎn)換為專(zhuān)用IP地址的裝置——NAT功能。企業(yè)將具有一個(gè)或多個(gè)公眾地址,這些地址專(zhuān)屬于該企業(yè),但一般來(lái)說(shuō)只有比主機(jī)所需要的較少的公眾地址,這或者是因?yàn)閮H有一些主機(jī)需要與外部通信,或者因?yàn)橥瑫r(shí)進(jìn)行外部通信的數(shù)量較少。NAT的一個(gè)更為復(fù)雜的實(shí)施例具有公眾IP地址池,這些公眾IP地址池以先到先服務(wù)的基礎(chǔ)被動(dòng)態(tài)分配給需要進(jìn)行外部通信的主機(jī)。在外部設(shè)備需要向特定因特網(wǎng)設(shè)備發(fā)送未經(jīng)請(qǐng)求的分組的情況下需要固定網(wǎng)絡(luò)地址規(guī)則。
目前大部分專(zhuān)用網(wǎng)絡(luò)使用來(lái)自10.x.x.x地址范圍的專(zhuān)用IP地址。外部通信通常經(jīng)由服務(wù)提供商,服務(wù)提供商經(jīng)由可控或共享IP網(wǎng)或經(jīng)由公眾因特網(wǎng)提供服務(wù)。在公眾和專(zhuān)用網(wǎng)絡(luò)之間的邊界處,NAT被應(yīng)用于改變地址,以使地址在分組正橫越的IP網(wǎng)絡(luò)內(nèi)是唯一的。簡(jiǎn)單NAT以一對(duì)一映射為基礎(chǔ)改變完整的IP地址,該映射可在通信會(huì)話(huà)期間內(nèi)被永久或動(dòng)態(tài)創(chuàng)建。
Web服務(wù)器、郵件服務(wù)器和外部服務(wù)器是需要靜態(tài)一對(duì)一NAT映射,以允許外部通信到達(dá)的主機(jī)的實(shí)例。
NAT的結(jié)果是主機(jī)的專(zhuān)用IP地址從外部是不可見(jiàn)的,這就增加了安全等級(jí)。
對(duì)簡(jiǎn)單NAT的擴(kuò)展另外利用了用于轉(zhuǎn)換映射的端口,而且經(jīng)常被稱(chēng)為NAPT(網(wǎng)絡(luò)地址端口轉(zhuǎn)換)或PAT(端口地址轉(zhuǎn)換)。端口識(shí)別兩個(gè)主機(jī)之間的點(diǎn)對(duì)點(diǎn)傳輸連接的一端。隨著公眾訪(fǎng)問(wèn)萬(wàn)維網(wǎng)(WWW),再次出現(xiàn)了公眾IP地址的短缺,因?yàn)槟壳霸S多桌面機(jī)器都需要在專(zhuān)用網(wǎng)絡(luò)之外通信。在IETF RFC 1631中規(guī)定的解決方案允許專(zhuān)用IP地址對(duì)公眾IP地址的多對(duì)一映射,并在公眾IP地址上對(duì)從專(zhuān)用裝置出來(lái)進(jìn)入到公眾或共享網(wǎng)絡(luò)的每個(gè)連接改用唯一端口分配(理論上在每個(gè)IP地址上有64k的唯一端口)。由于因特網(wǎng)的發(fā)展,PAT成為了地址轉(zhuǎn)換的通用方法。
PAT的特殊性在于,對(duì)公眾IP地址/端口分配的專(zhuān)用IP地址/端口映射是自動(dòng)進(jìn)行的,通常是每當(dāng)專(zhuān)用裝置進(jìn)行與公眾網(wǎng)絡(luò)的出站連接時(shí)。PAT的結(jié)果是數(shù)據(jù)無(wú)法入站傳輸,即從公眾網(wǎng)到專(zhuān)用網(wǎng),除非先前的出站連接已經(jīng)使這種PAT分配存在。通常,PAT裝置不會(huì)使PAT分配長(zhǎng)久。在指定的‘寂靜’周期屆滿(mǎn)后,即對(duì)于該出站啟動(dòng)的連接不再接收到入站數(shù)據(jù)時(shí),對(duì)于該連接的PAT分配不進(jìn)行分配,而且該端口空閑以被分配給新連接。
雖然經(jīng)由通用IP連接連接的計(jì)算機(jī)和網(wǎng)絡(luò)使得通信更為容易,該通用協(xié)議仍使得更為容易破壞私密性和安全性。利用相對(duì)少的計(jì)算能力就可能訪(fǎng)問(wèn)專(zhuān)用或秘密數(shù)據(jù)和文件,以及惡意破壞商業(yè)信息。業(yè)界對(duì)這種攻擊的解決方案是在專(zhuān)用網(wǎng)的邊界處部署‘防火墻’。
防火墻被設(shè)計(jì)用于限制或‘過(guò)濾’可能在專(zhuān)用和公眾IP網(wǎng)之間通過(guò)的這種類(lèi)型的IP業(yè)務(wù)。防火墻能通過(guò)多種級(jí)別的規(guī)則應(yīng)用限制。限制可以應(yīng)用于IP地址、端口、IP傳輸協(xié)議(例如,TCP或UDP)或應(yīng)用程序。限制不是對(duì)稱(chēng)的。通常防火墻將被編程用于允許從專(zhuān)用網(wǎng)(防火墻內(nèi))到公眾網(wǎng)(防火墻外)的通信比另一方向上更多。
很難僅對(duì)IP地址應(yīng)用防火墻規(guī)則。任何一個(gè)內(nèi)部主機(jī)(即,你的PC)都可能想連接到世界范圍內(nèi)的任何一個(gè)外部主機(jī)(web服務(wù)器)。為允許進(jìn)一步控制,“公知端口”的概念被應(yīng)用于該問(wèn)題。端口識(shí)別兩個(gè)主機(jī)之間的點(diǎn)到點(diǎn)傳輸連接的一端?!肮丝凇笔沁\(yùn)送‘已知’類(lèi)型的業(yè)務(wù)的端口。IANA(因特網(wǎng)分配號(hào)碼權(quán)威)指定該公知端口和通過(guò)它們運(yùn)送的業(yè)務(wù)類(lèi)型。例如,端口80已經(jīng)被分配用于web沖浪(http協(xié)議),而端口25被分配用于簡(jiǎn)單郵件傳輸協(xié)議,等等。
用于Web沖浪的防火墻過(guò)濾規(guī)則的一個(gè)實(shí)例是任何一個(gè)內(nèi)部的IP地址/任何端口號(hào)都可以利用TCP(傳輸連接協(xié)議)和HTTP(用于Web沖浪的應(yīng)用協(xié)議)連接到任何一個(gè)外部IP地址/端口80。
該連接是雙向的,因此業(yè)務(wù)可以在同一路徑上從Web服務(wù)器流回。其觀(guān)點(diǎn)是連接必須從內(nèi)部啟動(dòng)。
用于電子郵件的防火墻過(guò)濾規(guī)則的一個(gè)實(shí)例是任何一個(gè)外部IP地址/任何一個(gè)端口號(hào)都可以利用TCP和SMTP連接到IP地址192.3.4.5/端口25。
(同時(shí),NAT功能可以將目的IP地址192.3.4.5改變?yōu)猷]件服務(wù)器的內(nèi)部地址10.6.7.8。)諸如“任何一個(gè)內(nèi)部IP地址/任何一個(gè)端口號(hào)都可以連接到任何一個(gè)外部IP地址/任何一個(gè)端口號(hào)用于TCP或UDP,反之亦然”的過(guò)濾規(guī)則相當(dāng)于去除防火墻并使用直接連接,因?yàn)檫@是一個(gè)太寬的過(guò)濾器。這些規(guī)則被IT管理員表示不滿(mǎn)。
H.323已經(jīng)被設(shè)計(jì)成獨(dú)立于底層網(wǎng)絡(luò)和傳輸協(xié)議。然而,H.323在IP網(wǎng)中的實(shí)現(xiàn)借助于以下主要概念的映射是可能的H.323地址IP地址H.323邏輯信道TCP/UDP端口連接在H.323通過(guò)IP的實(shí)現(xiàn)中,利用TCP或UDP傳輸協(xié)議作為有效載荷在EP分組中發(fā)送H.323協(xié)議消息。許多H.323消息都包含始發(fā)端點(diǎn)或目的地端點(diǎn)或這兩個(gè)端點(diǎn)的H.323地址。諸如SIP的其它信令協(xié)議也將IP地址嵌入到信令協(xié)議有效載荷內(nèi)。
然而,一個(gè)問(wèn)題出現(xiàn),NAT功能將改變?cè)春湍康牡刂鳈C(jī)的顯式IP地址(及端口),但不改變H.323有效載荷中的H.323地址。由于主機(jī)利用在H.323有效載荷中交換的H.323地址和端口使各個(gè)接收的數(shù)據(jù)分組與該呼叫相關(guān)聯(lián),這使得H.323協(xié)議被違背并需要中間智能來(lái)管理H.323有效載荷地址。
由于多媒體通信的復(fù)雜性,H.323需要多個(gè)邏輯信道在端點(diǎn)之間開(kāi)放。邏輯信道對(duì)呼叫控制、能力交換、音頻、視頻和數(shù)據(jù)都是需要的。在僅涉及音頻和視頻的簡(jiǎn)單點(diǎn)對(duì)點(diǎn)H.323多媒體會(huì)話(huà)中需要至少6個(gè)邏輯信道。在H.323的IP實(shí)現(xiàn)中,邏輯信道被映射到TCP或UDP端口連接,這些端口連接中有許多是動(dòng)態(tài)分配的。
由于防火墻功能濾除了它們沒(méi)有對(duì)此作出規(guī)定的端口上的業(yè)務(wù),或者防火墻被打開(kāi),這將使防火墻的用途無(wú)效,或者大部分H.323業(yè)務(wù)將不能通過(guò)。
因此,端點(diǎn)之間的NT和防火墻功能都能阻止H.323(以及其它實(shí)時(shí)協(xié)議,例如SIP和MGCP)通信的開(kāi)展。在端點(diǎn)處于不同的專(zhuān)用網(wǎng),一個(gè)端點(diǎn)在專(zhuān)用網(wǎng)而另一個(gè)端點(diǎn)在因特網(wǎng),或者端點(diǎn)都在不同的可控IP網(wǎng)的情況下通常就是這樣。
因此,H.323(以及SIP、MGCP等)通信是令防火墻討厭的東西?;蛘叻阑饓Ρ仨氈繦.323或者一些中間智能必須以安全的方式管理端口分配。
對(duì)此問(wèn)題的一個(gè)可能的解決方案是完全的IP H.323基礎(chǔ)設(shè)施的升級(jí),這需要●對(duì)每個(gè)IP網(wǎng)絡(luò)邊界處的NAT功能的H.323升級(jí)。NAT功能必須掃描所有的H.323有效載荷并一致地改變IP地址;●對(duì)每個(gè)EP網(wǎng)絡(luò)邊界處的防火墻功能的H.323升級(jí)。防火墻必須了解并觀(guān)察所有的H.323通信,使得它能夠打開(kāi)被動(dòng)態(tài)分配的端口而且必須過(guò)濾在這些端口上的所有非H.323業(yè)務(wù);●在邊界處或共享IP網(wǎng)絡(luò)中部署H.323智能以解求和仲裁地址。IP地址很少直接被用戶(hù)使用。實(shí)際上,使用的是IP地址別名。需要智能來(lái)求解IP地址的別名。這種H.323功能包含在被稱(chēng)為關(guān)受(gatekeeper)的H.323實(shí)體內(nèi)。
這種可能的解決方案有以下缺陷●每個(gè)組織/專(zhuān)用網(wǎng)對(duì)于H.323通信都必須有相同級(jí)別的升級(jí);●升級(jí)是昂貴的。必須購(gòu)買(mǎi)、規(guī)劃和部署新的功能或新的設(shè)備。IT管理員必須了解H.323;●這種部署的規(guī)??赡懿蝗菀着c對(duì)其的需求適應(yīng),因?yàn)榧夹g(shù)是被逐步采用的,需要比最初的(可能是試驗(yàn)性的)需求所需的要大和更昂貴的初始部署;●不斷解析H.323分組以求解簡(jiǎn)單NAT,而且防火墻功能對(duì)于每個(gè)網(wǎng)絡(luò)邊界處的信號(hào)造成了等待時(shí)間負(fù)擔(dān)。對(duì)于音頻和視頻的等待時(shí)間容限是非常小的;●由于有多種實(shí)時(shí)通信標(biāo)準(zhǔn),而且這些標(biāo)準(zhǔn)的每一種信令協(xié)議都不同,企業(yè)將需要多種升級(jí)——對(duì)其希望使用的每一種協(xié)議都有一個(gè)升級(jí);●期望媒體在企業(yè)之間直接傳輸,或者在企業(yè)和公眾網(wǎng)中的裝置之間傳輸。這種傳輸?shù)慕Y(jié)果是企業(yè)的EP地址變?yōu)楣WR(shí)。這被認(rèn)為是對(duì)安全的一種損害,因?yàn)槿魏螡撛诘墓粽叨急仨毷紫日业狡髽I(yè)的IP地址作為發(fā)起攻擊的第一步。
這些問(wèn)題的結(jié)果是,當(dāng)存在防火墻和/或網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)時(shí),H.323協(xié)議不被用于多媒體通信。一個(gè)方案是將H.323系統(tǒng)置于防火墻和NAT功能的公眾方。這使得它們能利用H.323,同時(shí)還允許他們保護(hù)他們的網(wǎng)絡(luò)的其余部分。其缺點(diǎn)是1.普遍存在的視頻通信裝置是桌面PC。將所有桌面計(jì)算機(jī)置于公眾方是無(wú)意義的;2.在防火墻的公眾方H.323系統(tǒng)無(wú)法阻止攻擊者;
3.公司無(wú)法利用H.323的潛在的無(wú)所不在的特性,因?yàn)橹挥刑厥獾南到y(tǒng)才被允許進(jìn)行H.323通信;4.公司將不能充分利用H.323中的數(shù)據(jù)共享設(shè)施,因?yàn)榉阑饓⒆柚笻.323系統(tǒng)存取數(shù)據(jù)。打開(kāi)防火墻以允許來(lái)自H.323系統(tǒng)的數(shù)據(jù)傳送功能不是一種選項(xiàng),因?yàn)樗鼘⒃试S攻擊者利用H.323系統(tǒng)作為中繼;5.在新興的話(huà)音經(jīng)IP(VoIP)市場(chǎng)上存在直接與數(shù)據(jù)網(wǎng)絡(luò)連接的電話(huà)裝置的市場(chǎng),例如以太電話(huà)和IP PBX。由于桌面特性,它們通常部署在防火墻和NAT之后的專(zhuān)用網(wǎng)上。如果沒(méi)有對(duì)上述問(wèn)題的解決方案,使用這些裝置的電話(huà)被局限于企業(yè)專(zhuān)用網(wǎng)絡(luò)或內(nèi)聯(lián)網(wǎng),或者必須通過(guò)IP-PSTN網(wǎng)關(guān)以到達(dá)外部世界。
因此,所期望的和也正是本發(fā)明人所認(rèn)識(shí)到的是允許位于不同安全的和專(zhuān)用的IP數(shù)據(jù)網(wǎng)絡(luò)中的端點(diǎn)(利用實(shí)時(shí)協(xié)議,例如H.323、SIP或MGCP)能夠相互通信而不危及各個(gè)專(zhuān)用網(wǎng)的數(shù)據(jù)私密性和數(shù)據(jù)安全性的能力。

發(fā)明內(nèi)容
本發(fā)明允許位于不同安全的和專(zhuān)用的IP數(shù)據(jù)網(wǎng)中的端點(diǎn)(利用實(shí)時(shí)協(xié)議,例如H.323、SIP或MGCP)能夠相互通信而不危及各個(gè)專(zhuān)用網(wǎng)絡(luò)的數(shù)據(jù)私密性和數(shù)據(jù)安全性。本發(fā)明具有與現(xiàn)有的安全功能,例如防火墻,以及在防火墻、路由器和代理中可能出現(xiàn)的NAPT(網(wǎng)絡(luò)地址端口轉(zhuǎn)換)功能交互工作的優(yōu)勢(shì)。本發(fā)明的好處是,其節(jié)省了將這些裝置升級(jí)為完全協(xié)議適應(yīng)或部署另外的協(xié)議知曉裝置的成本。本發(fā)明應(yīng)用于例如,簡(jiǎn)單的(一對(duì)一)NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)映射可以應(yīng)用于專(zhuān)用網(wǎng)的邊緣的那些部署以及NAPT(網(wǎng)絡(luò)地址和端口轉(zhuǎn)換)應(yīng)用于專(zhuān)用網(wǎng)邊緣的部署。這兩種配置可以共存,而且該設(shè)備可以允許通信發(fā)生在遵循一種配置的專(zhuān)用網(wǎng)和遵循另一種配置的專(zhuān)用網(wǎng)之間。類(lèi)似的,在單個(gè)專(zhuān)用網(wǎng)內(nèi)部,一些終端可以利用一種配置(專(zhuān)用家用系統(tǒng))而其它終端可利用第二種配置(例如桌面客戶(hù)端PC)。注意,為了本說(shuō)明書(shū)的目的,NAT將指所有類(lèi)型的網(wǎng)絡(luò)地址轉(zhuǎn)換。
本發(fā)明是參考ITU H.323和IETF會(huì)話(huà)啟動(dòng)協(xié)議(SIP)標(biāo)準(zhǔn)舉例說(shuō)明的。然而,其同樣適用于需要?jiǎng)討B(tài)分配端口以運(yùn)送雙向信息的其它標(biāo)準(zhǔn)或方法。本發(fā)明的好處是,專(zhuān)用網(wǎng)基礎(chǔ)設(shè)施(防火墻和路由器)無(wú)需了解用于實(shí)時(shí)通信的協(xié)議。這使得企業(yè)能夠不考慮協(xié)議來(lái)部署設(shè)備。這并不是說(shuō)某些實(shí)現(xiàn)出于安全或其它理由可以提供‘協(xié)議’檢驗(yàn)。


下面通過(guò)舉例參考附圖描述本發(fā)明,其中圖1是描述用于SIP的本發(fā)明的示例性橫越體系結(jié)構(gòu)的簡(jiǎn)圖;圖2是示意本發(fā)明的注冊(cè)和TLS連接保持有效(keep-alive)過(guò)程的流程圖;圖3是示意處理本發(fā)明的呼入過(guò)程的流程圖;圖4是示意處理本發(fā)明的呼出過(guò)程的流程圖;圖5是示意建立本發(fā)明的媒體過(guò)程的流程圖;圖6是描述用于SIP的本發(fā)明的示例性探測(cè)分組的簡(jiǎn)圖;圖7是描述用于H.323的本發(fā)明的示例性橫越體系結(jié)構(gòu)的簡(jiǎn)圖;圖8是示意本發(fā)明的控制路徑建立和注冊(cè)過(guò)程的流程圖;圖9是示意本發(fā)明的進(jìn)行呼出過(guò)程的流程圖;圖10是示意本發(fā)明的接收呼入過(guò)程的流程圖;圖11是示意本發(fā)明的輸出媒體建立過(guò)程的信令的流程圖;圖12是示意本發(fā)明的建立輸入媒體過(guò)程的信令的流程圖;圖13是示意使用本發(fā)明的快速連接建立呼叫過(guò)程的媒體建立的流程圖;圖14是示意利用本發(fā)明的快速連接應(yīng)答呼叫過(guò)程的媒體建立的流程圖;圖15是示意本發(fā)明的向外路徑探測(cè)過(guò)程的流程圖;圖16是示意本發(fā)明的向內(nèi)路徑探測(cè)過(guò)程的流程圖;
圖17是描述用于H.323的本發(fā)明的示例性探測(cè)分組的簡(jiǎn)圖;圖18是示意本發(fā)明的H.225/H.245 TCP保持有效過(guò)程的流程圖;和圖19是與本發(fā)明相關(guān)的通用計(jì)算裝置的功能框圖。
具體實(shí)施例方式
現(xiàn)在參考附圖,其中相同的附圖標(biāo)記指示圖中的相同或相應(yīng)部件。
1.有關(guān)SIP的實(shí)施例如圖1所示,防火墻和NAT(“FW/NAT”101)將網(wǎng)絡(luò)分離為內(nèi)部103和外部105地址空間。通常,內(nèi)部地址空間是專(zhuān)用地址空間,而外部地址空間是公眾地址空間。然而,外部地址空間可以是分離的專(zhuān)用地址空間。防火墻和NAT可以由多個(gè)裝置構(gòu)成,但為方便起見(jiàn),在此顯示為單個(gè)實(shí)體。用于在內(nèi)部地址空間和外部地址空間之間通過(guò)的路由的任何內(nèi)部地址(如客戶(hù)端地址107)將被NAT網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)為外部地址。經(jīng)如此修正的地址被稱(chēng)為經(jīng)NAT的地址。
客戶(hù)端109位于NAT和防火墻內(nèi)部??蛻?hù)端地址從內(nèi)部地址空間分配。
遠(yuǎn)程客戶(hù)端111被認(rèn)為位于外部地址空間內(nèi),雖然真實(shí)的遠(yuǎn)程客戶(hù)端實(shí)際上可能位于另一NAT之后。因此,與遠(yuǎn)程客戶(hù)端111相關(guān)聯(lián)的遠(yuǎn)程地址113是通過(guò)它們遠(yuǎn)程客戶(hù)端在外部地址空間內(nèi)可訪(fǎng)問(wèn)的地址。為此,圖1將遠(yuǎn)程客戶(hù)端稱(chēng)為“(顯式)遠(yuǎn)程客戶(hù)端”。下文中對(duì)遠(yuǎn)程客戶(hù)端的任何引用是指(顯式)客戶(hù)端。
SIP注冊(cè)主管/代理115位于NAT和防火墻之外。圖1示出了作為單個(gè)實(shí)體的SIP注冊(cè)主管和代理功能。這純粹是為了方便起見(jiàn),而且如果期望的話(huà),這兩個(gè)功能可以被分離為獨(dú)立的裝置。SIP注冊(cè)主管/代理是標(biāo)準(zhǔn)裝置。
橫越服務(wù)器117也位于NAT和防火墻外部。它有兩套地址內(nèi)TS地址118和外TS地址119。內(nèi)TS地址連接防火墻和NAT內(nèi)部的客戶(hù)端,而外TS地址連接遠(yuǎn)程客戶(hù)端。內(nèi)TS地址和外TS地址都從外部地址空間分配。橫越服務(wù)器和SIP注冊(cè)主管/代理可共址。
本發(fā)明使得NAT和防火墻內(nèi)部的客戶(hù)端能夠與外部地址空間內(nèi)的遠(yuǎn)程客戶(hù)端和代理通信。這是通過(guò)在客戶(hù)端109和橫越服務(wù)器117之間創(chuàng)建控制信道,以及在客戶(hù)端和橫越服務(wù)器之間發(fā)送用于了解經(jīng)NAT修正的地址實(shí)現(xiàn)的。
簡(jiǎn)言之,本發(fā)明的協(xié)議開(kāi)始于客戶(hù)端創(chuàng)建與橫越服務(wù)器的TLS(傳輸級(jí)安全性)連接并發(fā)送SIP注冊(cè)消息時(shí)。橫越服務(wù)器將在修正該消息的“聯(lián)系人”標(biāo)題后將該消息轉(zhuǎn)發(fā)到SIP注冊(cè)主管/代理,使得該注冊(cè)主管在與該客戶(hù)端進(jìn)行呼叫時(shí)將聯(lián)系橫越服務(wù)器。
當(dāng)SIP注冊(cè)主管/代理115接收到對(duì)于呼入的INVITE時(shí),其將該消息轉(zhuǎn)發(fā)到橫越服務(wù)器117。在轉(zhuǎn)發(fā)該消息到客戶(hù)端之前,橫越服務(wù)器再次修正該消息,此時(shí)包括關(guān)于在該消息的SDP部分中的探測(cè)令牌的信息。
一旦接收到INVITE消息,客戶(hù)端解釋該額外的SDP信息并發(fā)送探測(cè)分組到橫越服務(wù)器117。橫越服務(wù)器利用這些探測(cè)分組的經(jīng)NAT的源地址來(lái)確定在何處從遠(yuǎn)程客戶(hù)端接收的分組將被發(fā)送使得它們將被客戶(hù)端接收。
橫越服務(wù)器還可添加探測(cè)信息到200 OK,它是客戶(hù)端為響應(yīng)INVITE而發(fā)送的。這使得遠(yuǎn)程客戶(hù)端能發(fā)送探測(cè)分組以驗(yàn)證其發(fā)送的分組的源地址。
當(dāng)該呼叫完成時(shí),呼叫被以常規(guī)方式終止,而且橫越服務(wù)器釋放任何被分配的資源。
I.1消息流從客戶(hù)端發(fā)送到橫越服務(wù)器的探測(cè)分組允許橫越服務(wù)器了解其可用于發(fā)送媒體到客戶(hù)端的經(jīng)NAT的客戶(hù)端地址121。本發(fā)明還在客戶(hù)端和橫越服務(wù)器之間建立控制對(duì)系統(tǒng)的訪(fǎng)問(wèn)的持久TLS控制連接,呼叫信令消息通過(guò)該連接發(fā)送。
以下章節(jié)給出了對(duì)探測(cè)分組和控制連接如何被本發(fā)明使用的詳細(xì)說(shuō)明。
I.2注冊(cè)和連接保持有效參考圖2說(shuō)明客戶(hù)端連接橫越服務(wù)器并向SIP注冊(cè)主管/代理注冊(cè)的方法。
客戶(hù)端通過(guò)通常利用SIP TLS公知端口5061建立與橫越服務(wù)器的預(yù)先配置的公眾地址的TLS[TLS]連接啟動(dòng)與橫越服務(wù)器的通信(201)。橫越服務(wù)器利用其公眾密鑰作為T(mén)LS連接建立的一部分來(lái)向客戶(hù)端驗(yàn)證自身。
假設(shè)客戶(hù)端被授權(quán)這樣做,在客戶(hù)端和橫越服務(wù)器之間TLS連接被保持客戶(hù)端希望從SIP注冊(cè)主管/代理接收呼入的整個(gè)周期??蛻?hù)端和橫越服務(wù)器之間的所有后續(xù)SIP信令都通過(guò)這個(gè)連接發(fā)生。
當(dāng)TLS連接被建立時(shí),客戶(hù)端發(fā)送SIP REGISTER消息(202)。這包括本發(fā)明的標(biāo)題,稱(chēng)為X-Assent標(biāo)題(見(jiàn)以下的章節(jié)I.5),其告訴橫越服務(wù)器客戶(hù)端支持本發(fā)明的協(xié)議擴(kuò)展。當(dāng)橫越服務(wù)器接收到REGISTER消息時(shí),其創(chuàng)建到SIP注冊(cè)主管/代理的TCP連接。其修正REGISTER消息中的聯(lián)系人標(biāo)題,使得SIP注冊(cè)主管/代理將聯(lián)系它而不是客戶(hù)端,而且添加或修正聯(lián)系人標(biāo)題的“期滿(mǎn)”字段,使得客戶(hù)端將在適于確保對(duì)于TLS連接的NAT綁定保持有效的周期內(nèi)重新REGISTER。一旦REGISTER被修正,其被轉(zhuǎn)發(fā)到SIP注冊(cè)主管/代理(204)。
如果SIP注冊(cè)主管/代理接受該注冊(cè),其將發(fā)送200 OK(205)。橫越服務(wù)器接受注冊(cè)200 OK響應(yīng)的接收,作為客戶(hù)被授權(quán)利用其資源的指示。橫越服務(wù)器恢復(fù)其已經(jīng)修正的任何聯(lián)系人標(biāo)題位置信息,并插入“X-Assent”標(biāo)題(見(jiàn)以下的章節(jié)1.5)。(術(shù)語(yǔ)“Assent”在本發(fā)明的軟件實(shí)現(xiàn)中用于參考本發(fā)明的各個(gè)實(shí)施例)。后者告訴客戶(hù)端,可能需要本發(fā)明的進(jìn)程。特別在此階段,其通知客戶(hù)端優(yōu)選在注冊(cè)事項(xiàng)完成后保持TLS連接。結(jié)果得到的消息被轉(zhuǎn)發(fā)到客戶(hù)端(206)。
某個(gè)時(shí)間過(guò)后,SIP注冊(cè)主管/代理可選擇關(guān)閉與橫越服務(wù)器的TCP連接(207),可能是為了節(jié)省資源。
1.3處理呼入下面參考圖3描述用于處理呼入的序列。
如同前面提到的,客戶(hù)端和橫越服務(wù)器之間的TLS連接是在客戶(hù)端希望接收呼入的整個(gè)周期內(nèi)保持的(301)。事件的主要序列開(kāi)始于SIP注冊(cè)主管/代理接收到SIP INVITE消息形式的呼入指示時(shí)(302)。SIP注冊(cè)主管/代理將查詢(xún)URI,并確定INVITE需要被轉(zhuǎn)發(fā)到橫越服務(wù)器。如果在SIP注冊(cè)主管/代理和橫越服務(wù)器之間不存在TCP連接,則SIP注冊(cè)主管/代理創(chuàng)建一個(gè)連接(303)并轉(zhuǎn)發(fā)已經(jīng)適當(dāng)改變了該INVITE的URI的INVITE消息(304)。
在接收到INVITE時(shí),橫越服務(wù)器進(jìn)行以下工作●改變URI以交付給客戶(hù)端;●更新記錄路由標(biāo)題(或者更新聯(lián)系人標(biāo)題),使得客戶(hù)端將向其發(fā)送未來(lái)的SIP請(qǐng)求,而不是試圖將這些SIP請(qǐng)求直接發(fā)送給遠(yuǎn)程客戶(hù)端;●記錄從客戶(hù)端接收的媒體將被發(fā)送到的地址;●任選地更新客戶(hù)端優(yōu)選發(fā)送媒體所至的地址,使得客戶(hù)端發(fā)送媒體到橫越服務(wù)器的內(nèi)TS地址,而不是直接發(fā)送到遠(yuǎn)程客戶(hù)端;●插入額外的SDP參數(shù)[SDP]以描述將被使用的本發(fā)明的探測(cè)分組(下面將進(jìn)一步描述對(duì)這些分組的處理)。
可以向SDP屬性中添加兩組探測(cè)信息。第一組探測(cè)信息(標(biāo)記為‘rx’)被用于確定客戶(hù)端希望通過(guò)它們接收媒體的經(jīng)NAT的地址。第二組任選的探測(cè)信息(標(biāo)記為‘tx’)被用于確定客戶(hù)由此正在進(jìn)行發(fā)送的該組經(jīng)NAT的地址。
修正的INVITE消息被發(fā)送到客戶(hù)端(305),假設(shè)客戶(hù)端通過(guò)發(fā)送200 OK響應(yīng)該INVITE(306),橫越服務(wù)器在轉(zhuǎn)發(fā)該消息到SIP注冊(cè)主管/代理之前進(jìn)行以下的改動(dòng)(307)●更新記錄路由標(biāo)題(或更新聯(lián)系人標(biāo)題),使得遠(yuǎn)程客戶(hù)端將向其發(fā)送未來(lái)的請(qǐng)求,而不是試圖直接將這些請(qǐng)求發(fā)送給客戶(hù)端;●創(chuàng)建端口以形成外TS地址,來(lái)自遠(yuǎn)程客戶(hù)端的媒體可以在該外TS地址上接收;●修正SDP中的地址以指定新創(chuàng)建的外TS地址,從而避免遠(yuǎn)程客戶(hù)端試圖直接向客戶(hù)端發(fā)送媒體。
一旦接收到經(jīng)修正的200 OK,SIP注冊(cè)主管/代理將其轉(zhuǎn)發(fā)到遠(yuǎn)程客戶(hù)端(308)。
跟隨200 OK之后的SIP ACK消息完成了該事項(xiàng),但是并沒(méi)有在圖中示出,這是因?yàn)樵撓⒈恍拚娃D(zhuǎn)發(fā)的方式與INVITE消息的基本相同。
在處理了INVITE事項(xiàng)之后,客戶(hù)端和橫越服務(wù)器完成了準(zhǔn)備交換媒體的步驟。
I.4處理呼出對(duì)于圖4所示的呼出,再次假設(shè)客戶(hù)端和橫越服務(wù)器之間的原TLS連接仍然打開(kāi)(401),而且客戶(hù)端可利用該連接來(lái)將其INVITE消息發(fā)送到橫越服務(wù)器(402)。如果橫越服務(wù)器沒(méi)有對(duì)SIP注冊(cè)主管/代理打開(kāi)的TCP連接,則其打開(kāi)一個(gè)連接(403)。在轉(zhuǎn)發(fā)INVITE到SIP注冊(cè)主管/代理之前(404),橫越服務(wù)器進(jìn)行以下工作●更新記錄路由標(biāo)題(或更新聯(lián)系人標(biāo)題),使得遠(yuǎn)程客戶(hù)端將向其發(fā)送未來(lái)的請(qǐng)求,而不是試圖直接將這些請(qǐng)求發(fā)送給客戶(hù)端;●創(chuàng)建端口以形成外TS地址,來(lái)自遠(yuǎn)程客戶(hù)端的媒體可以在該外TS地址上接收;●修正SDP中的地址為所創(chuàng)建的外TS地址,從而避免遠(yuǎn)程客戶(hù)端試圖直接向客戶(hù)端發(fā)送媒體。
當(dāng)SIP注冊(cè)主管/代理接收到該消息時(shí),其將該消息轉(zhuǎn)發(fā)到遠(yuǎn)程客戶(hù)端(405)。
遠(yuǎn)程客戶(hù)端對(duì)INVITE的200 OK響應(yīng)(406)通過(guò)SIP注冊(cè)主管/代理被轉(zhuǎn)發(fā)到橫越服務(wù)器(407)。橫越服務(wù)器對(duì)該響應(yīng)進(jìn)行如下修正●更新記錄路由標(biāo)題(或者修正聯(lián)系人標(biāo)題),使得客戶(hù)端將向其發(fā)送未來(lái)的SIP請(qǐng)求,而不是試圖將這些SIP請(qǐng)求直接發(fā)送給遠(yuǎn)程客戶(hù)端;●記錄從客戶(hù)端接收的媒體將被發(fā)送到的地址;●修正客戶(hù)端優(yōu)選發(fā)送媒體所至的地址,使得客戶(hù)端發(fā)送媒體到橫越服務(wù)器的內(nèi)TS地址,而不是直接發(fā)送到遠(yuǎn)程客戶(hù)端;●插入額外的SDP參數(shù)以描述將被使用的ASSENT探測(cè)分組(下面將進(jìn)一步描述對(duì)這些分組的處理)。
修正的響應(yīng)被發(fā)送到客戶(hù)(408)。
INVITE事項(xiàng)是利用ACK消息完成的。其并沒(méi)有進(jìn)行描述,這是因?yàn)槠涮幚砘旧吓cINVITE消息的相同。
一旦會(huì)話(huà)信令已經(jīng)完成,則如章節(jié)I.7所述啟動(dòng)媒體交換。
I.5SIP標(biāo)題格式本發(fā)明的SIP標(biāo)題指示當(dāng)被包含在發(fā)送給橫越服務(wù)器的消息中時(shí),客戶(hù)端支持本發(fā)明的擴(kuò)展,并指定該擴(kuò)展優(yōu)選用在從橫越服務(wù)器發(fā)送到客戶(hù)端時(shí)。標(biāo)題可包括特定參數(shù)。本發(fā)明的SIP標(biāo)題參數(shù)的定義在A(yíng)BNF[ABNF]中有如下定義assent-header="X-Assent"HCOLON[assent-extension-params]assent-extension-params=generic-param*(SEMI generic-param);HCOLON,SEMI&generic-param definedin[SIP]I.6 SDP參數(shù)格式為了在橫越服務(wù)器和客戶(hù)端之間傳送探測(cè)配置,本發(fā)明引入了另外的SDP參數(shù)[SDP]。本發(fā)明的SDP參數(shù)是媒體級(jí)參數(shù),而且本發(fā)明的一組參數(shù)對(duì)描述基于RTP的媒體[RTP][RTPPROF]的每個(gè)SDPm=line都包括。該參數(shù)的格式利用ABNF[ABNF]被如下定義assent-attribute ="a=x-assent:"probe-specificationprobe-specification =probe-direction spaceprobe-type spaceprobe-schemeprobe-direction ="tx/"rx"probe-type ="rtp"/"rtcp"probe-scheme =probe-basic-scheme/probe-future-schemeprobe-basic-scheme ="basic"space probe-token spaceprobe-ack-tokenprobe-token =1*(HEXDIG HEXDIG);HEXDIG definedin[ABNF]probe-ack-token =1*(HEXDIG HEXDIG)probe-futre-scheme =1*ALPHA space*(%x20-7f)in[ABNF] ;ALPHA definedExamples of the SDP attribute for a basic probe of the present invention are:
a=x-assent:rx rtp basic 0564fde459ba453c 54d5abc671dfa2b1a=x-assent:rx rtcp basic 67344ca43b4578fc fd23a657900ac893在以下的章節(jié)I.7中描述了如何使用該信息。
I.7建立媒體在交換了探測(cè)信息之后,客戶(hù)端發(fā)送探測(cè)分組到橫越服務(wù)器,使得橫越服務(wù)器能了解經(jīng)NAT的地址以將其用于往返客戶(hù)端發(fā)送和接收媒體。
探測(cè)消息被用于在客戶(hù)端之間建立媒體流的事件序列如圖5所示。步驟(501)至(505)示意了客戶(hù)端調(diào)用的用以啟動(dòng)媒體流的接收的事件序列,而步驟(506)至(509)示出了客戶(hù)端用于傳輸媒體的步驟。
建立RTP和RTCP流基本上相同,除了在某些情況下使用稍微不同的值。為避免重復(fù)說(shuō)明兩次,該序列是針對(duì)RTP描述的,但是在有不同值用于建立RTCP流時(shí),RTCP值被放在相關(guān)的RTP值之后的尖括號(hào)內(nèi),例如rtp值<rtcp值>。
客戶(hù)通過(guò)從探測(cè)方向被設(shè)置為‘rx’以及探測(cè)類(lèi)型被設(shè)置為rtp<rtcp>的屬性中提取探測(cè)令牌和探測(cè)確認(rèn)令牌來(lái)啟動(dòng)媒體接收??蛻?hù)端通過(guò)將用16進(jìn)制編碼的探測(cè)令牌轉(zhuǎn)換為字節(jié)序列,并將它們拷貝到章節(jié)I.8所述的探測(cè)分組中構(gòu)成一個(gè)探針。被構(gòu)成的探測(cè)分組被發(fā)送到在相關(guān)的SDP c=和m=lines指定的地址中(即使SDP通常使用這些地址來(lái)指定媒體被發(fā)送到何處,但并不從其接收)(501)。該探測(cè)分組被發(fā)送所至的端口構(gòu)成了橫越服務(wù)器的內(nèi)TS地址的一部分。
考慮到分組丟失(501),客戶(hù)端不斷地重發(fā)該探測(cè)分組(502)直到其接收到探測(cè)確認(rèn)分組(503)。
當(dāng)橫越服務(wù)器確實(shí)接收到探測(cè)分組時(shí)(502),其使其所包含的探測(cè)令牌與其內(nèi)部記錄相關(guān)以確定該探測(cè)分組與哪一個(gè)呼叫相關(guān)并用呼叫信息記錄探測(cè)分組的源地址。探測(cè)分組的源地址是橫越服務(wù)器將為該會(huì)話(huà)轉(zhuǎn)發(fā)從遠(yuǎn)程客戶(hù)端接收的媒體所至的地址。
為了通知不需要另外的探測(cè)分組,橫越服務(wù)器向客戶(hù)端發(fā)送探測(cè)確認(rèn)分組。其構(gòu)成與探測(cè)分組相同,但包含探測(cè)確認(rèn)令牌而不是探測(cè)令牌(503)。客戶(hù)端通過(guò)確保探測(cè)確認(rèn)分組包含正確的探測(cè)確認(rèn)令牌來(lái)核實(shí)該探測(cè)確認(rèn)分組是否有效。
橫越服務(wù)器現(xiàn)在已經(jīng)有足夠的信息來(lái)將從遠(yuǎn)程客戶(hù)端(504)接收的媒體分組轉(zhuǎn)發(fā)到客戶(hù)端(505)。
注意,如果一個(gè)出站的INVITE被拾取,則客戶(hù)端可以從橫越服務(wù)器接收來(lái)自一個(gè)以上遠(yuǎn)程客戶(hù)端的媒體??蛻?hù)端利用RTP分組中的SSRC來(lái)區(qū)分來(lái)自不同源的媒體。
橫越服務(wù)器可以判斷客戶(hù)端是直接將媒體發(fā)送給遠(yuǎn)程客戶(hù)端,還是通過(guò)自身。如果橫越服務(wù)器選擇中繼客戶(hù)端所發(fā)送的媒體,則其用設(shè)置為‘tx’的探測(cè)方向字段包括本發(fā)明的SDP參數(shù)。
客戶(hù)端經(jīng)由橫越服務(wù)器發(fā)送媒體的機(jī)制類(lèi)似于其接收媒體的方式。客戶(hù)端提取在已經(jīng)將探測(cè)方向字段設(shè)置為‘tx’的本發(fā)明的SDP屬性中指定的探測(cè)信息,并且根據(jù)該地址發(fā)送探測(cè)分組,該探測(cè)分組被用于根據(jù)在相關(guān)的SDPc=和m=lines中指定的地址(506)來(lái)傳送媒體。橫越服務(wù)器用對(duì)應(yīng)的探測(cè)確認(rèn)分組確認(rèn)這些地址(507)。現(xiàn)在,當(dāng)橫越服務(wù)器從客戶(hù)端接收到媒體時(shí)(508),其利用分組的源和目的地地址確定該媒體所相關(guān)的會(huì)話(huà),而且能夠利用已經(jīng)存儲(chǔ)的信息正確地將媒體轉(zhuǎn)發(fā)到遠(yuǎn)程客戶(hù)端(509)。如果客戶(hù)端接收的SDP不包含本發(fā)明的具有設(shè)置為‘tx’的探測(cè)方向字段的任何SDP屬性,則客戶(hù)端將媒體發(fā)送到SDP中指定的地址,而不用使用本發(fā)明的進(jìn)程。
注意,是由客戶(hù)端決定是否選擇在從其進(jìn)行發(fā)送的同一端口上接收媒體。
I.8探測(cè)令牌與探測(cè)分組格式本發(fā)明的探測(cè)令牌是由橫越服務(wù)器選擇的,而且優(yōu)選不可由外部裝置預(yù)測(cè),即使外部裝置完全知道所有先前產(chǎn)生的探測(cè)令牌。每個(gè)探測(cè)令牌優(yōu)選在橫越服務(wù)器足以區(qū)分不同的連接建立事件的期間內(nèi)也是唯一的。每個(gè)探測(cè)令牌都可以被編碼/加密。
本發(fā)明的探測(cè)分組和探測(cè)確認(rèn)分組利用與RTP和RCTP分組相同的源和目的地地址,因此優(yōu)選能夠區(qū)分二者。例如,本發(fā)明的探測(cè)分組能夠通過(guò)它們的尺寸與RTP和RCTP分組區(qū)別開(kāi)來(lái)。RTP或RTCP分組的最小尺寸是12個(gè)字節(jié)。因此,本發(fā)明的探測(cè)分組優(yōu)選短于12個(gè)字節(jié)。來(lái)自SDP參數(shù)的探測(cè)令牌和探測(cè)確認(rèn)令牌以網(wǎng)絡(luò)字節(jié)順序被放入探測(cè)分組中。圖6中示意了使用IETF位編號(hào)慣例的示例性探測(cè)分組。
I.9媒體保持有效優(yōu)選在沒(méi)有任何媒體流時(shí)阻止媒體分組NAT綁定超時(shí)。如果在可能導(dǎo)致NAT綁定超時(shí)的周期內(nèi)在客戶(hù)端和服務(wù)器之間沒(méi)有通過(guò)用于特定NAT綁定的分組,客戶(hù)端通過(guò)向橫越服務(wù)器發(fā)送適合于該NAT綁定的探測(cè)分組刷新該綁定??蛻?hù)端持續(xù)發(fā)送該探測(cè)分組直到橫越服務(wù)器用適當(dāng)?shù)奶綔y(cè)確認(rèn)分組確認(rèn)該探測(cè)分組,從而確保該綁定已經(jīng)被刷新。
I.10結(jié)束呼叫一旦接收到對(duì)應(yīng)于對(duì)呼叫的SIP BYE的200 OK,橫越服務(wù)器將釋放其已經(jīng)分配用于處理該呼叫的任何資源。這將終止橫越服務(wù)器對(duì)該呼叫的中繼動(dòng)作。
如果媒體和媒體保持有效事件在適當(dāng)長(zhǎng)的周期內(nèi)不發(fā)生,則橫越服務(wù)器也釋放資源。
在一個(gè)可選實(shí)施例中,客戶(hù)端可以是SIP注冊(cè)主管,其代表其它裝置提供NAT與防火墻橫越。注冊(cè)主管以類(lèi)似于端點(diǎn)的方式向橫越服務(wù)器注冊(cè)。該注冊(cè)啟動(dòng)了注冊(cè)主管和橫越服務(wù)器之間的通信信道。該信道被用于在橫越服務(wù)器和客戶(hù)端之間運(yùn)送SIP消息。SIP呼叫建立于是以上述的方式繼續(xù)進(jìn)行。SIP呼叫建立于是以上述的方式繼續(xù)進(jìn)行,其中注冊(cè)主管充當(dāng)信令的中繼。如果端點(diǎn)能夠并且希望支持防火墻橫越,媒體可在其和橫越服務(wù)器之間直接通過(guò),否則注冊(cè)主管還不如中繼媒體。
II.涉及H.323的實(shí)施例本發(fā)明還允許不同地址空間內(nèi)的端點(diǎn)(例如,客戶(hù)端)在H.323協(xié)議內(nèi)相互通信。圖7示出了對(duì)該系統(tǒng)的基本體系結(jié)構(gòu)。在此,網(wǎng)絡(luò)被NAT和/或防火墻705再次劃分為內(nèi)部701和外部703網(wǎng)絡(luò)。通常,內(nèi)部網(wǎng)絡(luò)是專(zhuān)用網(wǎng),而且可以由公司或個(gè)人管理。外部網(wǎng)通常是公眾網(wǎng),如因特網(wǎng),而且作為選擇可以是另一專(zhuān)用網(wǎng)。通信是通過(guò)與外部網(wǎng)內(nèi)的橫越服務(wù)器709協(xié)同工作的內(nèi)部網(wǎng)內(nèi)的端點(diǎn)707(例如,客戶(hù)端)實(shí)現(xiàn)的。因此,內(nèi)部端點(diǎn)和橫越服務(wù)器一起工作以建立跨越NAT的持久雙向連接,并利用探測(cè)分組發(fā)現(xiàn)已經(jīng)被NAT修正的地址。
圖7標(biāo)記了外部網(wǎng)中的端點(diǎn)作為“(顯式)遠(yuǎn)程端點(diǎn)”709。這是因?yàn)檫h(yuǎn)程端點(diǎn)709實(shí)際上位于另一NAT之后,因此在物理上位于另一地址空間內(nèi)。如果遠(yuǎn)程端點(diǎn)在另一NAT之后,則優(yōu)選能夠利用來(lái)自外部地址空間的地址訪(fǎng)問(wèn)它,可能通過(guò)也使用本發(fā)明的遠(yuǎn)程端點(diǎn)。因此,術(shù)語(yǔ)“(顯式)遠(yuǎn)程端點(diǎn)”被用于指借助它遠(yuǎn)程端點(diǎn)能在外部地址空間被訪(fǎng)問(wèn)的地址,而與其物理所處的地址空間無(wú)關(guān)。
本發(fā)明優(yōu)選結(jié)合關(guān)守711工作。關(guān)守負(fù)責(zé)處理注冊(cè)和呼叫路由選擇。關(guān)守可以是任何標(biāo)準(zhǔn)適應(yīng)性的關(guān)守,而且不必知道本發(fā)明所進(jìn)行的修正。
圖7還示意了在以下章節(jié)中涉及的地址的位置。‘端點(diǎn)地址’713屬于內(nèi)部網(wǎng)701中的端點(diǎn)707并從內(nèi)部地址空間分配?!h(yuǎn)程地址’715和‘關(guān)守地址’717分別屬于(顯式)遠(yuǎn)程端點(diǎn)和關(guān)守,并且被從外部地址空間分配。橫越服務(wù)器具有兩套地址內(nèi)TS地址719和外TS地址721。這兩套地址都是從外部地址空間分配的。內(nèi)TS地址被用于連接內(nèi)部網(wǎng)內(nèi)的端點(diǎn)。外TS地址與外部網(wǎng)內(nèi)的諸如關(guān)守和遠(yuǎn)程端點(diǎn)的實(shí)體相連。用于外TS地址的端口被動(dòng)態(tài)分配。當(dāng)IP分組從內(nèi)部地址空間橫越到外部地址空間時(shí),分組的源地址被NAT修正。由NAT插入的地址稱(chēng)為‘經(jīng)NAT的地址’723。經(jīng)NAT的地址是從外部地址空間分配的。
II.1操作本發(fā)明是通過(guò)在端點(diǎn)和橫越服務(wù)器之間穿越NAT建立持久雙向控制路徑工作的。除了允許端點(diǎn)聯(lián)系橫越服務(wù)器,更重要的是允許橫越服務(wù)器在任何時(shí)候聯(lián)系端點(diǎn)。在本發(fā)明針對(duì)H.323的情況下,該路徑是基于UDP的,并且在端點(diǎn)經(jīng)由橫越服務(wù)器向關(guān)守注冊(cè)時(shí)建立。本發(fā)明還允許建立入站和出站媒體流。本發(fā)明利用從接收媒體的端點(diǎn)地址發(fā)送給橫越服務(wù)器的探測(cè)分組來(lái)了解可用于將媒體發(fā)送到端點(diǎn)的經(jīng)NAT的地址。
以下的每個(gè)小節(jié)都詳細(xì)描述了本發(fā)明的協(xié)議的各個(gè)階段。本發(fā)明需要在標(biāo)準(zhǔn)的H.323消息中放入一些另外的信息。
II.2非標(biāo)準(zhǔn)參數(shù)(NonStandardParameter)內(nèi)容本發(fā)明需要在橫越服務(wù)器和端點(diǎn)之間交換附加信息。該信息是利用在H.225[H.225]和H.245[H.245]消息中出現(xiàn)的NonStandardParameter字段傳送的,這些字段具有以下的ASN.1[ASN1]定義(或等同物)NonStandardParameter:.=SEQUENCE{nonStandardIdentifier NonStandardIdentifier,data OCTET STRING}NonStandardIdentifier:.=CHOICE{object OBJECT IDENTIFIER,h221NonStandard H221NonStandard,…}
H221NonStandard:.=SEQUENCE{t35CountryCode INTEGER(0..255),t35Extension INTEGER(0..255),manufacturerCode INTEGER(0..65535),對(duì)于本發(fā)明而言,NonStandardIdentifier的h221NonStandard變量是與以下值使用的t35CountryCode=0xB4t35Extension=0x00manufactureCode=0x5200跟隨‘0x’前綴后的值就是16進(jìn)制數(shù)。
NonStandardParameter的數(shù)據(jù)字段包括兩部分。第一部分用于指示該擴(kuò)展是本發(fā)明的擴(kuò)展,而不是可能利用上述的T35國(guó)家碼和制造商碼的任何其它擴(kuò)展。其由字符串的ASCII值組成,例如ASSENT即,最初的8位字節(jié)具有值0x41、0x53、0x53、0x45、0x4E、0x54、0x3A。緊跟“ASSENT”字符序列(以及沒(méi)有諸如\0的任何插入的結(jié)束字符)是該數(shù)據(jù)的主要部分,這是按照為H.225定義的ASN.1編碼規(guī)則編碼的ASN.1[ASN1]。ASN.1的示例性定義如下。
ASSENT-MESSAGES DEFINITIONS AUTOMATIC TAGS:._BEGINIMPORTSNonStandardParameter,CallIdentifier,TransportAddressFROM H323-MESSAGES;ASSENT-Info:.=SEQUENCE{nonStandardParameter SEQUENCE OF NonStandardParameter,operation ASSENT-Operation,…}ASSENT-Operation:.=CHOICE{assent-supported ASSENT-Options,transport-request TCP-Trahsport-Request,probe-infoProbe-Info,…}ASSENT-Options:.=SEQUENCE{…}TCP-Transport-Request:.=SEQUENCE{
callback-address TransporAddress,probe-tokenOCTET STRING,…}Probe-Info:.=CHOICE{rx-probe-info Rx-Probe-Info,tx-probe-info Tx-Probe-Info,}Rx-Probe-Info:.=SEQUENCE{rtpIn-Probe-Info,rtcp In-Probe-lnfo,reverse-rtcp Out-Probe-Info OPTIONAL,…}Tx-Probe-Info:.=SEQUENCE{rtpOut-Probe-Info OPTIONAL,rtcp Out-Probe-Info OPTIONAL,reverse-rtcp In-Probe-Info,…}In-Probe-Info:.=SEQUENCE{Probe-tokens Probe-Tokens,
probe-address TransportAddress,}Out-Probe-Info:.=SEQUENCE{probe-tokens Probe-Tokens,}Probe-Tokens:.=SEQUENCE{probe-tokenOCTET STRING,probe-ack-tokenOCTET STRING,}ENDASSENT-Info的NonStandardParameter部分允許包含端到端NonStandardParameters,其中包含“ASSENT”信息將阻止其它非標(biāo)準(zhǔn)信息被包含(例如,到注冊(cè)消息中)。
在本文件的其它章節(jié)中描述了如何使用這些參數(shù)。
II.3控制路徑建立和注冊(cè)本發(fā)明在端點(diǎn)和橫越服務(wù)器之間建立持久控制路徑,該控制路徑可用于在任何時(shí)候從任一方交換數(shù)據(jù)。在本發(fā)明針對(duì)H.323的實(shí)施例的情況下,這種控制信道是基于UDP的。
如圖8所示,控制路徑建立在端點(diǎn)向橫越服務(wù)器發(fā)送注冊(cè)請(qǐng)求消息(RRQ)時(shí)(801)。注冊(cè)消息優(yōu)選包含NonStandardData參數(shù)以通知橫越服務(wù)器該端點(diǎn)支持本發(fā)明的擴(kuò)展。NonStandardData參數(shù)包含ASSENT-Info結(jié)構(gòu)(如上面的章節(jié)II.2所述),其存在A(yíng)SSENT-操作結(jié)構(gòu)的被ASSENT支持的選項(xiàng)。
一旦接收到注冊(cè)消息,橫越服務(wù)器修正timeToLive參數(shù)為保證在用于UDP路徑的NAT綁定屆滿(mǎn)之前端點(diǎn)將重新注冊(cè)的值。一旦被修正并已經(jīng)去除了“ASSENT”特定的NonStandardData,RRQ被轉(zhuǎn)發(fā)到關(guān)守(802)。
如果關(guān)守接受了該注冊(cè),其用注冊(cè)確認(rèn)消息(RCF)響應(yīng)(803)。橫越服務(wù)器接受該確認(rèn)消息作為該端點(diǎn)被授權(quán)使用其資源的指示。橫越服務(wù)器插入在RRQ中使用的NonStandardData參數(shù)到RCF中以指示本發(fā)明的進(jìn)程是需要的,而且該消息被轉(zhuǎn)發(fā)到端點(diǎn)(804)。
當(dāng)注冊(cè)周期屆滿(mǎn)時(shí),端點(diǎn)向橫越服務(wù)器發(fā)送輕型注冊(cè)請(qǐng)求消息(805)。端點(diǎn)優(yōu)選從其發(fā)送原始注冊(cè)消息的相同地址和端口發(fā)送該消息。該消息將刷新NAT中的綁定。橫越服務(wù)器通過(guò)向關(guān)守轉(zhuǎn)發(fā)該消息(806)以及將來(lái)自關(guān)守的響應(yīng)(807)轉(zhuǎn)發(fā)到端點(diǎn)(808)來(lái)完成消息交換。
通過(guò)遵循該進(jìn)程,端點(diǎn)向關(guān)守注冊(cè),而且在橫越服務(wù)器和端點(diǎn)之間建立允許橫越服務(wù)器在任何時(shí)候向端點(diǎn)發(fā)送消息的持久UDP路徑。
II.4呼出信令在本發(fā)明中用于呼出的信令階段與對(duì)不用本發(fā)明的正常呼叫大部分是一樣的。該事件序列如圖9所示。
端點(diǎn)首先經(jīng)由橫越服務(wù)器與關(guān)守執(zhí)行許可請(qǐng)求/許可確認(rèn)交換(901)(902)(903)(904)。ARQ不必來(lái)自發(fā)送RRQ的同一端口。
倘若許可進(jìn)行呼叫,端點(diǎn)在橫越服務(wù)器上建立與H.225的公知端口(例如1720)的TCP連接,而且橫越服務(wù)器創(chuàng)建與關(guān)守的前向TCP連接。端點(diǎn)利用該連接發(fā)送其H.225建立消息(907),橫越服務(wù)器將該消息轉(zhuǎn)發(fā)到關(guān)守(908)。其余的H.225呼叫信令消息以相同的方式交換(909)(910)。
如果會(huì)話(huà)需要建立H.245連接,橫越服務(wù)器將在H.225中從關(guān)守接收H.245地址。在此情形下,橫越服務(wù)器基本上以如同關(guān)守的基本上相同方式工作。其創(chuàng)建收聽(tīng)的TCP Socket,并在將其轉(zhuǎn)發(fā)到端點(diǎn)之前修正H.225消息中的地址。橫越服務(wù)器在包含H.245地址的消息中還包括本發(fā)明的探測(cè)信息。如果這樣的話(huà),本發(fā)明的數(shù)據(jù)結(jié)構(gòu)的傳輸請(qǐng)求變量將包含在NonStandardControl參數(shù)中。傳輸請(qǐng)求結(jié)構(gòu)中包含的地址將與主消息中的H.245地址相同。端點(diǎn)將創(chuàng)建與橫越服務(wù)器的TCP連接(911),并且如果橫越服務(wù)器包含探測(cè)信息,則端點(diǎn)優(yōu)選立即通過(guò)新創(chuàng)建的連接發(fā)送對(duì)應(yīng)于指定的探測(cè)令牌,如以下章節(jié)II.12指定格式化的字節(jié)。一旦接收到TCP連接以及任何相關(guān)的探測(cè)令牌,橫越服務(wù)器將利用關(guān)守提供的地址進(jìn)行與關(guān)守的TCP連接(913)。橫越服務(wù)器并不將探測(cè)令牌轉(zhuǎn)發(fā)到關(guān)守。H.245消息現(xiàn)在就可以被交換(914)(915)。在交換了呼出信令之后,優(yōu)選建立該媒體。這在以下的章節(jié)II.6和章節(jié)II.7中進(jìn)行了說(shuō)明。
II.5呼入信令在本發(fā)明中用于呼入信令的事件序列類(lèi)似于正常呼入事件序列,除了在端點(diǎn)和橫越服務(wù)器之間要建立TCP連接。由于有NAT,橫越服務(wù)器無(wú)法直接建立與端點(diǎn)的TCP連接。橫越服務(wù)器因此經(jīng)由利用上面的章節(jié)II.3中所述的進(jìn)程建立的控制路徑將NonStandard RAS消息發(fā)送到端點(diǎn)?;蛘?,H.225 Facility(設(shè)施)消息請(qǐng)求該端點(diǎn)創(chuàng)建與其的TCP連接。結(jié)果產(chǎn)生的事件序列如圖10所示。
當(dāng)橫越服務(wù)器接收到來(lái)自關(guān)守的H.225建立消息時(shí)(1001),其發(fā)送一條消息到端點(diǎn)請(qǐng)求會(huì)合TCP連接(1002)。橫越服務(wù)器所發(fā)送的消息是RAS NonStandardMessage。該消息的NonStandardData參數(shù)包含在章節(jié)II.22中定義的數(shù)據(jù),其中ASNA部分包含傳輸請(qǐng)求變量。該消息還包含在該端點(diǎn)被連接所至的橫越服務(wù)器上的被動(dòng)態(tài)分配的TCP地址,以及探測(cè)令牌值,requestSegNum參數(shù)中所包含的值沒(méi)有意義??紤]到UDP的不可靠特性,橫越服務(wù)器將不斷重發(fā)該消息直到它在指定端口上接收到TCP連接。當(dāng)該端點(diǎn)接收到該消息時(shí),如果它尚未創(chuàng)建對(duì)應(yīng)于該指定地址和探測(cè)令牌的連接,則其優(yōu)選創(chuàng)建該連接(1003)。一旦已經(jīng)創(chuàng)建了TCP連接,端點(diǎn)將通過(guò)新創(chuàng)建的TCP連接發(fā)送對(duì)應(yīng)于所指定的探測(cè)令牌并根據(jù)章節(jié)II.12格式化的字節(jié)序列(1004)。這使得橫越服務(wù)器能夠驗(yàn)證連接的身份。探測(cè)令牌字節(jié)并不轉(zhuǎn)發(fā)到關(guān)守。橫越服務(wù)器于是能轉(zhuǎn)發(fā)H.225建立消息(1005),而且消息的交換暫時(shí)遵循從步驟1006-1011的正常H.323消息序列。
如果端點(diǎn)希望建立H.245信道,其在發(fā)送給橫越服務(wù)器的H.225消息中包含H.245地址(1010)。該地址的值是任意的并且不使用真實(shí)值。當(dāng)橫越服務(wù)器接收到包含這種地址的H.225消息時(shí),其創(chuàng)建其自己的動(dòng)態(tài)分配的TCP傾聽(tīng)者,并在轉(zhuǎn)發(fā)的H.225消息中包含傾聽(tīng)者地址(1011)。當(dāng)關(guān)守建立與橫越服務(wù)器的TCP傾聽(tīng)者的TCP連接時(shí)(1012),橫越服務(wù)器動(dòng)態(tài)創(chuàng)建另一TCP傾聽(tīng)者,并發(fā)送一條H.225設(shè)施消息,請(qǐng)求該端點(diǎn)與新創(chuàng)建的傾聽(tīng)者連接(1013)。該設(shè)施消息在NonStandardControl參數(shù)中包含NonStandardParameter元。這包含在章節(jié)II.2中定義的數(shù)據(jù),其中ASNA部分包含傳輸請(qǐng)求變量。這又包含了端點(diǎn)所連接至的橫越服務(wù)器上的地址,以及探測(cè)令牌值。為完成連接建立,端點(diǎn)創(chuàng)建與指定的橫越服務(wù)器地址的TCP連接(1014),并立即通過(guò)所建立的TCP連接發(fā)送對(duì)應(yīng)于該探測(cè)令牌并按照章節(jié)II.12所述編碼的字節(jié)(1015)。該探測(cè)令牌允許橫越服務(wù)器將該連接與適當(dāng)?shù)暮艚邢嚓P(guān)聯(lián),并且不被轉(zhuǎn)發(fā)到關(guān)守中。于是可能在各方之間交換H.245消息(1016)(1017)。
一旦交換了信令,就如章節(jié)II.6和章節(jié)II.7所述建立媒體。
II.6利用H.245的輸出媒體建立的信令端點(diǎn)能夠利用H.245借助獨(dú)立的傳輸連接上的H.245信令或通過(guò)H.225隧道建立輸出媒體。建立輸出媒體會(huì)話(huà)涉及創(chuàng)建向外RTP數(shù)據(jù)路徑、向外RTCP路徑和向內(nèi)反向RTCP路徑。在理論上,輸出數(shù)據(jù)路徑有可能直接從內(nèi)部端點(diǎn)到達(dá)遠(yuǎn)程端點(diǎn)。然而,橫越服務(wù)器可選擇中繼輸出數(shù)據(jù)。該章節(jié)描述了建立這種數(shù)據(jù)路徑的信令方面,這在圖11中示出。
端點(diǎn)開(kāi)始發(fā)送正常的H.245 OpenLogicChannel消息到橫越服務(wù)器(1101)。該消息優(yōu)選包含在H2250LogicChannelParameters結(jié)構(gòu)中用于反向RTCP路徑的地址。橫越服務(wù)器可以忽略該值,但是優(yōu)選仍包含由該端點(diǎn)分配的地址以接收反向RTCP數(shù)據(jù),以考慮將來(lái)的優(yōu)化。橫越服務(wù)器創(chuàng)建動(dòng)態(tài)分配的外TS地址以接收反向RTCP,在H.245消息中放入該地址,并將該消息轉(zhuǎn)發(fā)到關(guān)守(1102)。
一旦從關(guān)守接收到H.245 OpenLogicChannelAck消息(1103),橫越服務(wù)器向H.245 H2250LogicChannelAckParameters結(jié)構(gòu)添加一個(gè)包含本發(fā)明的控制數(shù)據(jù)的實(shí)例(如章節(jié)II.2指定)的nonStandard參數(shù)。本發(fā)明的控制消息包含Tx-Probe-Info的實(shí)例,其又包含In-Probe-Info類(lèi)型的反向rtcp參數(shù),用于指定反向RTCP數(shù)據(jù)的向內(nèi)路徑。In-Probe-Info結(jié)構(gòu)包含對(duì)于該探針的令牌和探測(cè)確認(rèn)分組,以及探測(cè)分組優(yōu)選被發(fā)送的內(nèi)TS地址。章節(jié)II.11中描述了如何使用這種信息。
如果橫越服務(wù)器選擇轉(zhuǎn)發(fā)向外RTP和RTCP,則其也進(jìn)行如下工作●將地址記錄到從端點(diǎn)接收的RTP和正向RTCP優(yōu)選被轉(zhuǎn)發(fā)到的位置;●修正H2250LogicChannelParameters結(jié)構(gòu)中的地址,使得RTP和RTCP將被發(fā)送至橫越服務(wù)器內(nèi)TS地址;●添加探測(cè)令牌信息到Tx-Probe-Info結(jié)構(gòu)的rtp和rtcp參數(shù)。
一旦H.245 OpenLogicChannelAck消息被編碼,其被轉(zhuǎn)發(fā)到端點(diǎn)(1104)。
一旦建立輸出媒體的信令節(jié)段完成,該端點(diǎn)和橫越服務(wù)器需要利用在章節(jié)II.10和章節(jié)II.11所述的進(jìn)程完成數(shù)據(jù)路徑。
II.7用于輸入媒體建立的信令輸入媒體會(huì)話(huà)包括向內(nèi)RTP數(shù)據(jù)、向內(nèi)RTCP數(shù)據(jù)和向外反向RTCP數(shù)據(jù)。對(duì)于將接收向內(nèi)數(shù)據(jù)的端點(diǎn)而言,優(yōu)選創(chuàng)建新的NAT綁定。向外反向RTCP數(shù)據(jù)可直接從內(nèi)部端點(diǎn)傳遞到遠(yuǎn)程端點(diǎn)。然而,橫越服務(wù)器可選擇中繼向外反向RTCP數(shù)據(jù)。H.245信令可發(fā)生在獨(dú)立的傳輸連接上或者通過(guò)H.225隧道發(fā)生。該章節(jié)參考圖12描述了用于建立輸入媒體的信令事件的序列。
輸入媒體的建立開(kāi)始于橫越服務(wù)器從關(guān)守接收到H.245OpenLogicChannelRequest消息(1201)時(shí)。當(dāng)橫越服務(wù)器接收到該消息時(shí),其向H2250 LogicChannelParameters添加非標(biāo)準(zhǔn)參數(shù)。該非標(biāo)準(zhǔn)參數(shù)包含章節(jié)II.2中指定的信息,其具有選擇包含rx-probe-info的實(shí)例的選項(xiàng)。Rx-Probe-Info結(jié)構(gòu)包含用于rtp參數(shù)中的向內(nèi)RTP數(shù)據(jù)的探測(cè)信息和用于rtcp參數(shù)中的向內(nèi)RTCP數(shù)據(jù)的探測(cè)信息。rtp和rtcp參數(shù)都屬于In-Probe-Info類(lèi)型,這種類(lèi)型指定了將在探測(cè)分組和探測(cè)確認(rèn)分組中使用的令牌,以及端點(diǎn)將發(fā)送探測(cè)分組所至的橫越服務(wù)器上的內(nèi)TS地址。章節(jié)II.11描述了如何使用探測(cè)信息。
另外,橫越服務(wù)器可決定中繼該向外反向RTCP數(shù)據(jù)。如果這樣做,其記錄來(lái)自H.245 OpenLogicChannel的指定反向RTCP數(shù)據(jù)優(yōu)選被轉(zhuǎn)發(fā)至何處的地址,并用其希望在其上接收該反向RTCP數(shù)據(jù)的內(nèi)TS地址填充該字段。其然后在Rx-Probe-Info結(jié)構(gòu)的反向rtcp參數(shù)中包含向外RTCP的探測(cè)信息。章節(jié)II.10描述了如何使用這種信息。
經(jīng)修正的OpenLogicChannel消息被轉(zhuǎn)發(fā)至該端點(diǎn)(1202)。
如果端點(diǎn)接受該信道,則其用OpenLogicChannelAck消息響應(yīng)(1203)。該消息優(yōu)選在H2250LogicChannelAckParameters結(jié)構(gòu)中包含用于RTP和RTCP路徑的地址。橫越服務(wù)器可忽略這些值,但優(yōu)選仍包含由該端點(diǎn)分配的地址以接收相應(yīng)數(shù)據(jù),從而考慮將來(lái)的優(yōu)化。
橫越服務(wù)器動(dòng)態(tài)創(chuàng)建外TS地址,在該外TS地址上將從遠(yuǎn)程端點(diǎn)接收RTP和RTCP數(shù)據(jù),并將地址信息插入到H.245OpenLogicChannelAck消息中。
經(jīng)修正的OpenLogicChannelAck消息被轉(zhuǎn)發(fā)至遠(yuǎn)程端點(diǎn)(1204)。
一旦建立輸入媒體的信令階段完成,端點(diǎn)和橫越服務(wù)器需要利用在章節(jié)II.10和章節(jié)II.11中所述的進(jìn)程完成數(shù)據(jù)路徑。
II.8利用快速連接進(jìn)行呼叫的媒體建立本發(fā)明也可以用于H.323快速連接。用于本發(fā)明擴(kuò)充的快速連接的事件序列與用于正??焖龠B接的相同,除了本發(fā)明的附加信息擴(kuò)充了在該交換中傳送的尋址信息。本發(fā)明的附加信息再次在章節(jié)II.2中所述的H2250LogicChannelParameters結(jié)構(gòu)的非標(biāo)準(zhǔn)參數(shù)中傳送。在此參考圖13描述該進(jìn)程。
為了利用快速連接進(jìn)行呼叫,端點(diǎn)構(gòu)建包含快速開(kāi)始元的H.225建立。包括快速開(kāi)始元的每個(gè)OCTET STRING包含發(fā)送媒體的意圖或接收媒體的意圖。所構(gòu)成的建立被發(fā)送到橫越服務(wù)器(1301)。
對(duì)于在這些意圖中的每個(gè)唯一的發(fā)送和接收地址集合來(lái)說(shuō),橫越服務(wù)器動(dòng)態(tài)分配外TS地址。橫越服務(wù)器在轉(zhuǎn)發(fā)該消息之前將該意圖中的地址改變?yōu)槠鋭?chuàng)建的外TS地址的值(1302)。
來(lái)自關(guān)守的后續(xù)H.225消息優(yōu)選包含對(duì)由遠(yuǎn)程端點(diǎn)所選擇的意圖的應(yīng)答。橫越服務(wù)器優(yōu)選將包含Tx-Probe-Info結(jié)構(gòu)的本發(fā)明的信息添加每個(gè)應(yīng)答中以發(fā)送意圖,以及將包含Rx-Probe-Info結(jié)構(gòu)的本發(fā)明的信息添加每個(gè)應(yīng)答中以接收意圖。如果橫越服務(wù)器選擇中繼由端點(diǎn)所發(fā)送的媒體,其記錄數(shù)據(jù)將被發(fā)送所至的地址并改變?cè)撓⒅械牡刂芬灾付ㄏ嚓P(guān)的內(nèi)TS地址。本發(fā)明的信息結(jié)構(gòu)還將包含用于探測(cè)的相關(guān)信息。所修正的信息被發(fā)送至端點(diǎn)(1304)。轉(zhuǎn)發(fā)該信息后,橫越服務(wù)器可釋放為遠(yuǎn)程端點(diǎn)沒(méi)有選擇的意圖分配的任何資源。
端點(diǎn)和橫越服務(wù)器利用章節(jié)II.10和章節(jié)II.11的進(jìn)程完成媒體建立。
II.9利用快速連接應(yīng)答呼叫的媒體建立當(dāng)利用本發(fā)明的實(shí)施例用于快速連接的呼入時(shí),發(fā)生以下參考圖14描述的事件序列。
橫越服務(wù)器將從關(guān)守接收包含快速開(kāi)始意圖的H.225建立信息(1401)。
對(duì)于發(fā)送意圖中的每個(gè)唯一地址,橫越服務(wù)器創(chuàng)建包含Rx-Probe-Info結(jié)構(gòu)的本發(fā)明的數(shù)據(jù)實(shí)例,并在該地址出現(xiàn)的每個(gè)意圖中包含其拷貝。橫越服務(wù)器對(duì)于接收意圖中的每個(gè)唯一的地址集合進(jìn)行類(lèi)似演練,但在此情況下本發(fā)明的信息包括Tx-Probe-Info結(jié)構(gòu)。
如果橫越服務(wù)器選擇中繼由該端點(diǎn)所發(fā)送的媒體數(shù)據(jù),其將地址記錄到該數(shù)據(jù)優(yōu)選被轉(zhuǎn)發(fā)的地方并修正該意圖的H2250LogicChannelParameters部分中的媒體信道和媒體控制信道地址以指定適當(dāng)?shù)膬?nèi)TS地址。
所修正的信息被發(fā)送至端點(diǎn)(1402)。如果該端點(diǎn)接受該呼叫并支持快速連接,則其響應(yīng)信息將包含對(duì)呼叫者的意圖的應(yīng)答(1403)。
對(duì)于對(duì)發(fā)送意圖的每個(gè)應(yīng)答,橫越服務(wù)器動(dòng)態(tài)分配外TS地址以接收RTP和RTCP。對(duì)于對(duì)接收意圖的每個(gè)應(yīng)答,橫越服務(wù)器動(dòng)態(tài)分配外TS地址以接收反向RTCP。橫越服務(wù)器將對(duì)該意圖的應(yīng)答中的地址改變?yōu)楸粍?chuàng)建的外TS地址并轉(zhuǎn)發(fā)該消息到關(guān)守(1404)。
端點(diǎn)和橫越服務(wù)器通過(guò)遵循在章節(jié)II.10和章節(jié)II.11中描述的進(jìn)程利用本發(fā)明的信息完成媒體建立。
II.10向外路徑探測(cè)理論上,呼出媒體數(shù)據(jù)可能從內(nèi)部地址空間中的端點(diǎn)到達(dá)遠(yuǎn)程端點(diǎn)。然而,橫越服務(wù)器可選擇中繼向外數(shù)據(jù)。如果它這樣做的話(huà),H.245信令將包含對(duì)應(yīng)于描述需要做的向外探測(cè)的RTP和/或RTCP數(shù)據(jù)的Out-Probe-Info參數(shù)。
本章節(jié)描述了對(duì)于單個(gè)數(shù)據(jù)路徑的探測(cè)進(jìn)程。如果向外RTP和RTCP都需要,則該進(jìn)程的兩個(gè)實(shí)例優(yōu)選利用Out-Probe-Info結(jié)構(gòu)中的適當(dāng)探測(cè)值實(shí)現(xiàn)。本章節(jié)和附圖15描述了用于RTP數(shù)據(jù)流的探測(cè)操作。RTCP序列也類(lèi)似。
當(dāng)端點(diǎn)接收到Out-Probe-Info結(jié)構(gòu)中所包含的探測(cè)信息時(shí),其從該地址發(fā)送探測(cè)分組,從該地址其將發(fā)送RTP(或RTCP)分組到在H2250 LogicChannelAckParameters結(jié)構(gòu)中指定的對(duì)應(yīng)地址。探測(cè)分組按照章節(jié)II.12所述利用在Out-Probe-Info結(jié)構(gòu)的探測(cè)令牌元中包含的探測(cè)令牌值構(gòu)成??紤]到UDP分組丟失,端點(diǎn)不斷發(fā)送探測(cè)分組(1501)(1502)直到接收到對(duì)應(yīng)的探測(cè)確認(rèn)分組(1503)。橫越服務(wù)器將在探測(cè)確認(rèn)分組中放入的值是在Out-Probe-Info結(jié)構(gòu)的探測(cè)令牌元的探測(cè)確認(rèn)令牌值中指定的。
橫越服務(wù)器利用探測(cè)分組中的令牌驗(yàn)證數(shù)據(jù)路徑。橫越服務(wù)器記錄探測(cè)分組的源地址并使從該源地址在相關(guān)內(nèi)TS地址上接收的任何未來(lái)分組與同一數(shù)據(jù)路徑相關(guān)(1504)。利用從H.245OpenLogicChannelAck消息中先前存儲(chǔ)的信息,橫越服務(wù)器能夠?qū)⒔邮盏臄?shù)據(jù)分組轉(zhuǎn)發(fā)到正確位置(1505)。
II.11向內(nèi)路徑探測(cè)當(dāng)媒體數(shù)據(jù)(或者RTCP、前向RTCP或反向RTCP)需要從橫越服務(wù)器轉(zhuǎn)發(fā)到該端點(diǎn)時(shí),優(yōu)選在NAT中創(chuàng)建適當(dāng)?shù)牡刂方壎ā_@是通過(guò)端點(diǎn)向橫越服務(wù)器發(fā)送探測(cè)分組實(shí)現(xiàn)的。
本章節(jié)連同圖16描述了向內(nèi)路徑探測(cè)進(jìn)程。注意,為簡(jiǎn)化文字和附圖,本說(shuō)明書(shū)是從建立向內(nèi)RTP流的觀(guān)點(diǎn)描述的。RTCP序列也類(lèi)似。
對(duì)于向內(nèi)RTP(或RTCP)數(shù)據(jù)路徑的探測(cè)信息包含在In-Probe-Info結(jié)構(gòu)的實(shí)例中,其包含將用于探測(cè)分組和探測(cè)確認(rèn)分組的令牌以及端點(diǎn)將發(fā)送該探測(cè)分組所至的地址。端點(diǎn)利用相關(guān)In-Probe-Info結(jié)構(gòu)中的探測(cè)令牌值構(gòu)成如章節(jié)II.12所述的探測(cè)分組。該探測(cè)分組被發(fā)送到在In-Probe-Info的探測(cè)地址參數(shù)中指定的地址(1601)??紤]到UDP分組丟失,端點(diǎn)不斷重發(fā)該探測(cè)分組(1602)直到對(duì)應(yīng)的探測(cè)確認(rèn)分組被接收(1603)。
橫越服務(wù)器利用探測(cè)分組中的令牌驗(yàn)證該數(shù)據(jù)路徑。橫越服務(wù)器用該數(shù)據(jù)路徑信息存儲(chǔ)該探測(cè)分組的經(jīng)NAT的源地址,使得當(dāng)RTP或RTCP媒體分組從遠(yuǎn)程端點(diǎn)接收時(shí)(1604),其能利用所存儲(chǔ)的經(jīng)NAT的地址將它們轉(zhuǎn)發(fā)到該端點(diǎn)(1605)。
II.12探測(cè)令牌與探測(cè)分組格式本發(fā)明的探測(cè)分組和探測(cè)確認(rèn)分組利用與RTP和RTCP相同的源和目的地址,因此優(yōu)選能夠區(qū)分二者。本發(fā)明的探測(cè)分組優(yōu)選通過(guò)它們的尺寸與RTP和RTCP分組區(qū)別開(kāi)來(lái)。RTP和RTCP分組的最小尺寸為12字節(jié),本發(fā)明的探測(cè)分組因此優(yōu)選短于12字節(jié)。來(lái)自非標(biāo)準(zhǔn)H.245參數(shù)的探測(cè)令牌和探測(cè)確認(rèn)令牌以網(wǎng)絡(luò)字節(jié)順序被放入探測(cè)分組中。
在圖17中利用IETF位編號(hào)慣例示意對(duì)于符號(hào)OxO564fde459ba453c的示例性探測(cè)分組。
探測(cè)令牌也可用于TCP連接的建立。在此情況下,通過(guò)該連接由建立該連接的實(shí)體(通常為該端點(diǎn))發(fā)送的第一組字節(jié)對(duì)應(yīng)于該探測(cè)令牌的值。代表該探測(cè)令牌的字節(jié)以對(duì)于UDP探測(cè)分組的相同方式被格式化。探測(cè)令牌的值由橫越服務(wù)器選擇,并優(yōu)選不可由外部裝置預(yù)測(cè),即使其完全了解所有預(yù)先產(chǎn)生的探測(cè)令牌。每個(gè)探測(cè)令牌優(yōu)選在橫越服務(wù)器足以區(qū)別不同的連接建立事件的周期內(nèi)也是唯一的。每個(gè)探測(cè)令牌也可以被編碼/加密。
II.13TCP信令保持有效端點(diǎn)和橫越服務(wù)器之間的TCP連接在可能使NAT釋放對(duì)該連接的綁定的周期內(nèi)可能是無(wú)效的。為保證不發(fā)生這種事情,端點(diǎn)優(yōu)選保證NAT綁定在適當(dāng)周期被刷新。發(fā)送正常消息可以做到這一點(diǎn)。然而,如果在需要刷新時(shí)沒(méi)有這種適當(dāng)?shù)南?,?yōu)選使用用于刷新該綁定的可選機(jī)制。由于隨機(jī)分組無(wú)法被插入到TCP流中以刷新該綁定。本發(fā)明要求適當(dāng)?shù)腘AT綁定刷新為通過(guò)TCP通信的每個(gè)協(xié)議定義的序列。在H.225和H.245的情況下,NAT刷新是通過(guò)端點(diǎn)向橫越服務(wù)器發(fā)送空的TPKT(僅由字節(jié)0x03,0x00,0x00,0x04組成)實(shí)現(xiàn)的。如果橫越服務(wù)器接收到這種空的TPKT,其將它丟棄并且不將它轉(zhuǎn)發(fā)到關(guān)守。不需要橫越服務(wù)器在應(yīng)用級(jí)確認(rèn)該空的TPKT,因?yàn)檫@將由TCP層完成。H.225/H.245 TCP NAT綁定刷新進(jìn)程在圖18中示意。
II.14媒體保持有效如果對(duì)應(yīng)于特定NAT綁定的媒體在可能導(dǎo)致NAT綁定屆滿(mǎn)的周期內(nèi)尚未交換,端點(diǎn)優(yōu)選通過(guò)向橫越服務(wù)器發(fā)送探測(cè)分組刷新該NAT綁定。探測(cè)分組優(yōu)選包含在該綁定被最初啟動(dòng)時(shí)使用的探測(cè)令牌。端點(diǎn)優(yōu)選以適當(dāng)?shù)拈g隔不斷發(fā)送該探測(cè)分組直到它從該橫越服務(wù)器接收到對(duì)應(yīng)的探測(cè)分組。
II.15終止呼叫當(dāng)呼叫被終止時(shí),橫越服務(wù)器釋放使用相同進(jìn)程的TCP資源,就好像它是關(guān)守一樣。當(dāng)最后的TCP資源被釋放時(shí),橫越服務(wù)器釋放分配用于中繼該媒體的任何資源。
在一個(gè)可選實(shí)施例中,該客戶(hù)可以是H.323關(guān)守,其代表其它裝置提供NAT和防火墻橫越。關(guān)守以類(lèi)似于端點(diǎn)的方式向橫越服務(wù)器注冊(cè)。該注冊(cè)啟動(dòng)了關(guān)守和橫越服務(wù)器之間的通信信道。
關(guān)守和橫越服務(wù)器可配置為鄰居。如果這樣做的話(huà),則它們可相互發(fā)出位置請(qǐng)求(LRQ)以確定端點(diǎn)是否在任一位置被注冊(cè)。如果該端點(diǎn)被如此注冊(cè),而且其自身不能支持防火墻橫越,則對(duì)應(yīng)于LRQ的裝置將充當(dāng)用于信令的代理和媒體。如果端點(diǎn)能夠并且希望支持防火墻橫越,則H.225信令將通過(guò)關(guān)守路由,其它信令和媒體可直接進(jìn)入橫越服務(wù)器。
一般而言,應(yīng)強(qiáng)調(diào)本發(fā)明的實(shí)施例的各個(gè)組件可以以硬件、軟件或它們的組合實(shí)現(xiàn)。例如,客戶(hù)端可以是蜂窩電話(huà)、會(huì)議電話(huà)、計(jì)算機(jī)等的一部分,而服務(wù)器可以是基站的一部分。任何當(dāng)前可用或?qū)?lái)部署的計(jì)算機(jī)軟件語(yǔ)言和/或硬件組件都可以在本發(fā)明的這種實(shí)施例中使用。例如,上述的至少一些功能可以利用Visual Basic,C,C++或?qū)κ褂锰幚砥鬟m當(dāng)?shù)娜魏谓M件組合語(yǔ)言實(shí)現(xiàn)。它還可以寫(xiě)入諸如Java的解釋環(huán)境中,并被傳輸?shù)礁鱾€(gè)用戶(hù)的多個(gè)目的地。
本發(fā)明的實(shí)施例的多種特征和優(yōu)勢(shì)從該詳細(xì)說(shuō)明書(shū)中是顯然的,因此,所附權(quán)利要求書(shū)意欲覆蓋落入本發(fā)明的真正精神和范圍內(nèi)的這些特征和優(yōu)勢(shì)。此外,由于本領(lǐng)域的技術(shù)人員很容易想到各種修正和變化,因此不希望將本發(fā)明限制于所示意和描述的確切的結(jié)構(gòu)和操作中,因此所有適當(dāng)?shù)男拚偷刃Ф家暈槁淙氡景l(fā)明的范圍內(nèi)。
圖19示意了計(jì)算機(jī)系統(tǒng)1201,在此之上可以實(shí)現(xiàn)本發(fā)明的實(shí)施例。計(jì)算機(jī)系統(tǒng)1201包括總線(xiàn)1202或用于傳遞信息的其它通信機(jī)制,以及與總線(xiàn)1202耦合用于處理信息的處理器1203。計(jì)算機(jī)系統(tǒng)1201還包括主存1204,如隨機(jī)存取存儲(chǔ)器(RAM)或其它動(dòng)態(tài)存儲(chǔ)器件(例如,動(dòng)態(tài)RAM(DRAM),靜態(tài)RAM(SRAM)和同步DRAM(SDRAM)),其與總線(xiàn)1202耦合以存儲(chǔ)將由處理器1203執(zhí)行的信息和指令。另外,主存1204可用于存儲(chǔ)在處理器1203執(zhí)行指令期間產(chǎn)生的臨時(shí)變量或其它中間信息。計(jì)算機(jī)系統(tǒng)1201還包括只讀存儲(chǔ)器(ROM)1205或其它靜態(tài)存儲(chǔ)器件(例如,可編程ROM(PROM),可擦寫(xiě)PROM(EPROM)和電可擦寫(xiě)PROM(EEPROM)),其與總線(xiàn)1202耦合以存儲(chǔ)處理器1203的靜態(tài)信息和指令。
計(jì)算機(jī)系統(tǒng)1201還包括與總線(xiàn)1202耦合的磁盤(pán)控制器1206,以控制一個(gè)或多個(gè)存儲(chǔ)器件存儲(chǔ)信息和指令,如硬磁盤(pán)1207和可移動(dòng)媒體驅(qū)動(dòng)器1208(例如,軟盤(pán)驅(qū)動(dòng)器、只讀光盤(pán)驅(qū)動(dòng)器、讀寫(xiě)光盤(pán)驅(qū)動(dòng)器、光盤(pán)機(jī)、磁帶驅(qū)動(dòng)器和可移動(dòng)磁光驅(qū)動(dòng)器)。這些存儲(chǔ)器件可利用適當(dāng)?shù)难b置接口(例如,小型計(jì)算機(jī)系統(tǒng)接口(SCSI),集成電子器件(IDE),增強(qiáng)IED(E-IDE),直接存儲(chǔ)器存取(DMA)或超DMA)添加到計(jì)算機(jī)系統(tǒng)1201中。
計(jì)算機(jī)系統(tǒng)1201還可包括專(zhuān)用邏輯器件(例如,專(zhuān)用集成電路(ASIC)或可配置邏輯器件(例如,簡(jiǎn)單可編程邏輯器件(SPLD)),復(fù)雜可編程邏輯器件(CPLD)和場(chǎng)可編程門(mén)陣列(FPGA))。
計(jì)算機(jī)系統(tǒng)1201還可包括與總線(xiàn)1202耦合以控制顯示器1210的顯示控制器1209,如陰極射線(xiàn)管(CRT),用于向計(jì)算機(jī)用戶(hù)顯示信息。計(jì)算機(jī)系統(tǒng)包括輸入裝置,如鍵盤(pán)1211和指示裝置1212,用于與計(jì)算機(jī)用戶(hù)交互作用以及為處理器1203提供信息。該指示裝置1212可以是例如,鼠標(biāo)、跟蹤球或用于向處理器1203傳遞方向信息和指令選擇以及控制鼠標(biāo)在顯示器1210上移動(dòng)的指示棒。另外,打印機(jī)可提供由計(jì)算機(jī)系統(tǒng)1201存儲(chǔ)和/或產(chǎn)生的數(shù)據(jù)的打印列表。
計(jì)算機(jī)系統(tǒng)1201響應(yīng)處理器1203執(zhí)行了存儲(chǔ)器(如主存1204)中所包含的一個(gè)或多個(gè)指令的一個(gè)或多個(gè)序列執(zhí)行本發(fā)明的一部分或所有處理步驟。這些指令可以從另一計(jì)算機(jī)可讀媒體,如硬盤(pán)1207或可移動(dòng)媒體驅(qū)動(dòng)器1208,讀入主存1204。多處理設(shè)備中的一個(gè)或多個(gè)處理器可用于執(zhí)行在主存1204中包含的指令序列。在可選實(shí)施例中,硬線(xiàn)電路可用于代替軟件指令或與軟件指令結(jié)合。因此,實(shí)施例并不局限于硬件電路和軟件的任一特定組合。
如上所述,計(jì)算機(jī)系統(tǒng)1201包括至少一種計(jì)算機(jī)可讀媒體或存儲(chǔ)器,用于保存根據(jù)本發(fā)明的教導(dǎo)編程的指令和包含在此描述的數(shù)據(jù)結(jié)構(gòu)、表、記錄、或其它數(shù)據(jù)。計(jì)算機(jī)可讀媒體的例子包括光盤(pán)、硬盤(pán)、軟盤(pán)、磁帶、磁光盤(pán)、PROM(EPROM、EEPROM、快速EPROM)、DROM、SRAM、SDRAM或任何其它磁媒體,光盤(pán)(例如CD-ROM)或任何其它光媒體,穿孔卡、紙帶或其它具有穿孔圖案的物理媒體,載波(以下將說(shuō)明)或任何計(jì)算機(jī)由此可讀出的其它媒體。
在任何一種計(jì)算機(jī)可讀媒體上或它們的組合上存儲(chǔ)的內(nèi)容包括用于控制計(jì)算機(jī)系統(tǒng)1201、用于驅(qū)動(dòng)實(shí)現(xiàn)本發(fā)明的裝置以及用于使計(jì)算機(jī)系統(tǒng)1201能與人類(lèi)用戶(hù)(例如打印生產(chǎn)人員)交互的軟件。這種軟件可包括但不局限于裝置驅(qū)動(dòng)程序、操作系統(tǒng)、開(kāi)發(fā)工具和應(yīng)用軟件。這種計(jì)算機(jī)可讀媒體還包括本發(fā)明的用于執(zhí)行在實(shí)現(xiàn)本發(fā)明時(shí)執(zhí)行的所有或部分(如果該處理被分布)處理的計(jì)算機(jī)程序產(chǎn)品。
本發(fā)明的計(jì)算機(jī)代碼裝置可以是任何可解釋或可執(zhí)行的代碼機(jī)制,包括但不局限于腳本程序、解釋程序、動(dòng)態(tài)鏈接庫(kù)(DLL)、Java類(lèi)以及完整的可執(zhí)行程序。此外,為了取得更好的性能、可靠性和成本,可以使本發(fā)明的部分處理分布進(jìn)行。
在此使用的術(shù)語(yǔ)“計(jì)算機(jī)可讀媒體”是指參與為處理器1203提供指令以供執(zhí)行的任何媒體。計(jì)算機(jī)可讀媒體可采用任何形式,包括但不局限于非易失媒體、易失媒體和傳輸媒體。非易失媒體包括例如,光盤(pán)、磁盤(pán)和磁光盤(pán),如硬盤(pán)1207和可移動(dòng)媒體驅(qū)動(dòng)器1208。易失媒體包括動(dòng)態(tài)存儲(chǔ)器,如主存1204。傳輸媒體包括同軸電纜、銅線(xiàn)和光纖,光纖包括構(gòu)成總線(xiàn)1202的布線(xiàn)。傳輸媒體還可采用聲波或光波的形式,如在無(wú)線(xiàn)電波和紅外數(shù)據(jù)通信期間產(chǎn)生的波。
計(jì)算機(jī)可讀媒體的各種形式都可涉及執(zhí)行一種或多種指令的一個(gè)或多個(gè)序列到處理器1203供執(zhí)行。例如,這些指令可最初在遠(yuǎn)程計(jì)算機(jī)的磁盤(pán)上傳送。遠(yuǎn)程計(jì)算機(jī)可以將用于實(shí)現(xiàn)本發(fā)明的所有或部分指令遠(yuǎn)程安裝到動(dòng)態(tài)存儲(chǔ)器中,并利用調(diào)制解調(diào)器通過(guò)電話(huà)線(xiàn)發(fā)送指令。與計(jì)算機(jī)系統(tǒng)1201本地的調(diào)制解調(diào)器可以接收電話(huà)線(xiàn)上的數(shù)據(jù)并利用紅外發(fā)射機(jī)將數(shù)據(jù)轉(zhuǎn)換為紅外信號(hào)。與總線(xiàn)1202耦合的紅外檢測(cè)器可接收在紅外信號(hào)中傳輸?shù)臄?shù)據(jù),并將數(shù)據(jù)置于總線(xiàn)1202上。總線(xiàn)1202將數(shù)據(jù)運(yùn)送到主存1204,由此處理器1203取出并執(zhí)行該指令。通過(guò)主存1204接收的指令,在由處理器1203執(zhí)行之前或之后可以任意地存儲(chǔ)在存儲(chǔ)裝置1207或1208上。
計(jì)算機(jī)系統(tǒng)1201還包括與總線(xiàn)1202耦合的通信接口1213。通信接口1213提供與網(wǎng)絡(luò)鏈路1214耦合的雙向數(shù)據(jù)通信,該網(wǎng)絡(luò)鏈路1214被連接到局域網(wǎng)(LAN)1215或連接到諸如因特網(wǎng)的另一通信網(wǎng)絡(luò)1216。例如,通信接口1213可以是連接到任何分組交換LAN的網(wǎng)絡(luò)接口卡。作為另一個(gè)例子,通信接口1213可以是非對(duì)稱(chēng)數(shù)字用戶(hù)線(xiàn)(ADSL)卡,綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)卡或調(diào)制解調(diào)器,以提供與相應(yīng)類(lèi)型的數(shù)據(jù)通信線(xiàn)路的數(shù)據(jù)通信連接。也可以實(shí)現(xiàn)無(wú)線(xiàn)鏈路。在任一這種實(shí)現(xiàn)中,通信接口1213發(fā)送和接收電、電磁或光信號(hào),這些信號(hào)運(yùn)送了代表各種類(lèi)型信息的數(shù)字?jǐn)?shù)據(jù)流。
網(wǎng)絡(luò)鏈路1214通常通過(guò)一個(gè)或多個(gè)網(wǎng)絡(luò)提供與其它數(shù)據(jù)裝置的數(shù)據(jù)通信。例如,網(wǎng)絡(luò)鏈路1214可通過(guò)本地網(wǎng)1215(例如,LAN)或通過(guò)業(yè)務(wù)提供商操作的設(shè)備提供與另一計(jì)算機(jī)的連接,服務(wù)提供商通過(guò)通信網(wǎng)絡(luò)1216提供通信業(yè)務(wù)。本地網(wǎng)絡(luò)1214和通信網(wǎng)絡(luò)1216例如使用攜帶數(shù)字?jǐn)?shù)據(jù)流的電、電磁或光信號(hào),以及相關(guān)的物理層(例如,CAT五類(lèi)電纜、同軸電纜、光纖等等)。通過(guò)各種網(wǎng)絡(luò)的信號(hào)和網(wǎng)絡(luò)鏈路1214上的信號(hào)以及通過(guò)通信接口1213的信號(hào)可以以基帶信號(hào)或基于載波的信號(hào)實(shí)現(xiàn),這些信號(hào)往返計(jì)算機(jī)系統(tǒng)1210傳輸數(shù)字?jǐn)?shù)據(jù)?;鶐盘?hào)傳送數(shù)字?jǐn)?shù)據(jù)作為描述數(shù)字?jǐn)?shù)據(jù)位流的非調(diào)制電脈沖,其中術(shù)語(yǔ)“位”在廣義上被認(rèn)為是指碼元,其中每個(gè)碼元傳送至少一個(gè)或多個(gè)信息位。數(shù)字?jǐn)?shù)據(jù)還可以用于調(diào)制載波,如利用通過(guò)導(dǎo)電媒體傳播或作為電磁波通過(guò)傳播媒體發(fā)送的幅度、相位和/或頻移鍵控信號(hào)。因此,數(shù)字?jǐn)?shù)據(jù)還可以作為非調(diào)制的寬帶數(shù)據(jù)通過(guò)“有線(xiàn)”通信信道發(fā)送和/或在不同于基帶的預(yù)定頻帶內(nèi)通過(guò)調(diào)制載波來(lái)發(fā)送。計(jì)算機(jī)系統(tǒng)1201可通過(guò)網(wǎng)絡(luò)1215和1216、網(wǎng)絡(luò)鏈路1214和通信接口1213發(fā)送和接收包含程序代碼的數(shù)據(jù)。此外,網(wǎng)絡(luò)鏈路1214可提供通過(guò)LAN 1215與移動(dòng)裝置1217的連接,如個(gè)人數(shù)字助理(PDA)膝上型計(jì)算機(jī)或蜂窩電話(huà)。
權(quán)利要求
1.一種被配置成允許位于不同安全和專(zhuān)用IP數(shù)據(jù)網(wǎng)中的端點(diǎn)(使用實(shí)時(shí)協(xié)議,例如H.323、SIP或MGCP)能夠相互通信而不危及各個(gè)專(zhuān)用網(wǎng)絡(luò)的數(shù)據(jù)私密性和數(shù)據(jù)安全性的方法、系統(tǒng)、設(shè)備和計(jì)算機(jī)程序產(chǎn)品。
全文摘要
使客戶(hù)端能通過(guò)利用服務(wù)器和客戶(hù)端之間的探測(cè)分組傳遞經(jīng)網(wǎng)絡(luò)地址轉(zhuǎn)換NAT修正的地址從而橫越防火墻和NAT裝置的方法、系統(tǒng)和媒體。
文檔編號(hào)H04L9/00GK1890945SQ200480036723
公開(kāi)日2007年1月3日 申請(qǐng)日期2004年12月13日 優(yōu)先權(quán)日2003年12月11日
發(fā)明者格里戈·亞當(dāng)斯, 彼得·庫(kù)戴爾, 史蒂文·G.·戴維斯, 史蒂文·格雷, 史蒂文·里德, 巴里·斯科特 申請(qǐng)人:泰德通信公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
博爱县| 宁远县| 托克逊县| 贡觉县| 淮滨县| 永年县| 宁夏| 依兰县| 馆陶县| 尤溪县| 泽库县| 信阳市| 吉首市| 开化县| 泾源县| 额敏县| 长沙县| 永宁县| 伊宁市| 香港 | 罗源县| 门源| 修武县| 泰来县| 井冈山市| 林口县| 闵行区| 定日县| 沁水县| 连平县| 左权县| 门头沟区| 晋江市| 永济市| 融水| 博客| 大冶市| 镇巴县| 永城市| 平昌县| 五寨县|