自動再送要求

自動再送要求(ARQ)について



自動再送要求(ARQ)とは、データ通信の信頼性を高めるために使用される誤り制御手法であり、具体的にはデータの送達確認とタイムアウトのメカニズムを取り入れています。このプロトコルは、送信側がデータを送信し、受信側がそのデータを正確に受信したことを確認するというプロセスを経て、不具合が生じた場合には再送を行うことで、通信の正確性を確保します。

ARQプロトコルにはいくつかの種類があり、特に代表的なものには「Stop-and-wait ARQ」、「Go-Back-N ARQ」、「Selective Repeat ARQ」があります。また、これらの進化版として「ハイブリッドARQ(HARQ)」が存在し、無線通信などにおいて非常に効果的な手法として知られています。

Stop-and-wait ARQ



Stop-and-wait ARQは、送信側が一度に一つのフレームを送り、そのACK(確認応答)が到着するまで次のフレームを送信しないという非常にシンプルな方法です。このプロセスでは、送信側がフレームを送信後、一定時間内にACKを受け取らない場合、タイムアウトが発生し、フレームを再送します。この方法の利点はシステムが単純である点ですが、送信側が毎回ACKを待つ必要があり、通信効率が低くなってしまうことが欠点です。

Stop-and-wait ARQでは、フレームの末尾に冗長検査番号を付与し、受信側で破損の有無を判断します。受信側が正常に受信した場合はACKを送信し、破損があった場合はそのフレームを破棄します。しかし、ACKが破損または失われると、送信側はフレームを再送し、受信側は同じフレームを二度受信することになります。このような重複を確認するために、フレームのヘッダにシーケンス番号を付けることが一般的です。

Go-Back-N ARQ



Go-Back-N ARQは、Stop-and-wait ARQの制約を克服するための手法です。このプロトコルでは、送信側はウィンドウサイズまでのフレームを続けて送信できます。受信側はフレームのシーケンス番号をチェックし、期待したフレームが受信できなかった場合はそのフレームを無視します。しかし、受信側は受信順序が乱れた場合、ACKを送信しないため、送信側はエラーが発生したポイント以降のフレームを全て再送します。この方法により、通信効率を大幅に改善できますが、エラーが発生した場合の再送が多くなるという欠点があります。

Selective Repeat ARQ



Selective Repeat ARQは、Go-Back-N ARQに似ているものの、より効率的な手法です。このプロトコルでは、送信側がウィンドウサイズのフレームを送信し続け、受信側は欠落したフレームを記憶します。受信側は受信ウィンドウが満杯になるまでフレームを受け取り、受信できなかったフレームのシーケンス番号を付きのACKを返します。このように、Selective Repeat ARQでは重複したフレームの再送を避けることができ、全体の通信効率を向上させます。

まとめ



自動再送要求(ARQ)は、信頼性の高いデータ通信のための重要なプロトコルです。Stop-and-wait ARQのようなシンプルな手法から、Go-Back-NやSelective Repeat ARQといったより複雑な手法まで、多様な実装が存在します。特に無線通信のような状況では、ハイブリッドARQ(HARQ)が利用されることが多く、これにより通信の効率と信頼性を高めることが可能となります。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。