This article needs additional citations for verification. (February 2016) |
H-TCPは、高遅延の高速ネットワーク(LFN:Long Fat Networks)向けに最適化された輻輳制御アルゴリズムを備えたTCPの別の実装です。アイルランドのハミルトン研究所の研究者によって開発されました。
H-TCPはLinuxカーネルバージョン2.6以降のオプションモジュールであり、FreeBSD 7に実装されています。[1]
動作原理
H-TCPは、TCPの輻輳ウィンドウを制御するために、加法的増加/乗法的減少(AIMD)を用いた損失ベースのアルゴリズムです。これは、帯域幅遅延積(BDP)の大きいパスではTCPの積極性を高めつつ、BDPの小さいパスでは「TCPフレンドリネス」を維持する、多くのTCP輻輳回避アルゴリズムの一つです。H-TCPは、前回の損失からの時間が長くなるにつれて、積極性(特に加法的増加率)を高めます。これにより、HSTCPやBIC TCPで発生する、ウィンドウが既に大きいフローをより積極的にしてしまう問題を回避できます。したがって、HTCPでは、HSTCPやBIC TCPよりも早く新しいフローが公平性に収束することが期待できます。
強みと弱み
最後のパケットロスからの時間が長くなるにつれて増加率が上昇することによる副作用として、他のフローがパケットロスを起こしているにもかかわらず、たまたまパケットロスを起こさなかったフローが、帯域幅の不当な部分を占有してしまう可能性があります。これを克服する技術は現在研究段階にあります。
H-TCP の Linux 実装には、「 RTT不公平」を回避するオプションもあります。これはTCP Renoで発生しますが、ほとんどの高速 TCP バリアントでは特に問題となります (ただし、FAST TCPは除きます)。
名前
このアルゴリズムは当初、H-TCPとして導入されましたが、Hが何の略称なのかは明記されていませんでした。しかし、ハミルトン研究所で開発されたため、ハミルトンTCPと呼ばれることがよくあります。 [要出典]
参照
参考文献
外部リンク
- H-TCPホームページ