UTMは複数のセキュリティ機能を搭載することで,いろいろなメリットをもたらす。しかしその半面,それらをすべて動かすとスループットが落ちてしまうというデメリットがある。特に,パケットのデータ部分までチェックして不正なコードを検出するコンテンツ・セキュリティ機能がボトルネックになる。

 スループットの低下は避けられないが,処理を高速化してスループットの低下を抑える工夫を凝らしたものがある。その工夫のアプローチは大きく二つある。一つは,ハードウエアを使って処理を高速化する方法。もう一つは,ソフトウエアで処理の手順を工夫して高速化する方法だ。

機能を特化したチップを使う

 まずはハードウエアを使って処理を高速化する方法から見ていこう。

 ハードウエアを使う高速化のアプローチでは,ファイアウォール機能やコンテンツ・セキュリティ機能の処理向けに開発したASICを使う(図1)。ASICとは,ある処理に特化した専用チップのことだ。

図1●シグネチャと比較する機能をASICにして高速化
図1●シグネチャと比較する機能をASICにして高速化
一般的にはデータ部分とシグネチャとの比較はプログラムで行う。この処理をASICという機能を特化したチップで実現することで高速化できる。米フォーティネットの「FortiGate」シリーズがASICを搭載している。
[画像のクリックで拡大表示]

 一般的に,ソフトウエアよりハードウエアで処理するほうが高速化できる。UTMにASICを使うのは,米フォーティネットの「FortiGate」シリーズのみ。FortiGateシリーズは,ファイアウォール,VPN,IPS機能を担当する「ネットワークASIC」と,ウイルス対策などのコンテンツ・セキュリティ機能を担当する「アプリケーションASIC」の二つのASICを搭載している

専用ボードで処理を分散させる

写真1●ASA5500にセキュリティ機能を追加するための拡張ボード
写真1●ASA5500にセキュリティ機能を追加するための拡張ボード

 ハードウエアを使って高速化する方法にはもう一つある。それは,基本となるUTM製品に,IPSやウイルス対策などの処理を実行する専用の拡張ボードを追加する方法である。ハードウエアの追加で機能を拡充するため,各機能を同時に動かしたときのスループットの低下を防げるわけだ。この方法は,シスコシステムズの「ASA5500」シリーズが採用している。

 ASA5500本体はファイアウォール機能とVPN機能だけを備えている。IPS機能とウイルス対策/スパム・メール対策機能はそれぞれ専用ボードという形で提供される(写真1)。これらの機能を追加したいなら本体に専用ボードをセットする。今のところ本体にはボードを挿すスロットが1個しか用意されていない。このため,IPSとウイルス対策/スパム・メール対策を同時には実行できない


処理を簡略化するエンジンを併用

 次にソフトウエアで高速化する方法に目を向けよう。UTM製品の多くは,パケットのデータ部分とシグネチャとの比較処理をソフトウエア(スキャン・エンジン)で実行する。そこで,シグネチャと比較する処理部分のプログラムに工夫を加える。

 イスラエルのチェック・ポイント・ソフトウェア・テクノロジーズは,UTM自体をソフトウエア製品として提供している。同社のUTMソフト「VPN-1 UTM」は,処理を高速化するために2種類のスキャン・エンジンを使っている(図2)。処理の流れを見ていこう。

図2●チェック機能を簡略化したエンジンを併用して処理を高速化する
図2●チェック機能を簡略化したエンジンを併用して処理を高速化する
チェック・ポイント・ソフトウェア・テクノロジーズは,カーネルでの処理を高速化するために,検査を簡略化したエンジンを併用している。通信の最初のほうのパケットは通常のエンジンでチェックして,問題ないと判断されたらその後のパケットは高速なエンジンに任せる。通常のエンジンと高速のエンジンが同期をとることで処理を分担する。このしくみを「SecureXL」と呼んでいる。
[画像のクリックで拡大表示]

 UTMでは,通常のスキャン・エンジンと高速スキャン・エンジンが並行し て動いている。パケットがUTMに取り込まれると,通常のスキャン・エンジンがヘッダーからデータ部分までしっかりとチェックする。正常なパケットだと判断できたら,後はそのパケットに続く通信のフローを識別して,最初の処理で正しいと判断されたフローのパケットは高速スキャン・エンジンに処理を任せる。

 高速スキャン・エンジンは,通常のスキャン・エンジンが正常と判断した通信フローのパケットを,検査を簡略化して高速にスキャンする。どちらのスキャン・エンジンで処理すべきかは,二つのスキャン・エンジンの間で通信フローの状態について同期をとることで判断している。同社ではこのしくみを「SecureXL」と呼んでいる。