パフォーマンス向上プロキシ(PEP )は、一部の通信プロトコルのエンドツーエンドパフォーマンスを向上させるために設計されたネットワークエージェントです。PEP標準は、RFC 3135(リンク関連の劣化を軽減するためのPEP)およびRFC 3449(ネットワークパスの非対称性によるTCPパフォーマンスへの影響)で定義されています。

分類
利用可能な PEP 実装では、パフォーマンスを向上させるためにさまざまな方法が使用されます。
- プロキシ型: PEPは接続を「分割」するか、「スヌープ」するかのいずれかを行います。前者の場合、プロキシは接続の各方向の反対側のエンドポイントを装い、文字通り接続を2つに分割します。後者の場合、プロキシは既存の接続におけるACKフィルタリングと再構築によって、両方向のTCPセグメントの送信を制御します(プロトコルスプーフィングを参照)。これは、PEPのOSI実装レベルに基づいています。[1]
- 分散: PEPは統合型と分散型のいずれかです。統合型PEPは単一のボックスで動作しますが、分散型PEPはリンクの両側にインストールする必要があり、パフォーマンスの低下を引き起こします。これは、ブラックボックスとして機能する商用PEPデバイスでよく見られ、TCPの代わりに、ある程度オープンなプロトコルを使用して相互通信を行います。
- 対称性: PEPの実装は対称型と非対称型があります。対称型PEPは双方向で同一の動作を行い、PEPの動作はパケットがどのインターフェースで受信されたかに関係なく実行されます。非対称型PEPは方向ごとに異なる動作を行うため、例えば片方のリンク方向のみのパフォーマンス向上が期待できます。
種類
PEPには様々な種類があり、それぞれがリンク関連の問題を解決するために使用されます。一般的な種類としては、以下のようなものがあります。
- スプリットTCP
- ACKデシメーション
- スヌープ
- Dプロキシ
分割TCP
スプリットTCPは、通常、ラウンドトリップ遅延時間の長いTCPの問題を解決するために使用されます。一般的なシステムでは、衛星リンク経由のTCPパフォーマンスを向上させるために、スプリットTCP PEPが使用されます。スプリットTCPは、エンドツーエンド接続を複数の接続に分割し、異なるパラメータを使用して異なるレグ間でデータを転送することで機能します。エンドシステムは標準TCPを変更せずに使用するため、中間のPEPの存在を認識する必要はありません。スプリットTCPは、エンドシステムからのTCP接続を傍受し、終了します。これにより、エンドシステムは変更されずに実行され、エンドシステムのTCPウィンドウサイズが衛星通信に対して低すぎる場合に発生するいくつかの問題を克服できます。
Ackフィルタリング/デシメーション
ACKフィルタリングまたはデシメーションは、高度に非対称なリンクで使用されます。非対称リンクでは、上りと下りの速度が大きく異なります。一般的な例としては、衛星ブロードバンドが挙げられます。衛星リンクの下り帯域幅は、上りのダイヤルアップモデムリンクよりもはるかに広くなります。このような状況では、モデムがTCP ACKを返す速度が制限要因となる可能性があります。TCP ACKは累積的に確認応答されるため、パフォーマンスを向上させるために、一部のACKをデシメーションまたはフィルタリングすることができます。
スヌープ
Snoopプロキシ[2]は統合プロキシの一例です。これは、無線リンクにおける干渉や衝突によるパケット損失を隠蔽するように設計されています。Snoopプロキシは、TCP送信中の重複した確認応答を監視することで損失を検出します。パケット損失を示す重複したTCP確認応答をSnoopが受信した場合、それらは黙って破棄され、損失したデータパケットは再送信されます。TCP送信者はこの損失について一切知る必要はありません。これにより、TCP送信者がTCPウィンドウを不必要に縮小することを防ぐことができます。
Dプロキシ
D-Proxy [3] [4]も、無線リンクにおける干渉や衝突によるパケット損失を隠蔽するように設計されています。D-Proxy は新しい分散型 TCP プロキシであり、損失リンクの両側にプロキシが必要です。Snoop と同様に、D-Proxy は TCP シーケンス番号を使用して損失パケットを検出します。ただし、D-Proxy はプロアクティブなアプローチを採用しており、確認応答ではなくデータパケットの TCP シーケンス番号を監視します。パケット損失が発生すると、TCP ストリームは損失パケットが回復され、再シーケンスされるまで一時的にバッファリングされます。
参照
参考文献
- ^ [1]: パフォーマンス強化プロキシ (PEP): 無線ネットワークにおけるTCP
- ^ Balakrishnan, Hari; Srinivasan Seshan; Randy H. Katz (1995年12月). 「ワイヤレスネットワークにおけるTCP/IPパフォーマンスの向上」. ACM Wireless Networks . 1 (4). doi :10.1007/BF01985757. S2CID 2204005.
- ^ Murray, David; Terry Koziniec; Michael Dixon (2009). 「802.11ネットワークにおけるACKの非効率性の解決」IEEE国際インターネットマルチメディアシステムアーキテクチャおよびアプリケーション会議.
- ^ Murray, David; Terry Koziniec; Michael Dixon (2010). 「D-Proxy: ワイヤレスネットワークにおける信頼性」.第16回アジア太平洋通信会議 (APCC) .