自動請求重發

自動請求重發

自動請求重發(automatic repeat request)是數據通信中在接收端進行差錯檢測,並自動請求發送端重發的差錯控制技術,簡稱ARQ。在ARQ中,重發要一直延續到該碼字被成功地接收為止。

簡介


自動請求重發,也稱“循環自動請求”,ARQ(Automatic Repeatre Quest)協議是指在接收站接收到一個包含出錯數據的信息(幀)時,自動發出一個重傳錯幀的請求。ARQ的作用原則是對出錯的數據幀自動重發,它有三種形式:有等待式ARQ、後退N步ARQ和選擇重發ARQ。
自動重傳請求(Automatic Repeat-reQuest,ARQ)是OSI模型中傳輸層的錯誤糾正協議之一。它包括停止等待ARQ協議和連續ARQ協議,錯誤偵測(Error Detection)、正面確認(Positive Acknowledgment)、逾時重傳(Retransmission after Timeout)與負面確認繼以重傳(Negative Acknowledgment and Retransmission)等機制。
實用ARQ系統多採用線性分組碼(見糾錯碼)。在ARQ系統中,選用適當的線性碼總可使不可檢錯誤概率小到所需的誤碼指標。ARQ的主要優點是檢錯方式簡單以及能在非常低的錯誤概率下根據通道質量動態調整傳信率。但與前向糾錯相比,ARQ要求有可靠的反饋通道,引起較長且不固定的傳輸時延以及要求傳輸系統對信源進行控制等問題,是對ARQ使用的主要約束。所以它主要應用於對時延要求不嚴格但對誤碼性能要求高的數據傳輸中。

分類


ARQ方式有等待式ARQ、後退N步ARQ和選擇重發ARQ三種基本類型
2.1 等待式ARQ
等待式ARQ的發送端送出一個碼字后,等待從接收端回執信號。確認信號(ACK)通知發送端該碼字已被正確收到,而否認信號(NAK)通知發送端收到的碼字有錯。發送端在收到ACK后,即發送下一個碼字,而在收到NAK后則重發剛才發出的碼字,直到收到ACK為止。等待式ARQ比較簡單且在許多數據通信系統中得到應用,如IBM的BISYNC規程。等待ARQ的主要缺點是等待回執期間未充分利用通道容量。
2.2 後退N步ARQ
在後退N步ARQ中,碼字被連續地發送,發送端在送出一個碼字后不必等待其回執。在經過一個往返延遲(即發出一個碼字到收到關於這個碼字的回執所需的時間)后,另外N—1個碼字已被送出。當收到NAK后,發送端退回到NAK所對應的碼字,重發此碼字以及其後的N—1個在往返延遲期間已送出的碼字,因此發送端要有一個緩存器來存放這些碼字。在接收端,跟在錯誤接收碼字之後的N—1個接收碼字不管其正確與否均被捨棄,所以在接收端只要存儲一個碼字即可。因為採用連續地發送和重發;,後退N步ARQ方式較等待式ARQ有效。但在往返延遲較大時,後退N步ARQ方式不太有效。
2.3 選擇重發ARQ
選擇重發ARQ中碼字也是連續傳送的,但發送端僅重發那些與NAK相對應的碼字。由於通常情況下碼字必須依正確的次序送給用戶,故在接收端需要一個緩存器來存放檢測后無錯的接收碼字。當最早的NAK碼字被成功接受后,收端按相繼的次序送出無錯的接收碼字,直到遇到下一個有錯的接收碼字時止。接收端應有足夠大的緩存器,否則就會發生溢出而丟失數據。在三種ARQ方式中,選擇重發ARQ最有效但實現也最複雜。
在通道干擾較大時,單用ARQ會因不斷重發而使數據傳送速率下降過多且傳輸時延變化太大,而僅採用前向糾錯一般又不能保證足夠的正確性,把兩者結合起來就形成了混合型ARQ。在混合型ARQ中採用糾錯碼進行傳輸,在接收端若存在一個碼字與所收到的信號間的距離小於限定的門限,則把接收信號判定為這個碼字(糾錯),反之則判定接收出錯,要求發端重發;。由於糾錯過程會產生新的差錯,所以混合型ARQ的出錯概率比單純ARQ大一些,但由於糾錯可顯著減少要求重發的次數,所以混合型ARQ的傳輸效率比單純ARQ的要高。

應用


在現代的無線通信中,ARQ主要應用在無線鏈路層。比如,在WCDMA和cdma2000無線通信中都採用了選擇性重傳ARQ和混合ARQ。

優缺點


優點:比較簡單。因而被廣泛的應用在分組交換網路中。
缺點:1.通信通道的利用率不高,也就是說,通道還遠遠沒有被數據比特填滿。2.是需要接收方發送ACK,這樣增加了網路的負擔也影響了傳輸速度。重複發送數據包來糾正錯誤的方法也嚴重的影響了它的傳輸速度。