亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

Tcp流控制的方法和設(shè)備的制作方法

文檔序號(hào):7732670閱讀:180來(lái)源:國(guó)知局
專利名稱:Tcp流控制的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及TCP (傳輸控制協(xié)議)流控制,具體(但并不僅僅)涉及無(wú)線通信系統(tǒng) 中的TCP流控制。
背景技術(shù)
傳輸控制協(xié)議(TCP)是通信協(xié)議中的公知TCP/IP (網(wǎng)際協(xié)議)族中的一個(gè)協(xié)議 (關(guān)于TCP協(xié)議的完整說(shuō)明,參見[RFC 793])。TCP提供面向連接的可靠的字節(jié)流服務(wù),并 且最初是為差錯(cuò)率很低的有線網(wǎng)絡(luò)設(shè)計(jì)的。TCP使用基于窗口的流控制機(jī)制,該機(jī)制限制發(fā)送者傳送的未被確認(rèn)數(shù)據(jù)的量。這 種限制基于擁塞窗口(cwnd)和通告窗口(awnd)中的最小一個(gè)。擁塞窗口由TCP數(shù)據(jù)的發(fā) 送者控制,并且基于公知的慢啟動(dòng)和擁塞避免機(jī)制。慢啟動(dòng)用于當(dāng)TCP流開始時(shí),緩慢地增 加系統(tǒng)中未被確認(rèn)數(shù)據(jù)的量,并且當(dāng)檢測(cè)到遺失的分組時(shí),擁塞避免使系統(tǒng)中未被確認(rèn)數(shù) 據(jù)的量減半,并且然后緩慢地把未被確認(rèn)數(shù)據(jù)再次增加回到其正常流量水平。awnd是根據(jù) 接收機(jī)的處理更多數(shù)據(jù)的能力而被控制的?!癮wnd”的初始值由在TCP協(xié)議棧中配置的參數(shù) 來(lái)控制。如上所述,TCP是為低差錯(cuò)率的網(wǎng)絡(luò)設(shè)計(jì)的。因此在基于TCP的通信網(wǎng)絡(luò)中發(fā)生 的任何分組丟失被認(rèn)為歸因于網(wǎng)絡(luò)擁塞,于是如上所述接著是“cwnd”的減小,從而發(fā)送者 的數(shù)據(jù)速率降低。然而,這并不適合于無(wú)線網(wǎng)絡(luò),無(wú)線網(wǎng)絡(luò)是差錯(cuò)率固有地較高的系統(tǒng)。因此,第三 代合作伙伴計(jì)劃(3GPP)標(biāo)準(zhǔn)提供了被稱為無(wú)線電鏈路控制(RLC)的自動(dòng)重復(fù)請(qǐng)求(ARQ) 功能(如在3GPP技術(shù)規(guī)范3GPPTS 25. 322中所述),該功能允許由于通過空中接口的傳送 而出錯(cuò)的數(shù)據(jù)分組被重傳。通過利用由RLC接收實(shí)體響應(yīng)于預(yù)定觸發(fā)而向RLC發(fā)射實(shí)體回 送的RLC確認(rèn)消息(ACK),來(lái)維持傳遞數(shù)據(jù)分組的可靠性。例如,觸發(fā)可以基于定時(shí)器,基 于收到一定數(shù)量的接收分組,或者檢測(cè)到分組已丟失。按照這種方式,可向發(fā)射機(jī)指出丟 失或者受損的數(shù)據(jù)段或數(shù)據(jù)分組,并且可以重新發(fā)送這些丟失或者受損的數(shù)據(jù)段或數(shù)據(jù)分 組。另外,請(qǐng)注意,在最新版本的3GPP (它支持HSDPA和E-DCH)中,位于公知的OSI協(xié)議的 層I(Ll)和媒體訪問控制(MAC)層中的混合自動(dòng)請(qǐng)求(HARQ)功能提供了另外的重傳方案。然而,ARQ(和HARQ)方案的使用導(dǎo)致數(shù)據(jù)分組無(wú)序到達(dá)。從而,在能夠傳遞數(shù)據(jù) 分組以便進(jìn)行TCP處理之前,數(shù)據(jù)分組必須被緩存。緩存的使用造成延遲增大,并且會(huì)導(dǎo)致 RTT(往返時(shí)間)增大。許多無(wú)線數(shù)據(jù)系統(tǒng)具有很大的空中接口吞吐量,但也具有高的等待時(shí)間,比如由 3GPP標(biāo)準(zhǔn)組定義的長(zhǎng)期演進(jìn)(LTE)和競(jìng)爭(zhēng)WiMax通信標(biāo)準(zhǔn)。因此,由于典型無(wú)線系統(tǒng)內(nèi)的 TCP操作,出現(xiàn)了明顯的問題。例如,由于等待時(shí)間高,因此TCP速率需要相對(duì)長(zhǎng)的時(shí)間才能 使用高的空中接口吞吐量,同時(shí)慢啟動(dòng)正在運(yùn)行,于是通信鏈路利用不足。當(dāng)為每個(gè)相對(duì)小 的對(duì)象打開多個(gè)TCP連接時(shí),例如,當(dāng)移動(dòng)用戶正在進(jìn)行web瀏覽時(shí),這尤其成為問題。多數(shù)個(gè)人計(jì)算機(jī)(PC)TCP棧中使用的典型“awnd”值較低(為8192字節(jié)的數(shù)量級(jí))。這意味著除非修改“awnd”,否則不能充分使用高等待時(shí)間的無(wú)線系統(tǒng)中的通信鏈路。 一般來(lái)說(shuō),“awnd”值應(yīng)被設(shè)置成鏈路的帶寬延遲乘積。然而,這僅僅提供了一種使空中接口 能夠被充分用于下行鏈路(DL)方向,即從網(wǎng)絡(luò)到最終用戶的TCP數(shù)據(jù)流的手段。在上行鏈 路(UL)中,即從移動(dòng)(或固定)用戶到網(wǎng)絡(luò),“awnd”由網(wǎng)絡(luò)中的服務(wù)器規(guī)定,并且顯然不 存在能夠按照類似方式改變“awnd”的方式。于是,隨著可達(dá)到的UL速率日益增高,在許多 情況下,ULTCP速率將受到服務(wù)器“awnd”的限制,而不是受到主要的空中接口條件的限制。與在等待時(shí)間高的無(wú)線系統(tǒng)中簡(jiǎn)單地增大awnd相關(guān)聯(lián)的另一個(gè)問題在于因核 心網(wǎng)絡(luò)中的擁塞而丟失任何數(shù)據(jù)分組導(dǎo)致DL TCP速率受到嚴(yán)重影響,并且由于相關(guān)聯(lián)的等 待時(shí)間較高,因此恢復(fù)時(shí)間較長(zhǎng)。如前所述,有益的是使用極大的awnd值來(lái)充分利用高數(shù) 據(jù)速率高延遲的空中接口通信鏈路(例如,“ 100000”數(shù)量級(jí)的“awnd”值)。當(dāng)出現(xiàn)丟失的 數(shù)據(jù)分組時(shí),“cwnd”被減小到該值的一半。這種減半的值一般不足以充分利用通信鏈路, 從而觀察到的吞吐量被降低。在等待時(shí)間高的無(wú)線系統(tǒng)中,簡(jiǎn)單地增大“awnd”對(duì)于TCP性能并不是一種可接受 的解決方案。現(xiàn)在參見圖1,圖中示例了 TCP數(shù)據(jù)流100的一種已知機(jī)制。TCP數(shù)據(jù)流100被安 排在個(gè)人計(jì)算機(jī)(PC) 105、諸如移動(dòng)電話的用戶設(shè)備(UE) 110、無(wú)線電接入網(wǎng)絡(luò)(RAN) 115和 通信服務(wù)器120之間。在這種已知機(jī)制中,通過空中接口發(fā)送TCP ACK。如前所述,典型的 TCP網(wǎng)絡(luò)可另外在UE 110和RAN 115之間的無(wú)線網(wǎng)絡(luò)內(nèi)采用無(wú)線電鏈路控制(RLC)層通信 130和混合自動(dòng)重復(fù)請(qǐng)求(HARQ) 135糾錯(cuò)。發(fā)明人認(rèn)識(shí)并且理解到,通過空中接口發(fā)送的TCP確認(rèn)消息(TCP ACK)大部分不 是必需的,只是寶貴的空中接口資源的浪費(fèi)。這是因?yàn)榈讓拥腞LC和HARQ重傳方案(它們 本身也采用ACK消息)將確保空中接口中的丟失被校正,從而使TCP的重傳功能變得多余, 從而不需要通過空中接口發(fā)送TCP ACK。如圖1中所示,對(duì)TCP數(shù)據(jù)分組來(lái)說(shuō),存在三級(jí)數(shù) 據(jù)流控制/重傳功能,這被認(rèn)為不是最理想的?,F(xiàn)在參見圖2,圖中示例了減輕與在無(wú)線系統(tǒng)內(nèi)采用TCP相關(guān)聯(lián)的一些問題的 TCP體系結(jié)構(gòu)200。TCP數(shù)據(jù)流被安排在個(gè)人計(jì)算機(jī)(PC) 205、諸如移動(dòng)電話的用戶設(shè)備 (UE) 210、無(wú)線電接入網(wǎng)絡(luò)(RAN) 215和通信服務(wù)器220之間。該TCP網(wǎng)絡(luò)體系結(jié)構(gòu)在UE 210 和RAN 215之間的無(wú)線網(wǎng)絡(luò)內(nèi)采用無(wú)線電鏈路控制(RLC)層通信230和混合自動(dòng)重復(fù)請(qǐng)求 (HARQ) 235 糾錯(cuò)。值得注意的是,通過在UE 210和RAN 215中并入執(zhí)行TCP代理功能的邏輯,這種 體系結(jié)構(gòu)消除了端到端的TCP連接。其結(jié)果是,在TCP代理處有必要存在某種形式的流控 制,以確保RLC緩沖器不會(huì)溢出。由于端到端TCP功能被除去,因此在所述代理處能夠完全除去IP和TCP首部,并 且通過Uu接口只發(fā)送分組的基本數(shù)據(jù)部分,外加與RLC和MAC相關(guān)聯(lián)的任何首部。接收代 理隨后將添加與存在于系統(tǒng)的這一端的TCP連接的狀態(tài)相適合的TCP首部。為了闡明在圖2中的TCP網(wǎng)絡(luò)體系結(jié)構(gòu)200中采用的功能,下面考慮一個(gè)例證數(shù) 據(jù)流。如果啟動(dòng)很大文件的文件傳輸協(xié)議(FTP)下載,那么如果位于RAN 215的TCP代理 邏輯沒有流控制功能,則可能需要把整個(gè)FTP文件保存在RAN 215內(nèi)的RNC RLC緩沖器中。 從而,在TCP代理處需要允許根據(jù)在發(fā)射RLC實(shí)體處可用的緩沖器占用率來(lái)控制“awnd”的
6某種流控制方法。在其中使用緩沖器占用率的單個(gè)度量來(lái)確定用信號(hào)通知的“awnd”值的 已知設(shè)備中,有限地涉及到這一點(diǎn)。在已知體系結(jié)構(gòu)中,關(guān)于這種情況的潛在問題是在維持連接的時(shí)候,會(huì)發(fā)生RLC 移動(dòng)接收窗口(MRW)命令或重置。RLC MRW命令指示發(fā)射實(shí)體已經(jīng)放棄發(fā)送RLC協(xié)議數(shù)據(jù) 單元(PDU),并且接收機(jī)必需向前移動(dòng)其窗口,使得它跳過構(gòu)成RLC-SDU的所有RLC PDU。在 這種情況下,TCP流控制本可以在之前提供一種能夠重傳丟失的數(shù)據(jù)段的最終手段。沒有 上層TCP協(xié)議,就不會(huì)發(fā)生這樣的重傳。此外,借助在UE端和網(wǎng)絡(luò)端的完全分離的TCP連 接,難以提供克服該問題的另外的重傳方案。另外,在沒有端到端TCP功能的流中,由于在PC側(cè)和在網(wǎng)絡(luò)側(cè)發(fā)生不同(S卩,不同 步)的TCP會(huì)話的事實(shí),當(dāng)UE改變小區(qū)時(shí)會(huì)發(fā)生潛在的問題。現(xiàn)在參見圖3,圖中示例了利用已知的三次握手過程的數(shù)據(jù)流控制協(xié)議體系結(jié)構(gòu) 300。照常通過RAN協(xié)議棧,S卩,利用RLC/MAC/L1來(lái)發(fā)送三次握手310。值得注意的是,它與 如圖2中描述的完全非端到端的常規(guī)功能的情況不同。在圖2中,在用戶PC和UE側(cè)代理 以及服務(wù)器和網(wǎng)絡(luò)側(cè)代理之間會(huì)發(fā)生兩個(gè)獨(dú)立的三次握手,其中不通過空中接口發(fā)生三次握手。由于端到端地采用三次握手,因此現(xiàn)在能夠在空中接口的任一側(cè)采用實(shí)際上“同 步的” TCP代理。從而,盡管TCP協(xié)議未越過通信鏈路的空中接口部分,但從服務(wù)器和客戶 端的角度看來(lái),該連接好像確實(shí)是端到端的。 從而,一種改進(jìn)的解決TCP數(shù)據(jù)流,尤其是蜂窩無(wú)線通信網(wǎng)絡(luò)內(nèi)的TCP數(shù)據(jù)流的問 題的機(jī)制應(yīng)是有利的。

