WTCP(「ワイヤレス伝送制御プロトコル」)は、TCPのエンドツーエンドのセマンティクスを保持するTCPのプロキシベースの修正版です。 [ 1 ]その名前が示すように、無線ネットワークでTCPのパフォーマンスを向上させるために使用されます。
どこで機能するか
WTCP はホスト上の TCP を置き換えるのではなく、通信する 2 つのホスト間のプロキシに配置されます。
無線システムでは、WTCPは送信元ホストとモバイル(無線)ホスト間の基地局または中間ゲートウェイに配置されます。基地局はモバイルホストにとって無線送信機と受信機であり、ホストにとってはインターネットへのゲートウェイとして機能します。
以下は、モバイル ホストと送信元ホストが相互に TCP 接続している場合に何が起こるかを示す非常に簡略化された例です。
モバイルホストがTCPを使用してセグメントを送信すると、基地局のWTCPがそれを受信し、ネットワークを介して送信します。セグメントは最終的に待機ホストに到達します。待機ホストはネットワークを介して基地局に確認応答を返す場合があり、基地局はそれをモバイルホストに送信します。WTCPは無線関連のエラーをいくつか処理しますが、実質的には通常のTCPと全く同じ処理を行います。2つのエッジホストはWTCPの存在すら認識しません。
パフォーマンスの向上
WTCPはTCPを完全に置き換えるのではなく、TCPと連携して無線におけるTCPのパフォーマンスを向上させます。これは、無線媒体上でバースト的に発生することが知られている高いビットエラー率など、無線チャネルの悪影響を処理することで実現されます。[ 1 ]
WTCPは、タイムアウトと重複確認応答を用いて、無線関連の問題(マルチパスフェージングや高いBERによるセグメントの損失や破損など)を検出します。WTCPは、モバイルホストから受信確認応答が返されるまで、損失したセグメントを1回だけ再送信することで、問題を軽減しようとします。他の損失セグメントは、最初のセグメントの受信が確認されるまでWTCPのバッファ内で待機する必要があります。
パケットがWTCPのバッファ内に数ミリ秒間滞留することがあります。TCPエンドホストが輻輳回避モードに入るのを防ぐため(TCPはセグメントのタイムスタンプを見て、到着に長い時間がかかったと判断し、輻輳が原因であると誤って判断します)、WTCPはWTCPプロキシにおけるパケットの所要時間を一意に隠蔽することで、RTTの推定に影響を与えないようにしています。
無線WANにおけるWTCPのパフォーマンスに関するある研究では、WTCPはNew Reno、 Vegas、Snoopなどの同等のTCPアルゴリズムに比べて20~200%のパフォーマンス向上を示しました。 [ 2 ]