專利名稱:云計算環(huán)境下的即時通信方法和服務(wù)器系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)通信領(lǐng)域,具體涉及一種云計算環(huán)境下的即時通信方法和服務(wù)器系統(tǒng)。
背景技術(shù):
在互聯(lián)網(wǎng)廣泛普及與移動互聯(lián)網(wǎng)迅猛發(fā)展的大環(huán)境下,VOIP (網(wǎng)絡(luò)電話)作為一種通過網(wǎng)絡(luò)來實(shí)現(xiàn)的新型電話通訊,已成為了國內(nèi)外電信發(fā)展的熱點(diǎn)。與以前所使用的普通電話相比,它能夠讓用戶在互聯(lián)網(wǎng)環(huán)境下花費(fèi)更低的費(fèi)用,得到更為優(yōu)質(zhì)的服務(wù)。在基于IP的局域網(wǎng)、廣域網(wǎng)和互聯(lián)網(wǎng)中,它不僅可以傳輸語音數(shù)據(jù),還可以傳送視頻、傳真、即時消息和電子郵件等各類數(shù)據(jù)。目前,國內(nèi)各大運(yùn)營商紛紛免費(fèi)為用戶提升寬帶速度,各地的WIFI熱點(diǎn)在不斷增加,企業(yè)更注重節(jié)省通信費(fèi)用,這都將為VOIP的發(fā)展創(chuàng)造有利環(huán)境。目前的VOIP技術(shù)有兩大標(biāo)準(zhǔn)信令控制協(xié)議SIP (會議初始化協(xié)議)與H. 323 (建立在傳統(tǒng)電話系統(tǒng)上的一種通信協(xié)議)。SIP更適應(yīng)互聯(lián)網(wǎng)環(huán)境,更適應(yīng)當(dāng)下迅猛發(fā)展的云計算技術(shù)。云計算環(huán)境下的服務(wù)器在邏輯上分為三個部分,分別是STUN服務(wù)器,SIP服務(wù)器和TURN服務(wù)器。用戶可以隨時隨地使用終端(手機(jī),計算機(jī)或電話)進(jìn)行通信,無論終端是在局域網(wǎng)內(nèi)還是在公網(wǎng)上。服務(wù)器在通信系統(tǒng)中的位置如圖I所示。目前對多媒體通信中的NAT (網(wǎng)絡(luò)地址轉(zhuǎn)換,如網(wǎng)關(guān)就是一個NAT設(shè)備,把內(nèi)網(wǎng)地址轉(zhuǎn)換成外網(wǎng)可以訪問的公網(wǎng)地址)問題,大多采用中繼轉(zhuǎn)發(fā)的方法實(shí)現(xiàn)對NAT設(shè)備的穿越,這雖然能夠?qū)ΜF(xiàn)有的所有類型NAT設(shè)備進(jìn)行有效穿越,但是會極大的增加服務(wù)器的負(fù)擔(dān),同時也會增大數(shù)據(jù)傳輸過程中的時延和丟包。目前有很成熟的H.323通信體系,然而H. 323沿用傳統(tǒng)的電話信令模式,過于復(fù)雜,其信令消息采用二進(jìn)制表示方式,不能很好的適應(yīng)互聯(lián)網(wǎng)開放、簡潔、易讀、兼容和可擴(kuò)展的要求。通信系統(tǒng)的順利運(yùn)行需要兩個過程,信令通信和媒體數(shù)據(jù)通信?,F(xiàn)在網(wǎng)絡(luò)中部署了大量的NAT設(shè)備,這就阻礙了通信的順利進(jìn)行。目前的網(wǎng)絡(luò)中部署的NAT設(shè)備有多種,一個完善的通信系統(tǒng)應(yīng)該能讓數(shù)據(jù)順利通過所有類型的NAT設(shè)備,同時也不能出現(xiàn)服務(wù)器“瓶頸”問題。
發(fā)明內(nèi)容
為克服上述缺陷,本發(fā)明提供了一種云計算環(huán)境下的即時通信方法,包括終端和與其通信的服務(wù)器系統(tǒng),所述服務(wù)器系統(tǒng)包括=STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器;其改進(jìn)之處在于,所述方法包括如下步驟(I). SIP信令穿越NAT設(shè)備,建立SIP通信;(2).判斷NAT設(shè)備的類型是否是對稱型;(3).根據(jù)判斷結(jié)果,建立不同的多媒體數(shù)據(jù)傳輸方式;(4).通過SIP服務(wù)器結(jié)束會話;其中,NAT設(shè)備包括路由器、網(wǎng)關(guān)和交換機(jī)。
本發(fā)明提供的優(yōu)選技術(shù)方案中,所述步驟I包括如下步驟(1-1). STUN服務(wù)器返回終端通信使用的公網(wǎng)IP地址和NAT設(shè)備的類型;(1-2).終端在SIP服務(wù)器上進(jìn)行注冊,SIP服務(wù)器錄入終端的注冊信息;(1-3) · SIP服務(wù)器幫助終端建立SIP通信。本發(fā)明提供的第二優(yōu)選技術(shù)方案中,所述步驟3包括如下步驟如果NAT設(shè)備是對稱型設(shè)備,則進(jìn)行步驟3-1,否則進(jìn)行步驟3-2 ;(3-1).進(jìn)行UDP打洞,并建立多媒體數(shù)據(jù)的點(diǎn)對點(diǎn)通信;(3-2).啟動TURN服務(wù)器進(jìn)行多媒體數(shù)據(jù)的中繼傳送。本發(fā)明提供的第三優(yōu)選技術(shù)方案中,提供一種云計算環(huán)境下的即時通信服務(wù)器系統(tǒng),其改進(jìn)之處在于,所述系統(tǒng)包括依次設(shè)置的STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器。本發(fā)明提供的第四優(yōu)選技術(shù)方案中,所述STUN服務(wù)器,設(shè)置有支持STUN協(xié)議的服務(wù)模塊。本發(fā)明提供的第五優(yōu)選技術(shù)方案中,支持STUN協(xié)議的服務(wù)模塊,告知終端是否位于NAT設(shè)備的后面和該NAT設(shè)備的類型,還向終端發(fā)送其用于通信的公網(wǎng)IP地址。本發(fā)明提供的第六優(yōu)選技術(shù)方案中,所述SIP服務(wù)器,負(fù)責(zé)終端的注冊,會話的建立與掛斷,對所接收的SIP消息的解析,以及對會話中的一系列的SIP事務(wù)進(jìn)行處理;在會話建立過程中,所述SIP服務(wù)器發(fā)現(xiàn)對方用于媒體通信的IP地址和端口號,并發(fā)出邀請消息建立會話;其中,SIP事務(wù)包括消息重傳、響應(yīng)消息與請求消息的匹配和計時器觸發(fā)。本發(fā)明提供的第七優(yōu)選技術(shù)方案中,所述TRUN服務(wù)器,若發(fā)現(xiàn)有終端通過對稱型NAT設(shè)備訪問網(wǎng)絡(luò),則為發(fā)往該終端的數(shù)據(jù)包提供中轉(zhuǎn)服務(wù)。與現(xiàn)有技術(shù)比,本發(fā)明提供的一種云計算環(huán)境下的即時通信方法和服務(wù)器系統(tǒng),采用多種穿越NAT設(shè)備的方法來進(jìn)行網(wǎng)絡(luò)穿越,確保各種網(wǎng)絡(luò)環(huán)境下的通信不受NAT設(shè)備影響;而且采用選擇穿越方法的處理機(jī)制,當(dāng)終端用戶較多時,降低服務(wù)器成為“瓶頸”的可能性;而且,可以適度的避免增加服務(wù)器的負(fù)擔(dān),同時也不會大幅增加數(shù)據(jù)傳輸過程中的時延和丟包。
圖I為現(xiàn)有的即時通信系統(tǒng)。圖2為云計算環(huán)境下的即時通信方法的流程圖。
具體實(shí)施例方式本發(fā)明中所使用的英文縮寫所表示的中文內(nèi)容;VOIP IP 電話SIP 會話初始化協(xié)議STUN NAT的UDP簡單穿越方式TURN 全轉(zhuǎn)發(fā)的NAT穿越方式OSIP 一個開源的SIP協(xié)議棧本文中所使用的關(guān)鍵術(shù)語的定義VOIP技術(shù),網(wǎng)絡(luò)穿越
如圖2所示,一種云計算環(huán)境下的即時通信方法,包括終端和與其通信的服務(wù)器系統(tǒng),所述服務(wù)器系統(tǒng)包括=STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器;所述方法包括如下步驟(I). SIP信令穿越NAT設(shè)備,建立SIP通信;(2).判斷NAT設(shè)備的類型是否是對稱型;(3).根據(jù)判斷結(jié)果,建立不同的多媒體數(shù)據(jù)傳輸方式;⑷.通過SIP服務(wù)器結(jié)束會話;其中,NAT設(shè)備包括路由器、網(wǎng)關(guān)和交換機(jī)。所述步驟I包括如下步驟(1-1). STUN服務(wù)器返回終端通信使用的公網(wǎng)IP地址和NAT設(shè)備的類型;(1-2).終端在SIP服務(wù)器上進(jìn)行注冊,SIP服務(wù)器錄入終端的注冊信息;(1-3). SIP服務(wù)器幫助終端建立SIP通信。所述步驟3包括如下步驟如果NAT設(shè)備是對稱型設(shè)備,則進(jìn)行步驟3-1,否則進(jìn)行步驟3-2 ;(3-1).進(jìn)行UDP打洞,并建立多媒體數(shù)據(jù)的點(diǎn)對點(diǎn)通信;(3-2).啟動TURN服務(wù)器進(jìn)行多媒體數(shù)據(jù)的中繼傳送。UDP打洞,通過UDP打洞實(shí)現(xiàn)NAT穿越是一種在處于使用了 NAT的私有網(wǎng)絡(luò)中的Internet主機(jī)之間建立雙向UDP連接的方法。讓位于NAT后的兩臺主機(jī)都與處于公共地址空間的、眾所周知的第三臺服務(wù)器相連,然后,一旦NAT設(shè)備建立好UDP狀態(tài)信息就轉(zhuǎn)為直接通信,并寄希望于NAT設(shè)備會在分組其實(shí)是從另外一個主機(jī)傳送過來的情況下仍然保持當(dāng)前狀態(tài)。一種云計算環(huán)境下的即時通信服務(wù)器系統(tǒng),所述系統(tǒng)包括依次設(shè)置的STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器。所述STUN服務(wù)器,設(shè)置有支持STUN協(xié)議的服務(wù)模塊。支持STUN協(xié)議的服務(wù)模塊,通知終端是否位于NAT設(shè)備的后面和該NAT設(shè)備的類型,還告知終端通信所使用的公網(wǎng)IP地址。所述SIP服務(wù)器,負(fù)責(zé)終端的注冊,會話的建立與掛斷,對所接收的SIP消息的解析,以及對會話中的一系列的SIP事務(wù)進(jìn)行處理;在會話建立過程中,所述SIP服務(wù)器發(fā)現(xiàn)對方用于媒體通信的IP地址和端口號,并發(fā)出邀請消息建立會話;其中,SIP事務(wù)包括消息重傳、響應(yīng)消息與請求消息的匹配和計時器觸發(fā)。所述TRUN服務(wù)器,若發(fā)現(xiàn)有終端通過對稱型NAT設(shè)備訪問網(wǎng)絡(luò),則為發(fā)往該終端的數(shù)據(jù)包提供中轉(zhuǎn)服務(wù)。采用STUN協(xié)議與終端進(jìn)行通信,獲取用戶終端處的NAT類型以及終端用于SIP信令通信和媒體通信地址在NAT設(shè)備上的公網(wǎng)映射,并通過響應(yīng)消息告知終端,以實(shí)現(xiàn)SIP信令的順利穿越。然后根據(jù)NAT設(shè)備的類型選多媒體數(shù)據(jù)穿越NAT的方式,如果是對稱型的NAT則起動TURN服務(wù)器,反之則不不起動。服務(wù)器分為三個模塊STUN模塊、SIP模塊和TURN模塊,STUN模塊和TURN模塊由自寫代碼實(shí)現(xiàn),SIP模塊是基于開源OSIP協(xié)議棧進(jìn)行開發(fā)。各模塊的作用如下。STUN 模塊
5
本模塊嵌入了一個支持STUN協(xié)議的服務(wù)模塊。用戶終端通過這一模塊可發(fā)現(xiàn)自身是否位于NAT設(shè)備之后,以及該NAT設(shè)備的類型。同時,用戶終端也能知道接下來可用于通信的IP地址(如終端位于NAT設(shè)備之后,這一地址就是私網(wǎng)地址的一個公網(wǎng)映射)。SIP 模塊本模塊負(fù)責(zé)終端的注冊,會話的建立與掛斷。該模塊是在開源的SIP協(xié)議棧的基礎(chǔ)上實(shí)現(xiàn),主要功能包括對所接收到的SIP消息的解析,以及對會話中的一系列的SIP事務(wù)事件的處理。在會話建立過程中,該模塊最重要的工作就是發(fā)現(xiàn)對方用于媒體通信的IP地址和端口號,并發(fā)出邀請消息建立會話。TURN 模塊·本模塊負(fù)責(zé)位于對稱型NAT設(shè)備后的終端的數(shù)據(jù)傳送。服務(wù)器探測到某一終端是通過對稱型NAT設(shè)備訪問網(wǎng)絡(luò),就會起動TURN模塊,為發(fā)往該終端的數(shù)據(jù)包提供中轉(zhuǎn)服務(wù)。NAT設(shè)備是路由器、網(wǎng)關(guān)、交換機(jī)等支持NAT協(xié)議的設(shè)備。需要聲明的是,本發(fā)明內(nèi)容及具體實(shí)施方式
意在證明本發(fā)明所提供技術(shù)方案的實(shí)際應(yīng)用,不應(yīng)解釋為對本發(fā)明保護(hù)范圍的限定。本領(lǐng)域技術(shù)人員在本發(fā)明的精神和原理啟發(fā)下,可作各種修改、等同替換、或改進(jìn)。但這些變更或修改均在申請待批的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種云計算環(huán)境下的即時通信方法,包括終端和與其通信的服務(wù)器系統(tǒng),所述服務(wù)器系統(tǒng)包括=STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器;其特征在于,所述方法包括如下步驟 (1).SIP信令穿越NAT設(shè)備,建立SIP通信; (2).判斷NAT設(shè)備的類型是否是對稱型; (3).根據(jù)判斷結(jié)果,建立不同的多媒體數(shù)據(jù)傳輸方式; (4).通過SIP服務(wù)器結(jié)束會話; 其中,NAT設(shè)備包括路由器、網(wǎng)關(guān)和交換機(jī)。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述步驟I包括如下步驟 (1-1). STUN服務(wù)器返回終端通信使用的公網(wǎng)IP地址和NAT設(shè)備的類型; (1-2).終端在SIP服務(wù)器上進(jìn)行注冊,SIP服務(wù)器錄入終端的注冊信息; (1-3). SIP服務(wù)器幫助終端建立SIP通信。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述步驟3包括如下步驟如果NAT設(shè)備是對稱型設(shè)備,則進(jìn)行步驟3-1,否則進(jìn)行步驟3-2 ; (3-1).進(jìn)行UDP打洞,并建立多媒體數(shù)據(jù)的點(diǎn)對點(diǎn)通信; (3-2).啟動TURN服務(wù)器進(jìn)行多媒體數(shù)據(jù)的中繼傳送。
4.一種云計算環(huán)境下的即時通信服務(wù)器系統(tǒng),其特征在于,所述系統(tǒng)包括依次設(shè)置的STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述STUN服務(wù)器,設(shè)置有支持STUN協(xié)議的服務(wù)模塊。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,支持STUN協(xié)議的服務(wù)模塊,告知終端是否位于NAT設(shè)備的后面和該NAT設(shè)備的類型,還向終端發(fā)送其用于通信的公網(wǎng)IP地址。
7.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述SIP服務(wù)器,負(fù)責(zé)終端的注冊,會話的建立與掛斷,對所接收的SIP消息的解析,以及對會話中的一系列的SIP事務(wù)進(jìn)行處理;在會話建立過程中,所述SIP服務(wù)器發(fā)現(xiàn)對方用于媒體通信的IP地址和端口號,并發(fā)出邀請消息建立會話;其中,SIP事務(wù)包括消息重傳、響應(yīng)消息與請求消息的匹配和計時器觸發(fā)。
8.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述TRUN服務(wù)器,若發(fā)現(xiàn)有終端通過對稱型NAT設(shè)備訪問網(wǎng)絡(luò),則為發(fā)往該終端的數(shù)據(jù)包提供中轉(zhuǎn)服務(wù)。
全文摘要
本發(fā)明提供了一種云計算環(huán)境下的即時通信方法和服務(wù)器系統(tǒng),所述服務(wù)器系統(tǒng)包括STUN服務(wù)器、SIP服務(wù)器和TRUN服務(wù)器;所述方法包括如下步驟(1)SIP信令穿越NAT設(shè)備,建立SIP通信;(2)判斷NAT設(shè)備的類型是否是對稱型;(3)根據(jù)判斷結(jié)果,建立不同的多媒體數(shù)據(jù)傳輸方式;(4)通過SIP服務(wù)器結(jié)束會話。本發(fā)明提供的云計算環(huán)境下的即時通信方法和系統(tǒng),采用多種穿越NAT設(shè)備的方法來進(jìn)行網(wǎng)絡(luò)穿越,確保各種網(wǎng)絡(luò)環(huán)境下的通信不受NAT設(shè)備影響;而且采用選擇穿越方法的處理機(jī)制,當(dāng)終端用戶較多時,降低服務(wù)器成為“瓶頸”的可能性。
文檔編號H04L12/58GK102932235SQ20121037963
公開日2013年2月13日 申請日期2012年10月9日 優(yōu)先權(quán)日2012年10月9日
發(fā)明者楊鑫 申請人:曙光信息產(chǎn)業(yè)(北京)有限公司