發(fā)明內(nèi)容
按照本發(fā)明的第一方面,提供了一種位于第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間 的高等待時(shí)間通信鏈路的一端的通信實(shí)體。所述通信實(shí)體被安排成支持第一收發(fā)機(jī)實(shí)體和 第二收發(fā)機(jī)實(shí)體之間的傳輸控制協(xié)議(TCP)通信。所述通信實(shí)體包括代理邏輯,所述代理 邏輯被安排成檢查接收的段,并且響應(yīng)于識(shí)別出接收的段不包含數(shù)據(jù),所述代理邏輯透明 地允許多個(gè)同步段經(jīng)由所述代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳遞,使得 所述代理邏輯根據(jù)多個(gè)同步段和檢查的接收段,本地生成至少一個(gè)確認(rèn)消息。本發(fā)明的各個(gè)方面例如通過使所述代理邏輯能夠同步空中接口的兩端,允許通信 系統(tǒng)中的通信資源的改進(jìn)使用,而不需要跨越空中接口發(fā)送和接收確認(rèn)(ACK)或否定確認(rèn) (NACK)同步消息。本發(fā)明的各個(gè)方面可允許例如通過減少數(shù)據(jù)重傳的次數(shù),來(lái)提高最終用戶感受到 的性能。由于重傳次數(shù)的減少,本發(fā)明的各個(gè)方面可提供增大的吞吐率。按照本發(fā)明的一個(gè)可選特征,代理邏輯可進(jìn)一步被安排成當(dāng)后續(xù)接收的段包含數(shù) 據(jù)時(shí),進(jìn)行再同步,其中,再同步基于包含在后續(xù)接收的段中的序號(hào)。按照本發(fā)明的一個(gè)可選特征,代理邏輯可進(jìn)一步被安排成拒絕任何不包含數(shù)據(jù)的 后續(xù)接收的段。按照本發(fā)明的一個(gè)可選特征,代理邏輯進(jìn)一步包括無(wú)線電鏈路控制(RLC)邏輯, 所述RLC邏輯被安排成通過確定下述至少之一何時(shí)發(fā)生來(lái)識(shí)別數(shù)據(jù)段的丟失移動(dòng)接收窗口(MRW);重置。按照本發(fā)明的一個(gè)可選特征,RLC邏輯可用信號(hào)把所述丟失通知給代理邏 輯/功能。按照這種方式,可以現(xiàn)有的MRW和重置命令的形式來(lái)使用標(biāo)準(zhǔn)RLC功能。標(biāo)準(zhǔn) 功能被擴(kuò)展為能夠用信號(hào)把這些命令通知給代理邏輯。按照本發(fā)明的一個(gè)可選特征,無(wú)線電鏈路控制邏輯可操作地與緩沖邏輯耦接,使 得緩沖邏輯保存接收的數(shù)據(jù)段,直到RLC邏輯向緩沖邏輯指示所有數(shù)據(jù)段已被RLC確認(rèn) (ACK)為止。按照這種方式,無(wú)線電鏈路控制邏輯使代理邏輯能夠識(shí)別出RLC已發(fā)出例如 MRW或重置命令。從而,代理邏輯能夠重傳與此相關(guān)聯(lián)的TCP段。按照這種方式,通過檢查無(wú)線電鏈路控制層消息,可實(shí)現(xiàn)丟失分組的快速重傳,而 不在重傳方面依賴于TCP。按照本發(fā)明的一個(gè)可選特征,響應(yīng)于來(lái)自RLC邏輯的所述指示,緩沖邏輯可從其 緩沖器丟棄被確認(rèn)的數(shù)據(jù)。當(dāng)通信實(shí)體位于高等待時(shí)間通信鏈路的接收側(cè)時(shí),如果未成功收到數(shù)據(jù)段的所有 序號(hào),那么RLC邏輯可請(qǐng)求重傳遺失的數(shù)據(jù)。按照本發(fā)明的一個(gè)可選特征,當(dāng)通信實(shí)體位于高等待時(shí)間通信鏈路的發(fā)射側(cè)時(shí), RLC邏輯能夠識(shí)別出通過高等待時(shí)間通信鏈路發(fā)送的至少一個(gè)數(shù)據(jù)段未被確認(rèn)。響應(yīng)于此, RLC邏輯可啟動(dòng)從緩沖邏輯重傳未被確認(rèn)的RLC數(shù)據(jù)段。按照本發(fā)明的一個(gè)可選特征,同步信息可包含三次握手。例如,三次握手可包含下 述至少之一同步指示;同步確認(rèn)指示;和確認(rèn)指示。按照本發(fā)明的一個(gè)可選特征,代理邏輯可包含發(fā)射緩沖邏輯和接收緩沖邏輯。發(fā) 射緩沖邏輯和接收緩沖邏輯可被配置成觀察下述至少之一在透明地通過發(fā)射實(shí)體和接收 實(shí)體之間的通信實(shí)體的同步段內(nèi)的維持序號(hào)(SEQ);確認(rèn)(ACK)號(hào);窗口縮放;選擇性確 認(rèn);時(shí)間戳。按照本發(fā)明的一個(gè)可選特征,代理邏輯可被配置成檢查由接收實(shí)體生成的TCP ACK,并確定ACK是否不包含數(shù)據(jù)。如果代理邏輯確定TCP ACK不包含數(shù)據(jù),那么代理邏輯 可終止該TCP ACK,并且不通過空中接口發(fā)送該TCP ACK。按照本發(fā)明的一個(gè)可選特征,代理邏輯可被安排成在接收實(shí)體接收發(fā)射的段之 前,向發(fā)射實(shí)體發(fā)回TCP ACK。按照本發(fā)明的一個(gè)可選特征,通信實(shí)體可以是用戶設(shè)備(UE)和網(wǎng)絡(luò)實(shí)體之一,并 被安排成支持第三代合作伙伴計(jì)劃(3GPP)數(shù)據(jù)通信系統(tǒng)內(nèi)的TCP通信。按照本發(fā)明的第二方面,提供一種支持在位于第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體 之間的高等待時(shí)間通信鏈路的一端的通信實(shí)體中的傳輸控制協(xié)議(TCP)通信的代理邏輯。 所述代理邏輯包含被布置成檢查接收的段的邏輯,所述代理邏輯響應(yīng)于識(shí)別出接收的段不 包含數(shù)據(jù),透明地允許多個(gè)同步段經(jīng)由代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間 傳遞;并根據(jù)多個(gè)同步段至少之一和檢查的接收段,生成至少一個(gè)確認(rèn)消息。按照本發(fā)明的第三方面,提供一種由位于數(shù)據(jù)通信系統(tǒng)中的第一收發(fā)機(jī)實(shí)體和第 二收發(fā)機(jī)實(shí)體之間的高等待時(shí)間通信鏈路的一端的通信實(shí)體提供傳輸控制協(xié)議(TCP)通 信的方法。所述方法包括由TCP代理邏輯檢查接收的段,并且響應(yīng)于確定接收的段不包 含數(shù)據(jù),透明地允許多個(gè)同步段經(jīng)由代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳 遞。所述方法進(jìn)一步包括由代理邏輯根據(jù)多個(gè)同步段至少之一和檢查的接收段,本地生成至少一個(gè)確認(rèn)消息。按照本發(fā)明的第四方面,提供一種包含程序代碼的計(jì)算機(jī)程序產(chǎn)品,所述程序代 碼用于借助位于數(shù)據(jù)通信系統(tǒng)中的第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的高等待時(shí)間 通信鏈路的一端的通信實(shí)體,支持傳輸控制協(xié)議(TCP)通信。所述計(jì)算機(jī)程序產(chǎn)品包含用 于借助TCP代理邏輯檢查接收的段,并響應(yīng)于確定接收的段不包含數(shù)據(jù),透明地允許多個(gè) 同步段經(jīng)由代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳遞的程序代碼。所述計(jì)算 機(jī)程序產(chǎn)品進(jìn)一步包括用于借助代理邏輯,根據(jù)多個(gè)同步段至少之一和檢查的接收段,本 地生成至少一個(gè)確認(rèn)消息的程序代碼。按照本發(fā)明的第五方面,提供一種數(shù)據(jù)通信系統(tǒng),所述數(shù)據(jù)通信系統(tǒng)包括位于高 等待時(shí)間通信鏈路的一端并且支持第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的傳輸控制協(xié) 議(TCP)通信的通信實(shí)體。所述數(shù)據(jù)通信系統(tǒng)包含位于通信實(shí)體中并被安排成檢查接收段 的代理邏輯,并且所述代理邏輯響應(yīng)于識(shí)別接收的段不包含數(shù)據(jù),透明地允許多個(gè)同步段 經(jīng)由代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳遞,使得所述代理邏輯根據(jù)多個(gè) 同步段至少之一和檢查的接收段,本地生成至少一個(gè)確認(rèn)消息。根據(jù)下面描述的實(shí)施例,本發(fā)明的這些和其它方面、特征和優(yōu)點(diǎn)是顯而易見的,并 將參考下面描述的實(shí)施例進(jìn)行說(shuō)明。


