自動再送要求 (ARQ と略されることが多い) は、データ送信におけるエラー制御のプロトコルです。エラー検出コードと確認応答を利用することで、ARQ プロトコルはエラーのないデータ配信を保証し、送信側が送信したデータの正確なコピーを受信側が取得できるようにします。
自動再リクエストの起源と初期の歴史
自動再送要求の起源は、19 世紀の電信の黎明期にまで遡ります。電信オペレータは、不明瞭または乱れたメッセージの再送を手動で要求していました。しかし、ARQ に似た自動システムの最初の言及は、A. Harry Nyquist の 1924 年の「電信再送システム」の特許にあります。
ARQ プロトコルの開発と改良は、20 世紀にデジタル データ通信が登場したことで急速に進み始めました。この時代における最も重要な進歩は、おそらく 1960 年代に導入された巡回冗長検査 (CRC) でしょう。CRC は、現代の ARQ 実装でも広く使用されているエラー検出コーディング方式です。
自動繰り返しリクエストの細部
自動再送要求はデータ通信システムの基本であり、送信中のデータの整合性を保証します。これを実現するために、ARQ プロトコルには、エラー検出、確認応答、再送という 3 つの主要なメカニズムが組み込まれています。
ARQ システムでは、送信側が送信データにエラー検出コード (CRC など) を添付します。受信側は、データを受信すると、同じエラー検出アルゴリズムを使用してデータを検証します。データにエラーがない場合、受信側は送信側に確認応答を返します。エラーが検出された場合、受信側は否定応答 (NAK) を送信します。または、場合によっては何も送信せず、送信側にデータの再送信を促します。
自動繰り返しリクエストの背後にあるメカニズム
ARQ プロトコルは、一般的には上記の原則に基づいて動作しますが、特定の状況を処理する方法は異なります。ARQ 設計における考慮事項には、次のものがあります。
- 再送信のトリガーとなるものは何ですか?
- 順序が乱れたパケットをどのように処理しますか?
- システムの効率とスループットを最適化するにはどうすればよいでしょうか?
これらのシナリオを処理するための正確なルールによって、ARQ プロトコルの動作とパフォーマンス特性が定義されます。たとえば、プロトコルが複数の送信失敗にどのように応答するかによって、ノイズの多い、または信頼性の低い通信環境での信頼性が影響を受ける可能性があります。
自動繰り返しリクエストの主な機能
ARQ プロトコルの主な特徴は次のとおりです。
- エラーのないデータ配信: ARQ プロトコルは、送信側から送信されたデータの正確なコピーを受信側が受け取ることを保証できます。
- 適応性: ARQ は、通信チャネル内のさまざまなレベルのノイズやエラー率に適応できます。
- 効率性: ARQ は、エラーのあるデータのみを再送信することで、不要な送信による帯域幅の浪費を回避します。
自動繰り返しリクエストの種類
データ通信システムでは、次の 3 種類の ARQ プロトコルが一般的に使用されます。
- ストップ アンド ウェイト ARQ: ARQ の最も単純な形式で、送信者は各送信後に停止して確認応答を待ちます。一定のタイムアウト期間内に確認応答が受信されない場合、送信者はデータを再送信します。
- Go-Back-N ARQ: このアプローチでは、送信者は、特定の制限 (N) まで、確認応答を待たずに一連のパケットを送信できます。エラーが検出されると、送信者は「戻って」、その時点以降のすべてのパケットを再送信します。
- 選択的繰り返し ARQ: Go-Back-N の改良版である選択的繰り返し ARQ では、受信側が順序どおりでないパケットを受け入れ、エラーのあるパケットのみの再送信を要求できます。
実践的な応用と課題
ARQ プロトコルは、携帯電話ネットワーク、Wi-Fi、衛星通信、インターネット経由のファイル転送など、デジタル データ通信のほぼすべての側面で応用されています。
ただし、ARQ の使用には課題がないわけではありません。たとえば、エラー検出と確認応答に必要な追加データにより、使用可能な帯域幅が減少する可能性があります。さらに、再送信によって発生する遅延は、VoIP やビデオ ストリーミングなどのリアルタイム通信アプリケーションに影響を及ぼす可能性があります。
他のエラー制御プロトコルとの比較
ARQ に加えて、データ通信では次の 2 つの主要なエラー制御プロトコルが使用されます。
-
前方誤り訂正 (FEC): FEC は、受信側が限られた数の誤りを訂正できるようにデータをエンコードします。ARQ とは異なり、FEC ではデータの再送信は必要ありませんが、追加の誤り訂正コードのためにより多くの帯域幅が必要になります。
-
ハイブリッド ARQ (HARQ): HARQ は、ARQ と FEC の両方の要素を組み合わせたものです。受信したパケットにエラーがある場合、HARQ はまず FEC を使用してエラーを修正しようとします。それが失敗すると、再送信を要求する ARQ メカニズムに戻ります。
将来の展望と技術
データ通信技術の継続的な進化に伴い、ARQ プロトコルも改良され、最適化されています。たとえば、新しい 5G ネットワーク向けに設計されたプロトコルは、通信チャネルの状態にリアルタイムで適応し、データ スループットを最大化し、遅延を最小限に抑えることができる高度な HARQ スキームを使用します。
さらに、量子通信と量子コンピューティングの将来の研究により、従来の ARQ に取って代わったり補完したりする可能性のある新しいタイプのエラー制御プロトコルが生まれる可能性もあります。
プロキシサーバーと自動繰り返しリクエスト
OneProxy が提供するようなプロキシ サーバーも、ARQ プロトコルの恩恵を受けることができます。クライアントとインターネットの仲介役として、プロキシ サーバーは ARQ を使用して、プロキシ サーバーを介して送信されるデータの整合性を確保できます。たとえば、プロキシ サーバーは、ネットワークの輻輳、パケット損失、またはその他の問題によってエラーが発生した場合に、ARQ を使用してデータを再送信する場合があります。
これにより、プロキシ サーバーは、特にネットワークが不安定または信頼性が低い場合に、クライアントの接続の信頼性を向上させることができます。
関連リンク
自動繰り返しリクエストと関連する概念の詳細については、次のリソースを参照してください。