亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

Ack發(fā)送方法

文檔序號(hào):7926878閱讀:484來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):Ack發(fā)送方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù),具體地涉及一種藍(lán)牙通信過(guò)程中ACK發(fā)送 的方法和設(shè)備。
背景技術(shù)
2008年6月26日國(guó)際藍(lán)牙組織正式發(fā)布了含有eL2CAP (ERTM/SM模式)的新核心補(bǔ)充規(guī)范。未來(lái)一代藍(lán)牙核心規(guī)范(西雅 圖版本)中最為重要的一個(gè)變革是引入了 AMP (可替換物理層)架構(gòu), 這是一種創(chuàng)新的無(wú)線技術(shù)(RF)替代規(guī)則。新核心補(bǔ)充規(guī)范允許藍(lán)牙 協(xié)議棧針對(duì)任務(wù)動(dòng)態(tài)的選擇合適的無(wú)線技術(shù),在兼容原有藍(lán)牙 2.1+EDR的前提下,增加了對(duì)802.11 (WiFi)和ECMA368 (UWB) 等高速傳輸層的支持,而藍(lán)牙高層協(xié)議和應(yīng)用程序皆無(wú)需專(zhuān)門(mén)做出修 改,以保證在更新藍(lán)牙核心規(guī)范時(shí)可以使現(xiàn)有產(chǎn)品平滑升級(jí)。
在傳統(tǒng)藍(lán)牙控制器時(shí)代,糾錯(cuò)與重傳工作是由藍(lán)牙控制器端負(fù) 責(zé),主機(jī)端無(wú)需做出特別處理即可保證數(shù)據(jù)傳輸?shù)目煽啃?;而根?jù)藍(lán) 牙AMP架構(gòu),高速傳輸介質(zhì)的控制器不再負(fù)責(zé)確保數(shù)據(jù)傳輸?shù)目煽?性,因此需要主機(jī)端做出立即糾正與重傳機(jī)制,而傳統(tǒng)藍(lán)牙L2CAP的 RT (重傳)/FC (流控)模式存在設(shè)計(jì)缺陷當(dāng)發(fā)送端檢測(cè)到丟包時(shí), 強(qiáng)行重傳所有未響應(yīng)幀,而且最多僅能使用半傳輸窗傳輸數(shù)據(jù)。核心 補(bǔ)充規(guī)范增加了 ERTM (增強(qiáng)重傳)/SM (流)模式,針對(duì)原有RT (重 傳)/FC (流控)模式的設(shè)計(jì)缺陷進(jìn)行了升級(jí),主要變化在于增加了 SREJ (選擇性拒絕幀)/RNR (接收端未準(zhǔn)備就緒)的控制幀;增加了 "Poll-Final"比特域,當(dāng)檢測(cè)到丟幀時(shí),發(fā)送端首先通過(guò)"RR(Poll-l) 信令詢(xún)問(wèn)接收端當(dāng)前的接收狀態(tài),隨后決策用何種策略進(jìn)行重傳,因 此避免了 RT模式下檢測(cè)到丟幀時(shí)強(qiáng)行連續(xù)重傳幀帶來(lái)的額外傳輸開(kāi) 銷(xiāo),并可實(shí)現(xiàn)全傳輸窗傳輸,速度較RT模式最大半傳輸窗傳輸大幅度 提高。ERTM模式仍是基于傳輸響應(yīng)的滑動(dòng)窗傳輸模型,核心補(bǔ)充規(guī)范中使用發(fā)送端與接收端分離的三態(tài)狀態(tài)機(jī)和原語(yǔ)進(jìn)行描述,使得規(guī) 范更加容易理解。
在發(fā)送端和接收端的數(shù)據(jù)傳輸過(guò)程中,包含信息幀(I幀)和監(jiān)
視幀(S幀),其中I幀用來(lái)傳送用戶數(shù)據(jù),同時(shí)I幀還捎帶傳送流量 控制和差錯(cuò)控制信息,以保證用戶數(shù)據(jù)的正確傳送;S幀則專(zhuān)門(mén)用來(lái)傳 送控制信息,當(dāng)流量和差錯(cuò)控制信息沒(méi)有I幀可以"搭乘"時(shí),需要用S 幀來(lái)傳送。而ACK (Acknowledge Character)是在數(shù)據(jù)通信傳輸中, 接收端發(fā)給發(fā)送端的一種傳輸控制字符,用于表示確認(rèn)發(fā)來(lái)的信息幀I 幀已經(jīng)接收無(wú)誤當(dāng)發(fā)送端接收到ACK信號(hào)時(shí),就可以發(fā)送下一組數(shù) 據(jù);如果發(fā)送端沒(méi)有收到ACK信號(hào),那么發(fā)送端可能會(huì)重發(fā)當(dāng)前數(shù)據(jù) 包,也可能停止傳送數(shù)據(jù)。因此,ACK既可以通過(guò)I幀進(jìn)行傳送,也 可以通過(guò)S幀進(jìn)行傳送。
對(duì)ACK響應(yīng)幀的發(fā)送時(shí)機(jī),含有eL2CAP (ERTM/SM模式)的 新核心補(bǔ)充規(guī)范未做嚴(yán)格規(guī)定,需要實(shí)現(xiàn)者自行設(shè)計(jì)。目前常用的方 式是對(duì)每個(gè)信息幀I幀均進(jìn)行ACK響應(yīng),但是這種方式會(huì)由于ACK 響應(yīng)幀的冗余而增加無(wú)謂的傳輸,使得傳輸速度慢。反之若不進(jìn)行主 動(dòng)的ACK響應(yīng),則會(huì)導(dǎo)致發(fā)送端等待RTX重傳超時(shí)后使用Poll幀詢(xún) 問(wèn),在此之前不能發(fā)送任何數(shù)據(jù),這也會(huì)影響傳輸速度。因此如何設(shè) 計(jì)一個(gè)最佳的ACK發(fā)送方法成為ERTM模式實(shí)現(xiàn)的一個(gè)關(guān)鍵點(diǎn), 一個(gè) 好的ACK發(fā)送方法將會(huì)使數(shù)據(jù)傳輸速度大幅度提高。

