インターネット環境は、バックボーンとなる10G以上のWAN(広域ネットワーク)の普及とネットワーク機器の低価格化に伴い、現在の1Gから10Gへのデータ通信環境の高速化が進んでいます(図:1G通信環境から10G通信環境へ)。それに伴い、Webやファイル伝送など様々なインターネットアプリケーションの高速化(10G化)の需要が高まっています。
インターネットアプリケーションの多くは、データ伝送の基盤となる通信プロトコルにTCPを用いています。TCPは、遅延やパケットロス環境においてデータ通信速度が大きく損なわれることが問題でした。10G環境に備えて、ハードウェアによる高速化やTCPの改良などが試みられていますが、利用環境が限定されることや一定以上の条件下(例えば、遅延100ミリ秒・パケットロス1%)での大幅な通信性能劣化が課題となっています(図:10G環境における高速伝送プロトコルの取組)。
情報通信研究機構(NICT)と クレアリンクテクノロジー社 は10Gの高速通信環境において、遅延やパケットロスに強い独自設計のデータ通信プロトコル(HpFP:High-performance and Flexible Protocol)の開発に成功しました(図:10G環境における高速伝送プロトコルの取組)。HpFPは、NICTがこれまでにJGN-Xテストベッド環境で行ってきた10Gを超える長距離広帯域伝送網(LFN)におけるデータ通信実験成果を基に、クレアリンクテクノロジー社が開発したTCP高速化パケット伝送制御技術を用いて、独自のアルゴリズム設計により実装したトランスポート層のTCP互換(プログラムレベルで置き換え可能な)通信プロトコルです。
HpFPは、再送制御、輻輳制御、送出制御、フロー制御をTCPとは異なる独自のアルゴリズムで設計しました。図:HpFPプロトコルの基本的な設計概念は、これらの独自制御に基づいたHpFPプロトコルの仕組みです。HpFPでは、受信パケットを使って、受信サーバがパケットロスや遅延などの通信パラメータを計測し、さらに予測します。通信パラメータは確認応答(ACK)を使って送信側に伝えられます。これにより、送信サーバは、最適なサイズ及びタイミングでパケット送出を行います。
HpFPとTCPによる10Gbps環境での室内実験を行った結果は次の通りです(測定結果図と結果を整理した図)。TCPについては標準的な通信環境測定ツールiperfを用い、HpFPは独自の通信環境測定ツールhperfを用いています。遅延(RTT: Round Trip Time)0ミリ秒かつパケットロス0%の場合から、遅延(RTT)10ミリ秒かつパケットロス0.1%の場合までの基本的な通信性能(スループット)を評価しました。パケットロス0.01%かつ遅延(RTT)0.3ミリ秒程度までは、HpFPとTCPは、ほぼワイヤーレートを達成しています。一方、パケットロス0.01%かつ遅延(RTT)10ミリ秒又はパケットロス0.1%かつ遅延(RTT)1ミリ秒などの環境では、TCPは通信性能が10分の1以下になるのに対して、HpFPは性能劣化がほとんど見られないことが分かります。
なお、HpFPは、パケットロス1%で遅延(RTT)500ミリ秒の場合でも、同様の性能を確認しました(高遅延・高パケットロス環境での測定図)。
HpFPは、1つの通信セッションで約15Gbpsの高速通信が可能です。これをマルチリンク化することにより、100Gを超える通信が期待されます。マルチリンク版HpFPは現在開発中(2015年10月現在)ですが、予備試験により90Gbpsを超える通信性能を達成しています(図:100G室内環境におけるHpFPデータ通信結果)。
HpFPとTCP(iperf)のスループットの比較: 最大遅延(RTT)10ミリ秒 (ms)と最大パケットロス0.1%での室内実験結果
TCPと本開発のHpFPの10Gbps環境での通信性能比較 (上図の測定結果を整理したもの)
HpFP室内10G通信環境実験結果(遅延(RTT)500ms、パケットロス1%において、10Gbpsの通信環境で安定して9G以上を達成)
ソケットライブラリ | 通信環境測定ツール | ファイル転送ツール | |
---|---|---|---|
アプリケーションリビジョン | 0.7.39 | 0.7.39.0 | 0.7.39.0 |
体験版(クライアントのみ) NICTサイエンスクラウドサーバに接続して性能評価 |
ー | 利用希望者に個別公開します。まずは、HpFP事務局 までお問い合わせください。 ・Windows版(64ビット) ・Windows版(32ビット) |
利用希望者に個別公開します。まずは、HpFP事務局 までお問い合わせください。 ・Linux版 ・Windows版(64ビット) ・Windows版(32ビット) |
クライアント・サーバセット版 ユーザ環境で性能評価 |
ー | 以下の利用条件の承諾を条件に、ダウンロードできます。 ・Linux版 ・Raspbian版 ・Windows版(64ビット) ・Windows版(32ビット) |
以下の利用条件の承諾を条件に、ダウンロードできます。 ・Linux版 ・Windows版(64ビット) ・Windows版(32ビット) |
ソースコード 独自開発で利活用 |
共同研究組織に公開します。まずは、HpFP事務局 までお問い合わせください。 | 共同研究組織に公開します。まずは、HpFP事務局 までお問い合わせください。 | 共同研究組織に公開します。まずは、HpFP事務局 までお問い合わせください。 |
HpFPは、TCP互換設計となっており、TCPのソケットライブラリをHpFPライブラリに置き換えるだけで、既存の通信アプリケーションを高速化できます(10G環境における通信プロトコルの利用イメージ)。HpFPの通信ソケットライブラリは、標準的なC言語により記述しており、OSに依存しないことが特徴です。今後、Linux版、Windows版, Mac OS X版、iOS版、Android版など、様々なOSで動作するソケットライブラリの開発を進めます。
HpHP開発プロジェクトでは、HpFPを利用した様々なインターネットアプリケーションの開発パートナーを求めています。HpFP事務局 までご連絡ください。
情報通信研究機構・NICTサイエンスクラウドHpFP
HpFP事務局 開発担当者
村田健史
E-mail: hpfp-dev ml.nict.go.jp
http://sc-web.nict.go.jp/sc_researcher.html
*本Webサイトのすべての情報の無断転載・複製の作成等を禁じます。
Copyright © National Institute of Information and Communications Technology All Right Reserved.