專利名稱:Ack發(fā)送方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù),具體地涉及一種藍牙通信過程中ACK發(fā)送 的方法和設(shè)備。
背景技術(shù):
2008年6月26日國際藍牙組織正式發(fā)布了含有eL2CAP (ERTM/SM模式)的新核心補充規(guī)范。未來一代藍牙核心規(guī)范(西雅 圖版本)中最為重要的一個變革是引入了 AMP (可替換物理層)架構(gòu), 這是一種創(chuàng)新的無線技術(shù)(RF)替代規(guī)則。新核心補充規(guī)范允許藍牙 協(xié)議棧針對任務(wù)動態(tài)的選擇合適的無線技術(shù),在兼容原有藍牙 2.1+EDR的前提下,增加了對802.11 (WiFi)和ECMA368 (UWB) 等高速傳輸層的支持,而藍牙高層協(xié)議和應(yīng)用程序皆無需專門做出修 改,以保證在更新藍牙核心規(guī)范時可以使現(xiàn)有產(chǎn)品平滑升級。
在傳統(tǒng)藍牙控制器時代,糾錯與重傳工作是由藍牙控制器端負 責,主機端無需做出特別處理即可保證數(shù)據(jù)傳輸?shù)目煽啃?;而根?jù)藍 牙AMP架構(gòu),高速傳輸介質(zhì)的控制器不再負責確保數(shù)據(jù)傳輸?shù)目煽?性,因此需要主機端做出立即糾正與重傳機制,而傳統(tǒng)藍牙L2CAP的 RT (重傳)/FC (流控)模式存在設(shè)計缺陷當發(fā)送端檢測到丟包時, 強行重傳所有未響應(yīng)幀,而且最多僅能使用半傳輸窗傳輸數(shù)據(jù)。核心 補充規(guī)范增加了 ERTM (增強重傳)/SM (流)模式,針對原有RT (重 傳)/FC (流控)模式的設(shè)計缺陷進行了升級,主要變化在于增加了 SREJ (選擇性拒絕幀)/RNR (接收端未準備就緒)的控制幀;增加了 "Poll-Final"比特域,當檢測到丟幀時,發(fā)送端首先通過"RR(Poll-l) 信令詢問接收端當前的接收狀態(tài),隨后決策用何種策略進行重傳,因 此避免了 RT模式下檢測到丟幀時強行連續(xù)重傳幀帶來的額外傳輸開 銷,并可實現(xiàn)全傳輸窗傳輸,速度較RT模式最大半傳輸窗傳輸大幅度 提高。ERTM模式仍是基于傳輸響應(yīng)的滑動窗傳輸模型,核心補充規(guī)范中使用發(fā)送端與接收端分離的三態(tài)狀態(tài)機和原語進行描述,使得規(guī) 范更加容易理解。
在發(fā)送端和接收端的數(shù)據(jù)傳輸過程中,包含信息幀(I幀)和監(jiān)
視幀(S幀),其中I幀用來傳送用戶數(shù)據(jù),同時I幀還捎帶傳送流量 控制和差錯控制信息,以保證用戶數(shù)據(jù)的正確傳送;S幀則專門用來傳 送控制信息,當流量和差錯控制信息沒有I幀可以"搭乘"時,需要用S 幀來傳送。而ACK (Acknowledge Character)是在數(shù)據(jù)通信傳輸中, 接收端發(fā)給發(fā)送端的一種傳輸控制字符,用于表示確認發(fā)來的信息幀I 幀已經(jīng)接收無誤當發(fā)送端接收到ACK信號時,就可以發(fā)送下一組數(shù) 據(jù);如果發(fā)送端沒有收到ACK信號,那么發(fā)送端可能會重發(fā)當前數(shù)據(jù) 包,也可能停止傳送數(shù)據(jù)。因此,ACK既可以通過I幀進行傳送,也 可以通過S幀進行傳送。
對ACK響應(yīng)幀的發(fā)送時機,含有eL2CAP (ERTM/SM模式)的 新核心補充規(guī)范未做嚴格規(guī)定,需要實現(xiàn)者自行設(shè)計。目前常用的方 式是對每個信息幀I幀均進行ACK響應(yīng),但是這種方式會由于ACK 響應(yīng)幀的冗余而增加無謂的傳輸,使得傳輸速度慢。反之若不進行主 動的ACK響應(yīng),則會導(dǎo)致發(fā)送端等待RTX重傳超時后使用Poll幀詢 問,在此之前不能發(fā)送任何數(shù)據(jù),這也會影響傳輸速度。因此如何設(shè) 計一個最佳的ACK發(fā)送方法成為ERTM模式實現(xiàn)的一個關(guān)鍵點, 一個 好的ACK發(fā)送方法將會使數(shù)據(jù)傳輸速度大幅度提高。
發(fā)明內(nèi)容
本發(fā)明的目的就是公開了一種實現(xiàn)藍牙eL2CAP規(guī)范中的ACK發(fā) 送方法,以動態(tài)地適應(yīng)傳輸介質(zhì)狀況、傳輸質(zhì)量的變化,提高數(shù)據(jù)傳 輸速度。
本發(fā)明提出的發(fā)送ACK的方法,用于包括數(shù)據(jù)發(fā)送端和接收端的 系統(tǒng),當接收端存在從發(fā)送端接收到的信息幀要回復(fù)ACK時,如果接 收端有信息幀發(fā)送給發(fā)送端,則接收端通過該信息幀回復(fù)ACK給發(fā)送 端,否則接收端通過監(jiān)控幀回復(fù)ACK給發(fā)送端。當接收端存在首個從 發(fā)送端接收到的信息幀未回復(fù)ACK時,在接收端啟動一個ACK定時 器,該定時器的定時時間小于發(fā)送端RTX超時時間,且該ACK定時器在接收端回復(fù)ACK給發(fā)送端之后刪除。當該ACK定時器超時時, 接收端主動回復(fù)一個ACK給發(fā)送端,且增加下一次啟動ACK定時器 的定時時間;當接收端當前欠回復(fù)ACK的信息幀的幀數(shù)(即所接收到 的信息幀的幀序號和已回復(fù)ACK的信息幀的幀序號的差值)接近于接 收端的接收窗的窗長時,接收端主動回復(fù)一個ACK給發(fā)送端,且減小 下一次啟動ACK定時器的定時時間;以及當接收端因接收到發(fā)送端等 待RTX重傳超時后使用Poll幀的詢問而發(fā)送ACK時,接收端減小下 一次啟動ACK定時器的定時時間。
優(yōu)選地,接收端接收到發(fā)送端的信息幀后,記錄該信息幀的幀序 號,以及當接收端回復(fù)一個ACK給發(fā)送端后,記錄該已回復(fù)ACK的 信息幀的幀序號;以及接收端通過比較接收到的信息幀的幀序號和已 回復(fù)ACK的信息幀的幀序號,判斷是否存在未回復(fù)ACK的信息幀, 以及根據(jù)兩者的差值得到欠回復(fù)ACK的信息幀的幀數(shù)。
如上所述,如果接收端ACK回復(fù)不能通過信息幀(I幀)"搭乘" 時,則必須通過監(jiān)控幀(S幀)回復(fù)ACK給發(fā)送端,而發(fā)送端和傳輸 端之間的監(jiān)控幀傳輸越少越好,這樣有利于提高有效的信息幀的傳輸 速度。發(fā)送端在以下三種情況必須回復(fù)ACK:
第一,當該ACK定時器超時時,接收端主動回復(fù)一個ACK給發(fā) 送端。此時,發(fā)送端還沒有RTX重傳超時使用Poll幀的詢問接收端當 前的接收狀態(tài),說明可以繼續(xù)增大下一次啟動ACK定時器的定時時間 (調(diào)節(jié)的范圍為當前ACK定時器的定時時間到發(fā)送端RTX重傳超時 時間之間),使得在ACK定時器結(jié)束時所欠回復(fù)ACK的信息幀的幀數(shù) 能夠增加,以減小因ACK定時超時而發(fā)送監(jiān)控幀的頻率,減少監(jiān)控幀 的傳輸。
第二,如果當前欠回復(fù)ACK的幀數(shù)接近于接收端的接收窗窗長 時,主動回復(fù)ACK給發(fā)送端,因此如果此時接收端還不回復(fù)ACK給 發(fā)送端的話,將會導(dǎo)致因為接收端的接收窗窗滿而無法繼續(xù)接收數(shù)據(jù)。 考慮到在接收端端回復(fù)ACK需要一定的時間才能傳到發(fā)送端,優(yōu)選 地,可設(shè)定在接收端的接收窗的窗滿前回復(fù)ACK,例如設(shè)定"當前欠 回復(fù)ACK的信息幀的幀數(shù)^接收窗的窗長一1"時,接收端需要回復(fù) 一個ACK給發(fā)送端。第三,如果發(fā)送端等待RTX重傳超時后使用Poll幀的詢問"接收 到哪里了 ",根據(jù)規(guī)范定義接收端必須要回復(fù)ACK給發(fā)送端,此時ACK 定時器還未超時。由于發(fā)送端因為Poll詢問會耽誤信息幀的繼續(xù)傳輸, 優(yōu)選地,可設(shè)定發(fā)送端下一次啟動ACK定時器的定時時間減小,以爭 取主動回復(fù)ACK給發(fā)送端,減少發(fā)送端發(fā)送Poll詢問的頻率。
在接收端必須通過監(jiān)控幀回復(fù)ACK的情況下,回復(fù)ACK的較優(yōu) 方案是在接收端的接收窗即將窗滿,或者在發(fā)送端即將發(fā)生RTX重 傳超時而發(fā)送Poll幀詢問時,接收端能夠因ACK定時器超時而主動回 復(fù)ACK給發(fā)送端。這樣既可以避免因接收端的接收窗窗滿或者發(fā)送端 RTX重傳超時發(fā)送Poll幀詢問而導(dǎo)致信息幀傳輸?shù)闹袛啵挚梢允菇?收端盡可能多地增加欠回復(fù)ACK的信息幀的幀數(shù)來減少監(jiān)控幀的傳 輸。因此,本發(fā)明提出了一種通過在接收端調(diào)節(jié)ACK定時器的定時時 間而合理控制ACK回復(fù)的方法。優(yōu)選地,所述下一次啟動ACK定時 器的定時時間由當前ACK定時器的定時時間、發(fā)送端RTX重傳超時 的時間、接收端接收窗的窗長、當前欠回復(fù)ACK的信息幀的幀數(shù)來確 定。
在一個實施例中,當接收端因該ACK定時器超時回復(fù)ACK給發(fā) 送端時,如果當前欠回復(fù)ACK的信息幀的幀數(shù)越多,則下一次啟動 ACK定時器的定時時間增加幅度越?。划斀邮斩艘蚪邮盏桨l(fā)送端等待 RTX重傳超時后使用Poll幀的詢問而發(fā)送ACK時,如果當前所欠回復(fù) ACK的信息幀的幀數(shù)越多,則下一次啟動ACK定時器的定時時間減 小幅度越小。
為了避免下一次啟動ACK定時器的定時時間調(diào)節(jié)幅度過大,例 如接收端因當前欠回復(fù)ACK的信息幀的幀數(shù)接近于接收端的接收窗 的窗長主動回復(fù)一個ACK后減小了下一次啟動ACK定時器的定時時 間,而如果此時發(fā)送端尚未接收到ACK卻剛好RTX重傳超時發(fā)送Poll 幀詢問接收端,則接收端不得不因為接收到發(fā)送端等待RTX重傳超時 后使用Poll幀的詢問而再次發(fā)送ACK,而且再一次減小下一次啟動 ACK定時器的定時時間,優(yōu)選地,設(shè)置一個ACK定時器定時時間平 均值,該平均值為之前啟動的所有ACK定時器的定時時間平均值,并 且以該平均值為中心設(shè)置一個ACK定時器的定時時間的波動區(qū)域,例如ACK定時器定時時間平均值的80% 120%。如果當前ACK定時 器的定時時間小于該波動區(qū)域的上限值,而計算得到的下一次啟動 ACK定時器的定時時間大于該波動區(qū)域上限值,則接收端重新設(shè)定下 一次啟動ACK定時器的定時時間,使下一次啟動ACK定時器的定時 時間值在該波動區(qū)域內(nèi);如果當前ACK定時器的定時時間大于該波動 區(qū)域的下限值,而計算得到的下一次啟動ACK定時器的定時時間小于 該波動區(qū)域下限值,則接收端重新設(shè)定下一次啟動ACK定時器的定時 時間,使下一次啟動ACK定時器的定時時間值在該波動區(qū)域內(nèi)。舉例 說,ACK定時器的定時時間的波動區(qū)域設(shè)置為ACK定時器定時時間 平均值的80% 120%,如果當前ACK定時器的定時時間大于ACK 定時器定時時間平均值的80%,而計算得到的下一次啟動ACK定時 器的定時時間小于ACK定時器定時時間平均值的80%,則可以重新 設(shè)置下一次啟動ACK定時器的定時時間為ACK定時器定時時間平均 值的80%;而如果當前ACK定時器的定時時間小于ACK定時器定時 時間平均值的120%,而計算得到的下一次啟動ACK定時器的定時時 間大于ACK定時器定時時間平均值的120%,則可以重新設(shè)置下一次 啟動ACK定時器的定時時間為ACK定時器定時時間平均值的120%。 這樣有利于適當縮小下一次啟動ACK定時器的定時時間調(diào)節(jié)幅度,減 少發(fā)送端由于上述三種ACK觸發(fā)事件互相作用引起的不必要的調(diào)節(jié) 沖突問題。
通過借助優(yōu)選實施例附圖詳細描述本發(fā)明的流程,將有助于理解 本發(fā)明的目的和優(yōu)點。其中
圖l是根據(jù)本發(fā)明的優(yōu)選實施例,給出接收端發(fā)送ACK給發(fā)送端 的流程圖2是根據(jù)本發(fā)明的優(yōu)選實施例,給出接收端調(diào)節(jié)ACK定時器的 定時時間的示意圖。
具體實施例
圖l是根據(jù)本發(fā)明的優(yōu)選實施例,給出接收端發(fā)送ACK給發(fā)送端的流程圖。
接收端從發(fā)送端接收到信息幀SIOO,首先判斷本地是否存在接收 到的信息幀要回復(fù)ACK給發(fā)送端SlOl。如果接收端存在從發(fā)送端接 收到的信息幀要回復(fù)ACK,則判斷接收端是否有信息幀要發(fā)送給發(fā)送 端S102,如果有,就通過該信息幀回復(fù)ACK給發(fā)送端S103。
如果接收端存在從發(fā)送端接收到的信息幀要回復(fù)ACK,而此時接 收端又沒有信息幀要發(fā)送給發(fā)送端時,判斷接收端是否有ACK定時器 啟動了S104,沒有的話,就啟動一個ACK定時器S105。接著,判斷 ACK定時器是否超時或者接收端當前欠回復(fù)ACK的信息幀的幀數(shù)(即 當前所接收到的信息幀的幀序號和當前已回復(fù)ACK的信息幀的幀序 號差值)是否接近于接收端的接收窗的窗長(例如接收窗窗長減1的 值)S106,只要達到上述的一個條件,接收端就通過監(jiān)控幀回復(fù)ACK 給發(fā)送端S107。
另外,如果接收端接收到發(fā)送端因等待RTX重傳超時后使用Poll 幀的詢問,則接收端必須回復(fù)ACK給發(fā)送端。
當接收端給發(fā)送端回復(fù)ACK之后(包括信息幀和監(jiān)控幀兩種方 式),如果接收端中存在ACK定時器,則刪除該ACK定時器。
圖2是根據(jù)本發(fā)明的優(yōu)選實施例,給出接收端調(diào)節(jié)ACK定時器的 定時時間的示意圖。
接收端和發(fā)送端建立藍牙el2cap鏈接時,接收端從發(fā)送端獲知發(fā) 送端的RTX重傳超時時間(T),同時記錄自身接收窗的窗長(WS) S200, S201;發(fā)送端從接收端獲知接收窗的窗長。接收端接收到發(fā)送 端的信息幀時,記錄當前所接收到的信息幀的幀序號(Nl) S202,以 及當接收端回復(fù)ACK給發(fā)送端時,記錄當前回復(fù)ACK的信息幀的幀 序號(N2) S203。接收端通過比較當前接收到的信息幀的幀序號(Nl) 和當前已回復(fù)ACK的信息幀的幀序號(N2),可以獲知是否存在沒有 回復(fù)ACK的信息幀及根據(jù)兩者的差值獲得當前欠回復(fù)ACK的信息幀 的幀數(shù)。
根據(jù)所獲知發(fā)送端的RTX重傳超時時間(T)設(shè)置接收端ACK定 時器的定時時間(Tl) S204。如果ACK定時器的定時時間(Tl)大 于發(fā)送端的RTX重傳超時時間(T)的話,則接收端就不能通過ACK定時器的超時來主動發(fā)送ACK,而導(dǎo)致發(fā)送端RTX重傳超時發(fā)送Poll 幀詢問才回復(fù)ACK,這樣會因Poll幀詢問而停止發(fā)送端的信息幀傳輸, 降低傳輸速度。因此,接收端ACK定時器的定時時間(Tl)要滿足條 件T1<T。優(yōu)選地,初始化時將T1設(shè)置為略小于T的值,例如0.8T。 如果當前所接收到的信息幀的幀序號(Nl)和當前已回復(fù)ACK 的信息幀的幀序號的差值(N2)(即接收端當前欠回復(fù)ACK的信息幀 的幀數(shù))接近于接收端的接收窗的窗長(WS),如果接收端還不主動 回復(fù)ACK給發(fā)送端的話,會導(dǎo)致發(fā)送端因接收端的接收窗窗滿而無法 繼續(xù)傳輸數(shù)據(jù)。優(yōu)選地,設(shè)定"N1-N2》WS-1"時接收端主動回復(fù)ACK 給發(fā)送端,即設(shè)置ACK定時器的定時時間滿足條件"N1-N2<WS — 1" S205。
如果ACK定時器超時的時候,使得接收端當前欠回復(fù)ACK的信 息幀的幀數(shù)最接近接收端的接收窗,這樣就能夠讓ACK定時器超時而 主動發(fā)送ACK的次數(shù)減小,而減小監(jiān)控幀的傳輸有利于提高信息幀的 傳輸速度。傳輸窗(WS)的值是固定的,若ACK定時器超時時接收 端當前欠回復(fù)ACK的信息幀的幀數(shù)(即N1-N2)越大,說明接收端當 前欠回復(fù)ACK的信息幀的幀數(shù)越接近于接收端的接收窗,則在下次啟 動ACK定時器時定時器需要增加的定時時間越少;反之,若ACK定 時器超時時接收端當前欠回復(fù)ACK的信息幀的幀數(shù)(即Nl-N2)越小, 則在下次啟動ACK定時器時需要增加的定時時間越多。
如果因接收到發(fā)送端等待RTX重傳超時后使用Poll幀的詢問而回 復(fù)ACK,則可以減小下一次啟動ACK定時器的定時時間(T2)。傳輸 窗窗長(WS)的值和發(fā)送端等待RTX重傳超時的值是固定的,而ACK 定時器的定時時間的設(shè)置原則是在接收端的接收窗即將窗滿,或者在 發(fā)送端即將發(fā)生RTX重傳超時而發(fā)送Poll幀詢問時,接收端的ACK 定時器能夠超時而主動回復(fù)ACK給發(fā)送端。若接收到發(fā)送端等待RTX 重傳超時后使用Poll幀的詢問時,接收端當前欠回復(fù)ACK的信息幀的 幀數(shù)(即N1-N2)越大,說明離當前ACK定時器的超時時間越近,當 前ACK定時器的定時時間設(shè)置的較為合理,則下一次啟動ACK定時 器的定時時間需要減小的定時時間幅度越??;反之,若接收到發(fā)送端 等待RTX重傳超時后使用Poll幀的詢問時,接收端當前欠回復(fù)ACK的信息幀的幀數(shù)(即N1-N2)越小,則在下次啟動ACK定時器時需要 減小的定時時間越多。
如果接收端在滿足"N1-N2》WS-1"時主動回復(fù)ACK給發(fā)送端, 說明當前ACK定時器和發(fā)送端RTX都沒有超時,則可以減小下一次 啟動ACK定時器的定時時間(T2)。
綜上所述,可以根據(jù)接收端當前所欠回復(fù)ACK的信息幀的幀數(shù)
(即N1—N2)、接收端的接收窗的窗長(WS)、發(fā)送端的RTX重傳超 時時間(T)和接收端ACK定時器的定時時間(Tl)這幾個參數(shù)來定 義算法"AT二f(WS, N1—N2, T, Tl)",以得出下一次啟動ACK定 時器時需要調(diào)節(jié)的定時時間幅度(AT) S206。
在一個優(yōu)選實施例中,為了避免下一次啟動ACK定時器的定時時 間調(diào)節(jié)幅度過大,在接收端設(shè)置一個ACK定時器定時時間平均值
(AVR),該平均值(AVR)為之前啟動的所有ACK定時器的定時時 間平均值,并且以該平均值(AVR)為中心設(shè)置一個ACK定時器的定 時時間的波動區(qū)域,例如波動區(qū)域為ACK定時器定時時間平均值
(AVR)的80% 120%,則下一次啟動ACK定時器時需要調(diào)節(jié)的定 時時間幅度(AT)還需要考慮ACK定時器定時時間平均值(AVR) 這個因素,可根據(jù)接收端當前所欠回復(fù)ACK的信息幀的幀數(shù)(即Nl 一N2)、接收端的接收窗的窗長(WS)、發(fā)送端的RTX重傳超時時間
(T)、接收端ACK定時器的定時時間(Tl)和ACK定時器定時時間 平均值(AVR)這幾個參數(shù)來定義算法"AT=f(WS, N1—N2, T, Tl, AVR)",以得出下一次啟動ACK定時器時需要調(diào)節(jié)的定時時間幅 度(AT)。
根據(jù)ACK裝置當前的定時時間和計算得出的下次啟動ACK定時 器時需要調(diào)節(jié)的定時時間幅度,可以得到下一次啟動ACK定時器的定 時時間T2 S205。當ACK定時器超時時,接收端主動回復(fù)一個ACK 給發(fā)送端,則在增加ACK定時器下一次啟動的定時時間T2 (即T2^ T1 + AT),因為ACK定時器的定時時間T要滿足T2<T,所以下一 次ACK定時器的定時時間T2的范圍為當前定時時間到發(fā)送端等待 RTX重傳超時的時間之間(即T1<T2<T)。當接收端因接收到發(fā)送端 等待RTX重傳超時后使用Poll幀的詢問而發(fā)送ACK時,則接收端減小該定時器下一次啟動的定時時間T2(即T2二T1 —AT),下一次ACK 定時器的定時時間T2的小于當前ACK定時器的定時時間Tl (即 0<T2<T1)。
雖然本發(fā)明是參考其優(yōu)選實施例示出和描述的,但本領(lǐng)域的普通技 術(shù)人員應(yīng)該理解,在不脫離附屬的權(quán)利要求書所限定的本發(fā)明的精神 和范圍的情況下,可以進行形式和細節(jié)的各種改變。
權(quán)利要求
1.一種發(fā)送ACK的方法,用于包括數(shù)據(jù)發(fā)送端和接收端的系統(tǒng),當接收端存在從發(fā)送端接收到的信息幀要回復(fù)ACK時,如果接收端有信息幀發(fā)送給發(fā)送端,則接收端通過該信息幀回復(fù)ACK給發(fā)送端,否則接收端通過監(jiān)控幀回復(fù)ACK給發(fā)送端,其特征在于接收端存在首個從發(fā)送端接收到的信息幀未回復(fù)ACK時,在接收端啟動一個ACK定時器,該ACK定時器的定時時間小于發(fā)送端RTX超時時間,且在接收端回復(fù)ACK給發(fā)送端之后刪除該ACK定時器;當該ACK定時器超時時,接收端主動回復(fù)一個ACK給發(fā)送端,且增加下一次啟動ACK定時器的定時時間;接收端當前欠回復(fù)ACK的信息幀的幀數(shù)接近于接收端的接收窗的窗長時,接收端主動回復(fù)一個ACK給發(fā)送端,且減小下一次啟動ACK定時器的定時時間;以及當接收端因接收到發(fā)送端等待RTX重傳超時后使用Poll幀的詢問而發(fā)送ACK時,接收端減小下一次啟動ACK定時器的定時時間。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于 接收端接收到發(fā)送端的信息幀后,記錄該信息幀的幀序號,以及當接收端回復(fù)一個ACK給發(fā)送端后,記錄該已回復(fù)ACK的信息幀的幀 序號;以及接收端通過比較接收到的信息幀的幀序號和已回復(fù)ACK的信息 幀的幀序號,判斷是否存在欠ACK的信息幀以及所欠回復(fù)ACK的信 息幀的幀數(shù)。
3. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于 所述下一次啟動ACK定時器的定時時間由當前ACK定時器的定時時間、發(fā)送端RTX重傳超時的時間、接收端接收窗的窗長、當前欠 回復(fù)ACK的信息幀的幀數(shù)來確定。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于當接收端因該ACK定時器超時而回復(fù)ACK給發(fā)送端時,如果當 前欠回復(fù)ACK的信息幀的幀數(shù)越多,則下一次啟動ACK定時器的定 時時間增加幅度越小。
5. 根據(jù)權(quán)利要求3所述的方法,其特征在于-當接收端因接收到發(fā)送端等待RTX重傳超時后使用Poll幀的詢問而發(fā)送ACK時,如果當前欠回復(fù)ACK的信息幀的幀數(shù)越多,則下一 次啟動ACK定時器的定時時間減小幅度越小。
6. 根據(jù)權(quán)利要求3所述的方法,其特征在于 計算啟動過的所有ACK定時器的定時時間的平均值,并以該平均值為中心設(shè)置一個ACK定時器的定時時間的波動區(qū)域;如果當前ACK定時器的定時時間小于該波動區(qū)域的上限值,而計 算得到的下一次啟動ACK定時器的定時時間大于該波動區(qū)域上限值, 則接收端重新設(shè)定下一次啟動ACK定時器的定時時間,使下一次啟動 ACK定時器的定時時間值在該波動區(qū)域內(nèi);以及如果當前ACK定時器的定時時間大于該波動區(qū)域的下限值,而計 算得到的下一次啟動ACK定時器的定時時間小于該波動區(qū)域下限值, 則接收端重新設(shè)定下一次啟動ACK定時器的定時時間,使下一次啟動 ACK定時器的定時時間值在該波動區(qū)域內(nèi)。
全文摘要
本發(fā)明公開了一種用于接收端回復(fù)ACK給發(fā)送端的方法。接收端存在首個從發(fā)送端接收到的信息幀未回復(fù)ACK時,啟動一個ACK定時器,該定時器在回復(fù)ACK后刪除。當前接收端沒有回復(fù)ACK的幀數(shù)大于等于本地接收窗的窗長或者該ACK定時器超時時,接收端主動回復(fù)一個ACK給發(fā)送端,以及當接收端收到發(fā)送端因RTX超時使用Poll幀的詢問時被動回復(fù)ACK。接收端根據(jù)當前ACK定時器定時時間、RTX重傳超時時間、欠回復(fù)ACK的信息幀的幀數(shù)、接收窗的窗長來調(diào)節(jié)下一次ACK定時器的超時時間,以減小監(jiān)控幀的ACK回復(fù)和數(shù)據(jù)傳輸?shù)耐nD,提高數(shù)據(jù)傳輸速度。
文檔編號H04L1/16GK101677264SQ20081022232
公開日2010年3月24日 申請日期2008年9月17日 優(yōu)先權(quán)日2008年9月17日
發(fā)明者堯 王, 魯冬梅 申請人:艾威梯科技(北京)有限公司