專利名稱:一種數(shù)據(jù)結(jié)構(gòu)以及基于該數(shù)據(jù)結(jié)構(gòu)的arq通信系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于通信技術(shù)領(lǐng)域,具體涉及一種以比特映射生成反饋信息的 ACK (ACKnowledge Character)為特征的自動(dòng)重傳請(qǐng)求ARQ(Automatic R印eat-reQuest)通信系統(tǒng)。
背景技術(shù):
ARQ是一種可靠數(shù)據(jù)傳輸方式,而其傳輸性能是衡量一個(gè)通信系統(tǒng)的重要指標(biāo)之一,因此提高ARQ通信系統(tǒng)的傳輸性能有著重要的意義?,F(xiàn)有的ARQ通信系統(tǒng)的具體結(jié)構(gòu)包括發(fā)送端子系統(tǒng)和接收端子系統(tǒng),其中,發(fā)送端子系統(tǒng)包括ARQ數(shù)據(jù)發(fā)送端和ACK反饋接收端,接收端子系統(tǒng)包括ARQ數(shù)據(jù)接收端和ACK 反饋發(fā)送端,其工作原理如圖1所示的正向ARQ數(shù)據(jù)傳輸流程和如圖2所示的反向ACK數(shù)據(jù)傳輸流程。具體如下ARQ數(shù)據(jù)發(fā)送端包括發(fā)送隊(duì)列更新模塊和發(fā)送處理模塊,其中,發(fā)送隊(duì)列更新模塊,用于當(dāng)數(shù)據(jù)下發(fā)到ARQ數(shù)據(jù)隊(duì)列的時(shí),用來更新ARQ數(shù)據(jù)隊(duì)列,將新數(shù)據(jù)寫入數(shù)據(jù)隊(duì)列中;發(fā)送處理模塊用于根據(jù)當(dāng)前的隊(duì)列情況,將符合要求的ARQ數(shù)據(jù)包發(fā)送出去。ARQ數(shù)據(jù)接收端包括CRC校驗(yàn)?zāi)K、更新接收數(shù)據(jù)模塊和提交數(shù)據(jù)模塊,其中,CRC校驗(yàn)?zāi)K,收端在收到數(shù)據(jù)后用于進(jìn)行CRC校驗(yàn),將正確數(shù)據(jù)保存,錯(cuò)誤數(shù)據(jù)丟棄;更新接收數(shù)據(jù)模塊,用于將正確的數(shù)據(jù)寫入接收端相應(yīng)的數(shù)據(jù)隊(duì)列中的位置;提交數(shù)據(jù)模塊,當(dāng)接收端數(shù)據(jù)達(dá)到一定數(shù)量后用來提交數(shù)據(jù)并清空相應(yīng)的接收隊(duì)列。ACK反饋發(fā)送端包括ACK反饋數(shù)據(jù)處理模塊和發(fā)送處理模塊,其中,ACK反饋數(shù)據(jù)處理模塊在需要進(jìn)行ACK反饋時(shí),用于生成正確的ARQ數(shù)據(jù)包對(duì)應(yīng)的ACK數(shù)據(jù),以ACK數(shù)據(jù)加CRC的幀格式來確定需要反饋的ACK數(shù)據(jù);發(fā)送處理模塊用于根據(jù)當(dāng)前的隊(duì)列情況將ACK數(shù)據(jù)包發(fā)送出去。ACK反饋接收端包括CRC校驗(yàn)?zāi)K、ARQ數(shù)據(jù)隊(duì)列更新模塊和提交數(shù)據(jù)模塊,其中,CRC校驗(yàn)?zāi)KACK數(shù)據(jù)收端在收到數(shù)據(jù)后,用于CRC校驗(yàn),將正確數(shù)據(jù)保存,錯(cuò)誤數(shù)據(jù)丟棄;ARQ數(shù)據(jù)隊(duì)列更新模塊ARQ數(shù)據(jù)發(fā)端在收到ACK數(shù)據(jù)后,用于更新隊(duì)列,將還未正確發(fā)送的數(shù)據(jù)組幀,在下一次發(fā)送時(shí)刻發(fā)送出去;提交數(shù)據(jù)模塊當(dāng)ARQ數(shù)據(jù)隊(duì)列發(fā)送到一定的數(shù)量后,用于更新數(shù)據(jù)隊(duì)列,此時(shí)會(huì)有新的數(shù)據(jù)寫入隊(duì)列等待發(fā)送?,F(xiàn)有的ARQ系統(tǒng)的用戶數(shù)據(jù)結(jié)構(gòu)即ARQ數(shù)據(jù)結(jié)構(gòu)都是以數(shù)據(jù)加CRC的幀格式,具體如圖3所示,數(shù)據(jù)以包的形式發(fā)送,每個(gè)數(shù)據(jù)包由包號(hào)、數(shù)據(jù)和CRC的幀格式組成。分析接收方的反饋ACK數(shù)據(jù)結(jié)構(gòu)如圖4所示,每個(gè)ACK數(shù)據(jù)結(jié)構(gòu)由包號(hào)加CRC的幀格式組成。采用這種結(jié)構(gòu)的ACK數(shù)據(jù)包對(duì)每一正確傳輸包的反饋都加入CRC信息,而通常發(fā)送/接收窗口小于發(fā)送隊(duì)列,反饋的若干包號(hào)之間存在關(guān)聯(lián)性(如連續(xù)),這樣會(huì)造成大量冗余信息,浪費(fèi)了反饋信道的資源;特別是當(dāng)信道惡劣的時(shí)候,而傳輸資源又有限,反向信道的ACK數(shù)據(jù)的出錯(cuò),導(dǎo)致了原本正確傳輸?shù)臄?shù)據(jù)包重復(fù)發(fā)送,降低了 ARQ的性能。
發(fā)明內(nèi)容
本發(fā)明的目的是為了解決現(xiàn)有的ARQ系統(tǒng)的ACK數(shù)據(jù)結(jié)構(gòu)會(huì)造成大量冗余信息的問題,提出了一種應(yīng)用于ARQ通信系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)。本發(fā)明的技術(shù)方案是一種應(yīng)用于ARQ通信系統(tǒng)的數(shù)據(jù)結(jié)構(gòu),包括ARQ數(shù)據(jù)結(jié)構(gòu)和 ACK數(shù)據(jù)結(jié)構(gòu),其特征在于,ARQ數(shù)據(jù)結(jié)構(gòu),具體為將發(fā)送數(shù)據(jù)包隊(duì)列劃分為若干個(gè)子隊(duì)列;ACK數(shù)據(jù)結(jié)構(gòu),具體為以子隊(duì)列為單位,將一個(gè)子隊(duì)列作為一個(gè)數(shù)據(jù)結(jié)構(gòu),進(jìn)行一次CRC檢驗(yàn)?;谏鲜鯝RQ數(shù)據(jù)結(jié)構(gòu)和ACK數(shù)據(jù)結(jié)構(gòu),本發(fā)明還提出了一種ARQ通信系統(tǒng)。具體方案為一種ARQ通信系統(tǒng),包括發(fā)送端子系統(tǒng)和接收端子系統(tǒng),其中,發(fā)送端子系統(tǒng)包括ARQ數(shù)據(jù)發(fā)送端和ACK反饋接收端,接收端子系統(tǒng)包括ARQ數(shù)據(jù)接收端和ACK 反饋發(fā)送端;其特征在于,ARQ數(shù)據(jù)發(fā)送端包括發(fā)送隊(duì)列更新模塊、待發(fā)數(shù)據(jù)提取模塊和發(fā)送處理模塊,其中,待發(fā)數(shù)據(jù)提取模塊,用于根據(jù)當(dāng)前數(shù)據(jù)隊(duì)列的情況提取符合發(fā)送能力的ARQ數(shù)據(jù)包;ARQ數(shù)據(jù)接收端包括CRC校驗(yàn)?zāi)K、比特映射模塊、更新接收數(shù)據(jù)模塊、數(shù)據(jù)提交模塊和接收窗口更新模塊,其中,CRC校驗(yàn)?zāi)K,用于校驗(yàn)ARQ數(shù)據(jù)發(fā)送端的發(fā)送處理模塊發(fā)送的ARQ數(shù)據(jù)是否正確;比特映射模塊,用于將校驗(yàn)正確的包號(hào)映射為相應(yīng)的比特信息;更新接收數(shù)據(jù)模塊,用于接收正確傳輸?shù)陌鼣?shù)據(jù)并放入相應(yīng)的隊(duì)列中,同時(shí)更新其包標(biāo)志,并判斷是否上傳提交數(shù)據(jù);數(shù)據(jù)提交模塊,用于根據(jù)包號(hào)順序提交接收的數(shù)據(jù);接收窗口更新模塊,用于根據(jù)接收數(shù)據(jù)模塊得到的包標(biāo)志,更新ARQ數(shù)據(jù)接收窗 Π ;ACK反饋發(fā)送端包括ACK反饋數(shù)據(jù)處理模塊、待發(fā)送數(shù)據(jù)提取模塊和發(fā)送處理模塊,其中,待發(fā)送數(shù)據(jù)提取模塊,用于根據(jù)當(dāng)前數(shù)據(jù)隊(duì)列的情況將符合發(fā)送能力的ACK反饋數(shù)據(jù)提取出來;ACK反饋接收端包括CRC校驗(yàn)?zāi)K、包號(hào)映射模塊、更新ARQ數(shù)據(jù)包標(biāo)志模塊、ARQ 數(shù)據(jù)發(fā)送隊(duì)列更新模塊和ARQ數(shù)據(jù)發(fā)送窗口更新模塊,其中,CRC校驗(yàn)?zāi)K,用于校驗(yàn)ACK反饋發(fā)送端的發(fā)送處理模塊發(fā)送的ACK數(shù)據(jù)是否正確;
包號(hào)映射模塊,用于將校驗(yàn)正確子隊(duì)列的比特信息映射成為所需要的子隊(duì)列中正確傳輸?shù)陌?hào);更新ARQ數(shù)據(jù)包標(biāo)志模塊,用于更新所有正確傳輸?shù)腁RQ數(shù)據(jù)包的包標(biāo)志;ARQ數(shù)據(jù)發(fā)送窗口更新模塊,用于根據(jù)ARQ數(shù)據(jù)包的包標(biāo)志,更新ARQ數(shù)據(jù)發(fā)送窗 Π ;ARQ數(shù)據(jù)發(fā)送隊(duì)列更新模塊,用于根據(jù)ARQ數(shù)據(jù)包的包標(biāo)志,更新ARQ數(shù)據(jù)發(fā)送隊(duì)列。本發(fā)明的有益效果本發(fā)明的ARQ通信系統(tǒng)將整個(gè)ARQ數(shù)據(jù)包隊(duì)列分為若干個(gè)子隊(duì)列,數(shù)據(jù)發(fā)送端的數(shù)據(jù)包發(fā)送窗口和接收端有效包號(hào)窗口大小可以設(shè)計(jì)為含有若干個(gè)子隊(duì)列的窗口大小,ACK數(shù)據(jù)結(jié)構(gòu)以子隊(duì)列為單位,將一個(gè)子隊(duì)列作為一個(gè)數(shù)據(jù)結(jié)構(gòu),進(jìn)行一次CRC檢驗(yàn),進(jìn)而將反饋的包號(hào)映射為比特流,并且以子隊(duì)列的包數(shù)代表的比特?cái)?shù)為一次校驗(yàn)單位,因此極大縮小了 ACK反饋所需要的信息量,并且窗口大小可以靈活設(shè)計(jì),可以根據(jù)反向ACK傳輸?shù)淖羁煽康退俾蕘泶_定。因此在整個(gè)數(shù)據(jù)傳輸中,正向ARQ數(shù)據(jù)傳輸可以根據(jù)信道狀況選擇相應(yīng)的速率來發(fā)送,反向ACK數(shù)據(jù)一律采取最可靠的低速傳輸,即使信道再惡劣也可以保證反向的ACK數(shù)據(jù)正確性,從而排除了因?yàn)榉聪駻CK數(shù)據(jù)的錯(cuò)誤導(dǎo)致的重發(fā),提高了 ARQ的性能。
圖1是現(xiàn)有的正向ARQ數(shù)據(jù)傳輸流程示意圖。圖2是現(xiàn)有的反向ACK數(shù)據(jù)傳輸流程示意圖。圖3是現(xiàn)有的ARQ通信系統(tǒng)的ARQ數(shù)據(jù)結(jié)構(gòu)示意圖。圖4是現(xiàn)有的ARQ通信系統(tǒng)的ACK數(shù)據(jù)結(jié)構(gòu)示意圖。圖5是本發(fā)明的ARQ數(shù)據(jù)結(jié)構(gòu)示意圖。圖6是本發(fā)明的ACK數(shù)據(jù)結(jié)構(gòu)示意圖。圖7是本發(fā)明的ARQ通信系統(tǒng)的ARQ數(shù)據(jù)發(fā)送端和ARQ數(shù)據(jù)接收端結(jié)構(gòu)示意圖。圖8是本發(fā)明的ARQ通信系統(tǒng)的ACK反饋接收端和ACK反饋發(fā)送端結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使得本發(fā)明的目的、技術(shù)方案、及優(yōu)點(diǎn)更加清楚明白,下面結(jié)合附圖來對(duì)本發(fā)明的核心部分技術(shù)方案作進(jìn)一步詳細(xì)描述。本發(fā)明的數(shù)據(jù)結(jié)構(gòu),包括ARQ數(shù)據(jù)結(jié)構(gòu)和ACK數(shù)據(jù)結(jié)構(gòu),其中,ARQ數(shù)據(jù)結(jié)構(gòu)如圖5 所示,具體為將發(fā)送數(shù)據(jù)包隊(duì)列劃分為若干個(gè)子隊(duì)列,圖中,包0和包M-I構(gòu)成子隊(duì)列1, 這里子隊(duì)列0到子隊(duì)列Q-I可以包含相同數(shù)目的包,也可以包含不同數(shù)目的包。ACK數(shù)據(jù)結(jié)構(gòu)如圖6所示,具體為以子隊(duì)列為單位,將一個(gè)子隊(duì)列作為一個(gè)數(shù)據(jù)結(jié)構(gòu),進(jìn)行一次CRC檢驗(yàn)。圖中,ACK數(shù)據(jù)包括W個(gè)子隊(duì)列,每個(gè)數(shù)據(jù)結(jié)構(gòu)前面N比特表示基地址,其后的M個(gè)比特中每個(gè)比特表示一個(gè)數(shù)據(jù)包信息,然后加上CRC組幀。基于上述數(shù)據(jù)結(jié)構(gòu),本發(fā)明的ARQ通信系統(tǒng)如圖7和圖8所示,包括發(fā)送端子系統(tǒng)和接收端子系統(tǒng),其中,發(fā)送端子系統(tǒng)包括ARQ數(shù)據(jù)發(fā)送端和ACK反饋接收端,接收端子系統(tǒng)包括ARQ數(shù)據(jù)接收端和ACK反饋發(fā)送端。
如圖7所示,ARQ數(shù)據(jù)發(fā)送端包括發(fā)送隊(duì)列更新模塊、待發(fā)數(shù)據(jù)提取模塊和發(fā)送處理模塊,其中,待發(fā)數(shù)據(jù)提取模塊,用于根據(jù)當(dāng)前數(shù)據(jù)隊(duì)列的情況提取符合發(fā)送能力的ARQ數(shù)據(jù)包;ARQ數(shù)據(jù)接收端包括CRC校驗(yàn)?zāi)K、比特映射模塊、更新接收數(shù)據(jù)模塊、數(shù)據(jù)提交模塊和接收窗口更新模塊,其中,CRC校驗(yàn)?zāi)K,用于校驗(yàn)ARQ數(shù)據(jù)發(fā)送端的發(fā)送處理模塊發(fā)送的ARQ數(shù)據(jù)是否正確;比特映射模塊,用于將校驗(yàn)正確的包號(hào)映射為相應(yīng)的比特信息;這里,比特映射模塊用于實(shí)現(xiàn)以下過程將包號(hào)對(duì)子隊(duì)列大小求商,得到基地址, 包號(hào)對(duì)子隊(duì)列大小取模,得到子隊(duì)列偏移地址;子隊(duì)列偏移地址除以8,得到字節(jié)偏移地址,字節(jié)偏移地址模8,得到比特偏移地址,進(jìn)而得到相應(yīng)的比特位,并置為一標(biāo)志位,表示該包數(shù)據(jù)正確傳輸。根據(jù)正確傳輸?shù)腁RQ數(shù)據(jù)的包號(hào),映射為ACK數(shù)據(jù)結(jié)構(gòu)中相應(yīng)位置的比特位,并將該比特位置為有效,表示該比特位對(duì)應(yīng)的包的ARQ數(shù)據(jù)正確傳輸。ACK數(shù)據(jù)結(jié)構(gòu)中沒有置為有效的,表示該比特位對(duì)應(yīng)的包的ARQ數(shù)據(jù)沒有正確傳輸,或者沒有收到該包數(shù)據(jù)。在本實(shí)施例中,數(shù)據(jù)結(jié)構(gòu)初始值為0,在這里,將其置1,表示該包數(shù)據(jù)正確傳輸。更新接收數(shù)據(jù)模塊,用于接收正確傳輸?shù)陌鼣?shù)據(jù)并放入相應(yīng)的隊(duì)列中,同時(shí)更新其包標(biāo)志,并判斷是否上傳提交數(shù)據(jù);數(shù)據(jù)提交模塊,用于根據(jù)包號(hào)順序提交接收的數(shù)據(jù);接收窗口更新模塊,用于根據(jù)接收數(shù)據(jù)模塊得到的包標(biāo)志,更新ARQ數(shù)據(jù)接收窗 Π ;如圖8所示,ACK反饋發(fā)送端包括:ACK反饋數(shù)據(jù)處理模塊、待發(fā)送數(shù)據(jù)提取模塊和發(fā)送處理模塊,其中,待發(fā)送數(shù)據(jù)提取模塊,用于根據(jù)當(dāng)前數(shù)據(jù)隊(duì)列的情況將符合發(fā)送能力的ACK反饋數(shù)據(jù)提取出來;ACK反饋接收端包括CRC校驗(yàn)?zāi)K、包號(hào)映射模塊、更新ARQ數(shù)據(jù)包標(biāo)志模塊、ARQ 數(shù)據(jù)發(fā)送隊(duì)列更新模塊和ARQ數(shù)據(jù)發(fā)送窗口更新模塊,其中,CRC校驗(yàn)?zāi)K,用于校驗(yàn)ACK反饋發(fā)送端的發(fā)送處理模塊發(fā)送的ACK數(shù)據(jù)是否正確;包號(hào)映射模塊,用于將校驗(yàn)正確子隊(duì)列的比特信息映射成為所需要的子隊(duì)列中正確傳輸?shù)陌?hào);這里,包號(hào)映射模塊用于實(shí)現(xiàn)如下過程將ACK數(shù)據(jù)結(jié)構(gòu)的基地址數(shù)據(jù)值乘以子隊(duì)列大小,得到基地址;再以比特為單位,搜索值為標(biāo)志位的比特位,再根據(jù)其位置得到偏移地址,基址加偏移地址得到包號(hào),即為正確傳輸?shù)臄?shù)據(jù)包的包號(hào)。搜索ACK數(shù)據(jù)結(jié)構(gòu)中有效的比特位,根據(jù)比特位的位置映射得到包號(hào),即該包ARQ 數(shù)據(jù)正確傳輸。ACK數(shù)據(jù)結(jié)構(gòu)中無效的比特位忽略不處理。這里,子隊(duì)列大小是指所述子隊(duì)列包含的包的個(gè)數(shù)。更新ARQ數(shù)據(jù)包標(biāo)志模塊,用于更新所有正確傳輸?shù)腁RQ數(shù)據(jù)包的包標(biāo)志;
ARQ數(shù)據(jù)發(fā)送窗口更新模塊,用于根據(jù)ARQ數(shù)據(jù)包的包標(biāo)志,更新ARQ數(shù)據(jù)發(fā)送窗 Π ;ARQ數(shù)據(jù)發(fā)送隊(duì)列更新模塊,用于根據(jù)ARQ數(shù)據(jù)包的包標(biāo)志,更新ARQ數(shù)據(jù)發(fā)送隊(duì)列。可以看出,本發(fā)明的ARQ通信系統(tǒng)將整個(gè)ARQ數(shù)據(jù)包隊(duì)列分為若干個(gè)子隊(duì)列,數(shù)據(jù)發(fā)送端的數(shù)據(jù)包發(fā)送窗口和接收端有效包號(hào)窗口大小可以設(shè)計(jì)為含有若干個(gè)子隊(duì)列的窗口大小,ACK數(shù)據(jù)結(jié)構(gòu)以子隊(duì)列為單位,將一個(gè)子隊(duì)列作為一個(gè)數(shù)據(jù)結(jié)構(gòu),進(jìn)行一次CRC檢驗(yàn),進(jìn)而將反饋的包號(hào)映射為比特流,并且以子隊(duì)列的包數(shù)代表的比特?cái)?shù)為一次校驗(yàn)單位, 因此極大縮小了 ACK反饋所需要的信息量,并且窗口大小可以靈活設(shè)計(jì),可以根據(jù)反向ACK 傳輸?shù)淖羁煽康退俾蕘泶_定。因此在整個(gè)數(shù)據(jù)傳輸中,正向ARQ數(shù)據(jù)傳輸可以根據(jù)信道狀況選擇相應(yīng)的速率來發(fā)送,反向ACK數(shù)據(jù)一律采取最可靠的低速傳輸,即使信道再惡劣也可以保證反向的ACK數(shù)據(jù)正確性,從而排除了因?yàn)榉聪駻CK數(shù)據(jù)的錯(cuò)誤導(dǎo)致的重發(fā),提高了 ARQ的性能。綜上,本發(fā)明的數(shù)據(jù)結(jié)構(gòu)和通信系統(tǒng)使得用戶數(shù)據(jù)接收方生成ACK反饋數(shù)據(jù)時(shí), 在特定數(shù)據(jù)結(jié)構(gòu)中,以比特映射包號(hào),對(duì)ACK反饋數(shù)據(jù)進(jìn)行冗余壓縮,從而明顯減少了 ACK 反饋數(shù)據(jù)的數(shù)據(jù)量,可以大幅度縮短所需要的反饋信息,在通信資源有限的情況下,使得接收端在發(fā)送ACK數(shù)據(jù)時(shí)可以選擇更可靠的方式(如降低速率、增加信道編碼冗余)來進(jìn)行傳輸,從而提高可靠性,減少因ACK數(shù)據(jù)的錯(cuò)誤而導(dǎo)致的浪費(fèi),提高ARQ通信系統(tǒng)的效率。本領(lǐng)域的普通技術(shù)人員將會(huì)意識(shí)到,這里所述的實(shí)施例是為了幫助讀者理解本發(fā)明的原理,應(yīng)被理解為發(fā)明的保護(hù)范圍并不局限于這樣的特別陳述和實(shí)施例。凡是根據(jù)上述描述做出各種可能的等同替換或改變,均被認(rèn)為屬于本發(fā)明的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種應(yīng)用于ARQ通信系統(tǒng)的數(shù)據(jù)結(jié)構(gòu),包括ARQ數(shù)據(jù)結(jié)構(gòu)和ACK數(shù)據(jù)結(jié)構(gòu),其特征在于,ARQ數(shù)據(jù)結(jié)構(gòu),具體為將發(fā)送數(shù)據(jù)包隊(duì)列劃分為若干個(gè)子隊(duì)列; ACK數(shù)據(jù)結(jié)構(gòu),具體為以子隊(duì)列為單位,將一個(gè)子隊(duì)列作為一個(gè)數(shù)據(jù)結(jié)構(gòu),進(jìn)行一次 CRC檢驗(yàn)。
2.一種基于權(quán)利要求1所述的數(shù)據(jù)結(jié)構(gòu)的ARQ通信系統(tǒng),包括發(fā)送端子系統(tǒng)和接收端子系統(tǒng),其中,發(fā)送端子系統(tǒng)包括ARQ數(shù)據(jù)發(fā)送端和ACK反饋接收端,接收端子系統(tǒng)包括ARQ 數(shù)據(jù)接收端和ACK反饋發(fā)送端;其特征在于,ARQ數(shù)據(jù)發(fā)送端包括發(fā)送隊(duì)列更新模塊、待發(fā)數(shù)據(jù)提取模塊和發(fā)送處理模塊,其中, 待發(fā)數(shù)據(jù)提取模塊,用于根據(jù)當(dāng)前數(shù)據(jù)隊(duì)列的情況提取符合發(fā)送能力的ARQ數(shù)據(jù)包; ARQ數(shù)據(jù)接收端包括CRC校驗(yàn)?zāi)K、比特映射模塊、更新接收數(shù)據(jù)模塊、數(shù)據(jù)提交模塊和接收窗口更新模塊,其中,CRC校驗(yàn)?zāi)K,用于校驗(yàn)ARQ數(shù)據(jù)發(fā)送端的發(fā)送處理模塊發(fā)送的ARQ數(shù)據(jù)是否正確;比特映射模塊,用于將校驗(yàn)正確的包號(hào)映射為相應(yīng)的比特信息;接收數(shù)據(jù)模塊,用于接收正確傳輸?shù)陌鼣?shù)據(jù)并放入相應(yīng)的隊(duì)列中,同時(shí)更新其包標(biāo)志;數(shù)據(jù)提交模塊,根據(jù)包號(hào)順序提交接收的數(shù)據(jù);接收窗口更新模塊,根據(jù)接收數(shù)據(jù)模塊得到的包標(biāo)志,更新ARQ數(shù)據(jù)接收窗口 ; ACK反饋發(fā)送端包括:ACK反饋數(shù)據(jù)處理模塊、待發(fā)送數(shù)據(jù)提取模塊和發(fā)送處理模塊, 其中,待發(fā)送數(shù)據(jù)提取模塊,用于根據(jù)當(dāng)前數(shù)據(jù)隊(duì)列的情況提取符合發(fā)送能力的ACK反饋數(shù)據(jù)提取出來;ACK反饋接收端包括CRC校驗(yàn)?zāi)K、包號(hào)映射模塊、更新ARQ數(shù)據(jù)包標(biāo)志模塊、ARQ數(shù)據(jù)發(fā)送隊(duì)列更新模塊和ARQ數(shù)據(jù)發(fā)送窗口更新模塊,其中,CRC校驗(yàn)?zāi)K,用于校驗(yàn)ACK反饋發(fā)送端的發(fā)送處理模塊發(fā)送的ACK數(shù)據(jù)是否正確; 包號(hào)映射模塊,用于將校驗(yàn)正確子隊(duì)列的比特信息映射成為所需要的子隊(duì)列中正確傳輸?shù)陌?hào);更新ARQ數(shù)據(jù)包標(biāo)志模塊,用于更新所有正確傳輸?shù)腁RQ數(shù)據(jù)包的包標(biāo)志; ARQ數(shù)據(jù)發(fā)送窗口更新模塊,根據(jù)ARQ數(shù)據(jù)包的包標(biāo)志,更新ARQ數(shù)據(jù)發(fā)送窗口 ; ARQ數(shù)據(jù)發(fā)送隊(duì)列更新模塊,根據(jù)ARQ數(shù)據(jù)包的包標(biāo)志,更新ARQ數(shù)據(jù)發(fā)送隊(duì)列。
3.根據(jù)權(quán)利要求2所述的ARQ通信系統(tǒng),其特征在于,所述比特映射模塊用于實(shí)現(xiàn)以下過程將包號(hào)對(duì)子隊(duì)列大小求商,得到基地址,包號(hào)對(duì)子隊(duì)列大小取模,得到子隊(duì)列偏移地址;子隊(duì)列偏移地址除以8,得到字節(jié)偏移地址,字節(jié)偏移地址模8,得到比特偏移地址,進(jìn)而得到相應(yīng)的比特位,并置為一標(biāo)志位,表示該包數(shù)據(jù)正確傳輸。
4.根據(jù)權(quán)利要求2所述的ARQ通信系統(tǒng),其特征在于,所述包號(hào)映射模塊用于實(shí)現(xiàn)如下過程將ACK數(shù)據(jù)結(jié)構(gòu)的基地址數(shù)據(jù)值乘以子隊(duì)列大小,得到基地址;再以比特為單位,搜索值為標(biāo)志位的比特位,再根據(jù)其位置得到偏移地址,基址加偏移地址得到包號(hào),即為正確傳輸?shù)臄?shù)據(jù)包的包號(hào)。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)結(jié)構(gòu)以及基于該數(shù)據(jù)結(jié)構(gòu)的ARQ通信系統(tǒng)。本發(fā)明的ARQ通信系統(tǒng)將整個(gè)ARQ數(shù)據(jù)包隊(duì)列分為若干個(gè)子隊(duì)列,數(shù)據(jù)發(fā)送端的數(shù)據(jù)包發(fā)送窗口和接收端有效包號(hào)窗口大小可以設(shè)計(jì)為含有若干個(gè)子隊(duì)列的窗口大小,ACK數(shù)據(jù)結(jié)構(gòu)以子隊(duì)列為單位,將一個(gè)子隊(duì)列作為一個(gè)數(shù)據(jù)結(jié)構(gòu),進(jìn)行一次CRC檢驗(yàn),進(jìn)而將反饋的包號(hào)映射為比特流,并且以子隊(duì)列的包數(shù)代表的比特?cái)?shù)為一次校驗(yàn)單位,縮小了ACK反饋所需要的信息量,在整個(gè)數(shù)據(jù)傳輸中,正向ARQ數(shù)據(jù)傳輸可以根據(jù)信道狀況選擇相應(yīng)的速率發(fā)送,反向ACK數(shù)據(jù)采取最可靠的低速傳輸,可以保證反向的ACK數(shù)據(jù)正確性,從而排除了因?yàn)榉聪駻CK數(shù)據(jù)的錯(cuò)誤導(dǎo)致的重發(fā),提高了ARQ的性能。
文檔編號(hào)H04L1/18GK102255715SQ20111023872
公開日2011年11月23日 申請(qǐng)日期2011年8月19日 優(yōu)先權(quán)日2011年8月19日
發(fā)明者李少謙, 王達(dá), 董彬虹, 陳偉, 陳智 申請(qǐng)人:電子科技大學(xué)