專(zhuān)利名稱:一種多終端之間流控傳輸協(xié)議偶聯(lián)的移動(dòng)控制方法
技術(shù)領(lǐng)域:
本發(fā)明針對(duì)基于流控傳輸協(xié)議(SCTP,Stream Control Transmission Protocol) 技術(shù)提出偶聯(lián)遷移控制方法,完成實(shí)時(shí)性多媒體通信在多終端之間的無(wú)縫遷移,支持應(yīng)用 和會(huì)話在物理分立終端之間的平滑移動(dòng),技術(shù)領(lǐng)域?yàn)殡娮优c通信工程。
背景技術(shù):
互聯(lián)網(wǎng)的移動(dòng)性,或移動(dòng)互聯(lián)網(wǎng),是各類(lèi)新型信息通信應(yīng)用的基礎(chǔ)。移動(dòng)型應(yīng)用與 固定型應(yīng)用的最大差別,主要表現(xiàn)在終端移動(dòng)、用戶移動(dòng)、網(wǎng)絡(luò)移動(dòng)和應(yīng)用移動(dòng)。(1)終端移動(dòng),是指一個(gè)用戶使用的一個(gè)終端在不同接入點(diǎn)之間遷移,主要通過(guò)現(xiàn) 有物理層的越區(qū)切換和網(wǎng)絡(luò)層的移動(dòng)互聯(lián)網(wǎng)協(xié)議(MIP,Mobile Internet Protocol),以實(shí) 現(xiàn)物理位置遷移后的終端到移動(dòng)基站的不間斷接入,以及終端網(wǎng)絡(luò)地址改變過(guò)程中和之后 的通信持續(xù)性。(2)用戶移動(dòng),是指一個(gè)用戶在多個(gè)終端之間遷移,可通過(guò)互聯(lián)網(wǎng)的會(huì)話啟動(dòng)協(xié)議 (SIP, Session Initiation Protocol),以支持會(huì)話在不同終端之間的轉(zhuǎn)移,實(shí)現(xiàn)類(lèi)似電話 業(yè)務(wù)的呼叫轉(zhuǎn)移、呼叫前轉(zhuǎn)和多機(jī)同振功能。(3)網(wǎng)絡(luò)移動(dòng),是指同一個(gè)子網(wǎng)絡(luò)內(nèi)的多個(gè)終端在不同接入點(diǎn)之間的集體同步遷 移,主要通過(guò)互聯(lián)網(wǎng)的網(wǎng)絡(luò)移動(dòng)性(NEM0,Network Mobility)和MIP技術(shù),實(shí)現(xiàn)接入路由器 或網(wǎng)關(guān)在不同宿主網(wǎng)之間的不間斷切換。(4)應(yīng)用移動(dòng),是指應(yīng)用的信息源或信息宿,在一個(gè)用戶或多個(gè)用戶的要求下, 在多個(gè)終端之間遷移,理論上可通過(guò)SIP和其他基于開(kāi)放業(yè)務(wù)架構(gòu)(0SA,Open Service Architecture)技術(shù)實(shí)現(xiàn)不間斷切換。以上4類(lèi)移動(dòng),在當(dāng)前的技術(shù)實(shí)現(xiàn)方法中,涉及物理層越區(qū)切換、網(wǎng)絡(luò)層MIP 和ΝΕΜ0、應(yīng)用層SIP技術(shù)。近年來(lái),人們又提出了主機(jī)標(biāo)識(shí)協(xié)議(HIP,Host Identity Protocol),可用于解決終端移動(dòng)的性能下降問(wèn)題。HIP是網(wǎng)絡(luò)層與傳輸層之間的墊層,主要 適用于單終端的移動(dòng)性??傊?,至今為止,互聯(lián)網(wǎng)技術(shù)缺少一個(gè)針對(duì)傳輸層的移動(dòng)性控制協(xié) 議,用以支撐應(yīng)用在不同終端之間遷移。位于TCP/IP協(xié)議簇傳輸層的SCTP,在2個(gè)通信端點(diǎn)之間建立偶聯(lián)(Association), 為基于互聯(lián)網(wǎng)技術(shù)的應(yīng)用提供媒體流和控制流的承載服務(wù)。起初,SCTP的應(yīng)用目標(biāo)是 通過(guò)互聯(lián)網(wǎng)承載傳統(tǒng)電信網(wǎng)信令,并針對(duì)信令的多路復(fù)用特點(diǎn),提出了多流(multiple streaming)控制方法,針對(duì)高可靠性要求,規(guī)范了多宿主(multiple homing)及故障切換 (failover)控制流程。經(jīng)過(guò)多年的修訂和補(bǔ)充,SCTP的應(yīng)用范圍被逐漸拓展,目前已具備 多媒體實(shí)時(shí)傳送、異構(gòu)網(wǎng)絡(luò)無(wú)縫切換和多服務(wù)器并發(fā)服務(wù)等功能。現(xiàn)有SCTP規(guī)范中,偶聯(lián) 的主要作用是用來(lái)維持2個(gè)通信端點(diǎn)之間的傳輸控制。至今為止,沒(méi)有公開(kāi)和明確的報(bào)告, 將SCTP應(yīng)用于多終端之間的會(huì)話遷移和應(yīng)用遷移。SCTP偶聯(lián)的標(biāo)識(shí)參數(shù),包括2個(gè)通信端點(diǎn)的網(wǎng)絡(luò)層地址和傳輸層端口號(hào)。IETF (因 特網(wǎng)工程任務(wù)組)RFC4960 (第4960號(hào)征求意見(jiàn)文件)規(guī)定一個(gè)SCTP偶聯(lián)的兩端,都可以具有多宿主配置,即可有多個(gè)網(wǎng)絡(luò)層地址,但任何一端只能有一個(gè)傳輸層端口值。一個(gè) 端點(diǎn)內(nèi),不同的SCTP偶聯(lián)必須分配不同的端口值;一對(duì)端點(diǎn)只能同時(shí)建立一條偶聯(lián)。SCTP 的動(dòng)態(tài)地址重構(gòu)(DAR,Dynamic AddressReconfiguration)功能(見(jiàn) IETF RFC5061),允 許端點(diǎn)在應(yīng)用和會(huì)話不中斷的情況下,動(dòng)態(tài)配置網(wǎng)絡(luò)層地址,并通過(guò)ASC0NF(地址重配置, AddressCONFiguration)控制消息塊通告給對(duì)端。DAR在傳輸層提供了一種端點(diǎn)內(nèi)的自主 移動(dòng)性管理能力,可與物理層、網(wǎng)絡(luò)層、應(yīng)用層的移動(dòng)性技術(shù)相結(jié)合,為一個(gè)終端在多個(gè)接 口之間的遷移提供支持。隨著智能手機(jī)終端、互聯(lián)網(wǎng)電視、平板電腦和移動(dòng)互聯(lián)網(wǎng)的發(fā)展和普及,用戶可同 時(shí)使用或交替使用的通信終端數(shù)量普遍超過(guò)1臺(tái),終端功能和性能呈現(xiàn)多樣化和協(xié)同化發(fā) 展要求。多終端聚集及重配置成為終端通信技術(shù)的關(guān)鍵問(wèn)題之一。本發(fā)明以SCTP為基礎(chǔ), 面向?qū)崟r(shí)性多媒體會(huì)話和應(yīng)用,提出通信偶聯(lián)和控制偶聯(lián)相關(guān)聯(lián)的方法和偶聯(lián)遷移控制流 程,用于支持多終端之間的會(huì)話和應(yīng)用移動(dòng)性。本發(fā)明提供一種IP網(wǎng)絡(luò)在傳輸層的移動(dòng)控制方法,可與應(yīng)用層移動(dòng)、網(wǎng)絡(luò)層移 動(dòng)、物理通道層移動(dòng)技術(shù)一起構(gòu)造一個(gè)完整的移動(dòng)互聯(lián)網(wǎng)應(yīng)用環(huán)境。應(yīng)用層的移動(dòng)性支持方法主要有SIP技術(shù)。SIP網(wǎng)絡(luò)包含用戶代理和網(wǎng)絡(luò)服務(wù)器。 網(wǎng)絡(luò)服務(wù)器主要為用戶代理提供路由、認(rèn)證、鑒權(quán)、注冊(cè)等服務(wù)。SIP終端擁有唯一的SIP URI (統(tǒng)一資源標(biāo)識(shí),Universal Resource Identifier)。當(dāng)終端被分配了新的IP地址時(shí), 通過(guò)注冊(cè)流程建立起新的IP地址和SIP URL的綁定,因此無(wú)論終端如何移動(dòng),與其對(duì)應(yīng)的 位置信息都可得到更最新,已建立的會(huì)話能得到維持。SIP對(duì)移動(dòng)性的支持,不依賴任何低 層協(xié)議技術(shù),具有很大適用面。但是,其于SIP的切換會(huì)引起較大的切換延遲,對(duì)實(shí)時(shí)通信 的適用度較低。網(wǎng)絡(luò)層移動(dòng)性支持方法主要有MIP和HIP。MIP為終端設(shè)計(jì)了一個(gè)家鄉(xiāng)網(wǎng)絡(luò),給移 動(dòng)終端分配一個(gè)永久的家鄉(xiāng)地址。另外,MIP引入了家鄉(xiāng)代理和外地代理。當(dāng)MIP移動(dòng)終 端離開(kāi)家鄉(xiāng)網(wǎng)絡(luò)進(jìn)入外地網(wǎng)絡(luò)時(shí),它從外地代理獲得一個(gè)臨時(shí)性的轉(zhuǎn)交地址,并向家鄉(xiāng)代 理發(fā)送注冊(cè)請(qǐng)求消息以通告它的新地址。所有從通信對(duì)端發(fā)往移動(dòng)終端的分組,在到達(dá)家 鄉(xiāng)網(wǎng)絡(luò)時(shí),由家鄉(xiāng)代理截獲并利用隧道轉(zhuǎn)發(fā)給管理移動(dòng)終端的外地代理,然后由外地代理 將該報(bào)文再轉(zhuǎn)發(fā)給移動(dòng)終端。MIP存在三角路由問(wèn)題,同時(shí)工作效率不高、切換延時(shí)較大,不 利于實(shí)時(shí)應(yīng)用的移動(dòng)性管理。HIP通過(guò)在網(wǎng)絡(luò)層和傳輸層之間增加新的協(xié)議層以便分離IP地址的身份標(biāo)識(shí)功 能,并提供對(duì)移動(dòng)性的支持。HIP引入了一個(gè)新的主機(jī)標(biāo)識(shí)名字域,傳輸層的連接和主機(jī)標(biāo) 識(shí)進(jìn)行綁定,而不再和IP地址進(jìn)行綁定。HIP可以提供安全、無(wú)縫的通信機(jī)制,但是需要對(duì) 現(xiàn)有的互聯(lián)網(wǎng)體系結(jié)構(gòu)進(jìn)行重新改造,使得其難以被大規(guī)模部署。物理層移動(dòng)主要應(yīng)用于越區(qū)切換,是移動(dòng)通信系統(tǒng)的一個(gè)關(guān)鍵技術(shù)。當(dāng)用戶從一 個(gè)小區(qū)基站所覆蓋的區(qū)域移動(dòng)到另外一個(gè)小區(qū)時(shí),新的鏈路必須在用戶和新的小區(qū)之間建 立,而用戶和原有小區(qū)之間的鏈路必須刪除和釋放,以使得用戶的通話能夠繼續(xù)。目前, 全球移動(dòng)通訊系統(tǒng)(GSM,Global System for MobileCommunications)系統(tǒng)和碼分多址 (CDMA, Code Division Multiple Access)系統(tǒng)的切換控制都是采用移動(dòng)臺(tái)輔助切換的方 式,它要求移動(dòng)臺(tái)測(cè)量周?chē)丝诘男盘?hào)強(qiáng)度并報(bào)告給舊端口,然后由網(wǎng)絡(luò)來(lái)判斷是否切換 和切換到哪個(gè)端口。GSM與CDMA的主要區(qū)別在于切換到新端口的方式不通,GSM系統(tǒng)移動(dòng)臺(tái)采用硬切換的方式,移動(dòng)臺(tái)須先斷開(kāi)與舊端口的連接,再建立與新端口的連接;CDMA系 統(tǒng)采用的是軟切換,用戶可以與舊端口保持連接的同時(shí)與新端口建立連接,然后再斷開(kāi)與 舊端口的連接。IETF制定的SCTP規(guī)范,包括協(xié)議數(shù)據(jù)單元結(jié)構(gòu)、功能和編碼;單個(gè)偶聯(lián)的建立、 管理和拆除控制;消息傳送的流量控制和差錯(cuò)控制;動(dòng)態(tài)地址重構(gòu)、首地址指定;故障管理 和路徑管理。目前,多個(gè)操作系統(tǒng)已裝配了遵循SCTP規(guī)范的協(xié)議棧。R. Stewart (斯圖爾特)、P. Lei (雷)和 M. Tuexen (圖森)提出了 SCTP 流重配 置(Stream Reconfiguration)草案(drafi-ietf-tsvwg-sctp-strrst),以企為上層協(xié)議 (ULP,Up Layer Protocol)和應(yīng)用提供流重用功能。流重配置草案設(shè)計(jì)了 SCTP流重置協(xié)議, 它允許偶聯(lián)的任一端向?qū)Χ税l(fā)出指示,要求對(duì)端將流控狀態(tài)參數(shù)重置為指定值。協(xié)議可重 置的流控狀態(tài)參數(shù),包括收、發(fā)端在輸入和輸出兩個(gè)方向上的傳輸序號(hào)(TSN,Transmission Sequence Number)禾口流序號(hào)(SSN, StreamSequence Number)。與本發(fā)明在同一領(lǐng)域內(nèi)的公開(kāi)專(zhuān)利,主要有以下6個(gè),分述如下。(1)公開(kāi)專(zhuān)利“一種恢復(fù)流控制傳輸協(xié)議偶聯(lián)中協(xié)議消息傳輸?shù)姆椒?(CN1512714) ”。該專(zhuān)利公開(kāi)了一種恢復(fù)流控制傳輸協(xié)議偶聯(lián)中協(xié)議消息傳輸?shù)姆椒?,該方法包?以下步驟:A.發(fā)生故障端設(shè)備的上層協(xié)議將自身的備用部分倒換為主用部分,并斷開(kāi)自身 的上層業(yè)務(wù)環(huán)境;B.發(fā)生故障端設(shè)備根據(jù)當(dāng)前主用部分上的偶聯(lián)信息,向?qū)Χ薙CTP端點(diǎn)發(fā) 送偶聯(lián)請(qǐng)求,并與對(duì)端設(shè)備重建兩端設(shè)備對(duì)應(yīng)的兩個(gè)SCTP端點(diǎn)之間的偶聯(lián);C.對(duì)端設(shè)備的 SCTP端點(diǎn)向該對(duì)端上層協(xié)議發(fā)送重啟動(dòng)請(qǐng)求,通過(guò)重啟動(dòng)恢復(fù)發(fā)生故障端設(shè)備和對(duì)端設(shè)備 的上層業(yè)務(wù)環(huán)境。該方法能夠在一端設(shè)備發(fā)生故障的情況下,迅速恢復(fù)連接,重建偶聯(lián)以及 上層傳輸業(yè)務(wù)環(huán)境,避免一端故障后,其對(duì)端不知道而仍然認(rèn)為兩端之間的偶聯(lián)正常,而導(dǎo) 致大量協(xié)議消息的丟失。(2)公開(kāi)專(zhuān)利“基于流控制傳輸協(xié)議的多地址選擇方法(CN1534951) ”該專(zhuān)利實(shí)現(xiàn)了對(duì)于存在多地址的SCTP端點(diǎn)進(jìn)行數(shù)據(jù)重新傳輸時(shí),分別依次選擇 使用所有的對(duì)端及本地地址;這樣,如果使用的首選路徑故障,還可以找出其他可用的路 徑,且在選址過(guò)程中可以保證SCTP端點(diǎn)所存在的各個(gè)地址均可以被選擇到;同時(shí),本發(fā)明 對(duì)于主用的本地地址或?qū)Χ说刂吩?jīng)失效過(guò)后又恢復(fù)的情況,SCTP連接仍然可以使用主用 地址進(jìn)行數(shù)據(jù)傳輸,以滿足用戶的傳輸需求。(3)公開(kāi)專(zhuān)利“對(duì)基于流控制傳送協(xié)議的偶聯(lián)進(jìn)行保護(hù)的方法(CN1533100),,該專(zhuān)利涉及對(duì)IP網(wǎng)中的SCTP偶聯(lián)在處被處理機(jī)之間進(jìn)行保護(hù)的方法。包括以下 步驟本端主備機(jī)同對(duì)端端點(diǎn)建立SCTP偶聯(lián),主機(jī)偶聯(lián)進(jìn)入偶聯(lián)建立狀態(tài),備機(jī)進(jìn)入偶聯(lián) 建立備份狀態(tài);主機(jī)上建立的偶聯(lián)執(zhí)行完整的SCTP協(xié)議流程,備機(jī)進(jìn)入建立備份狀態(tài);當(dāng) 主機(jī)上偶聯(lián)中止或關(guān)閉時(shí),主備機(jī)切換并轉(zhuǎn)換角色正常工作。(4)公開(kāi)專(zhuān)利號(hào)“流控制傳輸協(xié)議多歸屬功能的實(shí)現(xiàn)方法(CN101094240),,該專(zhuān)利提供了一種SCTP多歸屬功能實(shí)現(xiàn)方法,包括以下處理在流控制傳輸協(xié)議 即SCTP偶聯(lián)的各條通信路徑的數(shù)據(jù)結(jié)構(gòu)中維護(hù)預(yù)設(shè)參數(shù);確定SCTP偶聯(lián)的通信路徑的數(shù) 量,并確定各條通信路徑的源地址和目的地址的地址對(duì)應(yīng)關(guān)系,以及確定主用通路;在需要 進(jìn)行主用通路的切換時(shí),輪詢SCTP偶聯(lián)除主用通路之外的其他通信路徑,選擇合適的通信路徑作為新的主用通路。(5)公開(kāi)專(zhuān)利“網(wǎng)絡(luò)主機(jī)間傳輸轉(zhuǎn)移的方法(US 20060164974A1) ”該專(zhuān)利提供了一種基于SCTP的錯(cuò)誤容忍的方法,應(yīng)用場(chǎng)景包含主用主機(jī),備用主 機(jī)和對(duì)端主機(jī)。主用主機(jī)和對(duì)端主機(jī)建立SCTP連接;備用主機(jī)通過(guò)冗余機(jī)制備份主用主機(jī) 的狀態(tài)及其SCTP偶聯(lián)的信息,并通過(guò)心跳機(jī)制檢測(cè)主用主機(jī)是否可用。當(dāng)主用主機(jī)不可用 時(shí),備用主機(jī)向?qū)Χ酥鳈C(jī)發(fā)送SCTP包更新其偶聯(lián)信息,并通過(guò)對(duì)端主機(jī)的響應(yīng)信息用非標(biāo) 準(zhǔn)的方式建立其與對(duì)端主機(jī)的SCTP偶聯(lián)。在此傳輸轉(zhuǎn)移的過(guò)程中,對(duì)端主機(jī)發(fā)送的消息將 會(huì)丟失,這使得該方法不適用于實(shí)時(shí)業(yè)務(wù),其主要應(yīng)該于BGP路由的轉(zhuǎn)移。(6)公開(kāi)專(zhuān)利“提供高可用性SCTP應(yīng)用的方法和系統(tǒng)(US20100218034A1) ”提出一個(gè)高可用性服務(wù)器系統(tǒng)包含一個(gè)主用服務(wù)器和一個(gè)備份服務(wù)器。主用服務(wù) 器和備份服務(wù)器通過(guò)建立的控制信道進(jìn)行通信。當(dāng)主用服務(wù)器和客戶端建立了 SCTP偶聯(lián) 后,其向客戶端發(fā)送主用服務(wù)器和備份服務(wù)器的IP地址,同時(shí)通過(guò)控制信道將SCTP堆棧的 狀態(tài)和上層應(yīng)用映射給備份服務(wù)器。當(dāng)主用服務(wù)器被檢測(cè)到不可用時(shí),通過(guò)備份服務(wù)器繼 續(xù)向客戶端提供服務(wù)。該方法主要針對(duì)服務(wù)器端網(wǎng)絡(luò)的移動(dòng)性。
發(fā)明內(nèi)容
技術(shù)問(wèn)題本發(fā)明的目的是,利用SCTP的控制功能動(dòng)態(tài)管理物理上分離的多個(gè)通 信終端,協(xié)作完成SCTP偶聯(lián)在這些終端之間的不間斷遷移,支持會(huì)話級(jí)及其之上的實(shí)時(shí)多 媒體應(yīng)用在終端間無(wú)縫平滑移動(dòng),克服網(wǎng)絡(luò)層移動(dòng)性和應(yīng)用層移動(dòng)性引發(fā)的實(shí)時(shí)性多媒體 傳送間斷問(wèn)題。技術(shù)方案本發(fā)明公布一種多終端之間流控傳輸協(xié)議偶聯(lián)的移動(dòng)控制方法,第一 終端與遷移目標(biāo)的第二終端建立控制偶聯(lián),控制偶聯(lián)與原有通信偶聯(lián)存在固定的端口匹配 關(guān)系,通過(guò)DAR重配置保持第二終端與對(duì)端交互傳輸?shù)倪B續(xù)性,具體實(shí)現(xiàn)方法為1)第一終端在建立通信偶聯(lián)時(shí),使用與對(duì)端不同的端口值;2)第一終端在建立控制偶聯(lián)時(shí),兩側(cè)端口與通信偶聯(lián)相匹配,即第二終端的服務(wù) 端口值使用通信偶聯(lián)在第一終端側(cè)的端口值,第一終端使用通信偶聯(lián)在對(duì)端側(cè)的端口值;3)第一終端發(fā)起修改對(duì)端和第二終端的偶聯(lián)地址表,并保證匹配關(guān)系,即對(duì)端維 持的目標(biāo)地址包含第二終端的可達(dá)地址,第二終端維持的目標(biāo)地址包含對(duì)端的可達(dá)地址;4)第一終端控制完成第二終端與第一終端的狀態(tài)同步;5)完成上述控制后,控制偶聯(lián)變換為通信偶聯(lián);第二終端替代原有第一終端,再 次向其他終端包括原有第一終端發(fā)起偶聯(lián)遷移控制;6) SCTP偶聯(lián)遷移過(guò)程中,對(duì)端維持的SCTP偶聯(lián)不中斷,對(duì)端ULP和應(yīng)用的消息和 數(shù)據(jù)傳送不中斷。步驟4)所述的狀態(tài)同步控制不僅包括ULP的狀態(tài),還包括與SCTP流相關(guān)的狀態(tài), 其中與SCTP流相關(guān)的狀態(tài)參數(shù)至少包含2個(gè)方向的傳輸序號(hào)(TSN)、流標(biāo)號(hào)(SID)、流序號(hào) (SSN)。所述的SCTP流的同步控制由ULP通過(guò)服務(wù)原語(yǔ)完成或采用SCTP流重配置協(xié)議在 傳輸層內(nèi)完成。有益效果本發(fā)明提出的SCTP偶聯(lián)遷移控制方法,兼容現(xiàn)有符合規(guī)范的SCTP實(shí)現(xiàn)系統(tǒng),可使在線運(yùn)行的實(shí)時(shí)多媒體應(yīng)用以一種無(wú)縫方式從一個(gè)物理終端移動(dòng)到另一個(gè)物理 終端,克服網(wǎng)絡(luò)層移動(dòng)和應(yīng)用層移動(dòng)導(dǎo)致的傳輸不連續(xù)性。此外,本發(fā)明提出的SCTP偶聯(lián) 遷移控制流程,既未限制終端的數(shù)量,也未對(duì)終端的功能提出特殊要求,因此適用于多終端 組之內(nèi)的相互遷移以及跨越本地范圍的異地遷移。
圖1是SCTP偶聯(lián)遷移的典型應(yīng)用場(chǎng)景。圖2是SCTP偶聯(lián)遷移的控制消息流程。圖3是SCTP偶聯(lián)遷移的狀態(tài)轉(zhuǎn)移圖。圖4是3節(jié)點(diǎn)網(wǎng)絡(luò)仿真實(shí)驗(yàn)的拓?fù)浣Y(jié)構(gòu)示意圖。其中,第一終端A由1個(gè)路由控制 的核心節(jié)點(diǎn)(corel)、1個(gè)接口節(jié)點(diǎn)(intfl)、2個(gè)SCTP實(shí)體(sctpl和sctpll)組成;第二 終端B由1個(gè)路由控制的核心節(jié)點(diǎn)(C0re2)、l個(gè)接口節(jié)點(diǎn)(intf2)、l個(gè)SCTP實(shí)體(sctp2) 組成;對(duì)端Z由1個(gè)路由控制的核心節(jié)點(diǎn)(coreO)、1個(gè)接口節(jié)點(diǎn)(cn)、1個(gè)SCTP實(shí)體組成。圖5是主控端點(diǎn)接收到的分組序號(hào)與仿真時(shí)間變化關(guān)系。圖6是偶聯(lián)遷移后新端點(diǎn)接收到的分組序號(hào)與仿真時(shí)間變化關(guān)系。圖7是對(duì)端發(fā)送分組序號(hào)與仿真時(shí)間變化關(guān)系。
具體實(shí)施例方式本發(fā)明以傳輸層SCTP協(xié)議技術(shù)為基礎(chǔ),以SCTP偶聯(lián)的標(biāo)識(shí)屬性為控制對(duì)象,在需 要遷移的終端之間建立SCTP控制偶聯(lián),輔助通信偶聯(lián)在終端間的平滑遷,保證實(shí)時(shí)多媒體 應(yīng)用在遷移過(guò)程中的實(shí)時(shí)性和連續(xù)性。SCTP協(xié)議運(yùn)行于IP之上,為2個(gè)端點(diǎn)提供面向連接的端到端通信控制。為敘述方 便,以下采用形式化方法描述技術(shù)方案。不失一股性,設(shè)一個(gè)端點(diǎn)名為A,另一端點(diǎn)名為Ζ。A與Z建立的SCTP偶聯(lián)記為 S(A,Ζ), Z與A建立的偶聯(lián)為S(Z,Α)。另一名為B的終端與A聚集,經(jīng)動(dòng)態(tài)地址配置加入 到S (A,Z),經(jīng)首選地址重配置,S(A,Z) — S(B,Z),S(Z,A) — S(Z,B),(1)其中符號(hào)一,表示變換。簡(jiǎn)化起見(jiàn),稱A為第一終端,B為第二終端,Z為對(duì)端。從偶聯(lián)的管理和維護(hù)角度出發(fā),標(biāo)識(shí)SCTP偶聯(lián)的屬性參數(shù),主要包括網(wǎng)絡(luò)層地 址、傳送層端口和傳輸層協(xié)議類(lèi)型。由于本發(fā)明所涉及的傳輸層協(xié)議類(lèi)型均為SCTP,因此, 有S (A, Z) = (R{a, ζ}' P {A, ζ}' R{Z,A}' P {Ζ, A})'S (Ζ, A) = (R{Z,a}' P{Ζ,A}' R{A,Z}' P{A,Z})'(2)其中,P{A, z}和P{z, A}為標(biāo)量,是第一終端A和對(duì)端Z分配給該偶聯(lián)的端口值;R{a, z} 和R{z,a}為向量,是A和Z各自根據(jù)ULP要求加入的地址表,可以僅含一條地址,也可含多條 地址。本發(fā)明提供的方法要求第一終端A和對(duì)端Z不同選取相同的端口值,即P{A,Z} ^P{Z,A}.⑶偶聯(lián)S(A,Z)和S(Z,A)稱為通信偶聯(lián)。第二終端B與第一終端A的聚集及重配置由ULP啟動(dòng),在A與B之間建立的偶聯(lián)S(A,B)和S(B,A)S(A,B) = (R{a,b},P{a,b},R{b,a},P{b,a}),S (B, A) = (R{B,A},P{B,A},R{a,b},P(a,B}),⑷其中,P{A,B}和P{B,A}均為向量,分別為第一終端A和第二終端B根據(jù)ULP要求加入 的地址表。本發(fā)明要求P{A,B} = P{Z,A},且,P{B,A} = P(α,ζ}·(5)偶聯(lián)S(A,B)和S (B,Α)稱為控制偶聯(lián)。通過(guò)DAR控制,A向B發(fā)出地址加入消息, 要求B將R{z,a}加入到對(duì)端地址表中,即R{A,B} — R{AZ,B} = R{A,B} U R{Z,A}.(6)其中,符號(hào)U表示合并。同時(shí),通過(guò)DAR控制,A向Z發(fā)出地址加入消息,要求Z將 R(B,a}加入到Z的對(duì)端地址表中,即R{AjZ} — R{AB,Z} = R {α, ζ} u R{B,A}·(7)如此,完成對(duì)通信偶聯(lián)和控制偶聯(lián)的重配置,可表示為S(Z,A) — S(Z,A U B),S(B,A) — S(B,A U Ζ).(8)進(jìn)一步,通過(guò)DAR控制,由A分別向B和Z發(fā)出地址拆除消息,即r{az,b} — r{z,b} = r{α,β} u r{z,a}~r{a,b}'r{ab,z} — r{b,z} = r{a, ζ} u r{b,a}-r{a,z},(9)所以,有S (A U B,Ζ) — S (B,Ζ),S(A U Ζ,B) — S(Z,B).(10)換言之,在第一端點(diǎn)A的控制下,通信偶聯(lián)S (A,Z)和S(Z,Α)被不間斷地變遷到 S (B,Z)和B(Z,B),原先在A與Z之間進(jìn)行的消息傳送,能以一種連續(xù)方式轉(zhuǎn)由B與Z交互 完成。以下給出偶聯(lián)遷移的具體控制消息流程。(1)第一終端與對(duì)端建立通信偶聯(lián)根據(jù)ULP的要求,由第一終端發(fā)起,建立與對(duì)端的SCTP偶聯(lián)。偶聯(lián)建立之前,要求 第一終端選取的本地端口值不同于對(duì)端處于服務(wù)狀態(tài)的端口值。通信偶聯(lián)的建立過(guò)程,遵 循SCTP規(guī)范,通過(guò)4次握手完成。(2)第一終端與對(duì)端進(jìn)行實(shí)時(shí)會(huì)話通信偶聯(lián)的任何一端通過(guò)HEARTBEAT (心跳)探測(cè)路徑延時(shí)后,進(jìn)行實(shí)時(shí)多媒體消 息的傳送,并按規(guī)范要求進(jìn)行流量控制和差錯(cuò)控制。(3)第一終端與第二終端建立控制偶聯(lián)根據(jù)ULP的要求,由第一終端發(fā)起,建立與第二終端的控制偶聯(lián)。偶聯(lián)建立之前, 第二終端處于服務(wù)狀態(tài),且其服務(wù)端口的取值與通信偶聯(lián)在第一終端側(cè)的端口相同;第一 終端以客戶機(jī)角色訪問(wèn)第二終端,且其本地端口必須選取通信偶聯(lián)在對(duì)端側(cè)的服務(wù)端口 值??刂婆悸?lián)的建立過(guò)程,遵循SCTP規(guī)范,通過(guò)4次握手完成。(4)第一終端暫停與對(duì)端的傳輸控制流程第一終端暫停所有與對(duì)端的實(shí)時(shí)會(huì)話。如果狀態(tài)同步失敗,第一終端拆除與第二終端的控制偶聯(lián),恢復(fù)與對(duì)端的實(shí)時(shí)會(huì)話,并回到第(2)所列的通信狀態(tài)。(5)第一終端與第二終端進(jìn)行狀態(tài)同步遵照SCTP規(guī)范要求,控制偶聯(lián)的任何一端通過(guò)HEARTBEAT (心跳)探測(cè)路徑延時(shí) 后,由第一終端控制,要求第二終端進(jìn)行ULP狀態(tài)和SCTP流控狀態(tài)的同步。(6)第二終端地址重配置第一終端遵照SCTP的DAR規(guī)范,通過(guò)控制偶聯(lián)向第二終端傳送ASCONF控制塊。 ASCONF控制塊至少包含2條控制請(qǐng)求,其一要求加入對(duì)端的可達(dá)網(wǎng)絡(luò)地址,其二要求將該 地址設(shè)為首地址。如果DAR控制失敗,第一終端拆除與第二終端的控制偶聯(lián),恢復(fù)與對(duì)端的 實(shí)時(shí)會(huì)話,并回到第(2)所列的通信階段。(7)對(duì)端地址重配置第一終端遵照SCTP的DAR規(guī)范,通過(guò)通信偶聯(lián)向?qū)Χ藗魉虯SCONF控制塊。ASCONF 控制塊至少包含2條控制請(qǐng)求,其一要求加入第二終端的可達(dá)網(wǎng)絡(luò)地址,其二要將該地址 設(shè)為首地址。如果DAR控制失敗,第一終端拆除與第二終端的控制偶聯(lián),恢復(fù)與對(duì)端的實(shí)時(shí) 會(huì)話,并回到第(2)所列的通信階段。(8)第二終端與對(duì)端進(jìn)行實(shí)時(shí)會(huì)話第二終端和對(duì)端的任何一方,通過(guò)HEARTBEAT (心跳)探測(cè)路徑延時(shí)后,繼續(xù)實(shí)時(shí) 多媒體消息的傳送,并按規(guī)范要求進(jìn)行流量控制和差錯(cuò)控制。需要指出的是,上述控制流程第(5)步的同步控制,同步內(nèi)容不僅包括ULP的狀 態(tài),還包括與SCTP流相關(guān)的狀態(tài)。其中與SCTP流相關(guān)的狀態(tài)參數(shù),至少包含2個(gè)方向的傳 輸序號(hào)(TSN)、流標(biāo)號(hào)(SID)、流序號(hào)(SSN)。SCTP流的同步控制,其具體實(shí)現(xiàn),可由ULP通 過(guò)服務(wù)原語(yǔ)完成,也可采用SCTP流重配置協(xié)議在傳輸層內(nèi)完成。以上描述的SCTP偶聯(lián)遷移控制流程,除狀態(tài)同步外,其它步驟的操作均可運(yùn)用現(xiàn) 有支持DAR的SCTP協(xié)議軟件模塊,例如開(kāi)源的Iksctp等。為了直觀顯示多終端SCTP偶聯(lián)遷移的控制過(guò)程及效果,現(xiàn)以3個(gè)SCTP節(jié)點(diǎn)構(gòu)成 的通信系統(tǒng)為例,并以開(kāi)源的NS2網(wǎng)絡(luò)仿真器為基礎(chǔ),驗(yàn)證實(shí)現(xiàn)方法。具體過(guò)程如下所述。(1)仿真器簡(jiǎn)要說(shuō)明開(kāi)源軟件包NS2是采用面向?qū)ο蠓椒ㄔO(shè)計(jì)的通用網(wǎng)絡(luò)仿真器,被廣泛應(yīng)用于通信 網(wǎng)絡(luò)協(xié)議和算法的設(shè)計(jì)及驗(yàn)證。自版本2. 19之后,NS2集成了 SCTP協(xié)議仿真功能,已被用 于DAR的并發(fā)多路徑傳輸(CMT,Concurrent Multiple Transmission)等SCTP新功能和性 能研究。(2)仿真器擴(kuò)展現(xiàn)有賂2(版本2.33之前)軟件中,一個(gè)SCTP仿真節(jié)點(diǎn)由1個(gè)主節(jié)點(diǎn)和1個(gè)以上 的接口節(jié)點(diǎn)復(fù)合成,加入SCTP偶聯(lián)的接口地址只能通過(guò)預(yù)配置完成,且偶聯(lián)的建立依賴上 層應(yīng)用的數(shù)據(jù)發(fā)送要求。此外,現(xiàn)有SCTP仿真模塊沒(méi)有流控狀態(tài)參數(shù)重配置接口。仿真實(shí) 驗(yàn)之前,需修改和補(bǔ)充了 NS2的SCTP仿真功能,主要包括以下4點(diǎn)。新增針對(duì)數(shù)據(jù)塊流控的暫??刂乒δ埽恍薷脑薪邮芴幚砗瘮?shù),在暫停狀態(tài)下不向?qū)Χ嘶貞?yīng);新增接口地址的初始化函數(shù),以支持DAR功能;新增針對(duì)流控狀態(tài)參數(shù)讀取和重配置的函數(shù)。
(3)配置3個(gè)SCTP節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)涿總€(gè)SCTP節(jié)點(diǎn)由2個(gè)NS2通用節(jié)點(diǎn)組成,各包括1個(gè)主節(jié)點(diǎn)和1個(gè)接口節(jié)點(diǎn),3個(gè) 接口節(jié)點(diǎn)二二互聯(lián),其拓?fù)浣Y(jié)構(gòu)如附圖4所示。其中,第一終端A配置2個(gè)SCTP協(xié)議仿真 模塊,分別與對(duì)端Z和第二終端B建立SCTP偶聯(lián)。為觀察偶聯(lián)遷移前后的可用帶寬變化,第一終端A與對(duì)端Z的鏈路,其帶寬設(shè)置 為10Mbps,延時(shí)設(shè)置為2ms ;第二終端B與對(duì)端Z的鏈路,其帶寬設(shè)置為2Mbps,延時(shí)設(shè)置為 20ms ;第一終端A與第二終端B的鏈路,其帶寬和延時(shí)對(duì)偶聯(lián)遷移不起關(guān)鍵性的影響,其值 分別設(shè)置為2Mbps和20ms。3條鏈路設(shè)置均為雙向?qū)ΨQ,對(duì)應(yīng)物理端口的輸出緩存設(shè)置為 50個(gè)分組。(4) DAR 配置第一終端A預(yù)先與對(duì)端Z建立基于SCTP的FTP連接,構(gòu)建通信偶聯(lián),并由Z不間 斷發(fā)送數(shù)據(jù)分組。在DAR啟動(dòng)前,由第一終端A與第二終端B建立基于SCTP的FTP連接, 并由A發(fā)送一個(gè)分組,驅(qū)動(dòng)SCTP仿真模塊建立控制偶聯(lián)。DAR在啟動(dòng)時(shí),第一終端A暫停通信偶聯(lián)的流控,通過(guò)仿真配置命令,在控制偶聯(lián) 的第二終端B —側(cè)加入對(duì)端Z的地址,在通信偶聯(lián)的Z —側(cè)加入B的地址。同時(shí),獲取A的 流控狀態(tài)參數(shù)值,用于重配B的流控狀態(tài)參數(shù),隨后重置B和Z的SCTP首地址,分別指向Z 和B。(5)記錄所有仿真事件在仿真實(shí)驗(yàn)配置程序中,打開(kāi)事件跟蹤功能,記錄在外部文件中,用于仿真實(shí)驗(yàn)結(jié) 束后的結(jié)果分析。(6) SCTP仿真事件后繼處理從事件跟蹤記錄文件中,分別過(guò)濾得到從對(duì)端Z發(fā)出的、第一終端A接收到的、第 二終端B接收到的所有SCTP分組,提取SSN及對(duì)應(yīng)的仿真時(shí)間。(7)其他仿真參數(shù)設(shè)置SCTP偶聯(lián)的路徑最大傳輸單元(MTU,maximum transmission unit)均設(shè)置為 1500字節(jié),流量控制和差錯(cuò)控制參數(shù)選用NS2的缺省值。通信偶聯(lián)在0. 5s時(shí)建立,控制偶 聯(lián)在3. Os時(shí)建立,DAR操作在5. Os時(shí)進(jìn)行,仿真實(shí)驗(yàn)在10. Os時(shí)結(jié)束。(8)仿真實(shí)驗(yàn)結(jié)果附圖5至附圖7給出了 SCTP分組的SSN與仿真時(shí)間的變化關(guān)系。從圖5可以看出,第一終端A在通信偶聯(lián)建立之后到DAR操作(在5. Os時(shí))之間 的時(shí)間內(nèi),持續(xù)不斷地接收到來(lái)自對(duì)端Z的分組流;DAR操作之后,在短時(shí)間之內(nèi)依然收到 來(lái)自Z的多個(gè)分組。從圖6可以看出,在5. Os時(shí),第二終端B在DAR操作完成之后,在短時(shí)間之內(nèi)收到 來(lái)自對(duì)端Z的分組,但這些分組的SSN值超出等待接收的SSN。經(jīng)過(guò)約IOOms后,B持續(xù)收 到來(lái)自Z且具有正確SSN的分組流。從圖7可以看出,對(duì)端Z從通信偶聯(lián)建立之后(0. 5s)到DAR操作(5. Os)之間, 所發(fā)分組的SSN與時(shí)間呈直線關(guān)系,斜率與IOMbps的鏈路帶寬相匹配。DAR操作之后的短 時(shí)間內(nèi)(時(shí)長(zhǎng)小于100ms),Z發(fā)出分組的SSN與時(shí)間關(guān)系不穩(wěn)定。之后,Z發(fā)出的分組SSN 出現(xiàn)回退,約500ms之后,所發(fā)分組的SSN與時(shí)間再次呈現(xiàn)穩(wěn)定的直線關(guān)系,斜率變小,但與2Mbps的鏈路帶寬相匹配。5. Os之前和5. 5s之后,SSN與時(shí)間的變化曲線,斜率的改變,與 拓?fù)渑渲猛耆呛?。以上通過(guò)仿真驗(yàn)證的SCTP偶聯(lián)遷移,ULP數(shù)據(jù)信息的連續(xù)性可以得到較好保證, 因分組SSN失序造成的不穩(wěn)定時(shí)長(zhǎng)小于100ms,因遷移造成的吞吐性能下降的持續(xù)時(shí)間小 于500ms,鏈路的可用帶寬可得到穩(wěn)定占用。本發(fā)明提出的SCTP偶聯(lián)遷移方法能滿足實(shí)時(shí)多媒體應(yīng)用的性能要求。
權(quán)利要求
1.一種多終端之間流控傳輸協(xié)議偶聯(lián)的移動(dòng)控制方法,其特征在于第一終端與遷移目 標(biāo)的第二終端建立控制偶聯(lián),控制偶聯(lián)與原有通信偶聯(lián)存在固定的端口匹配關(guān)系,通過(guò)DAR 重配置保持第二終端與對(duì)端交互傳輸?shù)倪B續(xù)性,具體實(shí)現(xiàn)方法為1)第一終端在建立通信偶聯(lián)時(shí),使用與對(duì)端不同的端口值;2)第一終端在建立控制偶聯(lián)時(shí),兩側(cè)端口與通信偶聯(lián)相匹配,即第二終端的服務(wù)端口 值使用通信偶聯(lián)在第一終端側(cè)的端口值,第一終端使用通信偶聯(lián)在對(duì)端側(cè)的端口值;3)第一終端發(fā)起修改對(duì)端和第二終端的偶聯(lián)地址表,并保證匹配關(guān)系,即對(duì)端維持的 目標(biāo)地址包含第二終端的可達(dá)地址,第二終端維持的目標(biāo)地址包含對(duì)端的可達(dá)地址;4)第一終端控制完成第二終端與第一終端的狀態(tài)同步;5)完成上述控制后,控制偶聯(lián)變換為通信偶聯(lián);第二終端替代原有第一終端,再次向其 他終端包括原有第一終端發(fā)起偶聯(lián)遷移控制;6)SCTP偶聯(lián)遷移過(guò)程中,對(duì)端維持的SCTP偶聯(lián)不中斷,對(duì)端ULP和應(yīng)用的消息和數(shù)據(jù) 傳送不中斷。
2.根據(jù)權(quán)利要求1所述的一種多終端之間流控傳輸協(xié)議偶聯(lián)的移動(dòng)控制方法,其特 征在于步驟4)所述的狀態(tài)同步控制不僅包括ULP的狀態(tài),還包括與SCTP流相關(guān)的狀態(tài), 其中與SCTP流相關(guān)的狀態(tài)參數(shù)至少包含2個(gè)方向的傳輸序號(hào)(TSN)、流標(biāo)號(hào)(SID)、流序號(hào) (SSN)0
3.根據(jù)權(quán)利要求2所述的一種多終端之間流控傳輸協(xié)議偶聯(lián)的移動(dòng)控制方法,其特征 在于所述的SCTP流的同步控制由ULP通過(guò)服務(wù)原語(yǔ)完成或采用SCTP流重配置協(xié)議在傳輸 層內(nèi)完成。
全文摘要
本發(fā)明公布了一種多終端之間流控傳輸協(xié)議偶聯(lián)的移動(dòng)控制方法,所述方法第一終端與遷移目標(biāo)的第二終端建立控制偶聯(lián),控制偶聯(lián)與原有通信偶聯(lián)存在固定的端口匹配關(guān)系,通過(guò)DAR重配置保持第二終端與對(duì)端交互傳輸?shù)倪B續(xù)性。本發(fā)明提出的SCTP偶聯(lián)遷移控制方法,兼容現(xiàn)有符合規(guī)范的SCTP實(shí)現(xiàn)系統(tǒng),可使在線運(yùn)行的實(shí)時(shí)多媒體應(yīng)用以一種無(wú)縫方式從一個(gè)物理終端移動(dòng)到另一個(gè)物理終端,克服網(wǎng)絡(luò)層移動(dòng)和應(yīng)用層移動(dòng)導(dǎo)致的傳輸不連續(xù)性。此外,本發(fā)明提出的SCTP偶聯(lián)遷移控制流程,既未限制終端的數(shù)量,也未對(duì)終端的功能提出特殊要求,因此適用于多終端組之內(nèi)的相互遷移以及跨越本地范圍的異地遷移。
文檔編號(hào)H04L29/06GK102006301SQ20101056821
公開(kāi)日2011年4月6日 申請(qǐng)日期2010年12月1日 優(yōu)先權(quán)日2010年12月1日
發(fā)明者唐方方, 彭梅, 楊藝, 王文鼐, 王斌 申請(qǐng)人:南京郵電大學(xué)