ネットワークスイッチの性能限界を調べろ!:計る測る量るスペック調査隊(3/3 ページ)
L3スイッチは専用の処理ICを搭載しており、ルーティングをハードウェアで行うことで高速な処理が可能だ。その一方で、ハードウェア処理能力の限界を超えた場合の挙動については未知数である。そこで今回は、L3スイッチのハードウェア限界とその限界を超えた時の挙動を調査する。
試験結果
さて、大量IPアドレステストの結果は三者三様の結果となった(表2)。それでは、各L3スイッチそれぞれの特徴をこの結果から説明していこう。
- CentreCOM 8624EL
ずばりこのスイッチは粘り強い。メーカー公称値のテーブルサイズは2000アドレスで、2000アドレスでの試験時のレイテンシは最大3.26マイクロ秒と良好な結果を収めている。さらに注目すべきは、IPアドレス数を3000、4000、5000、10000と増やしていってもフレームロスが発生しなかったことだ。IPアドレス数を増やしていったときに明らかにレイテンシは増大しているので、ハードウェアベースの転送用テーブルに登録できなかったIPアドレスについては、ソフトウェアベースの転送処理を行うことで対応していると推測される。
- SF-4024FL
このスイッチはスケーラビリティにおいて優位である。メーカー公称値のテーブルサイズは4000IPアドレスで、3機種中一番大きい。そのため、3000IPアドレスでの試験ではフレームロスが発生せず、この場合のレイテンシ最大値も3.99マイクロ秒と、このアドレス数では一番良い結果を出している。
また、4000IPアドレス以上のテスト結果では、パケットロスは発生しているものの、レイテンシの大幅な増大は見られなかった。このスイッチの大量IPアドレスに対する動作特性としてはIPアドレステーブルに登録できなかったIPアドレスのパケットは転送せず、登録できたIPアドレスのパケットは転送していると予測される。ちょうど、前記のCentreCOM 8624ELと後述するApresia 3124GTの動作の中間的な特性を示している。
- Apresia 3124GT
このスイッチはほかの2機種と比べると割り切った動作をしていて、テスト結果からメーカー公称値の2000IPアドレス以上は許容しない作りになっていると思われる。その半面、2000IPアドレス時の動作はCentreCOM 8624ELとほぼ同じで速い。
ここで、割り切った動作と書くと悪い印象を持たれるかもしれないが、これは良しあしではなくスイッチの設計ポリシーの違いではなかろうかと思う。本スイッチはL3ルーティングにおいては3機種中最も機能豊富なスイッチであると思われるので、そのような背景を考慮すると、アドレステーブル容量を超えた場合の処理は設計ポリシーとして除外しているように思われるのである。
また、パケットロスの結果からスイッチ内に登録されたIPアドレスの推測値を「登録IP数」という形式で表中に記載した。この値は若干厳密さに欠くので、あくまでも指標と考えていただきたい。
なお、SF-4024FLの登録IP数がメーカー公称値の4000に届いていないように見えるが、これは異常な現象ではなく、スイッチ内のハッシュ関数*の特性が原因と思われる*。
ここまでで、3台のスイッチに対する大量のIPアドレスを使った試験の結果を考察したが、三者三様の結果となったことが興味深い。今後の技術的な進歩によってスイッチで使用されるASICもさらに改良されていくであろうが、大量IPアドレスの処理方式において、今回測定したスイッチのどの方式が主流になっていくのかは注目されるところである。
次回は
ここまでスイッチ/ルータの性能調査を行ってきたが、いかがだったろうか。スペック表をざっと眺めただけでは同じように見える製品でも、少し視点をずらすと大きく違って見える。そして、実際の運用ではスペック表には現れない部分が問題として発現することもしばしば起こり得る。そんなときは、専門家に調査を依頼することも解決の1つの手段になる。
さて、次回はがらっと趣向を変えて、PCの電源について調べてみよう。CPUやメモリ、HDDなどのスペックを詳しく気にする方は多いと思うが、容量以外の電源スペックを細かく気にする方は少ないのではないだろうか。しかし、実は電源は単純なようで奥が深い。なぜなら、コンセントから供給される電圧は常に100Vの正弦波であるとは限らないからだ。
「汚れた」電力に電源はどう反応するのであろうか。PCの電源をその仕組み、規格から調査し、スペック表には表れない電源の特性を明らかにする。
今月の結論
- PCルータはパケットの転送能力という点ではL3スイッチに劣るものの、ソフトウェア処理能力はL3スイッチよりも高い
- 定格スペックを超えるほどの多量の端末をL3スイッチに接続した場合、その挙動はスイッチによって異なる
- 一見各社ほとんど同じように見えるスイッチ製品でも、そのスペックを超えた環境での動作というのは完全にベンダーに依存している
- 定格内での動作に関してはどのベンダーも高い性能を発揮できており、定格内で使用するのが望ましい
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
このページで出てきた専門用語
ハッシュ関数
要約関数とも呼ばれ、与えられた数値や情報から固定長のデータ(ハッシュ値)を生成する関数。一般的には入力データよりも短いハッシュ値を生成する。同じ入力からは同じハッシュ値が生成されるが、ハッシュ値から入力データを復元することはできないほか、異なる入力から同じハッシュ値が生成されることもある。
ハッシュ関数の特性が原因と思われる
L3スイッチではIPアドレス情報をテーブル内のどこに格納するかをハッシュ関数を用いて計算するが、テーブル内のエントリが増えてきた場合、すでに使用済みの番地を割り当ててしまうことがあり再計算が生じてしまう。しかし、パケット転送処理をハッシュ計算のために止めてしまうわけにはいかないので、ハッシュ再計算の回数にも上限がある。そのため、すべてのテーブルを使いきれないということはしばしば起こり得る。決して異常な現常な現常な現象ではない。
関連記事
- ネットワークスイッチのスループットを調査せよ【前編】
ITは、分かっているようで意外と説明できないことの集合体である。本連載では、IT業界に眠るそれらのなぞを文字通り徹底的に調査していく。第1 回は、ネットワークの代名詞的な技術といえる100BASE-TXが本当に100Mbpsの速度で通信するのかどうかを調査してみよう。 - ネットワークスイッチのスループットを調査せよ【後編】
ITは、分かっているようで意外と説明できないことの集合体であり、それゆえにITに対するあこがれは尽きることがない。本連載では、IT業界に眠るそれらの謎を文字通り徹底的に調査する。第1回の後半では、PCのネットワーク処理能力を調査してみよう。 - マルチコアCPUを活用したファイル圧縮
マルチコアに対応しているmgzipとpbzip2を使えば、ファイルの圧縮/復元処理にマルチコアの真の実力を解放させることができる。ここでは、実際にそれぞれの処理に要する時間を計測してみた。 - RAIDで高速デスクトップ
RAIDを使用すればディスク性能はどのくらい向上させることができるのか。ここでは、3タイプのユーザーを想定して、日常的に繰り返し行う必要のある代表的な操作でパフォーマンスの検証を行った。 - LAMP vs. LAMP──mod_perlとmod_phpのパフォーマンス比較
ダイナミックWebサイトの構築ではPerlとPHPが広く使われている。では、mod_perlとmod_phpのパフォーマンスはどちらがよいのだろうか。ちょっとしたテストをしてみたので報告する。
Copyright © ITmedia, Inc. All Rights Reserved.