發(fā)明內(nèi)容
本發(fā)明的目的就是公開(kāi)了一種實(shí)現(xiàn)藍(lán)牙eL2CAP規(guī)范中的ACK發(fā) 送方法,以動(dòng)態(tài)地適應(yīng)傳輸介質(zhì)狀況、傳輸質(zhì)量的變化,提高數(shù)據(jù)傳 輸速度。
本發(fā)明提出的發(fā)送ACK的方法,用于包括數(shù)據(jù)發(fā)送端和接收端的 系統(tǒng),當(dāng)接收端存在從發(fā)送端接收到的信息幀要回復(fù)ACK時(shí),如果接 收端有信息幀發(fā)送給發(fā)送端,則接收端通過(guò)該信息幀回復(fù)ACK給發(fā)送 端,否則接收端通過(guò)監(jiān)控幀回復(fù)ACK給發(fā)送端。當(dāng)接收端存在首個(gè)從 發(fā)送端接收到的信息幀未回復(fù)ACK時(shí),在接收端啟動(dòng)一個(gè)ACK定時(shí) 器,該定時(shí)器的定時(shí)時(shí)間小于發(fā)送端RTX超時(shí)時(shí)間,且該ACK定時(shí)器在接收端回復(fù)ACK給發(fā)送端之后刪除。當(dāng)該ACK定時(shí)器超時(shí)時(shí), 接收端主動(dòng)回復(fù)一個(gè)ACK給發(fā)送端,且增加下一次啟動(dòng)ACK定時(shí)器 的定時(shí)時(shí)間;當(dāng)接收端當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)(即所接收到 的信息幀的幀序號(hào)和已回復(fù)ACK的信息幀的幀序號(hào)的差值)接近于接 收端的接收窗的窗長(zhǎng)時(shí),接收端主動(dòng)回復(fù)一個(gè)ACK給發(fā)送端,且減小 下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間;以及當(dāng)接收端因接收到發(fā)送端等 待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)而發(fā)送ACK時(shí),接收端減小下 一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間。
優(yōu)選地,接收端接收到發(fā)送端的信息幀后,記錄該信息幀的幀序 號(hào),以及當(dāng)接收端回復(fù)一個(gè)ACK給發(fā)送端后,記錄該已回復(fù)ACK的 信息幀的幀序號(hào);以及接收端通過(guò)比較接收到的信息幀的幀序號(hào)和已 回復(fù)ACK的信息幀的幀序號(hào),判斷是否存在未回復(fù)ACK的信息幀, 以及根據(jù)兩者的差值得到欠回復(fù)ACK的信息幀的幀數(shù)。
如上所述,如果接收端ACK回復(fù)不能通過(guò)信息幀(I幀)"搭乘" 時(shí),則必須通過(guò)監(jiān)控幀(S幀)回復(fù)ACK給發(fā)送端,而發(fā)送端和傳輸 端之間的監(jiān)控幀傳輸越少越好,這樣有利于提高有效的信息幀的傳輸 速度。發(fā)送端在以下三種情況必須回復(fù)ACK:
第一,當(dāng)該ACK定時(shí)器超時(shí)時(shí),接收端主動(dòng)回復(fù)一個(gè)ACK給發(fā) 送端。此時(shí),發(fā)送端還沒(méi)有RTX重傳超時(shí)使用Poll幀的詢(xún)問(wèn)接收端當(dāng) 前的接收狀態(tài),說(shuō)明可以繼續(xù)增大下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間 (調(diào)節(jié)的范圍為當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間到發(fā)送端RTX重傳超時(shí) 時(shí)間之間),使得在ACK定時(shí)器結(jié)束時(shí)所欠回復(fù)ACK的信息幀的幀數(shù) 能夠增加,以減小因ACK定時(shí)超時(shí)而發(fā)送監(jiān)控幀的頻率,減少監(jiān)控幀 的傳輸。
第二,如果當(dāng)前欠回復(fù)ACK的幀數(shù)接近于接收端的接收窗窗長(zhǎng) 時(shí),主動(dòng)回復(fù)ACK給發(fā)送端,因此如果此時(shí)接收端還不回復(fù)ACK給 發(fā)送端的話,將會(huì)導(dǎo)致因?yàn)榻邮斩说慕邮沾按皾M而無(wú)法繼續(xù)接收數(shù)據(jù)。 考慮到在接收端端回復(fù)ACK需要一定的時(shí)間才能傳到發(fā)送端,優(yōu)選 地,可設(shè)定在接收端的接收窗的窗滿前回復(fù)ACK,例如設(shè)定"當(dāng)前欠 回復(fù)ACK的信息幀的幀數(shù)^接收窗的窗長(zhǎng)一1"時(shí),接收端需要回復(fù) 一個(gè)ACK給發(fā)送端。第三,如果發(fā)送端等待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)"接收 到哪里了 ",根據(jù)規(guī)范定義接收端必須要回復(fù)ACK給發(fā)送端,此時(shí)ACK 定時(shí)器還未超時(shí)。由于發(fā)送端因?yàn)镻oll詢(xún)問(wèn)會(huì)耽誤信息幀的繼續(xù)傳輸, 優(yōu)選地,可設(shè)定發(fā)送端下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間減小,以爭(zhēng) 取主動(dòng)回復(fù)ACK給發(fā)送端,減少發(fā)送端發(fā)送Poll詢(xún)問(wèn)的頻率。
在接收端必須通過(guò)監(jiān)控幀回復(fù)ACK的情況下,回復(fù)ACK的較優(yōu) 方案是在接收端的接收窗即將窗滿,或者在發(fā)送端即將發(fā)生RTX重 傳超時(shí)而發(fā)送Poll幀詢(xún)問(wèn)時(shí),接收端能夠因ACK定時(shí)器超時(shí)而主動(dòng)回 復(fù)ACK給發(fā)送端。這樣既可以避免因接收端的接收窗窗滿或者發(fā)送端 RTX重傳超時(shí)發(fā)送Poll幀詢(xún)問(wèn)而導(dǎo)致信息幀傳輸?shù)闹袛?,又可以使?收端盡可能多地增加欠回復(fù)ACK的信息幀的幀數(shù)來(lái)減少監(jiān)控幀的傳 輸。因此,本發(fā)明提出了一種通過(guò)在接收端調(diào)節(jié)ACK定時(shí)器的定時(shí)時(shí) 間而合理控制ACK回復(fù)的方法。優(yōu)選地,所述下一次啟動(dòng)ACK定時(shí) 器的定時(shí)時(shí)間由當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間、發(fā)送端RTX重傳超時(shí) 的時(shí)間、接收端接收窗的窗長(zhǎng)、當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)來(lái)確 定。
在一個(gè)實(shí)施例中,當(dāng)接收端因該ACK定時(shí)器超時(shí)回復(fù)ACK給發(fā) 送端時(shí),如果當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)越多,則下一次啟動(dòng) ACK定時(shí)器的定時(shí)時(shí)間增加幅度越?。划?dāng)接收端因接收到發(fā)送端等待 RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)而發(fā)送ACK時(shí),如果當(dāng)前所欠回復(fù) ACK的信息幀的幀數(shù)越多,則下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間減 小幅度越小。
為了避免下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間調(diào)節(jié)幅度過(guò)大,例 如接收端因當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)接近于接收端的接收窗 的窗長(zhǎng)主動(dòng)回復(fù)一個(gè)ACK后減小了下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí) 間,而如果此時(shí)發(fā)送端尚未接收到ACK卻剛好RTX重傳超時(shí)發(fā)送Poll 幀詢(xún)問(wèn)接收端,則接收端不得不因?yàn)榻邮盏桨l(fā)送端等待RTX重傳超時(shí) 后使用Poll幀的詢(xún)問(wèn)而再次發(fā)送ACK,而且再一次減小下一次啟動(dòng) ACK定時(shí)器的定時(shí)時(shí)間,優(yōu)選地,設(shè)置一個(gè)ACK定時(shí)器定時(shí)時(shí)間平 均值,該平均值為之前啟動(dòng)的所有ACK定時(shí)器的定時(shí)時(shí)間平均值,并 且以該平均值為中心設(shè)置一個(gè)ACK定時(shí)器的定時(shí)時(shí)間的波動(dòng)區(qū)域,例如ACK定時(shí)器定時(shí)時(shí)間平均值的80% 120%。如果當(dāng)前ACK定時(shí) 器的定時(shí)時(shí)間小于該波動(dòng)區(qū)域的上限值,而計(jì)算得到的下一次啟動(dòng) ACK定時(shí)器的定時(shí)時(shí)間大于該波動(dòng)區(qū)域上限值,則接收端重新設(shè)定下 一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間,使下一次啟動(dòng)ACK定時(shí)器的定時(shí) 時(shí)間值在該波動(dòng)區(qū)域內(nèi);如果當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間大于該波動(dòng) 區(qū)域的下限值,而計(jì)算得到的下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間小于 該波動(dòng)區(qū)域下限值,則接收端重新設(shè)定下一次啟動(dòng)ACK定時(shí)器的定時(shí) 時(shí)間,使下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間值在該波動(dòng)區(qū)域內(nèi)。舉例 說(shuō),ACK定時(shí)器的定時(shí)時(shí)間的波動(dòng)區(qū)域設(shè)置為ACK定時(shí)器定時(shí)時(shí)間 平均值的80% 120%,如果當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間大于ACK 定時(shí)器定時(shí)時(shí)間平均值的80%,而計(jì)算得到的下一次啟動(dòng)ACK定時(shí) 器的定時(shí)時(shí)間小于ACK定時(shí)器定時(shí)時(shí)間平均值的80%,則可以重新 設(shè)置下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間為ACK定時(shí)器定時(shí)時(shí)間平均 值的80%;而如果當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間小于ACK定時(shí)器定時(shí) 時(shí)間平均值的120%,而計(jì)算得到的下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí) 間大于ACK定時(shí)器定時(shí)時(shí)間平均值的120%,則可以重新設(shè)置下一次 啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間為ACK定時(shí)器定時(shí)時(shí)間平均值的120%。 這樣有利于適當(dāng)縮小下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間調(diào)節(jié)幅度,減 少發(fā)送端由于上述三種ACK觸發(fā)事件互相作用引起的不必要的調(diào)節(jié) 沖突問(wèn)題。


