專利名稱:基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對(duì)等網(wǎng)絡(luò),尤其涉及在一種采用自組織網(wǎng)絡(luò)會(huì)話發(fā)起協(xié)
議(Peer國(guó)to-Peer Session Initiation Protocol,簡(jiǎn)稱P2PSIP)的系統(tǒng)中,
利用基礎(chǔ),沒(méi)施實(shí)現(xiàn)異構(gòu)對(duì)等網(wǎng)絡(luò)的互通性會(huì)話控制的方法和系統(tǒng)。
背景技術(shù):
SIP (Session Initiation Protocol, ^"發(fā)起協(xié)議)是互聯(lián)網(wǎng)工程任 務(wù)組(IETF)制定的多i某體通信應(yīng)用層控制協(xié)議之一,用于建立、修 改和終止IP網(wǎng)上的雙方或多方多々某體會(huì)話。該協(xié)議憑借其簡(jiǎn)單、易于 拓展、便于實(shí)現(xiàn)等諸多優(yōu)點(diǎn)越來(lái)越得到業(yè)界的青睞,它正逐步成為 NGN (下一代網(wǎng)絡(luò))和3G多媒體子系統(tǒng)域中的重要協(xié)議。與此同時(shí), 對(duì)等網(wǎng)絡(luò)(P2P)作為一種新興技術(shù),基于現(xiàn)有互聯(lián)網(wǎng)構(gòu)建覆蓋網(wǎng)絡(luò), 通過(guò)系統(tǒng)之間的對(duì)等交換來(lái)共享計(jì)算機(jī)資源和服務(wù),實(shí)現(xiàn)了完全分布 式、可擴(kuò)展、可靠、健壯的網(wǎng)絡(luò)應(yīng)用模式。與傳統(tǒng)的客戶機(jī)/服務(wù)器
(Client/Server,簡(jiǎn)稱C/S)的網(wǎng)絡(luò)模式有著顯著區(qū)別,C/S網(wǎng)絡(luò)^f莫式 需要一個(gè)中央服務(wù)器來(lái)進(jìn)行數(shù)據(jù)分發(fā),為客戶端提供相應(yīng)的服務(wù)。而在 對(duì)等網(wǎng)絡(luò)中,計(jì)算機(jī)以對(duì)等方式形成網(wǎng)絡(luò)連接,節(jié)點(diǎn)既充當(dāng)服務(wù)器又充 當(dāng)客戶端的角色。正是由于P2P技術(shù)在非中心化、可擴(kuò)展性和健壯性等 方面的優(yōu)點(diǎn),它被廣泛地應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)的各個(gè)領(lǐng)域,如文件下載、 流媒體、IP語(yǔ)音通信等,越來(lái)越多的用戶選擇使用這些基于P2P技術(shù) 的業(yè)務(wù)與應(yīng)用。在P2P網(wǎng)路中如何快速準(zhǔn)確地對(duì)資源進(jìn)行定位是衡量其 性能的一個(gè)關(guān)鍵?,F(xiàn)在的分布式P2P系統(tǒng)普遍采取的是DHT
(Distributed Hash Table,分布式哈希表)搜索方法,由于基于分布式 哈希表的分布式檢索和路由算法具有查找可確定性、簡(jiǎn)單性和分布性等 優(yōu)點(diǎn),它也成為了國(guó)際上結(jié)構(gòu)化P2P網(wǎng)絡(luò)研究和應(yīng)用的熱點(diǎn)。
5隨著P2P技術(shù)的普及,有人將SIP技術(shù)與P2P框架結(jié)合起來(lái),也 就是P2PSIP技術(shù),即對(duì)等網(wǎng)絡(luò)會(huì)議發(fā)起協(xié)議技術(shù)。P2PSIP技術(shù)既可 以解決P2P系統(tǒng)間的互聯(lián)問(wèn)題,又能夠解決SIP系統(tǒng)的單點(diǎn)失效和性 能瓶頸問(wèn)題,且可以運(yùn)營(yíng)在公共互聯(lián)網(wǎng)上。由于P2PSIP的優(yōu)點(diǎn), P2PSIP可以^皮應(yīng)用于非常廣的場(chǎng)景。
多個(gè)出于不同目的構(gòu)建的P2PSIP覆蓋網(wǎng)絡(luò),這些P2PSIP網(wǎng)絡(luò)內(nèi) 部節(jié)點(diǎn)路由表的生成、資源查找算法、查找消息的執(zhí)行模式等方面存在 較大差異,它們無(wú)法識(shí)別對(duì)方消息格式,且無(wú)法按照統(tǒng)一的路由算法完 成P2P網(wǎng)絡(luò)中的資源定位,但它們的用戶間存在跨域通信的需要。
目前會(huì)話發(fā)起協(xié)議的路由方法是由RFC3261和RFC3263所規(guī)定 的。首先,這種方法仍然依賴DNS服務(wù)器來(lái)做域的定位,違背了 P2PSIP無(wú)中心的初衷;其次,這一方案也不能用于DNS不可用或不可 達(dá)的一些特殊網(wǎng)絡(luò)環(huán)境;再者,DNS更新慢,無(wú)法適應(yīng)超級(jí)用戶節(jié)點(diǎn)的 頻繁變動(dòng)。
發(fā)明內(nèi)容
本發(fā)明基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法和系統(tǒng)。 提出了不依賴于DNS的會(huì)話控制方法,由中心基礎(chǔ)設(shè)施和若干邊緣 P2PSIP域組成分級(jí)結(jié)構(gòu),中心基礎(chǔ)設(shè)施為邊緣P2PSIP域路由SIP消 息,對(duì)跨域的會(huì)話進(jìn)行控制。采用這種方法,會(huì)話消息可以在異構(gòu)對(duì)等 網(wǎng)絡(luò)中跨域路由,用戶能夠跨域通信。
根據(jù)本發(fā)明的一方面,提出基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì) 話控制方法,包括以下步驟在主叫歸屬的邊緣P2PSIP域查詢主叫 DHT得到中心^i^出設(shè)施的邊界網(wǎng)元IP地址信息,主叫向中心^5出設(shè)施 的邊界網(wǎng)元發(fā)送SIP請(qǐng)求消息,該請(qǐng)求消息中包含4皮叫SIP URI;中心 ^ 出設(shè)施的邊界網(wǎng)元提取SIP請(qǐng)求消息中被叫SIP URI,根據(jù)被叫SIP URI查詢得到被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元IP地址,并向被 叫歸屬的P2PSIP域的邊界網(wǎng)元索取被叫的IP地址;被叫歸屬的邊緣 P2PSIP域的邊界網(wǎng)元查詢被叫DHT得到被叫的IP地址,并返回給中心基礎(chǔ)設(shè)施的邊界網(wǎng)元;中心基礎(chǔ)設(shè)施的邊界網(wǎng)元將主叫的SIP請(qǐng)求轉(zhuǎn) 發(fā)給被叫。
進(jìn)一步,主叫在其歸屬的邊緣P2PSIP域查詢得到中心基礎(chǔ)設(shè)施的 邊界網(wǎng)元IP地址信息之前,還包括以下步驟主叫歸屬的邊緣P2PSIP 域的邊界網(wǎng)元定位中心基礎(chǔ)設(shè)施的邊界網(wǎng)元,將主叫歸屬的邊緣 P2PSIP域的邊界網(wǎng)元到中心基礎(chǔ)設(shè)施的路由信息保存到主叫DHT中, 并將該路由信息發(fā)送給中心基礎(chǔ)設(shè)施的邊界網(wǎng)元;被叫歸屬的邊緣 P2PSIP域的邊界網(wǎng)元定位中心基礎(chǔ)設(shè)施的邊界網(wǎng)元,將被叫歸屬的邊 緣P2PSIP域的邊界網(wǎng)元到中心基礎(chǔ)設(shè)施的路由信息保存到被叫DHT 中,并將該路由信息發(fā)送給中心基礎(chǔ)設(shè)施的邊界網(wǎng)元;中心^出設(shè)施的 邊界網(wǎng)元收到路由信息后,保存中心基礎(chǔ)設(shè)施到主叫歸屬的邊緣 P2PSIP域的邊界網(wǎng)元的路由信息,以及保存中心基礎(chǔ)設(shè)施到被叫歸屬 的邊緣P2PSIP域的邊界網(wǎng)元的路由信息。
進(jìn)一步,邊緣P2PSIP域的普通節(jié)點(diǎn)和邊界網(wǎng)元共同組成一個(gè) DHT網(wǎng)絡(luò),中心基礎(chǔ)設(shè)施的邊界網(wǎng)元也構(gòu)成一個(gè)DHT網(wǎng)絡(luò),但兩個(gè) DHT網(wǎng)絡(luò)之間不是互通的。
進(jìn)一步,主叫歸屬的邊緣P2PSIP域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng) 元,被叫歸屬的邊緣P2PSIP域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng)元,中心 基礎(chǔ)設(shè)施的節(jié)點(diǎn)由專用節(jié)點(diǎn)組成,且所有節(jié)點(diǎn)都是邊界網(wǎng)元。
進(jìn)一步,主叫歸屬的邊緣P2PSIP域與被叫歸屬的邊緣P2PSIP域 均由Overlay ID值唯一確定,該Overlay ID值為其所歸屬域的域名部 分,且各用戶的位置數(shù)據(jù)按照DHT算法存儲(chǔ)在由該用戶的SIP URI生 成的key之下。
根據(jù)本發(fā)明的另一方面,還提出基于^5出設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通 性會(huì)話控制系統(tǒng),其中邊緣P2PSIP域的普通節(jié)點(diǎn),包括第一DHT 查詢模塊,在邊緣P2PSIP域的DHT網(wǎng)絡(luò)中查詢中心基礎(chǔ)設(shè)施的一個(gè) 邊界網(wǎng)元的地址;第一消息處理模塊,在節(jié)點(diǎn)充當(dāng)主叫時(shí)向中心基礎(chǔ)設(shè) 施的邊界網(wǎng)元發(fā)送SIP請(qǐng)求消息、節(jié)點(diǎn)充當(dāng)被叫時(shí)接收SIP請(qǐng)求消息; 主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元,包括第二 DHT查詢才莫塊,
7收到DHT查詢請(qǐng)求時(shí)在DHT網(wǎng)絡(luò)中查詢資源信息,該資源可能是中 心基礎(chǔ)設(shè)施的邊界網(wǎng)元的地址信息;第二路由維護(hù)模塊,與中心基礎(chǔ)設(shè) 施的邊界網(wǎng)元交換路由信息,同時(shí)在主叫歸屬的邊緣P2PSIP域的邊界 網(wǎng)元保存此路由信息;中心基礎(chǔ)設(shè)施的邊界網(wǎng)元,包括第三DHT查 詢模塊,根據(jù)被叫SIP URI定位被叫所歸屬的P2PSIP域的一個(gè)邊界網(wǎng) 元;提取模塊,提取SIP請(qǐng)求消息中被叫SIP URI;笫三路由維護(hù)模 塊,交換并保存與邊緣P2PSIP域的路由信息;第三消息處理才莫塊,接 收主叫發(fā)送的SIP請(qǐng)求消息,向被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元 發(fā)送DHT查詢請(qǐng)求,索取被叫的IP地址,并將主叫的SIP請(qǐng)求轉(zhuǎn)發(fā)給 被叫;被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元,包括第四DHT查詢 模塊,查詢被叫的IP地址;第四路由維護(hù)模塊,與中心基礎(chǔ)設(shè)施的邊 界網(wǎng)元交換路由信息,同時(shí)在邊緣P2PSIP域的邊界網(wǎng)元保存此路由信 息;第四消息處理才莫塊,接收DHT查詢請(qǐng)求,并向中心基礎(chǔ)設(shè)施的邊 界網(wǎng)元返回查詢結(jié)果,即凈皮叫的IP地址。
進(jìn)一步,第一 DHT查詢模塊和第二 DHT查詢模塊功能相同。查 詢過(guò)程如下該模塊首先判斷資源是否本域資源,如果是本域資源則直 接從本域DHT中查詢?cè)撡Y源;否則從DHT網(wǎng)絡(luò)中查詢出中心基礎(chǔ)i殳 施的邊界網(wǎng)元地址信息,然后向節(jié)點(diǎn)返回該地址信息。由第一 DHT查 詢模塊和(或)第二 DHT查詢模塊定位中心基礎(chǔ)設(shè)施的邊界網(wǎng)元地 址。
進(jìn)一步,任意邊緣P2PSIP域既可以充當(dāng)主叫域也可以充當(dāng)凈皮叫域。
鑒于網(wǎng)絡(luò)協(xié)議設(shè)計(jì)與應(yīng)用中普遍存在的異構(gòu)性以及傳統(tǒng)路由方法的 缺陷,本發(fā)明在對(duì)等網(wǎng)絡(luò)會(huì)話發(fā)起協(xié)議結(jié)構(gòu)體系下,提出基于基礎(chǔ)設(shè)施 的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法和系統(tǒng),與現(xiàn)有技術(shù)相比,有以下 優(yōu)點(diǎn)第一,此方法不需要DNS服務(wù)器,它利用一個(gè)專門的中心基礎(chǔ) 設(shè)施來(lái)取代DNS,解決互聯(lián)互通問(wèn)題,實(shí)現(xiàn)方式非常靈活。笫二,基于 基礎(chǔ)設(shè)施的架構(gòu)相對(duì)于單覆蓋網(wǎng)絡(luò)的P2PSIP,可以大大降低呼叫建立 時(shí)延和注冊(cè)開(kāi)銷。
8附圖j兌明
圖1為本發(fā)明基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法流 程圖。
圖2為本發(fā)明會(huì)話控制方法實(shí)施例的流程圖。
圖3為本發(fā)明基于中心基礎(chǔ)設(shè)施的分級(jí)架構(gòu)的路由信息的交換、存 儲(chǔ)流程圖。
圖4為本發(fā)明路由信息的交換、存儲(chǔ)實(shí)施例的流程圖。 圖5為本發(fā)明會(huì)話控制方法跨域呼叫信令流程圖。 圖6為本發(fā)明基于1^出設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性^^舌控制系統(tǒng)結(jié) 構(gòu)圖。
圖7為本發(fā)明基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制系統(tǒng)工 作流程圖。
具體實(shí)施例方式
圖1為本發(fā)明基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法流 程圖。中心J^出設(shè)施和各個(gè)邊緣P2PSIP域組成分級(jí)結(jié)構(gòu),中心基礎(chǔ)設(shè) 施為各個(gè)邊緣P2PSIP域路由SIP消息,對(duì)跨域的M進(jìn)行控制。當(dāng)異 構(gòu)對(duì)等網(wǎng)絡(luò)的P2PSIP域主叫對(duì)P2PSIP域被叫發(fā)起跨域呼叫時(shí),該方 法包括以下步驟
在步驟101,在主叫歸屬的邊緣P2PSIP域查詢主叫DHT得到中心 基礎(chǔ)設(shè)施的邊界網(wǎng)元IP地址信息,主叫向中心基礎(chǔ)設(shè)施的邊界網(wǎng)元發(fā) 送SIP請(qǐng)求消息,該請(qǐng)求消息中包括被叫SIP URI。
在步驟102,中心基礎(chǔ)設(shè)施的邊界網(wǎng)元提取SIP請(qǐng)求消息中凈皮叫 SIP URI,根據(jù)被叫SIP URI查詢得到被叫歸屬的邊緣P2PSIP域的邊 界網(wǎng)元IP地址,并向被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元發(fā)送DHT 查詢請(qǐng)求,索取#皮叫的IP地址。
在步驟103,被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元查詢被叫DHT 得到被叫的IP地址,并返回給中心基礎(chǔ)設(shè)施的邊界網(wǎng)元。在步驟104,中心基礎(chǔ)設(shè)施的邊界網(wǎng)元將主叫的SIP請(qǐng)求轉(zhuǎn)發(fā)給被叫。
本發(fā)明提供的方法不需要DNS服務(wù)器就可以互聯(lián)互通P2PSIP覆 蓋網(wǎng)絡(luò),具有對(duì)互通節(jié)點(diǎn)變化反應(yīng)快、低呼叫建立時(shí)延、低成本、高可 靠性擴(kuò)展性、架構(gòu)靈活、易于部署管理的優(yōu)點(diǎn)。同時(shí),若使用合適的 P2PSIP覆蓋網(wǎng)絡(luò)劃分方案,可以大大降低呼叫建立時(shí)延和注冊(cè)開(kāi)銷。
圖2為本發(fā)明會(huì)話控制方法實(shí)施例的流程圖。位于ID為 yahoo.p2p的P2PSIP域中的Bob向位于ID為msn. p2p的P2PSIP域中 的Alice發(fā)起呼叫。Bob的SIP URI為bob@yahoo.p2p, Alice的SIP URI為alice@msn.p2p。它們的位置數(shù)據(jù)按照DHT算法存儲(chǔ)在由該用 戶的SIP URI生成的key之下。
Bob通過(guò)DHT查詢得到中心基礎(chǔ)設(shè)施的邊界網(wǎng)元地址,并發(fā)送 INVITE消息INVITE:alice@msn.p2p到中心基礎(chǔ)設(shè)施的P2PSIP邊界 網(wǎng)元上。
中心基礎(chǔ)設(shè)施的邊界網(wǎng)元收到INVITE消息之后,通過(guò)中心基J出設(shè) 施的DHT查詢得到-故叫alice的歸屬P2PSIP域msn.p2p的邊界網(wǎng)元的 IP地址。
中心基礎(chǔ)設(shè)施的邊界網(wǎng)元向msn.p2p域的邊界網(wǎng)元索取(get操 作)Alice的IP地址信息。
msn.p2p域的邊界網(wǎng)元通過(guò)DHT查詢到Alice的IP地址,并返回 給中心Jj出設(shè)施的邊界網(wǎng)元。
中心1^出設(shè)施的邊界網(wǎng)元將INVITE請(qǐng)求轉(zhuǎn)發(fā)給Alice,從而完成 了對(duì)等網(wǎng)絡(luò)的跨域會(huì)話請(qǐng)求流程。除了由DHT提供位置查詢功能外, 呼叫流程與現(xiàn)有的傳統(tǒng)SIP協(xié)議是兼容的。
圖3為本發(fā)明基于中心^H殳施的分級(jí)架構(gòu)的路由信息的交換、存 儲(chǔ)流程圖。通過(guò)在DHT中保存路由信息,主叫可以查詢到中心J^出設(shè) 施的邊界網(wǎng)元IP地址信息,中心基礎(chǔ)設(shè)施的邊界網(wǎng)元可以查詢到4皮叫 歸屬的邊緣P2PSIP域的邊界網(wǎng)元IP地址,以及被叫歸屬的P2PSIP域 的邊界網(wǎng)元可以查詢到被叫的IP地址,具體的信息交換和存儲(chǔ)過(guò)程,即主叫在其歸屬的邊緣P2PSIP域查詢得到中心1^出設(shè)施的邊界網(wǎng)元IP 地址信息之前,還包括以下步驟
在步驟301,主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元定位中心基礎(chǔ) 設(shè)施的邊界網(wǎng)元,將邊緣P2PSIP域的邊界網(wǎng)元到中心^5出設(shè)施的路由 信息保存到主叫DHT中,并將該路由信息發(fā)送給中心基礎(chǔ)設(shè)施的邊界 網(wǎng)元。路由信息至少包含IP地址、端口、傳輸協(xié)議,還可以包含權(quán)值 weight、優(yōu)先級(jí)priority,生存時(shí)間TTL。主叫歸屬的邊緣P2PSIP域 由用戶節(jié)點(diǎn)組成,為對(duì)等網(wǎng)絡(luò)結(jié)構(gòu),使用分布式算法來(lái)交換路由信息。
定位操作是采用DHT查詢技術(shù),通過(guò)查詢邊界網(wǎng)元保存的路由信 息進(jìn)行的。根據(jù)保存的路由信息,能夠找到目標(biāo)地址。DHT指分布式 哈希表,是一張很大的散列表每個(gè)節(jié)點(diǎn)被分配給一個(gè)屬于自己的散列 塊,并成為這個(gè)散列塊的管理者,用于數(shù)據(jù)的存儲(chǔ)和尋址。
在步驟302,被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元定位中心基礎(chǔ) 設(shè)施的邊界網(wǎng)元,將邊緣P2PSIP域的邊界網(wǎng)元到中心J^出設(shè)施的路由 信息保存到被叫DHT中,并將該路由信息發(fā)送給中心基礎(chǔ)設(shè)施的邊界 網(wǎng)元。路由信息至少包含IP地址、端口、傳輸協(xié)議,還可以包含權(quán)值 weight、優(yōu)先級(jí)priority,生存時(shí)間TTL。凈皮叫歸屬的邊緣P2PSIP域 由用戶節(jié)點(diǎn)組成,為對(duì)等網(wǎng)絡(luò)結(jié)構(gòu),使用分布式算法來(lái)交換路由信息。
在步驟303,中心基礎(chǔ)設(shè)施的邊界網(wǎng)元保存中心基礎(chǔ)設(shè)施到主叫歸 屬的邊緣P2PSIP域的邊界網(wǎng)元的路由信息,以及保存中心基礎(chǔ)i殳施到 被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元的路由信息。中心^l設(shè)施由專 用節(jié)點(diǎn)組成,為對(duì)等網(wǎng)絡(luò)結(jié)構(gòu),使用分布式算法來(lái)交換路由信息。
其中,主叫歸屬的邊緣P2PSIP域的節(jié)點(diǎn)中與被叫歸屬的邊緣 P2PSIP域的節(jié)點(diǎn)中均至少存在一個(gè)邊界網(wǎng)元,中心基礎(chǔ)設(shè)施的節(jié)點(diǎn)由 專用節(jié)點(diǎn)組成,且所有節(jié)點(diǎn)都是邊界網(wǎng)元。
其中,主叫歸屬的邊緣P2PSIP域與被叫歸屬的邊緣P2PSIP域均 由Overlay ID值唯一確定,該Overlay ID值為其所歸屬^或的域名部 分,且各用戶的位置數(shù)據(jù)按照DHT算法存儲(chǔ)在由該用戶的SIP URI生 成的key之下。圖4為本發(fā)明基于中心基礎(chǔ)設(shè)施的分級(jí)架構(gòu)的路由信息的交換、存 儲(chǔ)實(shí)施例的流程圖,具體流程如下
各邊緣P2PSIP域msn.p2p、 yahoo.p2p和google.p2p的邊界網(wǎng)元 分別定位中心基礎(chǔ){更施中的 一個(gè)邊界網(wǎng)元。
各邊緣P2PSIP域的邊界網(wǎng)元向中心基礎(chǔ)設(shè)施中的對(duì)應(yīng)邊界網(wǎng)元發(fā) 送路由信息,路由信息至少包含IP地址、端口、傳輸協(xié)議,還可以包 含權(quán)值wdght、優(yōu)先級(jí)priority、生存時(shí)間TTL,并向中心基礎(chǔ)設(shè)施對(duì) 應(yīng)的邊界網(wǎng)元訂閱中心基礎(chǔ)設(shè)施的路由信息,訂閱是為了保證路由信息 實(shí)時(shí)、準(zhǔn)確。
中心基礎(chǔ)設(shè)施的邊界網(wǎng)元對(duì)邊緣P2PSIP域msn.p2p、 yahoo.p2p 和google.p2p的P2PSIP邊界網(wǎng)元應(yīng)答,表示收到路由信息。
中心基礎(chǔ)設(shè)施以及邊緣P2PSIP域的邊界網(wǎng)元收到路由信息后,都 會(huì)將該信息保存在DHT中。邊緣P2PSIP域的邊界網(wǎng)元將到中心基礎(chǔ) 設(shè)施的路由作為出口路由保存在DHT中,中心^5出設(shè)施的邊界網(wǎng)元將 到相應(yīng)的P2PSIP域的路由作為入口路由保存在DHT中。
圖5為本發(fā)明會(huì)話控制方法跨域呼叫信令流程圖。主叫是位于 yahoo.p2p域中的Bob,:故叫是位于msn.p2p域中的Alice。具體信令流 程如下
Bob的UA通過(guò)DHT查詢得到中心基礎(chǔ)設(shè)施的邊界網(wǎng)元Pl的地 址,向Pl發(fā)送INVITE請(qǐng)求,其中攜帶了被叫Alice的URI。
中心基礎(chǔ)設(shè)施的邊界網(wǎng)元Pl收到這條消息后,根據(jù)目標(biāo)URI向中 心1^出設(shè)施網(wǎng)絡(luò)查詢Alice所在P2PSIP域的邊界網(wǎng)元P2地址,同時(shí)向 Bob的UA返回100 TRYING,表示查詢進(jìn)行中。
中心基礎(chǔ)設(shè)施網(wǎng)絡(luò)返回查詢P2的地址,Pl向P2查詢Alice的IP 地址。
P2收到查詢命令后,通過(guò)DHT查詢得到Alice地址并將得到的 Alice地址返回給Pl。
Pl收到此地址信息后,將INVITE消息轉(zhuǎn)發(fā)至目標(biāo)用戶Alice。 被叫Alice的UA收到INVITE消息后,返回180 RINGING,響
12鈴,消息轉(zhuǎn)發(fā)至主叫Bob的UA。 -帔叫向主叫返回200 OK消息。 主叫發(fā)送ACK信息,從而建立多媒體M。
本發(fā)明還提出基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制系統(tǒng), 用于執(zhí)行上述進(jìn)行會(huì)話控制的方法,該系統(tǒng)包括邊緣P2PSIP域的普通 節(jié)點(diǎn)、主叫歸屬的邊緣P2PSIP i戈的邊界網(wǎng)元、,皮叫歸屬的邊纟彖 P2PSIP域的邊界網(wǎng)元以及中心J^出設(shè)施的邊界網(wǎng)元四部分。
圖6為本發(fā)明基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制系統(tǒng)結(jié) 構(gòu)圖。
系統(tǒng)由中心^5出設(shè)施和若干邊緣P2PSIP域組成分級(jí)結(jié)構(gòu),中心基 礎(chǔ)設(shè)施為邊緣P2PSIP域路由SIP消息,對(duì)跨域的會(huì)話進(jìn)行控制。中心 基礎(chǔ)設(shè)施和邊緣P2PSIP域通過(guò)DHT保存路由信息。
本發(fā)明的會(huì)話控制系統(tǒng)的功能實(shí)體包括邊緣P2PSIP域的普通節(jié) 點(diǎn)、主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元、中心基礎(chǔ)設(shè)施的邊界網(wǎng) 元、被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元四部分,各實(shí)體具體包括以 下模塊
邊緣P2PSIP域的普通節(jié)點(diǎn),包括第一 DHT查詢才莫塊、第一消 息處理模塊。第一 DHT查詢模塊,在邊緣P2PSIP域組成的DHT網(wǎng)絡(luò) 中查詢中心基礎(chǔ)設(shè)施的一個(gè)邊界網(wǎng)元的地址;第一消息處理才莫塊,在節(jié) 點(diǎn)充當(dāng)主叫時(shí)向中心^i^出設(shè)施的邊界網(wǎng)元發(fā)送SIP請(qǐng)求消息、節(jié)點(diǎn)充當(dāng) 被叫時(shí)接收SIP請(qǐng)求消息。
主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元,包括第二 DHT查詢才莫 塊、第二路由維護(hù)模塊。第二 DHT查詢模塊,收到DHT查詢請(qǐng)求時(shí) 在DHT網(wǎng)絡(luò)中查詢資源信息,該資源可能是中心^i^出設(shè)施的邊界網(wǎng)元 的地址信息;第二路由維護(hù)模塊,與中心基礎(chǔ)設(shè)施的邊界網(wǎng)元交換路由 信息,同時(shí)在主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元保存此路由信息, 路由信息至少包含IP地址、端口、傳輸協(xié)議。
中心基礎(chǔ)設(shè)施的邊界網(wǎng)元,包括第三DHT查詢模塊、提取模 塊、第三路由維護(hù)模塊、第三消息處理模塊。第三DHT查詢模塊,根
13據(jù)被叫SIP URI定位被叫所歸屬的P2PSIP域的一個(gè)邊界網(wǎng)元;提W^ 塊,提取SIP請(qǐng)求消息中被叫SIP URI;第三路由維護(hù)模塊,交換并保 存與主叫歸屬的邊緣P2PSIP域、被叫歸屬的邊緣P2PSIP域的路由信 息;第三消息處理模塊,接收主叫發(fā)送的SIP請(qǐng)求消息,向被叫歸屬的 邊緣P2PSIP域的邊界網(wǎng)元發(fā)送DHT查詢請(qǐng)求獲取4皮叫的IP地址,并 將主叫的SIP請(qǐng)求轉(zhuǎn)發(fā)給被叫。
被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元,包括第四DHT查詢模 塊、第四路由維護(hù)模塊、第四消息處理模塊。第四DHT查詢模塊,查 詢被叫的IP地址;第四路由維護(hù)模塊,與中心基礎(chǔ)設(shè)施的邊界網(wǎng)元交 換路由信息,同時(shí)在^皮叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元保存此路由 信息,路由信息至少包含IP地址、端口、傳輸協(xié)議;第四消息處理才莫 塊,接收DHT查詢請(qǐng)求,并向中心基礎(chǔ)i更施的邊界網(wǎng)元返回查詢結(jié) 果,即^L叫的IP地址。
其中,邊緣P2PSIP域以及中心J^出設(shè)施均為DHT網(wǎng)絡(luò)的結(jié)構(gòu), 在DHT網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)都有一個(gè)節(jié)點(diǎn)ID,每個(gè)資源都有唯一的資源 key值,資源根據(jù)自己的key值按照一定規(guī)則存放在對(duì)應(yīng)的節(jié)點(diǎn)上(一 般存放在節(jié)點(diǎn)ID大于且最接近key值的節(jié)點(diǎn)上)。邊緣P2PSIP域的普 通節(jié)點(diǎn)和邊界網(wǎng)元共同組成一個(gè)DHT網(wǎng)絡(luò),中心J^出設(shè)施的邊界網(wǎng)元 也構(gòu)成一個(gè)DHT網(wǎng)絡(luò),但兩個(gè)DHT網(wǎng)絡(luò)之間不是互通的。
其中,第一 DHT查詢模塊和第二 DHT查詢模塊功能相同。查詢 過(guò)程如下該模塊首先判斷資源是否本域資源,如果是本域資源則直接 從本域DHT中查詢?cè)撡Y源;否則從DHT網(wǎng)絡(luò)中查詢出中心基礎(chǔ)i更施 的邊界網(wǎng)元地址信息,然后向節(jié)點(diǎn)返回該地址信息。由第一 DHT查詢 模塊和(或)第二DHT查詢模塊定位中心基礎(chǔ)設(shè)施的邊界網(wǎng)元地址。
其中,邊緣P2PSIP域由Overlay ID值唯一確定,Overlay ID值為 其所歸屬域的域名部分,且各用戶的位置數(shù)據(jù)按照DHT算法存儲(chǔ)在由 該用戶的SIP URI生成的key之下。
其中,任意邊緣P2PSIP域既可以充當(dāng)主叫域也可以充當(dāng)被叫域。
其中,邊緣P2PSIP域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng)元,中心基礎(chǔ)
14設(shè)施的節(jié)點(diǎn)由專用節(jié)點(diǎn)組成,且所有節(jié)點(diǎn)都是邊界網(wǎng)元。
圖7為本發(fā)明基于^f出設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性^S舌控制系統(tǒng)工 作流程圖。具體流程如下
在步驟701,主叫的第一DHT查詢;漠塊和(或)第二 DHT查詢才莫 塊定位中心基礎(chǔ)設(shè)施的 一個(gè)邊界網(wǎng)元;主叫的第 一消息處理模塊向定位 的中心基礎(chǔ)設(shè)施的邊界網(wǎng)元發(fā)送SIP請(qǐng)求消息,該請(qǐng)求消息中包括^皮叫 SIPURI。
在步驟702,中心基礎(chǔ)設(shè)施的邊界網(wǎng)元的提取漠塊提取SIP請(qǐng)求消 息中被叫SIP URI;笫三DHT查詢模塊根據(jù)被叫SIP URI查詢得到被 叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元IP地址;第三消息處理模塊接收 主叫發(fā)送的SIP請(qǐng)求消息,向定位的邊緣P2PSIP域的邊界網(wǎng)元發(fā)送 DHT查詢請(qǐng)求,索取,皮叫的IP地址。
在步驟703,被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元的第四消息處 理模塊接收DHT查詢請(qǐng)求;第四DHT查詢才莫塊查詢;故叫的IP地址; 第四消息處理模塊向中心基礎(chǔ)設(shè)施的邊界網(wǎng)元返回查詢結(jié)果,即被叫的 IP地址。
在步驟704,中心基礎(chǔ)設(shè)施的邊界網(wǎng)元的第三消息處理模塊接收第 四消息處理模塊返回的被叫IP地址,并將SIP請(qǐng)求轉(zhuǎn)發(fā)給被叫。
此外,在主叫在其歸屬的邊緣P2PSIP域查詢得到中心基礎(chǔ)設(shè)施的 邊界網(wǎng)元IP地址信息之前,還包括以下步驟
主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元的第二路由維護(hù)才莫塊,與中 心l-f出設(shè)施的邊界網(wǎng)元交換路由信息,同時(shí)在邊緣P2PSIP域的邊界網(wǎng) 元保存此路由信息,路由信息至少包含IP地址、端口、傳輸協(xié)議。
中心^i^出設(shè)施的邊界網(wǎng)元的第三路由維護(hù)模塊,交換并保存與邊緣 P2PSIP域的路由信息。
被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元的第四路由維護(hù)模塊,與中 心J^出設(shè)施的邊界網(wǎng)元交換路由信息,同時(shí)在邊緣P2PSIP域的邊界網(wǎng) 元保存此路由信息,路由信息至少包含IP地址、端口、傳輸協(xié)議。
本發(fā)明不需要DNS服務(wù)器就可以互聯(lián)互通P2PSIP覆蓋網(wǎng)絡(luò),具有對(duì)互通節(jié)點(diǎn)變化反應(yīng)快、低呼叫建立時(shí)延、低成本、高可靠性擴(kuò)展
性、架構(gòu)靈活、易于部署管理的優(yōu)點(diǎn)。同時(shí),若使用合適的P2PSIP覆蓋網(wǎng)絡(luò)劃分方案,可以大大降低呼叫建立時(shí)延和注冊(cè)開(kāi)銷。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明公開(kāi)的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書(shū)的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法,包括以下步驟在主叫歸屬的邊緣P2PSIP域的邊界節(jié)點(diǎn)查詢主叫DHT得到中心基礎(chǔ)設(shè)施的邊界網(wǎng)元IP地址信息,主叫向中心基礎(chǔ)設(shè)施的邊界網(wǎng)元發(fā)送SIP請(qǐng)求消息,該請(qǐng)求消息中包括被叫SIP URI;中心基礎(chǔ)設(shè)施的邊界網(wǎng)元提取SIP請(qǐng)求消息中被叫SIP URI,根據(jù)被叫SIP URI查詢得到被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元IP地址,并向被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元發(fā)送DHT查詢請(qǐng)求,索取被叫的IP地址;被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元查詢被叫DHT得到被叫的IP地址,并返回給中心基礎(chǔ)設(shè)施的邊界網(wǎng)元;中心基礎(chǔ)設(shè)施的邊界網(wǎng)元將主叫的SIP請(qǐng)求轉(zhuǎn)發(fā)給被叫。
2. 根據(jù)權(quán)利要求l所述會(huì)話控制方法,其中,主叫在其歸屬的邊 緣P2PSIP域查詢得到中心基礎(chǔ)設(shè)施的邊界網(wǎng)元IP地址信息之前,還 包括以下步驟主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元定位中心基礎(chǔ)設(shè)施的邊界網(wǎng) 元,將主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元到中心基礎(chǔ)設(shè)施的路由信 息保存到主叫DHT中,并將該路由信息發(fā)送給中心基礎(chǔ)設(shè)施的邊界網(wǎng) 元;被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元定位中心基礎(chǔ)設(shè)施的邊界網(wǎng) 元,將被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元到中心基礎(chǔ)設(shè)施的路由信 息保存到被叫DHT中,并將該路由信息發(fā)送給中心基礎(chǔ)設(shè)施的邊界網(wǎng) 元;中心1^出設(shè)施的邊界網(wǎng)元收到路由信息后,保存中心基礎(chǔ)設(shè)施到主 叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元的路由信息,以及保存中心基礎(chǔ)設(shè) 施到被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元的路由信息。
3. 根據(jù)權(quán)利要求1所述會(huì)話控制方法,其中,主叫歸屬的邊緣P2PSIP域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng)元,;陂叫歸屬的邊緣P2PSIP 域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng)元,中心基礎(chǔ)設(shè)施的節(jié)點(diǎn)由專用節(jié)點(diǎn)組 成,且所有節(jié)點(diǎn)都是邊界網(wǎng)元。
4. 根據(jù)權(quán)利要求1所述會(huì)話控制方法,其中,主叫歸屬的邊緣 P2PSIP域與被叫歸屬的邊緣P2PSIP域均由Overlay ID值唯一確定, 該Overlay ID值為其所歸屬域的域名部分,且各用戶的位置數(shù)據(jù)按照 DHT算法存儲(chǔ)在由該用戶的SIP URI生成的key之下。
5. 基于^ 出設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制系統(tǒng),其中 邊緣P2PSIP域的普通節(jié)點(diǎn),包括第一 DHT查詢模塊,在邊緣P2PSIP域組成的DHT網(wǎng)絡(luò)中查 詢中心^5出設(shè)施的一個(gè)邊界網(wǎng)元的地址;第 一消息處理模塊,在節(jié)點(diǎn)充當(dāng)主叫時(shí)向中心基礎(chǔ)設(shè)施的邊界 網(wǎng)元發(fā)送SIP請(qǐng)求消息、節(jié)點(diǎn)充當(dāng)被叫時(shí)接收SIP請(qǐng)求消息; 主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元,包括第二 DHT查詢模塊,收到DHT查詢請(qǐng)求時(shí)在DHT網(wǎng)絡(luò)中查 詢資源信息,該資源可能是中心基礎(chǔ)設(shè)施的邊界網(wǎng)元的地址信息;第二路由維護(hù)模塊,與中心基礎(chǔ)設(shè)施的邊界網(wǎng)元交換路由信 息,同時(shí)在主叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元保存此路由信息,路 由信息至少包含IP地址、端口、傳輸協(xié)議; 中心基礎(chǔ)設(shè)施的邊界網(wǎng)元,包括第三DHT查詢模塊,根據(jù)被叫SIP URI定位被叫所歸屬的 P2PSIP域的一個(gè)邊界網(wǎng)元;提^f莫塊,提取SIP請(qǐng)求消息中被叫SIP URI;第三路由維護(hù)模塊,交換并保存與主叫歸屬的邊緣P2PSIP 域、被叫歸屬的邊緣P2PSIP域的路由信息;第三消息處理模塊,接收主叫發(fā)送的SIP請(qǐng)求消息,向,皮叫歸 屬的邊緣P2PSIP域的邊界網(wǎng)元發(fā)送DHT查詢請(qǐng)求,索取被叫的IP地 址,并將主叫的SIP請(qǐng)求轉(zhuǎn)發(fā)給被叫;被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元,包括第四DHT查詢模塊,查詢;陂叫的IP地址;第四路由維護(hù)模塊,與中心基礎(chǔ)設(shè)施的邊界網(wǎng)元交換路由信 息,同時(shí)在邊緣P2PSIP域的邊界網(wǎng)元保存此路由信息,路由信息至少 包含IP地址、端口、傳輸協(xié)議;第四消息處理才莫塊,接收DHT查詢請(qǐng)求,并向中心^i^出設(shè)施 的邊界網(wǎng)元返回查詢結(jié)果,即:故叫的IP地址。
6. 根據(jù)權(quán)利要求5所述會(huì)話控制系統(tǒng),其中,由第一 DHT查詢 模塊和/或第二 DHT查詢模塊定位中心基礎(chǔ)設(shè)施的邊界網(wǎng)元地址。
7. 根據(jù)權(quán)利要求5所述會(huì)話控制系統(tǒng),其中,任意邊緣P2PSIP 域既可以充當(dāng)主叫域也可以充當(dāng)#皮叫i或。
8. 根據(jù)權(quán)利要求5所述會(huì)話控制系統(tǒng),其中,主叫歸屬的邊緣 P2PSIP域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng)元,-故叫歸屬的邊緣P2PSIP 域的節(jié)點(diǎn)中至少存在一個(gè)邊界網(wǎng)元,中心基礎(chǔ)設(shè)施的節(jié)點(diǎn)由專用節(jié)點(diǎn)組 成,且所有節(jié)點(diǎn)都是邊界網(wǎng)元。
9. 根據(jù)權(quán)利要求5所述會(huì)話控制系統(tǒng),其中,主叫歸屬的邊緣 P2PSIP域與4皮叫歸屬的邊緣P2PSIP域均由Overlay ID值唯一確定, 該Overlay ID值為其所歸屬域的域名部分,且各用戶的位置數(shù)據(jù)按照 DHT算法存儲(chǔ)在由該用戶的SIPURI生成的key之下。
全文摘要
本發(fā)明基于基礎(chǔ)設(shè)施的異構(gòu)對(duì)等網(wǎng)絡(luò)互通性會(huì)話控制方法和系統(tǒng)。包括以下步驟在主叫歸屬的邊緣P2PSIP域查詢主叫DHT得到中心基礎(chǔ)設(shè)施的邊界網(wǎng)元IP地址信息,主叫向中心基礎(chǔ)設(shè)施的邊界網(wǎng)元發(fā)送SIP請(qǐng)求消息;中心基礎(chǔ)設(shè)施的邊界網(wǎng)元提取SIP請(qǐng)求消息中被叫SIP URI,根據(jù)被叫SIP URI查詢得到被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元IP地址,并向被叫歸屬的P2PSIP域的邊界網(wǎng)元索取被叫的IP地址;被叫歸屬的邊緣P2PSIP域的邊界網(wǎng)元查詢被叫DHT得到被叫的IP地址,并返回給中心基礎(chǔ)設(shè)施的邊界網(wǎng)元;中心基礎(chǔ)設(shè)施的邊界網(wǎng)元將主叫的SIP請(qǐng)求轉(zhuǎn)發(fā)給被叫。本發(fā)明能夠使用戶在異構(gòu)對(duì)等網(wǎng)絡(luò)中跨域路由通信。
文檔編號(hào)H04L29/08GK101668038SQ200910093989
公開(kāi)日2010年3月10日 申請(qǐng)日期2009年9月25日 優(yōu)先權(quán)日2009年9月25日
發(fā)明者劉玉婷, 張春紅, 李漓春, 陽(yáng) 紀(jì) 申請(qǐng)人:北京郵電大學(xué)