專利名稱:表征化異構(gòu)通信節(jié)點(diǎn)的方法與系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的領(lǐng)域?yàn)殡娦蓬I(lǐng)域,更具體地,為IP電話領(lǐng)域。
背景技術(shù):
人們越來越多地使用因特網(wǎng)協(xié)議(IP)網(wǎng)絡(luò)作為對于大量服務(wù)與應(yīng)用的 統(tǒng)一支持手段。對于選擇該協(xié)議的諸多運(yùn)營商來說,IP承擔(dān)了聯(lián)合者的角色, 用來使先前分離的服務(wù)相互扶持。
因特網(wǎng)協(xié)議的IPv4版本已經(jīng)使用幾年了。
為了滿足此類通信服務(wù)施加的限制,更具體地,為了適應(yīng)地址方面的需 求增長,運(yùn)營商與網(wǎng)絡(luò)裝備制造商聯(lián)合起來,制定了新一代通信協(xié)議,稱為 IPv6,其由現(xiàn)在處于成熟得足以使之可以設(shè)想在運(yùn)營商網(wǎng)絡(luò)中的運(yùn)行部署的 開發(fā)階段的規(guī)格以及分析文檔定義。
但是,引入該新一代協(xié)議造成了顯著的問題,這些問題涉及需要保證IPv6 協(xié)議與已經(jīng)部署在IP網(wǎng)絡(luò)中的IPv4協(xié)議之間的互操作性與互連(interwork )。 在現(xiàn)有技術(shù)的當(dāng)前階段,人們已經(jīng)提出了對這些問題的解決方案,但是這些 解決方案具有以下缺點(diǎn),其運(yùn)行不僅在"服務(wù),,級上(具體在應(yīng)用層上),而 且在"傳輸,,級上(在IP層上)。在傳輸層中,因特網(wǎng)工程特別工作組(IEFT) 已經(jīng)提出并且標(biāo)準(zhǔn)化了一些機(jī)制,例如NAP-PT技術(shù),以及各種隧道技術(shù), 其將IPv6數(shù)據(jù)封裝在IPv4數(shù)據(jù)報(bào)中或者相反。
另外,必須更新與適配體系結(jié)構(gòu)與服務(wù)平臺,以使之能夠在位于不同類 型(IPv4與IPv6 ) IP環(huán)境中的客戶端之間的互連對于最終用戶來說盡可能地 透明。
在其他多媒體活動中,正FT已經(jīng)標(biāo)準(zhǔn)化了會話起始協(xié)議(SIP),其主要 功能為發(fā)起、修改、以及終結(jié)多媒體會話。SIP為本發(fā)明應(yīng)用的一個(gè)有趣的例 子。其基于服務(wù)描述協(xié)議(SDP),用來產(chǎn)生對與相關(guān)會話有關(guān)的參數(shù)的描述。 一旦呼叫雙方之間的協(xié)商成功,則雙方可以通過激活實(shí)時(shí)傳輸協(xié)議(RTP ) 來交換i某體流。RTP會話參數(shù)通過SIP信令消息(主要在SDP部分)預(yù)先商
定。它們主要是在要設(shè)置的通信鏈路任一端處使用的終點(diǎn)地址與端口號。
自從在請求評論(RFC) 2543中描述了 SIP的第一個(gè)版本以來,其就與 IPv6兼容。在理論上,SIP的實(shí)現(xiàn)會容易地解碼IPv4與IPv6地址,其可以 被引入到諸如"CONTACT"(聯(lián)系)頭部等特定字段或者SDP部分的頭部中。 但是,如果兩個(gè)終端都無法在相同的IP環(huán)境下聯(lián)系,即,如果一個(gè)具有IPv4 地址而另 一個(gè)具有IPv6地址,則存在此類地址可能會阻止i殳置SIP呼叫。由 此,當(dāng)IPv4用戶代理發(fā)起與IPv6用戶代理A (其在IPv4定位服務(wù)器(也稱 為"注冊方"R)處注冊)的IP會"^舌時(shí),結(jié)果的SIP消息交換如圖la所示, 其中尋求聯(lián)系第二用戶代理B的第一用戶代理A使用其特有IPv4地址向代 理服務(wù)器PS發(fā)送"INVITE"(邀請)消息。此處,代理服務(wù)器PS附屬于只 有IPv4的環(huán)境。 一旦代理服務(wù)器PS收到該消息,則代理服務(wù)器向定位服務(wù) 器(也稱為注冊服務(wù)器)提交查詢,以取得第二用戶代理B的地址。在當(dāng)前 假設(shè)下,該地址為IPv6地址,并且由于代理服務(wù)器PS屬于只有IPv4類型, 所以代理服務(wù)器PS不知道到該目的地的路由。然后,向用戶代理A發(fā)送錯(cuò) 誤消息,以指示不可能在第一用戶代理A與第二用戶代理B之間設(shè)置SIP會 話。該錯(cuò)誤消息為圖la中所示的"(2) 404 No Route"(無路由)消息。
如果現(xiàn)在假設(shè)代理服務(wù)器PS可以聯(lián)系第一用戶代理A的定位地址與第 二用戶代理B的定位地址,則會發(fā)生另一SIP消息交換,其中第二用戶代理 B試圖呼叫第一用戶代理A,如圖lb所示。
在這種情況下,代理服務(wù)器PS將從第二用戶代理B收到的"INVITE"消 息路由傳送給第一用戶代理A的定位地址。該"INVITE" 消息包含SDP提 議,其在第二用戶代理B提議的編解碼器(編碼器/解碼器)之外,還描述了 第二用戶代理B可以用來發(fā)送和接收RTP流的RTP端口號與地址。在圖lb 中,該地址是IPv6地址。由此,當(dāng)?shù)谝挥脩舸鞟收到該"INVITE" 消息 時(shí),其只能拒絕開放會話,因?yàn)槠涫荌Pv4客戶端。依賴于其如何實(shí)現(xiàn),其最 多可以向回發(fā)送錯(cuò)誤信息,以指示其不支持到第二用戶代理B的IP地址的網(wǎng) 絡(luò)連接。由此,在以上參照圖la與圖lb描述的任何一個(gè)例子中,都無法設(shè) 置SIP會話。
不同類型的IP地址共存可能會影響與以上以圖形顯示和描述的那些呼叫 不同的呼叫。由此,到雙棧(DS)客戶端的呼叫在i某體流交換中也可能會無 法終結(jié),其中DS用戶代理能夠處理IPv4與IPv6地址類型兩者。這是因?yàn)榛?br>
本SIP適于指示用來發(fā)送或者接收媒體流的僅一個(gè)IP地址。為了克服這個(gè)問
題,RFC 4092引入新的語義特征,包括"sdp-anat"標(biāo)志,以使用戶代理能 夠宣布和/或發(fā)現(xiàn)一或多個(gè)地址類型。由此,DS用戶代理可以在其STP才是議 中指示其IPv4地址與IPv6地址兩者。通過這種技術(shù),來自或者去向DS用戶 代理并且去向或者來自單版本客戶端(即僅與IPv4協(xié)議兼容、或者僅與IPv6 協(xié)議兼容的客戶端)的所有呼叫可以成功地終結(jié)SIP會話。
在意圖傳送給定呼叫的通信鏈路末端處的兩個(gè)節(jié)點(diǎn)為單版本節(jié)點(diǎn)的情況 下,相關(guān)的SIP電話服務(wù)運(yùn)營商可以使用應(yīng)用層網(wǎng)關(guān)(ALG)應(yīng)用,來修改 SDP提議,以保證所支持的地址類型和在收到的SIP消息中包含的類型之間 的一致性。為此目的,SIP服務(wù)器使用關(guān)于傳輸層的、并且不是SIP所特有的 信息,來路由傳送呼叫,或者決定使用ALG應(yīng)用來改變SDP提議的內(nèi)容。 SIP服務(wù)器的此類行為未被標(biāo)準(zhǔn)覆蓋。
一般地講,電信業(yè)還沒有詳細(xì)地研究與互連兩個(gè)異構(gòu)用戶代理(即不同 IP類型的用戶代理)相關(guān)的問題。具體地,除在RFC 4091與RFC 4092中描 述的ANAT提議(其解決了部分問題)之外,沒有IETF文檔描述SIP服務(wù) 器的行為來路由傳送連接在兩個(gè)不同IP環(huán)境下的兩個(gè)用戶代理的呼叫。
另外,現(xiàn)有技術(shù)具有以下缺點(diǎn)
畫使用ALG應(yīng)用與附加功能未被文檔化;代理服務(wù)器PS沒有RFC 3261 指定的手段來促進(jìn)該任務(wù);
-代理服務(wù)器PS必須使用來自網(wǎng)絡(luò)層(在本文檔中也稱為傳輸層)的信 息來進(jìn)行關(guān)于服務(wù)層的判定;因此,其必須考慮消息的源地址之外的、用來 聯(lián)系代理服務(wù)器的地址,或者檢查SDP部分;這會造成使代理(其被預(yù)先配 置來僅處理服務(wù)級信息)性能下降的風(fēng)險(xiǎn);
-使用這些地址未被優(yōu)化獲得成功的會話的一種方法為使參與呼叫的 兩個(gè)用戶代理都能夠具有兩種類型的地址,從而SDP協(xié)商總會成功,但是這 會造成優(yōu)化對運(yùn)營商可用地址空間的利用的問題(尤其在IPv4中)。
-解決方案不通用由代理服務(wù)器PS進(jìn)行呼叫路由傳送與干涉的想法依 賴于在傳輸層上部署的互連解決方案。
-代理服務(wù)器?8無法確定用戶代理屬于^^4、 IPv6、還是DS類型。
本發(fā)明人通過實(shí)踐得到以下結(jié)論盡管從以上研究中出現(xiàn)了需求,但是 在現(xiàn)有^t支術(shù)的當(dāng)前狀態(tài)下,沒有簡單的方法來4吏IP通信網(wǎng)絡(luò)中的通信部件能
夠識別與給定用戶代理關(guān)聯(lián)的地址類型,這就解釋了為什么人們當(dāng)前研究的 管理異構(gòu)節(jié)點(diǎn)之間的呼叫的大部分技術(shù)都有不足之處,并且沒有處理使能異 構(gòu)呼叫的服務(wù)需求。
在提出使之能夠容易地識別給定用戶代理支持的地址類型的傳送方法 時(shí),本發(fā)明提供了一種沒有以上缺點(diǎn)的解決方案。
發(fā)明內(nèi)容
本發(fā)明的用來在異構(gòu)節(jié)點(diǎn)之間傳送數(shù)據(jù)的方法特征在于,該方法包含以
下步驟在設(shè)置所述節(jié)點(diǎn)之間的通信會話之前,在一個(gè)所述節(jié)點(diǎn)中,將類型 指示符插入到由用戶代理發(fā)送的消息中,所述類型指示符表示與所述用戶代 理關(guān)聯(lián)的地址的類型。
本發(fā)明提供了 一種快速方式來識別必須相互通信的兩種類型的用戶代理 之間不兼容的風(fēng)險(xiǎn),并且考慮到如果必要則克服此類不兼容性。
具體地,本發(fā)明使諸如上述的代理服務(wù)器能夠迅速識別必須相互通信的 兩種類型的用戶代理,從而使所述服務(wù)器能夠識別、并且在適當(dāng)?shù)牡胤讲渴?有效地設(shè)置那些代理之間的通信會話所需的資源,而不管這些代理是否屬于 相同類型。
此處稱用戶代理的"類型"指用戶代理能夠通過容納它的SIP節(jié)點(diǎn)的(多 個(gè))網(wǎng)絡(luò)接口使用的因特網(wǎng)協(xié)議的一或多個(gè)版本(例如IPv4、 IPv6)。如果節(jié) 點(diǎn)A所容納的用戶代理類型與節(jié)點(diǎn)B所容納的用戶代理類型不同,則稱兩個(gè) 節(jié)點(diǎn)A與B是異構(gòu)的。
由此,本發(fā)明的協(xié)議可以進(jìn)一步包含以下步驟根據(jù)三種IP類型純IPv4 、 純IPv6、或者雙棧,歸類發(fā)送類型指示符的用戶代理。
在本發(fā)明的一個(gè)特定實(shí)施例中,由所述用戶代理提出執(zhí)行所述插入步驟。
這使用戶代理能夠?qū)⑵浒l(fā)送或者接收的呼叫限于對應(yīng)的網(wǎng)絡(luò)接口與因特 網(wǎng)協(xié)議類型。
有利的是,類型指示符可以采用編碼數(shù)字值的形式,其表示IPv4協(xié)議、 IPv6協(xié)議、或者雙棧(IPv4+IPv6)協(xié)議。
此類數(shù)字值可以非常容易地以幾個(gè)比特編碼,因此實(shí)現(xiàn)本發(fā)明不會造成 出于呼叫目的而交換的消息量的任何顯著增加。
在本發(fā)明的第一有利變體中,上述方法進(jìn)一步包含以下步驟與相關(guān)用
戶代理的標(biāo)識符一起存儲所述類型指示符。
在諸多情況中,該存儲步驟在數(shù)據(jù)庫中創(chuàng)建并且更新著參考表,用來容 易地直接識別與為其存儲了類型指示符的每個(gè)用戶代理關(guān)聯(lián)的IP地址類型。 該數(shù)據(jù)庫可以由每個(gè)用戶代理自發(fā)地在初始化連接時(shí)饋送,或者通過周期性 地更新來饋送,并且由定位服務(wù)器管理,用戶代理在初始化通信會話時(shí)或者 在注冊周期過期時(shí)在該定位服務(wù)器注冊。
在本發(fā)明的可以替換或者與第 一變體結(jié)合使用的第二有利變體中,上述
方法進(jìn)一步可以包含在關(guān)聯(lián)于發(fā)送了所述邀請消息的用戶代理的類型指示 符與關(guān)聯(lián)于所述邀請消息的目的地用戶代理的類型指示符之間不兼容的情況 下,轉(zhuǎn)換在邀請進(jìn)入與用戶代理的通信的消息中包含的地址的步驟。
根據(jù)本發(fā)明的這一變體,簡單地比較與主叫和被叫用戶代理關(guān)聯(lián)的類型 指示符使之即使在試圖建立主叫和被叫方之間的連接之前就能夠補(bǔ)償其間的 任何不兼容。
例如,有利的是,本發(fā)明用于稱為VoIP (IP上語音)的IP電話應(yīng)用, 或者一般地編組在交談服務(wù)的名目之下。
這樣,本發(fā)明解決了 RFC 3162定義的、并且為IPv4客戶端與IPv6客戶 端兩者都部署的、基于SIP的信令服務(wù)的一般問題。這些服務(wù)可以是語音、 視頻、現(xiàn)場(presence)等等服務(wù)。
如上所述,本發(fā)明提出了一種簡單的機(jī)制,有利于在一個(gè)附屬于IPv4域、 另 一個(gè)附屬于IPv6域的異構(gòu)客戶端之間設(shè)置SIP會話。
通過使用本發(fā)明,SIP代理服務(wù)器能夠路由傳送SIP呼叫,并且能夠進(jìn)行 干預(yù)以修改(或使之修改)SIP消息中傳送的、RFC 2327定義的SID提議的 內(nèi)容,從而使之能夠在異構(gòu)節(jié)點(diǎn)之間設(shè)置會話。相反,如果不實(shí)現(xiàn)本發(fā)明, 則SIP代理服務(wù)器必須訪問應(yīng)用層之外的信息,具體為涉及網(wǎng)絡(luò)層的信息, 以指導(dǎo)其選擇呼叫路由和優(yōu)化對ALG應(yīng)用(其負(fù)責(zé)修改SIP消息以獲得成功 的SIP會話)的使用。如果不使用同構(gòu)協(xié)議棧,則在SIP服務(wù)器和ALG應(yīng)用 不干預(yù)的情況下,某些SIP會話無法發(fā)生。
本發(fā)明允許互連異構(gòu)SIP節(jié)點(diǎn),并且簡化以及因此促進(jìn)了 SIP電信系統(tǒng) 中的呼叫路由。
具體地,本發(fā)明優(yōu)化了對IP地址的使用,并且不要求SIP代理服務(wù)器對 SIP消息的處理以依賴于來自傳輸層的信息來判定服務(wù)器收到的SIP消息所
要求的處理。
在此處所參考的應(yīng)用例子特有的一種實(shí)施例中,可以將類型指示符插入
到SIP查詢消息中包含的"CONTACT"字段中。
將類型指示符引入查詢消息會通知定位服務(wù)器以及代理服務(wù)器用戶代理 中可用的網(wǎng)絡(luò)接口所支持的IP地址的類型。另外,代理服務(wù)器然后可以使用 該類型指示符來處理查詢消息,從而將其路由傳送到其目的地,而不用訪問 網(wǎng)絡(luò)層中的信息。
將上述本發(fā)明第 一變體調(diào)換應(yīng)用到該例子會得到用戶代理將其類型指示 符插入到"REGISTER"消息中。
由此,當(dāng)收到"REGISTER"消息時(shí),定位服務(wù)器行進(jìn)到存儲注冊地址、 注冊過期地址、以及類型指示符。其也可以存儲其他數(shù)據(jù)。
將上述本發(fā)明第二變體調(diào)換應(yīng)用到該例子會得到在關(guān)聯(lián)于發(fā)送了所述 "INVITE"消息的用戶代理的類型指示符與關(guān)聯(lián)于所述"INVITE"消息的目 的地用戶代理的類型指示符之間不兼容的情況下,代理服務(wù)器轉(zhuǎn)換在 "INVITE"消息中包含的地址。
具體地,如果發(fā)送和接收"INVITE"消息的用戶代理屬于不同類型,則 會產(chǎn)生此類不兼容性。
在本發(fā)明的此類應(yīng)用中,在不同類型的兩個(gè)用戶代理之間,必須使用應(yīng) 用層上的網(wǎng)關(guān)進(jìn)行呼叫路由處理以修改呼叫消息的代理服務(wù)器執(zhí)行根據(jù)以下 進(jìn)行此類處理
-或者根據(jù)在由定位服務(wù)器更新的、并且包含主叫和被叫用戶代理類型的 性質(zhì)的注冊數(shù)據(jù)庫中存儲的分類;
-或者根據(jù)在包含被叫用戶代理類型的性質(zhì)的注冊數(shù)據(jù)庫中存儲的分類、 以及在主叫用戶代理發(fā)送的"INVITE"消息中包含的類型指示符。
從以上描述可以看出,作為通過其在上述應(yīng)用中的實(shí)現(xiàn)而直接獲得的產(chǎn) 品,本發(fā)明還涉及承載包含表示與發(fā)送該消息的用戶代理關(guān)聯(lián)的IP地址的性 質(zhì)的類型指示符的查詢消息的任何信號,該消息例如可以為"REGISTER"、 "INVITE"、或者"200 OK"消息。具體地,可以將類型指示符插入到 "CONTACT"字段中。
本發(fā)明的硬件方面涉及一種在異構(gòu)節(jié)點(diǎn)之間傳送數(shù)據(jù)的系統(tǒng),特征在于 該系統(tǒng)包含用于以下的部件在設(shè)置所述節(jié)點(diǎn)之間的通信會話之前,在一個(gè)
所述節(jié)點(diǎn)中,將類型指示符插入到由用戶代理發(fā)送的消息中,所述類型指示 符表示與該用戶代理關(guān)聯(lián)的地址的類型。本發(fā)明的硬件方面還涉及形成這樣
的數(shù)據(jù)傳送系統(tǒng)的終端,包括用于以下的部件在所述節(jié)點(diǎn)中,將類型指示 符插入到由用戶代理發(fā)送的消息中,所述類型指示符表示與該用戶代理關(guān)聯(lián) 的地址的類型。
本發(fā)明的硬件方面的一種變體涉及上述的傳送系統(tǒng),進(jìn)一步包含用于以 下的部件根據(jù)發(fā)送查詢消息的代理的類型指示符、以及用來存儲所述分類 的數(shù)據(jù)庫,分類與歸類所述用戶代理。
本發(fā)明的硬件方面的另一種變體涉及上述的傳送系統(tǒng),進(jìn)一步包含用于 以下的部件比較主叫用戶代理與被叫用戶代理所特有的類型指示符。
構(gòu)成用來實(shí)現(xiàn)本發(fā)明的部件的本發(fā)明的另 一方面涉及一種計(jì)算機(jī)程序, 包含一系列程序代碼指令,當(dāng)所述程序在計(jì)算機(jī)中執(zhí)行時(shí),用來執(zhí)行上述方 法的特定步驟。
從以下結(jié)合附圖的作為非限定性例子給出的描述,可以更好地理解本發(fā)
明,其中
圖la與lb涉及現(xiàn)有技術(shù);
圖2作為說明顯示本發(fā)明方法的基本步驟的流程圖3作為說明顯示注冊IPv4與IPv6用戶代理的第一個(gè)例子;
圖4作為說明顯示注冊雙棧用戶代理的第二個(gè)例子;以及
圖5顯示本發(fā)明的系統(tǒng),用來互連異構(gòu)SIP節(jié)點(diǎn),其在以下情況下運(yùn)行
用戶代理發(fā)送"REGISTER"(注冊)消息給定位服務(wù)器,并且"INVITE"(邀
請)消息中轉(zhuǎn)通過代理服務(wù)器。
具體實(shí)施例方式
以下參照圖2及隨后的附圖,更詳細(xì)地描述本發(fā)明的方法。
一般來說,例如由IPv4、 IPv6、或者雙棧(DS)混合IP終端形成的每個(gè)
異構(gòu)節(jié)點(diǎn)都包括特定類型的用戶代理UA,該類型對應(yīng)于用戶代理通過相關(guān)終
端可用的(多個(gè))網(wǎng)絡(luò)接口能夠使用的IP的版本。
如圖2所示,本發(fā)明的方法,在步驟IO,在用戶代理UA發(fā)送的查詢消
息M中插入類型指示符"atypes"。在該插入之后,查詢消息表示為M ("atypes")。此類查詢消息例如包括至定位服務(wù)器(也稱為"注冊方")R的 注冊消息。也可以有發(fā)送給代理服務(wù)器PS的消息,例如提示進(jìn)入與另一用戶 代理的通信的消息。
在發(fā)送(13)其中插入了類型指示符的消息之后,本發(fā)明的方法根據(jù)查 詢消息M ("atypes")包含的時(shí)間指示符"atypes",處理(11)查詢消息M ("atypes,,)。該處理在單元12中進(jìn)行,單元12可以為用于注冊消息的定位 服務(wù)器或者用于提示進(jìn)入與另 一用戶代理的通信的消息的代理服務(wù)器。
在代理服務(wù)器12中進(jìn)行的處理11路由傳送該消息,代理服務(wù)器12不必 訪問傳輸層中的信息。
具體地,類型指示符"atypes"顯然包含編碼數(shù)字?jǐn)?shù)據(jù),其表示發(fā)送該消 息的用戶代理可用的網(wǎng)絡(luò)接口以及因特網(wǎng)協(xié)議的性質(zhì),從而將該信息提供給 定位服務(wù)器與代理服務(wù)器12:
-以使定位服務(wù)器12能夠行進(jìn)到注冊11與用戶代理的標(biāo)識符相關(guān)的類型 指示符,從而維護(hù)提供關(guān)于可能試圖通信的各種用戶代理的類型的信息的數(shù) 據(jù)庫;
-以使代理服務(wù)器12能夠在無法訪問用來發(fā)送M ( "atypes")消息的傳輸 層中的任何信息的情況下進(jìn)行路由傳送11。
以下參照圖3與圖4描述圖2所示的本發(fā)明的方法的步驟10的實(shí)現(xiàn)的例子。
在一種特定類型的實(shí)施例中,將類型指示符"atypes"插入到SIP查詢(具 體有"REGISTER"和"INVITE"查詢)的"CONTACT"(聯(lián)系)字段中。 為了說明該指示符的定義,以下指示了 RFC 3162定義的"CONTACT" 字 段的描述ABNF。
在以下描述ABNF中,現(xiàn)有技術(shù)中公知的、并且在RFC 3162中描述的 元素為普通字體,而附加的描述性元素為粗體。 以下表Tl列出了全部新描述ABNF。
表Tl
Contact = ( Contact / "m") HCOLON
(STAR / (contact-param *(COMMA contact-param))) C譜M4鄉(xiāng)戸
contact-param = (name-addr / addr-spec) *(SEMI contact-params)
name-addr = [display-name] LAQUOT addr-spec RAQUOT
addr-spec = SIP-腦/ SIPS-而/ absolute而
display-name = *(token LWS)/ quoted-string
contact-params = c-p-q / c-p-expires / contact-extension
c-p-q = q EQUAL qvalue
c隱p-expires = expires EQUAL delta-seconds
contact-extension = generic-param
delta-seconds = 1 *DIGIT
用戶代理可能將呼入的或者呼出的呼叫限制在 -其IPv4^妄口上; 國其IPv6接口上;
-或者兩種類型的接口上,如果其配備有雙棧(DS)接口 (即與兩種協(xié)議 版本IPv4與IPv6都兼容的接口 )的話。
該操作通過類型指示符"atypes"來通知。
可以配置用戶代理,從而通過將類型指示符"atypes"設(shè)置為適當(dāng)?shù)闹担?不宣布有效的可用性。請注意只有當(dāng)所配置的地址之一屬于全局范圍(IPv6 協(xié)議區(qū)分"鏈路局部,,與"全局,,類型地址)時(shí),才將IPv6接口看做為可用 的。局部范圍的地址無法被路由傳送到局域網(wǎng)之外,這與全部范圍的地址不 同,其可以被路由傳送到局域網(wǎng)之外(即連接到局域網(wǎng)之外)。在注冊期間, SIP用戶代理發(fā)送具有在表Tl中列出的包含附加頭部"atypes"的擴(kuò)展 "CONTACT"字段的"REGISTER"消息,"atypes"可以取以下值
-4,如果用戶Y義支持IPv4;
-6,如果用戶僅支持IPv6;
-0,如果用戶具有雙棧功能。
在用戶代理發(fā)送給注冊服務(wù)器R的"REGISTER"消息中,用戶代理可 以通過將"atypes"類型指示符設(shè)置為4(例如,即使用戶代理屬于雙棧(DS ) 類型),向代理服務(wù)器PS指示其僅支持IPv4協(xié)議,或者通過將"atypes"類 型指示符設(shè)置為6,向代理服務(wù)器PS指示其僅支持IPv6協(xié)議,或者通過將 "atypes" 類型指示符設(shè)置為0,向代理服務(wù)器PS指示其支持雙棧協(xié)議。
在圖3中,R與R6分別指示與用戶代理A與B相關(guān)的定位服務(wù)器。
IPv4用戶^理的例子
假定用戶代理A為IPv4用戶代理,具有地址192.165.25.2。如圖3所示, 用戶代理A向定位服務(wù)器R發(fā)送表T2中列出的"(1 ) REGISTER"消息
表T2
sip:r.testevi SIP/2.0
SIP/2.0/UDP 192.165.25.2:5062;branch-z9hG4bK00e31d6ed 70 0
A <sip:A@testevi>
A <sip: A砂est.evi >;tag=ed3833bd7363e68 a8a83b610ae5d242289dfc 1 c78b7fl d8@test.evi
1830746364 REGISTER
A <sip:A@192.165.25.2:5062>;expires=900, atypes=4
注冊服務(wù)器R以表T3中列出的"(2) 200OK,,消息回應(yīng)用戶代理A:
表T3
SIP/2.0 200 OK
a8a83b610ae5d242289dfc 1 c78b7fl d8@evi .biz
1830746365 REGISTER A<sip:A@test.evi>;tag=ed3833bd7363e68 A<sip:A@test.evi>;tag=3ab7fe89d998709 SIP/2.0/UDP 192.165.25.2:5062;branch=z9hG4bK00e31d6ed 0
A <sip:A@192.165.25.2:5062>;expires,0, atypes=4
REGISTER Via:
Max-Forwards:
Content-Length:
To:
From:
Call-ID:
CS叫
Contact:
Call-ID:
CS叫
From:
To:
Via:
Content-Length: Contact:
IPv6用戶代理的例子
假定用戶代理B為IPv6用戶代理,具有地址2001:688:lffb:ffl80::2。如圖 3所示,用戶代理B向定位服務(wù)器R6發(fā)送表T4中列出的"(1) REGISTER" 消息
表T4
REGISTER Via:
Max-Forwards:
Content-Length:
To:
From:
Call-ID:
CSeq:
sip:r6.testevi SIP/2.0 SIP/2.0/UDP :5062;branch=z9hG4bK00e31 d6ed
70
0
B <sip:B@test.evi>
B <sip:B@test.evi >;tag=ed3833bd7363e68 a8a83b610ae5d242289dfc 1 c78b7fl d8@test.evi 1830746364 REGISTER
Contact: B <sip:B@[2001:688:lffb:ff80::2]:5062>;expires=900, atypes=6
注冊月艮務(wù)器R以表T5中列出的"(2 ) 200 OK"消息回應(yīng)以確iU主冊:
表T5
SIP/2.0 200 OK
Call-ID: a8a83b610ae5d242289dfc lc78b7fl d8@evi.biz
CS叫 1830746365 REGISTER
From: B <sip:B@test.evi >;tag=ed3833bd7363e68
To: B <sip:B@test.evi >;tag=3ab7fe89d998709
Via: SIP/2.0/UDP[2001:688:lffb:ff80::2]:5062;branch=z9hG4bK00e31d6ed Content-Length: 0
Contact: B <sip:B@[2001:688:lffb:ff80::2]:5062>;expires=900, atypes=6
"CONTACT"字段中的IP地址可以為與類型指示符字段"atypes"中指 示的類型不同的類型的唯一地址。將類型指示符"atypes"設(shè)置為6的用戶代 理可以在"CONTACT"字段中使用IPv4地址,或者將類型指示符"atypes" 設(shè)置為0的用戶代理可以^義宣布一個(gè)地址,而非兩個(gè)地址,如下所述。在 "CONTACT"字段中包含的地址由SIP代理服務(wù)器使用來路由傳送信令消 息。媒體消息通過IPv6接口傳送給用戶代理,因?yàn)橛脩舸硪呀?jīng)向其代理服 務(wù)器PS宣布為IPv6用戶代理(根據(jù)插入到其發(fā)送給代理服務(wù)器的消息中的 類型指示符,或者根據(jù)定位服務(wù)器為該用戶代理存儲的類型指示符)。
在"CONTACT"字段中只有一個(gè)地址的DS用戶代理的例子 參照圖4,假定用戶代理為雙棧(DS )用戶代理,具有地址 2001:688:lffb:ff80::2/192.168.25.5。如圖4所示:
-在注冊階段期間,DS用戶代理向其定位服務(wù)器R發(fā)送表T6中列出的 "(1 ) REGISTER"消息
表T6
REGISTER sip:r.test.evi SIP/2.0
Via: SIP/2.0/UDP 192.168.25.5:5062;branch=z9hG4bK00e31d6ed
Max-Forwards: 70
Content-Length: 0
To: DS <sip:DS@test.evi>
From: DS <sip:DS@test.evi >;tag=ed3833bd7363e68
Call-ID: a8a83b610ae5d242289dfclc78b7fld8@test.evi
CSeq: 1830746364 REGISTER
Contact: DS <sip:DS@192.168.25.5:5062>;expires=900, atypes=0 定位服務(wù)器R6以表T7中列出的"(2 ) 200 OK,,消息回應(yīng),以確認(rèn)注冊:
表T7
SIP/2.0 200 OK
Call-ID: a8a83b610ae5d242289dfclc78b7fld8@evi.biz
CS叫 1830746365 REGISTER
From: DS <sip:DS@test.evi >;tag=ed3833bd7363e68
To: DS <sip:DS@test.evi >;tag=3ab7fe89d998709
Via: SIP/2.0AJDP 192.168.25.5:5062;branch=z9hG4bK00e31d6ed
Content-Length: 0
Contact: DS <sip:DS@192.168.25.5:5062>;expires=900, atypes=0
指示符"atypes"的處理
當(dāng)收到"REGISTER"消息時(shí),定位服務(wù)器R還存儲記錄的地址(AOR)、 注冊過期時(shí)間、以及類型指示符"atypes"。該數(shù)據(jù)(也可能有其他數(shù)據(jù))被 存儲在定位服務(wù)器管理的注冊數(shù)據(jù)庫中。其可能由來自同一用戶代理的其他 "REGISTER"消息更新。該處理替代了最初在RFC 3261中指定的處理。 使用來自類型指示符"atypes"的信息,定位服務(wù)器將其用戶代理分為三
類
-純IPv4; -純IPv6; -雙棧(DS)。
代理服務(wù)器通過簡單地詢問定位服務(wù)器管理的注冊數(shù)據(jù)庫,就可訪問該 分類。代理服務(wù)器還可以通過簡單地讀取用戶代理插入到給代理服務(wù)器的消 息中的類型指示符,來進(jìn)行該分類,如下所述。
用戶代理還可以在其發(fā)送"INVITE"消息時(shí)設(shè)置類型指示符"atypes"。
在以下情況(情況-1)下,代理服務(wù)器PS必須在不修改SIP消息的內(nèi)容 的前提下發(fā)送SIP消息
-IPv4至IPv4;
-IPv6至IPv6;
-IPv4至DS以及DS至IPv4; -IPv6至DS以及DS至IPv6; -DS至DS
在上述情況-1的情況下,稱用戶代理為兼容的,這是因?yàn)槠鋵儆谙嗤?br>
型(或者更一般地,對于DS用戶代理來說,因?yàn)槠渲辽儆幸粋€(gè)類型是相同 的),并且因此能夠使用相同的IP版本進(jìn)行對話。
只有在以下情況(情況-2)下,才^f務(wù)改SIP消息,該SIP消息在修改之
后使相同類型的被叫與主叫用戶代理的IP地址可用 -IPv6至IPv4;
-IPv4至IPv6。
在上述情況-2的情況下,稱用戶代理為不兼容的,這是因?yàn)槠洳粚儆谙?同類型,并且因此不能通信。
對于呼叫路由傳送以及確定使用ALG應(yīng)用或者修改SIP消息以獲得不同 類型的兩個(gè)用戶代理之間的成功的會話,代理服務(wù)器(PS)可以
-減者檢查定在應(yīng),器^#^;^,炎凝岸,
在這種情況下,代理服務(wù)器PS詢問定位服務(wù)器R,以詢問主叫和^皮叫用 戶代理類型。然后在為情況-2的一部分的情形下,代理服務(wù)器PS可以確定修 改SIP消息的SDP內(nèi)容,以使與被叫方支持的地址類型一致。圖5中所示的 例子通過IPv4用戶代理A與IPv6用戶代理B之間的呼叫,顯示了這種操作 模式?;ミBIPv4與IPv6網(wǎng)絡(luò)的功能由節(jié)點(diǎn)IN表示,節(jié)點(diǎn)IN作為中繼站, 并且具體地執(zhí)行IPv4數(shù)據(jù)報(bào)與IPv6數(shù)據(jù)報(bào)之間的協(xié)議轉(zhuǎn)換。
々i設(shè)用戶代理B為IPv6用戶代理。在服務(wù)開始時(shí),用戶代理B通過將 類型指示符"atypes,,設(shè)置為6,在定位服務(wù)器R上注冊,并且用戶代理A通 過將類型指示符"atypes"設(shè)置為4,在定位服務(wù)器R上注冊。為了簡單起見,
在圖5中未顯示該初始注冊階^a。
在IPv6環(huán)境下中,通過IPv6地址知道用戶代理B,該IPv6地址祐_ IPv6-IPv4互連機(jī)制(例如NAT-PT機(jī)制)轉(zhuǎn)換為IPv4地址。然后,識別用戶 代理B為IPv6用戶代理,識別用戶代理A為IPv4用戶代理。如果用戶代理 A試圖設(shè)置與用戶代理B的會話,則交換以下SIP消息
-RE ( 1 ):用戶代理A向代理服務(wù)器PS發(fā)送"INVITE"消息;
-RE (2):代理服務(wù)器PS詢問定位服務(wù)器R,以得到用戶代理B的定位 地址以及在注冊階段指示的用戶代理A與B的類型指示符"atypes";
-RE ( 3 ):定位服務(wù)器R回送用戶代理B的地址、用戶代理B的類型指 示符"atypes"、以及用戶代理A的類型指示符"atypes";
-RE( 4 ):代理服務(wù)器PS比較用戶代理A與B的兩個(gè)類型指示符"atypes"。
根據(jù)定位服務(wù)器R上可用的類型分類,代理服務(wù)器PS驗(yàn)證A為IPv4用戶代 理,B為IPv6用戶代理。然后,代理服務(wù)器PS啟動適配機(jī)制,以修改用戶 代理A的初始SDP提議,從而其包含IPv6地址。然后,代理服務(wù)器PS將修 改的"INVITE"消息發(fā)送給定位服務(wù)器R所指示的用戶代理B的地址。
如果沒有該程序,則代理服務(wù)器PS將無法將呼叫路由傳送給用戶代理B, 也無法啟動將消息正確地路由傳送給用戶代理B所必須的適配功能。代理服 務(wù)器PS會把查詢回送給用戶代理B而不修改它,并且在這種情況下,將不 會發(fā)生用戶代理A與B之間的SIP會話。(參看圖lb )
一戈4V會查;^,炎^岸、以及在"/A^/7E"諒,惑哞傳這的類型措^符
在這種情況下,代理服務(wù)器PS詢問定位服務(wù)器R,以得到被叫用戶代理 B的類型。主叫用戶代理A的類型從其發(fā)送的"INVITE"消息判斷。然后, 代理服務(wù)器PS確定修改SIP消息的內(nèi)容,以使之與被叫用戶代理B支持的 地址類型一致;該情況為情況-2情況的一部分。對于該選項(xiàng),用戶代理可以 限制對于每個(gè)會話使用的地址的類型。參照圖5描述的例子通過IPv4用戶代 理與IPv6用戶代理之間的呼叫顯示了這種其他操作模式。
假設(shè)用戶代理B為IPv6用戶代理。在服務(wù)開始時(shí),用戶代理B通過將 類型指示符"atypes"設(shè)置為6,在定位服務(wù)器R上注冊,并且用戶代理A通 過將類型指示符"atypes"設(shè)置為4,在定位服務(wù)器R上注冊。此處,識別用 戶代理B為IPv6用戶代理,識別用戶代理A為IPv4用戶代理。如果用戶代 理A試圖設(shè)置與用戶代理B的會話,則交換以下SIP消息
-I ( 1):用戶代理A向代理服務(wù)器PS發(fā)送"INVITE"消息;
-1(2):代理服務(wù)器PS詢問定位服務(wù)器R,以得到用戶代理B的定位地 址以及在注冊階段指示的用戶代理B的類型指示符"atypes";
-1(3):定位服務(wù)器R回送用戶代理B的地址、以及用戶代理B的類型 指示符"atypes";
-1(4):代理服務(wù)器PS從"I ( 1 ) INVITE"查詢中提取用戶代理A的類 型指示符"atypes",并且將其與用戶代理B的類型指示符"atypes"進(jìn)行比 較。根據(jù)定位服務(wù)器R上可用的類型分類,代理服務(wù)器PS驗(yàn)證用戶代理A 為IPv4用戶代理,用戶代理B為IPv6用戶代理。然后,代理服務(wù)器PS啟動 適配機(jī)制,以修改用戶代理A的初始SDP提議,從而其包含IPv6地址。然
后,代理服務(wù)器PS將修改的"INVITE"消息發(fā)送給定位服務(wù)器R所指示的 用戶代理B的地址。
為了使用圖5中所示的協(xié)議,有利的是,代理服務(wù)器PS包含模塊Mp 用來比較與主叫用戶代理和被叫用戶代理相關(guān)的類型指示符。如果模塊M! 確定主叫用戶代理和被叫用戶代理屬于不同類型,則代理服務(wù)器PS激活模塊 M2,以調(diào)用資源來修改主叫用戶代理的IP地址。代理服務(wù)器PS外部的修改 資源在圖5中未顯示??梢杂?jì)算機(jī)程序形式實(shí)現(xiàn)模塊Mt與M2。為了簡單起 見,在圖5中以相同的數(shù)字字母標(biāo)記指示它們。
本發(fā)明還包括計(jì)算機(jī)程序Mo,由計(jì)算機(jī)或者專用設(shè)備(例如IP終端的 IPv4、 IPv6、或者雙棧用戶代理)執(zhí)行。當(dāng)執(zhí)行計(jì)算機(jī)程序Mo時(shí),其代碼指 令在用戶代理UA發(fā)送的查詢消息中插入表示該用戶代理US中可用的網(wǎng)絡(luò) 接口所支持的一或多個(gè)IP地址的類型的類型指示符"atypes",如上所述以及 圖2、 3、 4所示。
如上所述,本發(fā)明還包括計(jì)算機(jī)程序Mi、 M2,其包括一系列指令,由計(jì) 算機(jī)或者專用設(shè)備(例如代理服務(wù)器PS)執(zhí)行。當(dāng)執(zhí)行程序Mp M2時(shí),這 些指令處理用戶代理向代理服務(wù)器發(fā)送的、并且包含表示該用戶代理中可用 的網(wǎng)絡(luò)接口所支持的一或多個(gè)IP地址的類型的類型指示符"atypes"的查詢 消息。在不訪問在傳輸層中包含的信息的情況下,這種處理將查詢消息路由 傳送到其目的地,如上所述以及圖2至5所示。
如上所述,本發(fā)明還包括計(jì)算機(jī)程序M3,其包括代碼指令,由計(jì)算機(jī)或 者專用設(shè)備(例如定位服務(wù)器R)執(zhí)行。當(dāng)執(zhí)行程序M3時(shí),這些指令從用戶 代理發(fā)送的注冊消息中提取類型指示符,并且在注冊數(shù)據(jù)庫中與用戶代理的 標(biāo)識符相關(guān)地存儲該類型指示符。這些指令還將用戶代理分類為三個(gè)IP類別 之一(IPv4、 IPv6、雙棧),如上所述以及圖2至5所示。
權(quán)利要求
1. 一種在異構(gòu)節(jié)點(diǎn)之間傳送數(shù)據(jù)的方法,特征在于該方法至少包含以下一個(gè)步驟在設(shè)置所述節(jié)點(diǎn)之間的通信會話之前,在一個(gè)所述節(jié)點(diǎn)中,將類型指示符插入到由用戶代理發(fā)送的至少一個(gè)消息中,所述類型指示符表示與所述用戶代理關(guān)聯(lián)的至少一個(gè)地址的類型。
2. 如權(quán)利要求l所述的方法,特征在于所述類型指示符被插入到在SIP 查詢消息中包含的"CONTACT"字段中。
3. 如權(quán)利要求1或2所述的方法,特征在于由所述用戶代理提出執(zhí)行所 述插入步驟。
4. 如權(quán)利要求1至3中任一項(xiàng)所述的方法,特征在于所述類型指示符為 編碼數(shù)字值,表示IPv4協(xié)議、IPv6協(xié)議、或者包含IPv4協(xié)議與IPv6協(xié)議的 雙棧協(xié)議。
5. 如權(quán)利要求1至4中任一項(xiàng)所述的方法,特征在于該方法進(jìn)一步包含 以下步驟參照相關(guān)用戶代理的標(biāo)識符,存儲所述類型指示符。
6. 如權(quán)利要求4或5所述的方法,特征在于該方法進(jìn)一步包含以下步驟 將發(fā)送類型指示符的用戶代理分類為以下三個(gè)IP類型類別之一純IPv4、純 IPv6、或者雙棧。
7. 如權(quán)利要求1至6中任一項(xiàng)所述的方法,特征在于該方法進(jìn)一步包含 以下步驟轉(zhuǎn)換在邀請進(jìn)入與用戶代理的通信的消息中包含的至少一個(gè)地址, 該步驟在關(guān)聯(lián)于發(fā)送了所述邀請消息的用戶代理的類型指示符與關(guān)聯(lián)于所述 邀請消息的目的地用戶代理的類型指示符之間不兼容的情況下執(zhí)行。
8. —種信號,其傳送查詢消息,該查詢消息包含表示分配給發(fā)送該消息 的用戶代理的至少 一個(gè)IP地址類型的類型指示符。
9. 一種在異構(gòu)節(jié)點(diǎn)之間傳送數(shù)據(jù)的系統(tǒng),特征在于該系統(tǒng)包含用于以下 的部件在設(shè)置所述節(jié)點(diǎn)之間的通信會話之前,在一個(gè)所述節(jié)點(diǎn)中,將類型 指示符插入到由用戶代理發(fā)送的至少 一個(gè)消息中,所述類型指示符表示與所 述用戶代理關(guān)聯(lián)的至少 一個(gè)地址的類型。
10. 如權(quán)利要求9所述的系統(tǒng),特征在于該系統(tǒng)進(jìn)一步包含用于以下的 部件根據(jù)發(fā)送查詢消息的用戶代理的類型指示符、以及用來存儲分類的數(shù) 據(jù)庫,分類與歸類所述用戶代理。
11. 如權(quán)利要求IO所述的系統(tǒng),特征在于該系統(tǒng)進(jìn)一步包含用于以下的部件比較至少一個(gè)主叫用戶代理與至少一個(gè)^C叫用戶代理所特有的類型指 示符。
12. —種計(jì)算機(jī)程序,包含一系列程序代碼指令,當(dāng)所述程序在計(jì)算機(jī) 中執(zhí)行時(shí),用來執(zhí)行如權(quán)利要求1至4中任一項(xiàng)所述的方法的步驟。
13. —種計(jì)算機(jī)程序,包含一系列程序代碼指令,當(dāng)所述程序在計(jì)算機(jī) 中執(zhí)行時(shí),用來執(zhí)行如權(quán)利要求5或6所述的方法的步驟。
14. 一種計(jì)算機(jī)程序,包含一系列程序代碼指令,當(dāng)所述程序在計(jì)算機(jī)中執(zhí)行時(shí),用來執(zhí)行如權(quán)利要求6或7所述的方法的步驟。
全文摘要
本發(fā)明涉及一種在至少兩個(gè)異構(gòu)節(jié)點(diǎn)之間傳送數(shù)據(jù)的方法。該方法至少包含以下一個(gè)步驟在建立節(jié)點(diǎn)之間的通信會話之前,將指示分配給一個(gè)所述節(jié)點(diǎn)中包含的用戶代理(A)的至少一個(gè)地址的指示符插入到由所述用戶代理(A)發(fā)送的至少一個(gè)消息(RE(1),I(1))中。本發(fā)明使之能夠迅速識別要進(jìn)行相互通信的兩個(gè)用戶代理(A,B)的類型之間的不兼容,并且考慮到補(bǔ)償任何此類不兼容性。本發(fā)明可以用于IP網(wǎng)絡(luò)中使用類型IPv4、IPv6或者雙棧(DS)的用戶代理的互通信。
文檔編號H04L29/06GK101395891SQ200780007096
公開日2009年3月25日 申請日期2007年2月15日 優(yōu)先權(quán)日2006年2月28日
發(fā)明者穆罕麥德·鮑卡代爾, 約恩·諾伊斯特 申請人:法國電信公司