通過(guò)借助優(yōu)選實(shí)施例附圖詳細(xì)描述本發(fā)明的流程,將有助于理解 本發(fā)明的目的和優(yōu)點(diǎn)。其中
圖l是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,給出接收端發(fā)送ACK給發(fā)送端 的流程圖2是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,給出接收端調(diào)節(jié)ACK定時(shí)器的 定時(shí)時(shí)間的示意圖。
具體實(shí)施例
圖l是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,給出接收端發(fā)送ACK給發(fā)送端的流程圖。
接收端從發(fā)送端接收到信息幀SIOO,首先判斷本地是否存在接收 到的信息幀要回復(fù)ACK給發(fā)送端SlOl。如果接收端存在從發(fā)送端接 收到的信息幀要回復(fù)ACK,則判斷接收端是否有信息幀要發(fā)送給發(fā)送 端S102,如果有,就通過(guò)該信息幀回復(fù)ACK給發(fā)送端S103。
如果接收端存在從發(fā)送端接收到的信息幀要回復(fù)ACK,而此時(shí)接 收端又沒(méi)有信息幀要發(fā)送給發(fā)送端時(shí),判斷接收端是否有ACK定時(shí)器 啟動(dòng)了S104,沒(méi)有的話,就啟動(dòng)一個(gè)ACK定時(shí)器S105。接著,判斷 ACK定時(shí)器是否超時(shí)或者接收端當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)(即 當(dāng)前所接收到的信息幀的幀序號(hào)和當(dāng)前已回復(fù)ACK的信息幀的幀序 號(hào)差值)是否接近于接收端的接收窗的窗長(zhǎng)(例如接收窗窗長(zhǎng)減1的 值)S106,只要達(dá)到上述的一個(gè)條件,接收端就通過(guò)監(jiān)控幀回復(fù)ACK 給發(fā)送端S107。
另外,如果接收端接收到發(fā)送端因等待RTX重傳超時(shí)后使用Poll 幀的詢(xún)問(wèn),則接收端必須回復(fù)ACK給發(fā)送端。
當(dāng)接收端給發(fā)送端回復(fù)ACK之后(包括信息幀和監(jiān)控幀兩種方 式),如果接收端中存在ACK定時(shí)器,則刪除該ACK定時(shí)器。
圖2是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,給出接收端調(diào)節(jié)ACK定時(shí)器的 定時(shí)時(shí)間的示意圖。
接收端和發(fā)送端建立藍(lán)牙el2cap鏈接時(shí),接收端從發(fā)送端獲知發(fā) 送端的RTX重傳超時(shí)時(shí)間(T),同時(shí)記錄自身接收窗的窗長(zhǎng)(WS) S200, S201;發(fā)送端從接收端獲知接收窗的窗長(zhǎng)。接收端接收到發(fā)送 端的信息幀時(shí),記錄當(dāng)前所接收到的信息幀的幀序號(hào)(Nl) S202,以 及當(dāng)接收端回復(fù)ACK給發(fā)送端時(shí),記錄當(dāng)前回復(fù)ACK的信息幀的幀 序號(hào)(N2) S203。接收端通過(guò)比較當(dāng)前接收到的信息幀的幀序號(hào)(Nl) 和當(dāng)前已回復(fù)ACK的信息幀的幀序號(hào)(N2),可以獲知是否存在沒(méi)有 回復(fù)ACK的信息幀及根據(jù)兩者的差值獲得當(dāng)前欠回復(fù)ACK的信息幀 的幀數(shù)。
根據(jù)所獲知發(fā)送端的RTX重傳超時(shí)時(shí)間(T)設(shè)置接收端ACK定 時(shí)器的定時(shí)時(shí)間(Tl) S204。如果ACK定時(shí)器的定時(shí)時(shí)間(Tl)大 于發(fā)送端的RTX重傳超時(shí)時(shí)間(T)的話,則接收端就不能通過(guò)ACK定時(shí)器的超時(shí)來(lái)主動(dòng)發(fā)送ACK,而導(dǎo)致發(fā)送端RTX重傳超時(shí)發(fā)送Poll 幀詢(xún)問(wèn)才回復(fù)ACK,這樣會(huì)因Poll幀詢(xún)問(wèn)而停止發(fā)送端的信息幀傳輸, 降低傳輸速度。因此,接收端ACK定時(shí)器的定時(shí)時(shí)間(Tl)要滿足條 件T1<T。優(yōu)選地,初始化時(shí)將T1設(shè)置為略小于T的值,例如0.8T。 如果當(dāng)前所接收到的信息幀的幀序號(hào)(Nl)和當(dāng)前已回復(fù)ACK 的信息幀的幀序號(hào)的差值(N2)(即接收端當(dāng)前欠回復(fù)ACK的信息幀 的幀數(shù))接近于接收端的接收窗的窗長(zhǎng)(WS),如果接收端還不主動(dòng) 回復(fù)ACK給發(fā)送端的話,會(huì)導(dǎo)致發(fā)送端因接收端的接收窗窗滿而無(wú)法 繼續(xù)傳輸數(shù)據(jù)。優(yōu)選地,設(shè)定"N1-N2》WS-1"時(shí)接收端主動(dòng)回復(fù)ACK 給發(fā)送端,即設(shè)置ACK定時(shí)器的定時(shí)時(shí)間滿足條件"N1-N2<WS — 1" S205。
如果ACK定時(shí)器超時(shí)的時(shí)候,使得接收端當(dāng)前欠回復(fù)ACK的信 息幀的幀數(shù)最接近接收端的接收窗,這樣就能夠讓ACK定時(shí)器超時(shí)而 主動(dòng)發(fā)送ACK的次數(shù)減小,而減小監(jiān)控幀的傳輸有利于提高信息幀的 傳輸速度。傳輸窗(WS)的值是固定的,若ACK定時(shí)器超時(shí)時(shí)接收 端當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)(即N1-N2)越大,說(shuō)明接收端當(dāng) 前欠回復(fù)ACK的信息幀的幀數(shù)越接近于接收端的接收窗,則在下次啟 動(dòng)ACK定時(shí)器時(shí)定時(shí)器需要增加的定時(shí)時(shí)間越少;反之,若ACK定 時(shí)器超時(shí)時(shí)接收端當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)(即Nl-N2)越小, 則在下次啟動(dòng)ACK定時(shí)器時(shí)需要增加的定時(shí)時(shí)間越多。
如果因接收到發(fā)送端等待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)而回 復(fù)ACK,則可以減小下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間(T2)。傳輸 窗窗長(zhǎng)(WS)的值和發(fā)送端等待RTX重傳超時(shí)的值是固定的,而ACK 定時(shí)器的定時(shí)時(shí)間的設(shè)置原則是在接收端的接收窗即將窗滿,或者在 發(fā)送端即將發(fā)生RTX重傳超時(shí)而發(fā)送Poll幀詢(xún)問(wèn)時(shí),接收端的ACK 定時(shí)器能夠超時(shí)而主動(dòng)回復(fù)ACK給發(fā)送端。若接收到發(fā)送端等待RTX 重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)時(shí),接收端當(dāng)前欠回復(fù)ACK的信息幀的 幀數(shù)(即N1-N2)越大,說(shuō)明離當(dāng)前ACK定時(shí)器的超時(shí)時(shí)間越近,當(dāng) 前ACK定時(shí)器的定時(shí)時(shí)間設(shè)置的較為合理,則下一次啟動(dòng)ACK定時(shí) 器的定時(shí)時(shí)間需要減小的定時(shí)時(shí)間幅度越小;反之,若接收到發(fā)送端 等待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)時(shí),接收端當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)(即N1-N2)越小,則在下次啟動(dòng)ACK定時(shí)器時(shí)需要 減小的定時(shí)時(shí)間越多。
如果接收端在滿足"N1-N2》WS-1"時(shí)主動(dòng)回復(fù)ACK給發(fā)送端, 說(shuō)明當(dāng)前ACK定時(shí)器和發(fā)送端RTX都沒(méi)有超時(shí),則可以減小下一次 啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間(T2)。
綜上所述,可以根據(jù)接收端當(dāng)前所欠回復(fù)ACK的信息幀的幀數(shù)
(即N1—N2)、接收端的接收窗的窗長(zhǎng)(WS)、發(fā)送端的RTX重傳超 時(shí)時(shí)間(T)和接收端ACK定時(shí)器的定時(shí)時(shí)間(Tl)這幾個(gè)參數(shù)來(lái)定 義算法"AT二f(WS, N1—N2, T, Tl)",以得出下一次啟動(dòng)ACK定 時(shí)器時(shí)需要調(diào)節(jié)的定時(shí)時(shí)間幅度(AT) S206。
在一個(gè)優(yōu)選實(shí)施例中,為了避免下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí) 間調(diào)節(jié)幅度過(guò)大,在接收端設(shè)置一個(gè)ACK定時(shí)器定時(shí)時(shí)間平均值
(AVR),該平均值(AVR)為之前啟動(dòng)的所有ACK定時(shí)器的定時(shí)時(shí) 間平均值,并且以該平均值(AVR)為中心設(shè)置一個(gè)ACK定時(shí)器的定 時(shí)時(shí)間的波動(dòng)區(qū)域,例如波動(dòng)區(qū)域?yàn)锳CK定時(shí)器定時(shí)時(shí)間平均值
(AVR)的80% 120%,則下一次啟動(dòng)ACK定時(shí)器時(shí)需要調(diào)節(jié)的定 時(shí)時(shí)間幅度(AT)還需要考慮ACK定時(shí)器定時(shí)時(shí)間平均值(AVR) 這個(gè)因素,可根據(jù)接收端當(dāng)前所欠回復(fù)ACK的信息幀的幀數(shù)(即Nl 一N2)、接收端的接收窗的窗長(zhǎng)(WS)、發(fā)送端的RTX重傳超時(shí)時(shí)間
(T)、接收端ACK定時(shí)器的定時(shí)時(shí)間(Tl)和ACK定時(shí)器定時(shí)時(shí)間 平均值(AVR)這幾個(gè)參數(shù)來(lái)定義算法"AT=f(WS, N1—N2, T, Tl, AVR)",以得出下一次啟動(dòng)ACK定時(shí)器時(shí)需要調(diào)節(jié)的定時(shí)時(shí)間幅 度(AT)。
根據(jù)ACK裝置當(dāng)前的定時(shí)時(shí)間和計(jì)算得出的下次啟動(dòng)ACK定時(shí) 器時(shí)需要調(diào)節(jié)的定時(shí)時(shí)間幅度,可以得到下一次啟動(dòng)ACK定時(shí)器的定 時(shí)時(shí)間T2 S205。當(dāng)ACK定時(shí)器超時(shí)時(shí),接收端主動(dòng)回復(fù)一個(gè)ACK 給發(fā)送端,則在增加ACK定時(shí)器下一次啟動(dòng)的定時(shí)時(shí)間T2 (即T2^ T1 + AT),因?yàn)锳CK定時(shí)器的定時(shí)時(shí)間T要滿足T2<T,所以下一 次ACK定時(shí)器的定時(shí)時(shí)間T2的范圍為當(dāng)前定時(shí)時(shí)間到發(fā)送端等待 RTX重傳超時(shí)的時(shí)間之間(即T1<T2<T)。當(dāng)接收端因接收到發(fā)送端 等待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)而發(fā)送ACK時(shí),則接收端減小該定時(shí)器下一次啟動(dòng)的定時(shí)時(shí)間T2(即T2二T1 —AT),下一次ACK 定時(shí)器的定時(shí)時(shí)間T2的小于當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間Tl (即 0<T2<T1)。
雖然本發(fā)明是參考其優(yōu)選實(shí)施例示出和描述的,但本領(lǐng)域的普通技 術(shù)人員應(yīng)該理解,在不脫離附屬的權(quán)利要求書(shū)所限定的本發(fā)明的精神 和范圍的情況下,可以進(jìn)行形式和細(xì)節(jié)的各種改變。
權(quán)利要求
1.一種發(fā)送ACK的方法,用于包括數(shù)據(jù)發(fā)送端和接收端的系統(tǒng),當(dāng)接收端存在從發(fā)送端接收到的信息幀要回復(fù)ACK時(shí),如果接收端有信息幀發(fā)送給發(fā)送端,則接收端通過(guò)該信息幀回復(fù)ACK給發(fā)送端,否則接收端通過(guò)監(jiān)控幀回復(fù)ACK給發(fā)送端,其特征在于接收端存在首個(gè)從發(fā)送端接收到的信息幀未回復(fù)ACK時(shí),在接收端啟動(dòng)一個(gè)ACK定時(shí)器,該ACK定時(shí)器的定時(shí)時(shí)間小于發(fā)送端RTX超時(shí)時(shí)間,且在接收端回復(fù)ACK給發(fā)送端之后刪除該ACK定時(shí)器;當(dāng)該ACK定時(shí)器超時(shí)時(shí),接收端主動(dòng)回復(fù)一個(gè)ACK給發(fā)送端,且增加下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間;接收端當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)接近于接收端的接收窗的窗長(zhǎng)時(shí),接收端主動(dòng)回復(fù)一個(gè)ACK給發(fā)送端,且減小下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間;以及當(dāng)接收端因接收到發(fā)送端等待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)而發(fā)送ACK時(shí),接收端減小下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于 接收端接收到發(fā)送端的信息幀后,記錄該信息幀的幀序號(hào),以及當(dāng)接收端回復(fù)一個(gè)ACK給發(fā)送端后,記錄該已回復(fù)ACK的信息幀的幀 序號(hào);以及接收端通過(guò)比較接收到的信息幀的幀序號(hào)和已回復(fù)ACK的信息 幀的幀序號(hào),判斷是否存在欠ACK的信息幀以及所欠回復(fù)ACK的信 息幀的幀數(shù)。
3. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于 所述下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間由當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間、發(fā)送端RTX重傳超時(shí)的時(shí)間、接收端接收窗的窗長(zhǎng)、當(dāng)前欠 回復(fù)ACK的信息幀的幀數(shù)來(lái)確定。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于當(dāng)接收端因該ACK定時(shí)器超時(shí)而回復(fù)ACK給發(fā)送端時(shí),如果當(dāng) 前欠回復(fù)ACK的信息幀的幀數(shù)越多,則下一次啟動(dòng)ACK定時(shí)器的定 時(shí)時(shí)間增加幅度越小。
5. 根據(jù)權(quán)利要求3所述的方法,其特征在于-當(dāng)接收端因接收到發(fā)送端等待RTX重傳超時(shí)后使用Poll幀的詢(xún)問(wèn)而發(fā)送ACK時(shí),如果當(dāng)前欠回復(fù)ACK的信息幀的幀數(shù)越多,則下一 次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間減小幅度越小。
6. 根據(jù)權(quán)利要求3所述的方法,其特征在于 計(jì)算啟動(dòng)過(guò)的所有ACK定時(shí)器的定時(shí)時(shí)間的平均值,并以該平均值為中心設(shè)置一個(gè)ACK定時(shí)器的定時(shí)時(shí)間的波動(dòng)區(qū)域;如果當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間小于該波動(dòng)區(qū)域的上限值,而計(jì) 算得到的下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間大于該波動(dòng)區(qū)域上限值, 則接收端重新設(shè)定下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間,使下一次啟動(dòng) ACK定時(shí)器的定時(shí)時(shí)間值在該波動(dòng)區(qū)域內(nèi);以及如果當(dāng)前ACK定時(shí)器的定時(shí)時(shí)間大于該波動(dòng)區(qū)域的下限值,而計(jì) 算得到的下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間小于該波動(dòng)區(qū)域下限值, 則接收端重新設(shè)定下一次啟動(dòng)ACK定時(shí)器的定時(shí)時(shí)間,使下一次啟動(dòng) ACK定時(shí)器的定時(shí)時(shí)間值在該波動(dòng)區(qū)域內(nèi)。
全文摘要
本發(fā)明公開(kāi)了一種用于接收端回復(fù)ACK給發(fā)送端的方法。接收端存在首個(gè)從發(fā)送端接收到的信息幀未回復(fù)ACK時(shí),啟動(dòng)一個(gè)ACK定時(shí)器,該定時(shí)器在回復(fù)ACK后刪除。當(dāng)前接收端沒(méi)有回復(fù)ACK的幀數(shù)大于等于本地接收窗的窗長(zhǎng)或者該ACK定時(shí)器超時(shí)時(shí),接收端主動(dòng)回復(fù)一個(gè)ACK給發(fā)送端,以及當(dāng)接收端收到發(fā)送端因RTX超時(shí)使用Poll幀的詢(xún)問(wèn)時(shí)被動(dòng)回復(fù)ACK。接收端根據(jù)當(dāng)前ACK定時(shí)器定時(shí)時(shí)間、RTX重傳超時(shí)時(shí)間、欠回復(fù)ACK的信息幀的幀數(shù)、接收窗的窗長(zhǎng)來(lái)調(diào)節(jié)下一次ACK定時(shí)器的超時(shí)時(shí)間,以減小監(jiān)控幀的ACK回復(fù)和數(shù)據(jù)傳輸?shù)耐nD,提高數(shù)據(jù)傳輸速度。
文檔編號(hào)H04L1/16GK101677264SQ20081022232
公開(kāi)日2010年3月24日 申請(qǐng)日期2008年9月17日 優(yōu)先權(quán)日2008年9月17日
發(fā)明者堯 王, 魯冬梅 申請(qǐng)人:艾威梯科技(北京)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1