專利名稱:Nack協議的方法與設備的制作方法
技術領域:
一般地,本發(fā)明涉及通信系統(tǒng),更具體地,涉及此類通信系統(tǒng)內的否定確認(NAK)抑制。
背景技術:
在目前的碼分多址(CDMA)通信系統(tǒng)中,鏈路層利用無線鏈路協議(RLP)來在移動單元與基礎架構設備之間傳輸數據業(yè)務。RLP是基于否定確認(NAK)的協議,這是因為接收器不確認正確地接收到的RLP幀。通過在每個幀內使用序列號(SEQ)來完成有序遞送。RLP維護一個計數器,其用于要發(fā)送的下一個新的數據幀的序列號[SEQ(S)],以及另一個計數器,其用于期望接收的下一個新的數據幀的序列號[SEQ(R)]。當接收到的幀的序列號大于下一個期望的序列號(SEQ(R))時,RLP請求重發(fā)RLP幀。重發(fā)的實現是向確定未收到幀序列號的發(fā)射器發(fā)送NAK。在接收到NAK的幀之前,接收器繼續(xù)接收其后發(fā)送的RLP幀。
圖1闡釋了目前的RLP NAK過程。如圖所示,幀101被發(fā)射器101通過無線發(fā)送,并被接收器作為幀102接收。在基于無線的傳輸中,數據經常丟失并需要重傳到接收器。這在圖1中顯示為幀F3被丟失。在接收到幀F4時,接收器立刻意識到幀F3丟失,并請求重傳F3,其向發(fā)射器發(fā)送NAK。目前的RLP協議標準規(guī)定NAK控制幀優(yōu)先于任何攜帶數據或其它信道信息的RLP幀。在接收到NAK時,發(fā)射器重發(fā)F3。
需要注意的是,單個NAK可以請求重發(fā)多個RLP幀(如圖2所示)。在圖2中,RLP幀F2與F3丟失。當接收到RLP幀F4時,接收器檢測到序列缺口,并發(fā)送單個NAK幀,請求重發(fā)2個RLP幀,F2與F3。
當接收器在短時間內不能接收多個幀時,問題產生了。在此情形中,接收器將發(fā)送NAK幀的穩(wěn)定的流,擁塞從接收器到發(fā)射器的通信鏈路。圖3顯示了此問題的一個示例。在典型應用(例如網頁瀏覽)中,數據流是非對稱的。對于大的丟幀率(FER)或在每幀間隔內到達許多有序列號的幀的情形,有很大的可能性使得至少一個RLP幀在每個傳輸間隔內被丟棄(erase)。在圖3中,RLP幀F4、F7、F15與F18在4個相鄰的傳輸間隔內被丟棄。序列號上的缺口將生成4個相鄰的NAK幀,其請求重發(fā)丟失的RLP幀。當此情形持續(xù)時,不能從接收器向發(fā)射器發(fā)送其他用戶/控制數據(例如TCP/IP ACK)。由于客戶端需要通過發(fā)送TCP/IP ACK來響應每個下載的分組,當等待沒有RLP NAK被發(fā)送的間隔時,TCP/IP ACK被推遲。
現有技術的方法試圖處理糟糕的信道條件導致的NAK幀的泛濫。例如,題為“Method and Computer Program Product for Efficiently andReliably Sending Small Data Messages from a Sending System to a LargeNumber of Receiving Systems(用于有效地可靠地從發(fā)送系統(tǒng)向大數量的接收系統(tǒng)發(fā)送小數據消息的方法與電腦程序產品)”的美國專利6,112,323,描述了一種NAK抑制系統(tǒng),其中根據定義的概率函數選擇延遲時間。上述技術產生可預測數目的NAK幀,其在給定延遲時間之后被發(fā)送。通過將概率密度作為多個系統(tǒng)參數(例如網絡分組丟失率)的函數進行調整,可調整在給定時間發(fā)送的NAK幀的數目,以適應網絡條件。
盡管上述流程確實減少了發(fā)送多個NAK的沖擊,上述流程仍然導致NAK在不合適的時間段被發(fā)送。因此,存在對方法與設備的需要,其用于通信系統(tǒng)內的NAK抑制,更精確地確定發(fā)送NAK幀的最佳時間段,以減小系統(tǒng)資源負荷。
圖1闡釋現有技術的RLP NAK過程,其在一個NAK內發(fā)送一個序列號的重發(fā)請求。
圖2闡釋現有技術的RLP NAK過程,其在一個NAK內發(fā)送多個序列號的重發(fā)請求。
圖3闡釋現有技術的RLP NAK過程的問題,其中在相鄰的發(fā)送時期內發(fā)送多個RLP NAK幀。
圖4是根據本發(fā)明的優(yōu)選實施例的通信系統(tǒng)的框圖。
圖5是顯示根據本發(fā)明的優(yōu)選實施例的圖4通信系統(tǒng)的操作的流程圖。
具體實施例方式
為解決上面提到的需要,這里提供一種方法與設備,其用于NAK抑制。遵照本發(fā)明的優(yōu)選實施例,邏輯電路持續(xù)地監(jiān)測數據發(fā)送隊列,以確定是否要發(fā)送任何用戶數據。邏輯電路抑制NAK幀的產生與發(fā)送,直到滿足特定條件。這些條件可被表示為邏輯(布爾)變量,其值由如下測試確定NAK序列列表大小,NAK序列號等待時間,數據與其它信道信息隊列大小,以及數據隊列內的數據的等待時間。作為測試的一部分,邏輯電路抑制全部NAK幀,直到NAK發(fā)生器已緩沖預定數量的待NAK的序列號。特別地,邏輯電路判定何時待NAK的序列號的數目達到最大值,其可由單個NAK RLP幀攜帶。一旦已收集到預定數目的序列號,邏輯電路將指令NAK發(fā)生器生成NAK幀。
上述流程減少了數據與其它信道信息的擁塞,允許其被發(fā)送,甚至在生成了許多NAK幀的情形下。
本發(fā)明包括一種否定確認(NAK)抑制的方法。此方法包括以下步驟判定需要發(fā)送NAK,并判定目前需要在信道上發(fā)送數據或其它信道信息。如果不需要在信道上發(fā)送數據或其它信道信息,則發(fā)送NAK,否則緩沖NAK。
本發(fā)明另外還包括一種方法,其包括如下步驟判定需要在信道上發(fā)送NAK,判定當前緩沖了若干NAK,并且如果已緩沖了預定數目的NAK的話,發(fā)送當前緩沖的NAK連同該NAK,否則緩沖該NAK。
本發(fā)明另外還包括一種設備。該設備包括緩沖器,其存儲NAK,還包括邏輯電路,其連接到該緩沖器,該邏輯電路以發(fā)射器的發(fā)送狀態(tài)為輸入,并基于發(fā)射器的發(fā)送狀態(tài)輸出對NAK發(fā)生器的指令,以生成NAK。
現在轉到附圖,其中相似的數字標注相似的部件。圖4是根據本發(fā)明優(yōu)選實施例的通信系統(tǒng)400的框圖。如圖所示,通信系統(tǒng)400包括發(fā)送電路401和接收電路(或遠程單元)402。發(fā)送電路優(yōu)選地是CDMA無線接入網絡,例如Motorola SC集中式基站控制器以及Motorola SC 4800基站收發(fā)器系統(tǒng),并且接收電路優(yōu)選地是移動或蜂窩手持設備,例如Motorola StarTAC。
操作期間,數據進入邏輯單元404與緩沖器405。數據從邏輯單元404傳遞到發(fā)射器403,在此其被通過通信信道408發(fā)送到接收電路402。CDMA無線(over-the-air)協議使用RLP。如上面所討論的那樣,RLP是基于否定確認的協議,這是因為接收器不確認正確地接收到的RLP幀。接收電路402僅請求重發(fā)丟失的RLP幀,其向發(fā)射器發(fā)送NAK。特別地,當接收到不按順序的幀時,接收器406將指令NAK發(fā)生器407 NAK不適當地接收到(或未接收到)的幀。NAK將通過通信信道408發(fā)送,并為發(fā)送電路401(通過接收器,未顯示)接收。NAK最終為邏輯單元404接收,邏輯單元404從緩沖器405內獲取丟失的幀,并指令發(fā)射器403將該幀重發(fā)到接收電路402。
如上面所討論的那樣,當接收器406不能在短時間內接收多幀,或者當丟幀分布的方式以高概率(例如0.8)在每個傳輸時期內在接收器產生至少一個RLP序列缺口時,問題產生了。在此情形中,現有技術的系統(tǒng)產生NAK幀的泛濫,占據有價值的系統(tǒng)資源。為解決此情形,在本發(fā)明的優(yōu)選實施例中利用了NAK抑制。特別地,邏輯電路409在緩沖器411內緩沖全部需要NAK的序列號,并在滿足系統(tǒng)條件時,指令NAK發(fā)生器407發(fā)送一個或多個NAK幀。特別地,如果緩沖器412內的數據與其它信道信息已等待超過預先確定的時間間隔(例如100毫秒),或者緩沖器412的大小已達到預先確定的水平(例如64字節(jié)),或者系統(tǒng)中剩余的RF容量小于某門限,邏輯電路409就抑制NAK幀產生。如果滿足三個條件中的至少一個,NAK的產生將被抑制,并且數據或其它信道信息將在當前傳輸時期內從接收器發(fā)送到發(fā)射器。如果兩種條件均未滿足,當序列號緩沖器411不為空時,邏輯電路409將指令NAK發(fā)生器407創(chuàng)建NAK幀。
在本發(fā)明的優(yōu)選實施例中,如果NAK延遲定時器已到期,或者要NAK的序列號已達到預先確定的數目,邏輯電路409將不會抑制NAK的生成(如上面所描述的那樣)。如果滿足兩個條件之一,邏輯電路409指令NAK發(fā)生器407創(chuàng)建NAK幀,其包括411內緩沖的全部序列號。特定地,當要發(fā)送的NAK的數目完全填滿無線幀,或者超過預先確定的時間(例如3秒)時,總會產生NAK。
上述過程減少數據與其它信道信息的擁塞,允許其被發(fā)送,甚至在生成許多NAK的情形下也是如此。另外,通過在當RF資源稀缺時減少發(fā)送的NAK幀的數目,增加了RF容量。
圖5是流程圖,其顯示根據本發(fā)明優(yōu)選實施例的圖4通信系統(tǒng)的操作。邏輯流在步驟501開始,其中邏輯電路409判定是否需要通過發(fā)送電路401發(fā)送NAK幀。為此的條件是緩沖器411中存在有至少一個要NAK的序列號。如果在步驟501判定需要發(fā)送NAK,邏輯流繼續(xù)到步驟503,否則邏輯流簡單地返回步驟501。
在步驟503,邏輯電路409判定緩沖器411內的序列號的數量是否超過預先確定的門限,或者是否有任何序列號的排隊時間超過預先確定的時間段(例如3秒)。如果兩個條件均不為真,邏輯流繼續(xù)到步驟505,否則邏輯電路409指令NAK發(fā)生器407生成和發(fā)送NAK幀,以緩沖器411內駐留的序列號填充它(步驟509),并清除緩沖區(qū)(步驟511)。
在步驟505,邏輯電路409判定緩沖器412內的數據量是否超過預先確定的門限,或者緩沖器412內的數據的排隊時間是否超過預先確定的時間段。如果任何一個條件為真,則邏輯流繼續(xù)到步驟507,其中繼續(xù)緩沖NAK,而發(fā)送數據與其它信道信息。如果在步驟505測試的兩個條件均為假,邏輯流繼續(xù)到步驟509,其中邏輯電路409指令NAK發(fā)生器407生成和發(fā)送NAK幀,以緩沖區(qū)411內駐留的序列號填充它。
如上面所討論的那樣,上述流程減小了多個NAK幀的傳輸施加在系統(tǒng)資源上的負擔。特別地,從圖3我們可以看到,通過限制NAK幀的延遲為2個傳輸間隔,并且設置每個NAK幀的序列號的最大數目為2,發(fā)送的NAK幀的數目減少了50%,并且相應的RF資源現在可用于要發(fā)送的數據與其它信道信息。例如,在圖3中,四個相鄰的NAK幀可以將接收器發(fā)送的TCP/IP ACK段延遲至少4個傳輸時期,其隨之增加了TCP的往返時間,導致TCP超時與吞吐量的退化。
盡管本發(fā)明參照特定實施例具體地顯示和描述,本領域技術人員將理解,其中可在形式與細節(jié)上做出多種變化,而不偏離本發(fā)明的實質與范圍。例如,盡管以上描述采用多種技術來減少多個NAK傳輸對系統(tǒng)資源的影響,本領域普通技術人員將意識到,可單獨地利用各種技術。這些變化處于所附權利要求書的范圍之內。
權利要求
1.一種否定確認(NAK)抑制的方法,所述方法包括以下步驟判定需要發(fā)送NAK;判定當前是否需要在信道上發(fā)送數據或其它信道信息;和如果不需要在所述信道上發(fā)送數據與其它信道信息,就發(fā)送所述NAK,否則緩沖所述NAK。
2.如權利要求1所述的方法,其進一步包括以下步驟判定是否已緩沖預定數目的NAK;和如果已緩沖所述預定數目的NAK,則發(fā)送所述的多個NAK,否則緩沖所述NAK。
3.如權利要求2所述的方法,其中,所述的如果已緩沖所述預定數目的NAK,則發(fā)送所述多個NAK的步驟包括如果NAK的數目等于為填充無線幀所需的NAK的數量,則發(fā)送所述多個NAK的步驟。
4.一種方法,其包括以下步驟判定需要在信道上發(fā)送NAK;判定當前緩沖了一定數目的NAK;和如果已緩沖所述預定數目的NAK,則發(fā)送所述的當前緩沖的多個NAK,以及所述NAK,否則緩沖所述NAK。
5.如權利要求4所述的方法,其進一步包括以下步驟判定當前是否需要在所述信道上發(fā)送數據或其它信道信息;和如果不需要在所述信道上發(fā)送數據與其它信道信息,就發(fā)送所述NAK,否則緩沖所述NAK。
6.如權利要求4所述的方法,其中,所述的如果已緩沖所述預定數目的NAK,則發(fā)送所述多個NAK的步驟包括如果NAK的數目等于為填充無線幀所需的NAK的數量,則發(fā)送所述多個NAK的步驟。
7.一種設備,其包括緩沖器,其存儲NAK;和邏輯電路,其連接到所述緩沖器,所述邏輯電路以發(fā)射器的發(fā)送狀態(tài)為輸入,并基于所述發(fā)射器的所述發(fā)送狀態(tài),輸出對NAK發(fā)生器的指令,以生成NAK。
8.如權利要求7所述的設備,其中,所述發(fā)射器的所述發(fā)送狀態(tài)包括有關當前是否有數據或其它信道信息正在等待發(fā)送的信息。
9.如權利要求7所述的設備,其中,所述邏輯電路基于所述緩沖器內存儲的一定數目的NAK,額外地輸出對所述NAK發(fā)生器的指令,以生成NAK。
全文摘要
邏輯電路(409)持續(xù)地監(jiān)測發(fā)射器(410),以判定發(fā)射器(410)是否空閑。邏輯電路(409)抑制全部NAK,直到發(fā)射器(410)不再發(fā)送數據與其它信道信息,并且RF資源不再稀缺。另外,邏輯電路(409)抑制全部NAK,直到邏輯電路(409)已緩沖預定數目的NAK。更具體地,邏輯電路(409)判定何時NAK的數目將足夠填充無線(over-the-air)幀。一旦已收集到預定數目的NAK,邏輯電路(409)將生成適宜的NAK。
文檔編號H04L1/16GK1628433SQ03803464
公開日2005年6月15日 申請日期2003年1月21日 優(yōu)先權日2002年2月7日
發(fā)明者伊凡·N·武科維奇, 約翰·M·哈里斯 申請人:摩托羅拉公司