皆さん、こんにちは。皆さんは、どのような基準でルータの機種選定をしていますか?
QoSやセキュリティなどの機能や価格も重要ですが、やはり一番気にしているのは性能ではないでしょうか?
せっかく100MbpsのWAN回線を契約していても、もしかしてルータの性能が50Mbpsで限界になっていたら、むだな回線コストを払い続けることになってしまいますよね。そんなとき真っ先に参考にするのは、メーカがカタログなどに記載しているスループット値でしょう。
たとえば、Yamaha RTX1200のホームページを見ると、以下のように記載されています。
今回は、この「スループット」の意味を探ってみたいと思います。
スループットを測ってみると
ネットワーク機器の性能評価の標準的な方法として、RFC2544があります。
このRFCはInformational(参考情報)という位置づけであり、必ず準拠しなければいけないスタンダードではありませんが、ルータのベンチマークテストを行う際のよりどころとしてよく用いられています。
この中で「スループット」とは、
測定器から測定対象機器への入力フレームと、測定対象機器からの出力が同じである最大のレート
という定義になっています。少しわかりにくいので図を交えて説明します。
測定方法ですが、まず測定対象のルータなどにテスト用のトラフィックを送受信する測定器を接続します(図1)。
なお、このようなテストが可能な測定器としては、
- スパイレント社のSmartBits
- イクシア社のIxNetwork
- アンリツ社のMD1230
などがあります。
このとき、測定器からルータへ入力するデータの量(Ethernetであればフレームの数)をどんどん増やしていき、ルータから測定器へ戻ってくるデータ量をカウントします。理想的には入力したすべてのデータが出力されるべきですが、実際にはルータの性能が限界に達したところで転送できないデータ(すなわちフレームの損失)が発生します。
RFC2544が定義するスループットは、フレームの損失が生じない最大のデータ量(1秒間あたりのフレーム数)のことです(図2)。
また、同じくRFC2544では、測定に使用するEthernetのフレーム長について、以下の長さでテストすることを求めています。
64, 128, 256, 512, 1024, 1280, 1518(全て単位はバイト)
当然ながら、短いフレームには少しのデータしか入れることができませんし、長いフレームを使えばたくさんのデータを一度に運ぶことができます。だから、長いフレームを使ったほうがルータの「見かけ上の」性能をよく見せることができるのです。
実際にYamaha RTX1200を使って、フレーム長が64バイトと1518バイトの場合で性能を測定してみました[1]。
- ●フレーム長が64Byteのとき:
- 最大スループット=約110,000フレーム毎秒=約56Mbps
- ●フレーム長が1518Byteのとき:
- 最大スループット=約110,000フレーム毎秒=約1.3Gbps
つまり、1秒あたりの転送フレーム数は同じですが、帯域に換算するとぜんぜん違う数値になってしまう、ということです。
この結果から、Yamahaのホームページでうたわれている「スループット最大1Gbps」の表記に偽りがなかったことがわかりました。しかし、フレーム長が短い場合には、たったの56Mbpsしかでないのも事実です。
フレーム長とスループット
では、現実のネットワークでは、どのくらいの長さのフレームが使われているのでしょうか? これは使用するアプリケーションやOSの種類などに依存するので、一概には言えません。
そこで、実際にインターネット上を流れているトラフィックに似せたテストパターンを作って測定しましょう。ということで、いくつかの測定器ではInternet Mix Traffic (略してIMIX)と呼ばれるテスト用トラフィックを発生する機能が備えられています。
IMIXにも幾つかの定義があるようですが、最も一般的と思われるのは、
- 58.33%の64バイトフレーム
- 33.33%の570バイトフレーム
- 8.33%の1518バイトフレーム
を混ぜたもので、平均フレーム長は354Byteになります。
IMIXトラフィックを発生できる測定器は比較的に高価なものが多いので、私は簡易版のIMIXとして354バイトフレームでの性能測定を行い、「利用者が実際に体感できる速度」としてお客様などへ示すようにしています。
最後にフレーム長354バイトで測定した場合のスループット計測値の一例を表1に示します[2]ので、参考にしてください。
表1 各機器のスループット(354バイトフレーム長)
| カタログ値 | 実測値(354Byte) |
Cisco 861 | | 170Mbps |
Cisco 881 | | 180Mbps |
Cisco 892J[新製品] | 1Gbps | 760Mbps |
Cisco 1812J | | 180Mbps |
Yamaha RTX1100 | 200Mbps | 120Mbps |
Yamaha RTX1200 | 1Gbps | 320Mbps |