PR
図6 高速化のためのアーキテクチャはボックス型とシャーシ型で大きく異なる<BR>100Mイーサネットが数十ポートのボックス型は,1個のASICで処理できる。一方,1Gイーサネットが数百ポートにもなるシャーシ型は,1個のASICだけでは処理できないので,ライン・カードごとにASICを載せて,分散処理する。さらに,全インターネットの経路(フルルート)を扱うことがあるため,多数の経路の検索を高速化するTCAMと呼ばれる専用チップを採用している。
図6 高速化のためのアーキテクチャはボックス型とシャーシ型で大きく異なる<BR>100Mイーサネットが数十ポートのボックス型は,1個のASICで処理できる。一方,1Gイーサネットが数百ポートにもなるシャーシ型は,1個のASICだけでは処理できないので,ライン・カードごとにASICを載せて,分散処理する。さらに,全インターネットの経路(フルルート)を扱うことがあるため,多数の経路の検索を高速化するTCAMと呼ばれる専用チップを採用している。
[画像のクリックで拡大表示]
写真1 ファイアウォール機能もレイヤー3スイッチに追加できる&lt;BR&gt;シスコシステムズのCatalyst 6500シリーズ向けの「ファイアウォール サービス モジュール」。1台のモジュールで,5.5Gビット/秒のスループットで処理できる。一つのシャーシに4台のモジュールを搭載でき,シャーシ当たり20Gビット/秒まで拡張可能。
写真1 ファイアウォール機能もレイヤー3スイッチに追加できる<BR>シスコシステムズのCatalyst 6500シリーズ向けの「ファイアウォール サービス モジュール」。1台のモジュールで,5.5Gビット/秒のスループットで処理できる。一つのシャーシに4台のモジュールを搭載でき,シャーシ当たり20Gビット/秒まで拡張可能。
[画像のクリックで拡大表示]

ボックスとシャーシで構造が異なる

 IPパケットを転送するのに必要となる処理は,ルーティング・テーブルを構築する作業と,実際にIPパケットを転送する作業の二つである。前者はルーティング,後者はフォワーディングと呼ばれる*

 ルーティング処理は,ネットワークの構成が変わったり,管理者がルーターの設定を変更したりというタイミングで発生するので,常に必要な処理というわけではない。処理が複雑なこともあり,ルーティングはASICを使わずに処理する。

 一方,フォワーディングはIPパケット1個ずつに必要な処理なので,高速に処理しなければならない。ここでASICの出番というわけだ。ただ,ASICを使うといっても,ボックス型製品と,シャーシ型製品ではアーキテクチャが大きく異なる。

 ボックス型では,受信したパケットのあて先IPアドレスを見て,ルーティング・テーブルを検索し,送り出すポートを決める,という一連のフォワーディング処理を1個のASICが実行する(図6[拡大表示])。

 一方のシャーシ型は,フォワーディングを受け持つASICを複数用意し,それらを「スイッチ・ファブリック」と呼ぶ専用チップでつなぐアーキテクチャになる。こうしたアーキテクチャを採用するのは,シャーシ型は高速のポートを多数搭載するので,1個のASICだけでは処理しきれないからだ。そこで,ライン・カードごとにASICを載せ*,そのカードをたくさん用意して分散処理している。

 シャーシ型の製品には,アーキテクチャのほかにもボックス型と異なる工夫がある。ルーティング・テーブルを高速検索できるTCAM(ティーキャム)*と呼ぶ専用ハードウエアを使うことだ*

 製品が大型になると検索対象のルーティング・テーブルも大きくなる。とくに,ISPのネットワークで使う場合,経路数が13万と言われる全インターネットの経路(フルルート)を扱う必要が出てくる。このような大規模なルーティング・テーブルを検索するためには,瞬時に適切な経路を検索できるTCAMが必要となる。

大型では難しいノンブロッキング

 一般に,イーサネットの伝送速度に見合う速さでパケットを処理できることを「ワイヤースピード」と呼ぶ。さらに,全ポートにおいてワイヤースピードで同時に送受信しても,スイッチ・ファブリックや内部バスがボトルネックにならず,スイッチ内部でパケットが滞りなく処理できることを「ノンブロッキング」という。

 1個のASICで処理が完結するボックス型製品はノンブロッキングなのが普通だが,大型のシャーシ型製品はたいていノンブロッキングではない。

 スイッチ・ファブリックには各カードのデータが集まるので,カード間のデータ転送が滞って遅延が起こったり,カードとスイッチ・ファブリックをつなぐバスの帯域が足りなくなったりする。そうなると,ライン・カードが十分なパケット処理能力を持っていても,スイッチ内部がボトルネックになる。

 そうした中でも,独自の工夫でノンブロッキングを実現している製品がある。例えば,フォーステンのEシリーズは,14枚のライン・カードに対してスイッチ・ファブリックを9個用意して,ノンブロッキングを実現する。

フィルタリングますます高機能に

 付加機能までもハードウエア化し,ワイヤースピードで処理できることもL3スイッチの売りになっている。その代表例がフィルタリングである。

 以前のL3スイッチは比較的単純な処理だけを実装していた。フィルタリングの場合なら,単にIPアドレスやTCPのポート番号を参照してパケットを選り分けるといった処理である。ところが,最近のL3スイッチはより複雑な処理をハードウエアで実装し,差別化を図っている。

 例えばエクストリーム ネットワークスのBlackDiamond(ブラックダイアモンド) 10808は,CLEAR-Flow(クリアフロー)と呼ぶ新しい技術を採用している。これは,パケット処理のASICにソフトウエア処理機能を追加し,より細かいフィルタリングやアクションを可能にしたものだ。

 例えばTCPパケットの中からSYN(シン)パケットと呼ばれる特定のパケットと,それ以外のパケットを見分ける。そしてSYNパケットの割合が極端に多いと,サーバーなどをダウンさせる「SYNフラッド*」と呼ばれる攻撃の兆候と判断する。

 加えて,攻撃を検出したあとのアクションも柔軟に決められる。例えば,攻撃パケットを捨てると同時に,管理者にアラートを出したり,ミラーリング(あるポートで受信したパケットをコピーして別のポートから出力すること)を開始してそのパケットをIDS*に送ったりする。大型のL3スイッチになると,つながるネットワークに流れるパケットの量が膨大になるので,すべてのパケットをIDSで監視するのは不可能である。このため,CLEAR-Flowが効果を発揮する。

 このほか,モジュールを追加してさまざまなセキュリティ機能を増やせる製品もある。とくにシャーシ型の大型製品では,豊富な追加モジュールのラインナップがある。

 シスコシステムズのCatalyst(カタリスト) 6500シリーズでは,「ファイアウォール サービス モジュール」というカードを追加することで,アプリケーション・レベルの情報に基づいたフィルタリングが可能になる*写真1[拡大表示])。