圖1示例了已知的TCP流控制協(xié)議體系結(jié)構(gòu)。圖2示例了已知的數(shù)據(jù)流控制協(xié)議體系結(jié)構(gòu)。圖3示例了利用三次握手過程的已知數(shù)據(jù)流控制協(xié)議體系結(jié)構(gòu)。將參考附圖舉例說(shuō)明本發(fā)明的實(shí)施例,其中圖4示例了適合于支持本發(fā)明實(shí)施例的無(wú)線蜂窩通信網(wǎng)絡(luò)。圖5示例了按照本發(fā)明實(shí)施例的TCP協(xié)議加速器的數(shù)據(jù)流控制協(xié)議體系結(jié)構(gòu)。圖6示例了按照本發(fā)明實(shí)施例的TCP協(xié)議加速器流控制的操作。圖7示例了按照本發(fā)明的實(shí)施例,在兩個(gè)同步TCP代理中采用的緩沖邏輯功能。圖8示例了按照本發(fā)明的實(shí)施例,在同步TCP代理的發(fā)射側(cè)和接收側(cè)采用的緩沖 邏輯功能。圖9示例了當(dāng)段在核心網(wǎng)絡(luò)中丟失時(shí),協(xié)議加速器的操作的例子。圖10示例了按照本發(fā)明的實(shí)施例,當(dāng)段在RAN中丟失時(shí),協(xié)議加速器的操作的例子。圖11示例了按照本發(fā)明的實(shí)施例,當(dāng)段在UE代理和客戶端PC之間丟失時(shí),協(xié)議 加速器的操作的例子。圖12示例了可用于實(shí)現(xiàn)本發(fā)明實(shí)施例中的處理功能的典型計(jì)算系統(tǒng)。
具體實(shí)施例方式按照本發(fā)明的實(shí)施例,通過在RAN和UE兩者中都設(shè)置“同步”TCP代理來(lái)減輕這些 問題。特別地,在本發(fā)明的上下文中,握手過程,比如已知的三次握手,和包含數(shù)據(jù)的任意段 被允許“透明地通過” “同步” TCP代理邏輯。即,它們未受到任何方式的修改,并被允許繼
9續(xù)到達(dá)無(wú)線電接入網(wǎng)絡(luò)的較低層(至少在下面說(shuō)明的實(shí)施例中),并最終在接收側(cè)代理邏 輯處被接收,在接收側(cè)代理邏輯處,它再次無(wú)修改地通過代理邏輯。首先參見圖4,UMTS無(wú)線電接入網(wǎng)絡(luò)(UTRAN)系統(tǒng)400便利地被視為包括終端/ 用戶設(shè)備域410 ;UMTS地面無(wú)線電接入網(wǎng)絡(luò)域420 ;和基礎(chǔ)結(jié)構(gòu)域430。在終端/用戶設(shè)備域410中,終端設(shè)備(TE) 412經(jīng)由有線或無(wú)線R接口與移動(dòng)設(shè) 備(ME)414連接。ME 414還與用戶服務(wù)身份模塊(USIM)416連接;ME 414和USIM 416 — 起被視為用戶設(shè)備(UE)418。例如,UE 418可以是遠(yuǎn)程單元、移動(dòng)站、通信終端或個(gè)人數(shù)字 助理。UE 418可與膝上型計(jì)算機(jī)或者嵌入式通信處理器耦接。UE 418經(jīng)由無(wú)線Uu接口與無(wú)線電接入網(wǎng)絡(luò)域420中的節(jié)點(diǎn)B(大體包含用作基站 的功能元件和邏輯)傳遞分組數(shù)據(jù)。在無(wú)線電接入網(wǎng)絡(luò)域420內(nèi),節(jié)點(diǎn)B 422經(jīng)由Iub接 口與無(wú)線電網(wǎng)絡(luò)控制器(RNC)424通信。RNC 424經(jīng)由Iur接口與其它RNC(未示出)通信。Node-B 422 和 RNC 424 —起構(gòu)成 UTRAN 426。RNC 424 經(jīng)由 Iu 接口 與核心網(wǎng)絡(luò)域 430中的服務(wù)GPRS服務(wù)節(jié)點(diǎn)(SGSN) 432通信。在核心網(wǎng)絡(luò)域430中,SGSN 432經(jīng)由Gn接 口與網(wǎng)關(guān)GPRS支持節(jié)點(diǎn)GGSN 434通信。GGSN 434經(jīng)由Gi接口與公共數(shù)據(jù)網(wǎng)438通信。從而,如圖4中所示,按照慣例以分布在無(wú)線電接入網(wǎng)絡(luò)域420和核心網(wǎng)絡(luò)域430 中的離散獨(dú)立單元(在它們自己相應(yīng)的軟件/硬件平臺(tái)上)的形式來(lái)提供元件RNC 424、 SGSN 432 禾口 GGSN 434。RNC 424是負(fù)責(zé)多個(gè)節(jié)點(diǎn)B 422的資源的控制和分配的UTRAN元件;通常50-100 個(gè)節(jié)點(diǎn)B可由一個(gè)RNC來(lái)控制。RNC還提供通過空中接口的用戶業(yè)務(wù)的可靠傳遞。RNC經(jīng) 由Iur接口相互通信。SGSN 432是負(fù)責(zé)會(huì)話控制的UMTS核心網(wǎng)絡(luò)元件。SGSN 432保持跟 蹤各個(gè)UE 418的位置,并執(zhí)行安全功能和接入控制。SGSN 432是許多RNC的大型集中控 制器。GGSN 434是負(fù)責(zé)集中核心分組網(wǎng)絡(luò)內(nèi)的用戶數(shù)據(jù),并將其通過隧道達(dá)到最終目的地 (例如,因特網(wǎng)服務(wù)提供商(ISP))的UMTS核心網(wǎng)絡(luò)元件。諸如個(gè)人計(jì)算機(jī)(PC)的終端設(shè) 備(TE) 412可經(jīng)由有線或無(wú)線R接口連接到移動(dòng)設(shè)備(ME) 414。ME 414還與用戶服務(wù)身份 模塊(USIM)416連接;ME 414和USIM 416—起被視為用戶設(shè)備(UE)418 在可從3GPP網(wǎng)站www. 3rpp. org獲得的第三代合作伙伴計(jì)劃技術(shù)規(guī)范文檔3GPP TS 45. 40U3GPP TS 43. 060和相關(guān)文檔中更充分地描述了這種UTRAN系統(tǒng)及其操作,這里 不需要更詳細(xì)地說(shuō)明。按照本發(fā)明的一個(gè)實(shí)施例,提議圖4中的體系結(jié)構(gòu)適合于支持TCP代理邏輯和功 能存在于Uu空中接口的兩側(cè),從而導(dǎo)致不通過Uu空中接口應(yīng)用TCP協(xié)議。從而,如下關(guān)于 圖5-11所述,在本發(fā)明的一個(gè)實(shí)施例中,RNC 424和UE 418已被調(diào)適成包含代理TCP邏輯。 在備選實(shí)施例中,例如,就在3GPP長(zhǎng)期演進(jìn)(LTE)系統(tǒng)中的實(shí)現(xiàn)來(lái)說(shuō),代理TCP邏輯可駐留 在增強(qiáng)的eNodeB中。本領(lǐng)域的技術(shù)人員會(huì)認(rèn)識(shí)到,在其它系統(tǒng)中,代理TCP邏輯可駐留在 其它元件中,因此,本發(fā)明的概念并不局限于這里說(shuō)明的具體元件。現(xiàn)在參見圖5,按照本發(fā)明的實(shí)施例示例TCP協(xié)議加速器的另一種數(shù)據(jù)流控制協(xié) 議體系結(jié)構(gòu)。UE 510和RNC 515兩者中的同步TCP代理都被配置成允許已知的三次握手 (“ SYN ” 540、“ SYNACK ” 542和“ ACK ” 544)透明地通過,用于PC 505和比如說(shuō)web服務(wù)器 520之間的端到端通信。從而,包含在這些“同步” TCP消息中的信息隨后被用于同步TCP通信中的“ACK”和“SEQ”字段,使得UE 510和RNC 515中的TCP代理都能夠生成好像來(lái)自于整個(gè)TCP連接 的端點(diǎn)的TCPACK(和NACK)(例如,它們好像是端到端的)。在圖5中,在已知的三次握手 540、542和544之后,是在下行鏈路(DL)情況下從web服務(wù)器520傳送到PC 505的數(shù)據(jù)段 546。另外注意,代理的同步功能將擴(kuò)展到檢查關(guān)于所協(xié)商的TCP功能,比如選擇性確 認(rèn)(RFC1072中的SACK)和窗口縮放(RFC793)的三次握手。如在下面的章節(jié)中所述,當(dāng)代 理生成本地ACK時(shí),協(xié)商的這些TCP功能隨后將被兌現(xiàn)。如圖5中所示,網(wǎng)絡(luò)側(cè)556和UE側(cè)555的代理功能允許三次握手540、542和544 直接通過代理(即使它們不包含任何數(shù)據(jù),我們將看到,對(duì)不包含任何數(shù)據(jù)的其它段來(lái)說(shuō) 情況不是這樣)。在本例中,發(fā)生下載,并且當(dāng)從web服務(wù)器520發(fā)送第一個(gè)TCP段時(shí),它直 接通過位于網(wǎng)絡(luò)側(cè)和UE側(cè)的代理。注意,不同于在圖3中描述的常規(guī)TCP代理功能,TCP/ IP首部不被除去(因?yàn)閳D3中的TCP完全終止于空中接口的任一側(cè))。在一個(gè)例子中,本 領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到TCP/IP首部可被壓縮。當(dāng)三次握手通過代理時(shí),代理隨后能夠確保它們生成的任何后續(xù)TCP ACK使用在 三次握手中協(xié)商的恰當(dāng)SEQ號(hào)。另外,當(dāng)從代理生成ACK時(shí),還可考慮另外的任何協(xié)商的選 項(xiàng),比如窗口縮放、選擇性確認(rèn)等。按照這種方式,本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,代理邏輯現(xiàn) 在可被視為“同步代理”。一旦網(wǎng)絡(luò)側(cè)代理允許數(shù)據(jù)段546通過“同步代理”,它就向服務(wù)器回送TCP ACK 552。按照與全功能的TCP棧處理ACK相同的方式返回所述ACK。從而,在圖5中,由在網(wǎng)絡(luò) 的TCP代理生成的ACK552的內(nèi)容幾乎與由PC生成的ACK 550完全相同。ACK的內(nèi)容方面的可能差異將是awnd(后面討論)、時(shí)間戳字段(如果啟用該TCP 選項(xiàng)的話)并且最后是校驗(yàn)和,所述校驗(yàn)和是整個(gè)TCP內(nèi)容的乘積。從而,如果“awnd”不 同,那么校驗(yàn)和將不同。這樣,代理生成一般被稱為“提前ACK”的ACK。然而,這些ACK目 前被正確地同步,因此系統(tǒng)仍然好像具有端到端特性。在位于UE端的代理處檢查由PC生成的TCP ACK 550,因?yàn)樵揟CP ACK被確定為不 包含任何數(shù)據(jù),即,它只是TCP ACK,因此該TCP ACK被終止,并且不通過空中接口發(fā)送(因 為位于網(wǎng)絡(luò)端的代理已在步驟552中確認(rèn)了數(shù)據(jù)段546)。值得注意的是,如果用戶PC生成的ACK 550不得不經(jīng)過空中接口,那么和該ACK 相比,在服務(wù)器會(huì)快得多地收到ACK 552。這導(dǎo)致與如果不存在代理邏輯的情況相比,快得 多地發(fā)送段560。按照這種方式,吞吐量性能被提高,因?yàn)門CP連接在較短時(shí)間處于“慢啟 動(dòng)”,從而RLC緩沖器保持充滿。另外注意,盡管圖5示例了用于下載的情況,但有利的是在本發(fā)明的一個(gè)實(shí)施例 中可對(duì)稱地實(shí)現(xiàn)該功能,使得對(duì)上傳來(lái)說(shuō)也可按照相同的方式來(lái)實(shí)現(xiàn)代理功能。另外值得注意的是,代理邏輯利用修改的但是實(shí)用的TCP棧,因此它能夠恰當(dāng)?shù)?檢測(cè)比方說(shuō)段何時(shí)在核心網(wǎng)絡(luò)中丟失。本領(lǐng)域的技術(shù)人員會(huì)認(rèn)識(shí)到,這種修改實(shí)際上是先 前已討論過的同步和半透明(例如,允許三次握手和數(shù)據(jù)段通過)功能。響應(yīng)于此,代理邏 輯能夠用請(qǐng)求服務(wù)器重傳適當(dāng)?shù)倪z失分組的自己生成的TCP ACK(例如,否定確認(rèn)(NACK)) 進(jìn)行應(yīng)答。后面給出當(dāng)段丟失時(shí),同步TCP代理的操作的例子?,F(xiàn)在參見圖6,按照本發(fā)明的實(shí)施例示例TCP協(xié)議加速器流控制600的操作。這里關(guān)于UE或RNC中的無(wú)線電鏈路控制(RLC)緩沖器610示例了所述流控制。RLC緩沖器610 的概念圖示出了部分充滿保存數(shù)據(jù)的多個(gè)緩沖器612、614、616。在每個(gè)緩沖器的非陰影區(qū) 620中示例了與TCP流相關(guān)聯(lián)的每個(gè)無(wú)線電承載(RB)的備用緩沖容量630。來(lái)自特定同步TCP代理的“aWnd”640基于與單個(gè)備用RLC緩沖容量相關(guān)聯(lián)(從而 又與該TCP流映射到的RB相關(guān)聯(lián)),又與涉及所有RLC緩沖器612、614、616的總備用RLC 緩沖容量相關(guān)聯(lián)的備用緩沖器占用率的功能。因此,再參見圖5,當(dāng)在網(wǎng)絡(luò)端的TCP代理向服務(wù)器發(fā)送TCPACK 552時(shí),根據(jù)在上 面的段落中定義的函數(shù)來(lái)計(jì)算包含在ACK內(nèi)的“awnd”字段。在一個(gè)例子中,計(jì)算“awnd”的函數(shù)可以是下述形式(盡管任何合理的函數(shù)都是可 能的)awnd = Min (初始awnd,單個(gè)空閑緩沖器α,總空閑緩沖器初始“awnd”是在三次握手中協(xié)商的值?!?α ”和“ β ”的值可以是經(jīng)驗(yàn)常數(shù)值。TCP協(xié)議加速器邏輯的目的是提供關(guān)于上行鏈路(UL)和下行鏈路(DL) TCP業(yè)務(wù)的 提高。因此,在UE和RAN兩者中都提供了接收側(cè)和發(fā)射側(cè)同步TCP代理功能。按照本發(fā)明 的一個(gè)實(shí)施例,TCP協(xié)議加速器邏輯被安排成駐留在PDCP中。上面提及的同步代理的一個(gè)特別有利的特征是處理在網(wǎng)絡(luò)的任意下述部分中丟 失的段的能力(i)核心網(wǎng)絡(luò),即在位于網(wǎng)絡(luò)端的同步代理和服務(wù)器之間。(ii)無(wú)線電接入網(wǎng)絡(luò),S卩,識(shí)別空中接口中不能被RLC(和/或HARQ功能)校正的丟失。(iii) UE和PC之間的連接。為了處理這三種情況中的一種或多種,在本發(fā)明的實(shí)施例中可以提供下面的緩沖 邏輯(i)如下關(guān)于圖7和圖8描述的接收代理處的緩沖邏輯,使得能夠保存無(wú)序段,直 到收到適當(dāng)?shù)倪z失段,從而能夠順序地向高層傳送段。另外,需要緩沖來(lái)處理丟失的被傳送 到核心網(wǎng)絡(luò)(或者UE和PC之間的鏈路)中的段,盡管這在與代理相關(guān)聯(lián)的TCP棧功能中 是固有的,并且這里不再另外考慮。(ii)也可在發(fā)射代理處提供緩沖邏輯,使得當(dāng)在無(wú)線電接入網(wǎng)絡(luò)中發(fā)生未被校正 的丟失(例如,由于在RLC中發(fā)生的MRW或者重置,由于空中接口中的持續(xù)錯(cuò)誤),并且向代 理邏輯報(bào)告該未被校正的丟失時(shí),代理邏輯能夠重傳丟失的段。現(xiàn)在參見圖7,按照本發(fā)明的實(shí)施例,示例在同步的TCP代理555、556采用的緩沖 邏輯功能700。在圖7中,RNC 515接收的將通過空中接口 725發(fā)送的數(shù)據(jù)段被輸入RLC邏 輯715中。如果在發(fā)送/重發(fā)構(gòu)成該段的PDU的固定次數(shù)的嘗試之后,RNC 515未從對(duì)等 的RLC實(shí)體收到“ACK”,則相同的數(shù)據(jù)段還被輸入發(fā)射緩沖器705,以便保存并且潛在地重 傳給接收實(shí)體。如果SDU中的任意一個(gè)PDU達(dá)到允許重傳RLC PDU的最大次數(shù),那么RLC邏輯715 放棄,發(fā)送MRW,并丟棄構(gòu)成該SDU的所有PDU。當(dāng)向RNC 515指示MRW或重置時(shí),在710發(fā)送發(fā)射緩沖器705中的適當(dāng)數(shù)據(jù)段。 當(dāng)RLC邏輯715收到MRW/重置的指示,并且在720成功發(fā)送了段中的所有PDU時(shí),RLC邏輯715通知發(fā)射緩沖器705允許刪除保存的段(等待潛在地被重傳的段)。在空中接口 725的另一側(cè),UE 510包括用于從RNC 515接收數(shù)據(jù)段的RLC邏輯 750,并把這些接收的數(shù)據(jù)段轉(zhuǎn)發(fā)給接收緩沖邏輯755。如圖所示,UE 510還包括TCP代理 邏輯555。在本發(fā)明的一個(gè)實(shí)施例中,接收緩沖邏輯755可操作地與重排邏輯(未示出)耦 接,并且重排邏輯主要是為了使UE接收緩沖邏輯755被配置成確保向TCP端點(diǎn)的順序傳遞 而引入的。圖7的體系結(jié)構(gòu)的一個(gè)操作基于由接收緩沖邏輯755實(shí)現(xiàn)的下一個(gè)預(yù)期TCP序號(hào) 的維持。在本發(fā)明的一個(gè)實(shí)施例中,這將如下維持i.可根據(jù)在三次握手中協(xié)商的值來(lái)設(shè)置TCP序號(hào)的初始值。ii.每當(dāng)從接收緩沖邏輯755向服務(wù)器(或者PC)發(fā)出一個(gè)段時(shí),下一個(gè)預(yù)期序號(hào) 被增加該段中的TCP數(shù)據(jù)的大小。本發(fā)明的一個(gè)例證實(shí)施例利用圖8中所示形式的接收緩沖邏輯755。該接收緩沖 邏輯755的特征可遵循下述規(guī)則(i)當(dāng)收到段時(shí),按照下述方式,根據(jù)段的SEQ把段放入接收緩沖邏輯755中a.如果段與下一個(gè)預(yù)期序號(hào)匹配,那么段被放置在緩沖器810的頭部。b.如果段與下一個(gè)預(yù)期序號(hào)不匹配,那么按SEQ順序820分別緩存段。(ii)當(dāng)段占據(jù)緩沖器的頭部時(shí),它將在815被發(fā)送給服務(wù)器(或PC)。(iii)當(dāng)緩沖器的頭部為空時(shí),將搜索緩沖器的其余部分,以查看是否某一段能夠 被置于緩沖器的頭部(下一個(gè)預(yù)期段序號(hào)已被更新)。請(qǐng)注意,這種緩沖邏輯功能的操作涉及通過空中接口的TCP序號(hào)(或其壓縮版本) 的傳輸。再次重申,不同于圖3中的體系結(jié)構(gòu),即使TCP協(xié)議實(shí)際不工作并且終止于相應(yīng)的 代理,這些實(shí)施例也確實(shí)通過空中接口傳送TCP首部(或者至少壓縮的TCP首部)。發(fā)射同步代理還包括向發(fā)射TCP端點(diǎn)(位于用戶PC或者服務(wù)器)提供提前ACK 的邏輯。從而,如果RLC實(shí)體未能發(fā)送段(比方說(shuō),由于空中接口中的反復(fù)故障),那么同步 代理被安排成重傳該段(注意,TCP端點(diǎn)顯然不能重傳段,因?yàn)樗驯淮_認(rèn))。圖8按照本發(fā)明的實(shí)施例,進(jìn)一步示例了在發(fā)射側(cè)采用的同步TCP代理的緩沖功 能850。進(jìn)入TCP代理556的每個(gè)TCP段855將被保存在發(fā)射緩沖邏輯755中。如圖8中 所示,按照和前面關(guān)于圖5所述一樣的方式來(lái)生成TCP ACK 875。當(dāng)存在來(lái)自發(fā)射RLC實(shí)體的表示構(gòu)成段的所有PDU(注意,一個(gè)段可包含多個(gè)RLC PDU)已被對(duì)等的接收RLC實(shí)體確認(rèn)的指示865時(shí),從該發(fā)射緩沖邏輯755除去/刪除段 870。然而,如果從發(fā)射RLC實(shí)體收到表示發(fā)生了 RLC MRW或RLC重置的指示875時(shí),那 么在880,已被RLC放棄的所有段將被重新發(fā)送給RLC邏輯。例如,在未從接收RLC實(shí)體獲 得與一個(gè)或多個(gè)段相對(duì)應(yīng)的多個(gè)RLC PDU已被正確接收的確認(rèn)的情況下,發(fā)射實(shí)體停止嘗 試發(fā)送與一個(gè)或多個(gè)段相對(duì)應(yīng)的多個(gè)RLC PDU0現(xiàn)在參見圖9,示例了當(dāng)某一段在核心網(wǎng)絡(luò)中丟失時(shí)協(xié)議加速器的操作的例子。網(wǎng) 絡(luò)包括在UE和網(wǎng)絡(luò)中的同步TCP代理555、556,對(duì)于PC 505和比如說(shuō)web服務(wù)器520之間 的端到端通信來(lái)說(shuō),TCP代理被配置成允許已知的三次握手(“SYN”,“SYN ACK”和“ACK”) 透明地通過。
從而,包含在這些TCP消息內(nèi)的信息隨后被用于確保TCP連接最初是PC 505和服 務(wù)器520之間的完全端到端連接。TCP代理觀察在三次握手中使用的SEQ號(hào)和ACK號(hào),加上 協(xié)商的任何選項(xiàng),比如窗口縮放或選擇性確認(rèn)。按照這種方式,TCP代理確保當(dāng)生成由代理 生成的ACK或提前ACK時(shí),它們與TCP連接的實(shí)際端點(diǎn)理應(yīng)生成的ACK (盡可能接近地)相匹配。從而并且有利的是,只要服務(wù)器和PC相連接,則即使TCP實(shí)際上不再經(jīng)過連接的 空中接口部分運(yùn)行,TCP連接仍然好像是端到端鏈接。在本例中,我們假定已發(fā)生了三次握手,并且代理完全同步。如圖所示,“SEQ 1000”和“SEQ 2000”從web服務(wù)器520發(fā)給PC 505。我們假定 公知的延遲ACK功能在工作,從而一般每隔一個(gè)TCP段發(fā)送TCP ACK。從而,在網(wǎng)絡(luò)側(cè)代理 556看到具有SEQ2000的段之后,生成確認(rèn)具有SEQ1000的段和具有SEQ2000的段兩者的 正確接收的TCP ACK 572。網(wǎng)絡(luò)側(cè)代理556允許這些段被發(fā)送給無(wú)線電接入網(wǎng)絡(luò)中的較低 層,隨后通過位于UE的代理555把這些段發(fā)送給PC 505。在570,PC生成ACK。然而,在位 于UE的代理555處,該ACK被丟棄,因?yàn)槎我驯淮砩傻腁CK 572確認(rèn)。當(dāng)收到代理生成的ACK 572時(shí),服務(wù)器再發(fā)送兩個(gè)具有SEQ3000的段905和具有 SEQ4000的段910。如本例中所示,具有SEQ3000的段在核心網(wǎng)絡(luò)中丟失。位于網(wǎng)絡(luò)的代理 按照如由TCP棧的操作定義的正常方式作出反應(yīng),并用確認(rèn)具有SEQ4000的段的接收,但另 外指示未收到SEQ3000的TCP ACK 920進(jìn)行應(yīng)答(注意這假定在三次握手中已協(xié)商了選擇 性確認(rèn))。同時(shí),通過位于網(wǎng)絡(luò)的代理照常發(fā)送具有SEQ4000的段,并在點(diǎn)935在位于UE的 代理收到具有SEQ4000的段。然而,圖9中描述的功能意味著該段不被傳給PC 505,而是被緩存。當(dāng)收到TCP ACK 920時(shí),服務(wù)器在步驟925重傳具有SEQ3000的段。具有SEQ3000 的段隨后通過網(wǎng)絡(luò)側(cè)代理被發(fā)送,并最終到達(dá)位于UE的代理邏輯。圖9中描述的緩沖/重 排邏輯確保具有SEQ3000的段被發(fā)送給用戶PC,隨后是(先前保存的)具有SEQ4000的段。用戶PC隨后發(fā)送確認(rèn)段SEQ3000和SEQ4000的接收的響應(yīng)590。有利的是,維持 了段的順序傳遞。隨后,在UE的代理處丟棄該響應(yīng)590。按照和圖9類似的方式,圖10示例了按照本發(fā)明的實(shí)施例,當(dāng)數(shù)據(jù)段“SEQ 3000” 1005在RAN中丟失(例如,由于RLC達(dá)到RLC協(xié)議數(shù)據(jù)單元(PDU)的最大重傳嘗試 次數(shù)并因此放棄整個(gè)段)時(shí),同步TCP代理的操作的例子。位于網(wǎng)絡(luò)的代理以響應(yīng)消息1020來(lái)確認(rèn)段SEQ3000和SEQ4000兩者。隨后,即使 位于網(wǎng)絡(luò)的發(fā)射RLC實(shí)體成功地發(fā)送了具有SEQ4000的段,它也放棄嘗試發(fā)送具有SEQ3000 的段(參見1040)。代理邏輯被告知對(duì)于該段發(fā)生了 MRW,因此,利用圖10中討論的功能,在消息1030 中重傳該段。在位于UE的接收側(cè)代理處,這明顯地意味著在具有SEQ3000的段之前收到具 有SEQ4000的段。然而,和圖9中討論的情況一樣,圖10中討論的緩沖和重排邏輯確保在 點(diǎn)1035處保存具有SEQ4000的段。一旦在位于UE的代理處收到具有SEQ3000的段,那么該段就被發(fā)送給用戶PC,隨 后是保存的具有SEQ4000的段。
按照與圖9和圖10相似的方式,圖11示例了按照本發(fā)明的實(shí)施例,當(dāng)數(shù)據(jù)段“SEQ 3000” 1105在UE代理邏輯555和客戶端PC 505之間丟失時(shí),協(xié)議加速器的操作的例子。這里,與位于UE的代理相關(guān)聯(lián)的標(biāo)準(zhǔn)TCP棧功能確保如果段在位于UE的代理和 用戶PC之間丟失,并且當(dāng)PC 505在消息1135中發(fā)送指示未收到具有SEQ3000的段,但是 成功收到具有SEQ4000的段的TCP ACK時(shí),代理通過重傳具有SEQ3000的段而作出響應(yīng)。值得注意的是,如上面提及的例子舉例所示,引入位于空中接口兩端的代理邏輯 的附加邏輯確保了當(dāng)識(shí)別丟失時(shí),在實(shí)際的接收端點(diǎn)實(shí)際收到段之前,從代理向發(fā)送者返 回 TCP ACK。盡管本發(fā)明的一個(gè)實(shí)施例描述了可把位于空中接口的兩端的代理邏輯用于3GPP 網(wǎng)絡(luò)的原理,但在其它例子中,本發(fā)明的原理適用于采用TCP的任何其它通信系統(tǒng),比如未 來(lái)的3GPP長(zhǎng)期演進(jìn)(LTE)系統(tǒng)。本發(fā)明的實(shí)施例目的在于提供下述優(yōu)點(diǎn)中的一個(gè)或多個(gè)(i)使用RLC用于快速重傳丟失的分組,而不是在重傳功能方面依賴于TCP。(ii)位于空中接口兩端的代理邏輯的使用消除了發(fā)射和接收ACK、NACK同步消息 的需要。圖12示例了可用于實(shí)現(xiàn)本發(fā)明的實(shí)施例中的處理功能的典型計(jì)算系統(tǒng)1200。這 種計(jì)算系統(tǒng)可以用在節(jié)點(diǎn)B (特別地,節(jié)點(diǎn)B的調(diào)度器)、諸如例如GGSN的核心網(wǎng)絡(luò)部件、和 RNC中。本領(lǐng)域的技術(shù)人員也將認(rèn)識(shí)到如何利用其它計(jì)算機(jī)系統(tǒng)或架構(gòu)來(lái)實(shí)現(xiàn)本發(fā)明。例 如,計(jì)算系統(tǒng)1200可代表桌上型、膝上型或筆記本計(jì)算機(jī)、手持式計(jì)算裝置(PDA、蜂窩電話 機(jī)、掌上型電腦等)、主機(jī)、服務(wù)器、客戶機(jī),或者對(duì)于給定應(yīng)用或環(huán)境來(lái)說(shuō)合意或適當(dāng)?shù)娜?意其它類型的專用或通用計(jì)算裝置。計(jì)算系統(tǒng)1200可包括一個(gè)或多個(gè)處理器,比如處理器 1204。處理器1204可以利用通用或?qū)S锰幚硪?,比如微處理器、微控制器或其它控制?輯來(lái)實(shí)現(xiàn)。在本例中,處理器1204與總線1202或其它通信介質(zhì)相連接。計(jì)算系統(tǒng)1200還可包括主存儲(chǔ)器1208,比如隨機(jī)訪問存儲(chǔ)器(RAM)或其它動(dòng)態(tài) 存儲(chǔ)器,用于保存信息和由處理器1204執(zhí)行的指令。主存儲(chǔ)器1208還可用于在由處理器 1204執(zhí)行的指令的執(zhí)行過程中保存臨時(shí)變量或其它中間信息。同樣地,計(jì)算系統(tǒng)1200可包 括與總線1202耦接的只讀存儲(chǔ)器(ROM)或其它靜態(tài)存儲(chǔ)裝置,用于為處理器1204保存靜 態(tài)信息和指令。計(jì)算系統(tǒng)1200還可包括信息存儲(chǔ)系統(tǒng)1210,例如,信息存儲(chǔ)系統(tǒng)1210可包括例如 介質(zhì)驅(qū)動(dòng)器1212和可拆卸存儲(chǔ)器接口 1220。介質(zhì)驅(qū)動(dòng)器1212可包括支持固定或可拆卸 存儲(chǔ)介質(zhì)的驅(qū)動(dòng)器或其它機(jī)構(gòu),比如硬盤驅(qū)動(dòng)器、軟盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器、光盤驅(qū)動(dòng)器、壓 縮光盤(CD)或數(shù)字視頻驅(qū)動(dòng)器(DVD)讀取或?qū)懭腧?qū)動(dòng)器(R或RW),或者其它可拆卸或固 定的介質(zhì)驅(qū)動(dòng)器。例如,存儲(chǔ)介質(zhì)1218可包括例如硬盤、軟盤、磁帶、光盤、CD或DVD、或者 其它由介質(zhì)驅(qū)動(dòng)器1212讀取和寫入的固定或可拆卸介質(zhì)。如這些例子舉例所示,存儲(chǔ)介質(zhì) 1218可包括其中保存有特定計(jì)算機(jī)軟件或數(shù)據(jù)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。在備選實(shí)施例中,信息存儲(chǔ)系統(tǒng)1210可包括允許計(jì)算機(jī)程序或者其它指令或數(shù) 據(jù)被載入計(jì)算系統(tǒng)1200中的其它類似組件。例如,這樣的組件可包括可拆卸存儲(chǔ)單元1222 和接口 1220,比如程序盒式存儲(chǔ)器和盒式存儲(chǔ)器接口、可拆卸存儲(chǔ)器(例如,閃速存儲(chǔ)器或 者其它可拆卸存儲(chǔ)器模塊)和存儲(chǔ)器插槽、以及允許軟件和數(shù)據(jù)從可拆卸存儲(chǔ)單元1218轉(zhuǎn)移到計(jì)算系統(tǒng)1200的其它可拆卸存儲(chǔ)單元1222和接口 1220。計(jì)算系統(tǒng)1200還可包括通信接口 1224。通信接口 1224可被用于允許在計(jì)算系統(tǒng) 1200和外部裝置之間傳送軟件和數(shù)據(jù)。通信接口 1224的例子可包括調(diào)制解調(diào)器、網(wǎng)絡(luò)接口 (比如以太網(wǎng)或其它NIC卡)、通信端口(諸如例如,通用串行總線(USB)端口)、PCMCIA插 槽和卡等等。經(jīng)由通信接口 1224傳送的軟件和數(shù)據(jù)呈信號(hào)的形式,所述信號(hào)可以是能夠被 通信接口 1224接收的電子信號(hào)、電磁信號(hào)、光信號(hào)或者其它信號(hào)。這些信號(hào)經(jīng)由通道1228 被提供給通信接口 1224。通道1228可傳送信號(hào),并且可以利用無(wú)線介質(zhì)、導(dǎo)線或電纜、光 纖、或者其它通信介質(zhì)來(lái)實(shí)現(xiàn)。通道的一些例子包括電話線、蜂窩電話鏈路、RF鏈路、網(wǎng)絡(luò) 接口、局域網(wǎng)或廣域網(wǎng)、和其它通信通道。在本文中,術(shù)語(yǔ)“計(jì)算機(jī)程序產(chǎn)品”、“計(jì)算機(jī)可讀介質(zhì),,等通??杀挥糜谥复T如 例如存儲(chǔ)器1208、存儲(chǔ)裝置1218或存儲(chǔ)單元1222的介質(zhì)。這些和其它形式的計(jì)算機(jī)可讀 介質(zhì)可保存供處理器1204使用的一個(gè)或多個(gè)指令,以使處理器執(zhí)行指定的操作。當(dāng)被執(zhí)行 時(shí),通常被稱為“計(jì)算機(jī)程序代碼”(所述計(jì)算機(jī)程序代碼可按計(jì)算機(jī)程序或其它分組的形 式分類)的這種指令使計(jì)算系統(tǒng)1200能夠?qū)崿F(xiàn)本發(fā)明的實(shí)施例的功能。注意,該代碼可直 接使處理器執(zhí)行指定操作,經(jīng)編譯使處理器執(zhí)行指定操作,和/或與其它軟件、硬件和/或 固件元件(例如,執(zhí)行標(biāo)準(zhǔn)函數(shù)的庫(kù))相結(jié)合地使處理器執(zhí)行指定操作。在利用軟件實(shí)現(xiàn)各個(gè)部件的實(shí)施例中,軟件可保存在計(jì)算機(jī)可讀介質(zhì)中,并利用 例如可拆卸存儲(chǔ)器驅(qū)動(dòng)器1212、驅(qū)動(dòng)器1212或通信接口 1224被載入計(jì)算系統(tǒng)1200中。當(dāng) 由處理器1204執(zhí)行時(shí),控制邏輯(本例中,軟件指令或計(jì)算機(jī)程序代碼)使處理器1204執(zhí) 行這里所述的本發(fā)明的功能。要認(rèn)識(shí)到,為了清楚起見,上面的說(shuō)明關(guān)于不同的功能單元和處理器描述了本發(fā) 明的實(shí)施例。然而,在不脫離本發(fā)明的情況下,顯然可以使用功能性在不同的功能單元、處 理器或域之間的任何適當(dāng)分布。例如,被示例為由分離的處理器或控制器執(zhí)行的功能可由 同一處理器或控制器執(zhí)行。從而,對(duì)具體功能單元的引用只應(yīng)被看作對(duì)提供所述功能的適 當(dāng)裝置的引用,而不是表示嚴(yán)格的邏輯或物理結(jié)構(gòu)或組織??捎萌魏芜m當(dāng)?shù)男问剑ㄓ布?、軟件、固件或它們的任意組合來(lái)實(shí)現(xiàn)本發(fā)明的各 個(gè)方面??蛇x的是,本發(fā)明至少可被部分實(shí)現(xiàn)成在一個(gè)或多個(gè)數(shù)據(jù)處理器和/或數(shù)字信號(hào) 處理器上運(yùn)行的計(jì)算機(jī)軟件。從而,可按照任何適當(dāng)?shù)姆绞皆谖锢砩?、功能上和邏輯上?shí)現(xiàn) 本發(fā)明的實(shí)施例的部件和組件。實(shí)際上,可用單一單元、多個(gè)單元、或者其它功能單元的一 部分來(lái)實(shí)現(xiàn)功能。盡管結(jié)合實(shí)施例說(shuō)明了本發(fā)明,但本發(fā)明并不局限于這里陳述的具體形式。相反, 本發(fā)明的范圍僅由權(quán)利要求限定。另外,盡管某一特征看來(lái)是結(jié)合特定實(shí)施例說(shuō)明的,但本 領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到可按照本發(fā)明組合所描述的實(shí)施例的各個(gè)特征。此外,盡管是分別列舉的,但多個(gè)裝置、部件或方法步驟可用例如單個(gè)單元或處理 器實(shí)現(xiàn)。另外,盡管各個(gè)特征被包括在不同的權(quán)利要求中,但它們也可被有利地組合,并且 包括在不同權(quán)利要求中并不意味特征的組合不可行和/或不利。并且,某一特征包含在一 種類型的權(quán)利要求中并不意味著局限于這種類型,相反,該特征同樣可酌情適用于其它權(quán) 利要求類型。此外,各個(gè)特征在權(quán)利要求中的順序并不意味必須按其實(shí)現(xiàn)所述各個(gè)特征的任何特定順序,具體地講,方法權(quán)利要求中的各個(gè)步驟的順序并不意味必須按該順序執(zhí)行各個(gè) 步驟。相反,可按照任何適當(dāng)?shù)捻樞驁?zhí)行各個(gè)步驟。另外,單數(shù)引用并不排除復(fù)數(shù)。從而, 對(duì)“一個(gè)”、“第一”、“第二”等的引用并不排除復(fù)數(shù)。
權(quán)利要求
1.一種位于第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的高等待時(shí)間通信鏈路的一端的 通信實(shí)體(510,520),所述通信實(shí)體包括用于支持第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的傳輸控制協(xié)議(TCP)通信的通信 邏輯,用于檢查接收的段的代理邏輯,其中,所述代理邏輯操作用于響應(yīng)于識(shí)別出接收的段不包含數(shù)據(jù),透明地允許多個(gè)同 步段經(jīng)由所述代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳遞,所述代理邏輯進(jìn)一步操作用于根據(jù)所述多個(gè)同步段和接收的段,本地生成至少一個(gè)確 認(rèn)消息。
2.按照權(quán)利要求1所述的通信實(shí)體(510,520),其中,所述代理邏輯進(jìn)一步操作用于當(dāng) 后續(xù)接收的段包含數(shù)據(jù)時(shí)進(jìn)行再同步,其中,所述再同步基于包含在后續(xù)接收的段中的序號(hào)。
3.按照權(quán)利要求2所述的通信實(shí)體(510,520),其中,所述代理邏輯進(jìn)一步操作用于拒 絕任何不包含數(shù)據(jù)的后續(xù)接收的段。
4.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,所述多個(gè)同步段包含三次握手。
5.按照權(quán)利要求4所述的通信實(shí)體(510,520),其中,所述三次握手包含下述至少之同步指示(SYN 542);同步確認(rèn)指示(SYN ACK 544);和確認(rèn)指示(ACK 546)。
6.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,所述高等待時(shí)間通 信鏈路是無(wú)線數(shù)據(jù)通信系統(tǒng)的空中接口。
7.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,代理邏輯進(jìn)一步包 括無(wú)線電鏈路控制邏輯,用于通過確定下述至少之一何時(shí)發(fā)生來(lái)識(shí)別數(shù)據(jù)段的丟失移動(dòng)接收窗口(MRW);或 重置。
8.按照權(quán)利要求7所述的通信實(shí)體(510,520),其中,所述無(wú)線電鏈路控制邏輯可操作 地與緩沖邏輯相耦接,并且所述緩沖邏輯操作用于保存接收的數(shù)據(jù)段,直到無(wú)線電鏈路控 制邏輯向緩沖邏輯指示所有數(shù)據(jù)段已被無(wú)線電鏈路控制RLC確認(rèn)。
9.按照權(quán)利要求8所述的通信實(shí)體(510,520),其中,所述緩沖邏輯操作用于響應(yīng)于來(lái) 自無(wú)線電鏈路控制邏輯的所述指示,從緩沖邏輯的緩沖器中丟棄被確認(rèn)的數(shù)據(jù)。
10.按照權(quán)利要求7-9任意之一所述的通信實(shí)體(510,520),其中,所述通信實(shí)體位于 所述高等待時(shí)間通信鏈路的接收側(cè),并且當(dāng)由于無(wú)線電鏈路控制邏輯所宣稱的MRW或重置 未成功收到數(shù)據(jù)段的所有序號(hào)時(shí),無(wú)線電鏈路控制邏輯操作用于請(qǐng)求重傳遺失的數(shù)據(jù)。
11.按照權(quán)利要求7-9任意之一所述的通信實(shí)體(510,520),其中,所述通信實(shí)體位于 所述高等待時(shí)間通信鏈路的發(fā)射側(cè),并且所述無(wú)線電鏈路控制邏輯操作用于識(shí)別通過高等 待時(shí)間通信鏈路發(fā)送的至少一個(gè)數(shù)據(jù)段已受到MRW或重置,從而未在接收RLC對(duì)等實(shí)體處 被收到,并且操作用于響應(yīng)于此,啟動(dòng)從緩沖邏輯重傳未被確認(rèn)的RLC數(shù)據(jù)段。
12.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,所述代理邏輯操作 用于本地生成利用同步段被正確同步的否定TCP確認(rèn)(NACK)。
13.按照權(quán)利要求8-12任意之一所述的通信實(shí)體(510,520),其中,所述緩沖邏輯包含 發(fā)射緩沖邏輯和接收緩沖邏輯,所述發(fā)射緩沖邏輯和接收緩沖邏輯操作用于觀察下述至少 之一在多個(gè)同步段內(nèi)的維持序號(hào)(SEQ); 確認(rèn)(ACK)號(hào); 窗口縮放; 選擇性確認(rèn);或者 時(shí)間戳。
14.按照權(quán)利要求13所述的通信實(shí)體(510,520),其中,所述代理邏輯操作用于根據(jù)觀 察到的在沒有代理的情況下接收實(shí)體理應(yīng)生成的下述至少之一的所述維持,生成提前ACK 消息序號(hào)(SEQ); 確認(rèn)(ACK)號(hào); 窗口縮放; 選擇性確認(rèn);或者 時(shí)間戳。
15.按照權(quán)利要求13或14所述的通信實(shí)體(510,520),其中,所述代理邏輯操作用于 根據(jù)窗口縮放,接收在ACK或NACK消息中用信號(hào)通知的awnd值。
16.按照權(quán)利要求15所述的通信實(shí)體(510,520),其中,所述代理邏輯操作用于根據(jù)緩 沖器占用率來(lái)計(jì)算awnd值。
17.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,所述代理邏輯操作 用于響應(yīng)于代理邏輯確定TCP ACK不包含數(shù)據(jù),終止TCP ACK,并且不通過高等待時(shí)間通信 鏈路發(fā)送TCP ACK。
18.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,所述代理邏輯操作 用于在接收TCP實(shí)體發(fā)射其相應(yīng)的ACK之前,向發(fā)射實(shí)體發(fā)回TCP ACK。
19.按照前述權(quán)利要求任意之一所述的通信實(shí)體(510,520),其中,所述通信實(shí)體是下 述之一用戶設(shè)備(UE);或 網(wǎng)絡(luò)實(shí)體;并且所述通信邏輯操作用于支持第三代合作伙伴計(jì)劃(3GPP)數(shù)據(jù)通信系統(tǒng)內(nèi)的TCP通信。
20.一種位于第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的高等待時(shí)間通信鏈路的一端 的通信實(shí)體(510,520)中的用于支持傳輸控制協(xié)議TCP通信的代理邏輯,所述代理邏輯包 含用于檢查接收的段的檢查邏輯,其中,所述檢查邏輯操作用于響應(yīng)于識(shí)別出接收的段 不包含數(shù)據(jù),透明地允許多個(gè)同步段經(jīng)由所述代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí) 體之間傳遞;以及根據(jù)多個(gè)同步段至少之一和所述接收的段,生成至少一個(gè)確認(rèn)消息的確認(rèn)邏輯。
21.一種計(jì)算機(jī)實(shí)現(xiàn)的由位于數(shù)據(jù)通信系統(tǒng)中的第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之 間的高等待時(shí)間通信鏈路的一端的通信實(shí)體提供傳輸控制協(xié)議TCP通信的方法,包括實(shí)現(xiàn) 下述操作的指令由TCP代理邏輯檢查接收的段;響應(yīng)于確定所述接收的段不包含數(shù)據(jù),透明地允許多個(gè)同步段經(jīng)由代理邏輯在第一收 發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳遞;以及由代理邏輯根據(jù)多個(gè)同步段至少之一和接收的段,本地生成至少一個(gè)確認(rèn)消息。
22.—種數(shù)據(jù)通信系統(tǒng),所述數(shù)據(jù)通信系統(tǒng)包括位于高等待時(shí)間通信鏈路的一端,并且 支持第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的傳輸控制協(xié)議TCP通信的通信實(shí)體,所述數(shù) 據(jù)通信系統(tǒng)包含位于通信實(shí)體中的代理邏輯,其中,所述代理邏輯操作用于檢查接收的段,并且響應(yīng)于 識(shí)別出所述接收的段不包含數(shù)據(jù),透明地允許多個(gè)同步段經(jīng)由代理邏輯在第一收發(fā)機(jī)實(shí)體 和第二收發(fā)機(jī)實(shí)體之間傳遞,其中,所述代理邏輯進(jìn)一步操作用于根據(jù)多個(gè)同步段至少之 一和所述接收的段,本地生成至少一個(gè)確認(rèn)消息。
全文摘要
通信實(shí)體位于高等待時(shí)間通信鏈路的一端,以支持第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間的傳輸控制協(xié)議(TCP)通信。所述通信實(shí)體包含被安排成檢查接收的段的代理邏輯,并且所述代理邏輯響應(yīng)于識(shí)別出所述接收的段不包含數(shù)據(jù),透明地允許多個(gè)同步段經(jīng)由所述代理邏輯在第一收發(fā)機(jī)實(shí)體和第二收發(fā)機(jī)實(shí)體之間傳遞,使得所述代理邏輯根據(jù)同步段和檢查的接收段,本地生成至少一個(gè)確認(rèn)消息。
文檔編號(hào)H04W80/06GK102007812SQ200980104957
公開日2011年4月6日 申請(qǐng)日期2009年2月3日 優(yōu)先權(quán)日2008年2月12日
發(fā)明者T·J·斯佩特 申請(qǐng)人:Ip無(wú)線有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1