コンテンツにスキップ

アーキテクチャ

Sophos Firewall は、接続内の最初のパケットを検査した後、信頼できるトラフィックを FastPath にオフロードします。

FastPath がレイヤー 2 以上のトラフィック処理を行うので、接続内のすべてのパケットについてファイアウォールの全処理を適用する必要がなくなります。このようにオフロードする (パケットごとの処理を省略する) ことで、処理サイクルを最小限に抑え、有線レベルの速度でパケットを配信することが可能となります。

個々の接続のステートフルトラッキングを使用すると、FastPath はパケットを完全に処理し、CPU サイクルとメモリ帯域幅を節約します。FastPath は、カーネルの指示に従って動作します。

詳細は、パケットの寿命を参照してください。

アプライアンスにおけるオフロード

FastPath は、VFP (仮想 FastPath) としてソフトウェアベースで提供されます。そのため、ハードウェア、ソフトウェア、仮想の Sophos Firewall で共通のアーキテクチャを維持できるのが特徴です。VFP のアップデートおよび機能は、SFOS リリースの一部です。

XGS シリーズ

XGS シリーズアプライアンスは、信頼できるトラフィックを Xstream フロープロセッサにオフロードし、以下のアクセラレーションを適用します。

  • ファイアウォールアクセラレーション (18.5、19.0、およびそれ以降のバージョン)
  • IPsec アクセラレーション (19.0以降のバージョンのみ)

XGS シリーズアプライアンスは、マルチコア x86 CPU と、Xstream フロープロセッサと呼ばれる NPU (FastPath 処理専用の Network Processing Unit) を組み合わせたデュアル プロセッサ アーキテクチャを採用しています。

x86 CPU は、接続内の最初のパケットを検査した後、信頼できるトラフィックを FastPath (Xstream フロープロセッサ) にオフロードします。オフロードされたトラフィックフローは、NPU で高速処理されます。これにより、ホストの CPU のリソースを解放して、TLS インスペクションや、ディープパケットインスペクション、IPsec の暗号化および復号化など、リソースを大量に消費するタスクに割り当てることが可能となります。

XG シリーズ

XG シリーズアプライアンスでは、FastPath にオフロードする方法として、ファイアウォールアクセラレーションのみが実行されます。信頼できるトラフィックは、ホストの x86 CPU にオフロードされます。

仮想およびソフトウェア版

Sophos Firewall の仮想およびソフトウェア版では、オフロードされたトラフィックにも x86 CPU が使用されます。

ハイパーバイザーのサポート: FastPath は、VMware ESXi のハイパーバイザーに対応しています。KVM などの他のハイパーバイザーでは、ファイアウォールアクセラレーションのための CLI コマンドを使って FastPath をオフにしてください。

NIC ドライバ: FastPath は、i40e、e1000、e1000e、igb、ixgbe、vmxnet3 に対応しています。これ以外のドライバにはロードされません。なお、Sophos Firewall (DPI エンジンを含む) は、サポート対象外のドライバでも正常に動作します (FastPath によるパフォーマンス向上がないという点だけが異なります)。

MTU: 現在、FastPath は e1000 および e1000e NIC で最大 3500 MTU に対応しています。

FastPath ネットワークフロー

このアーキテクチャには、ファイアウォールスタック、DPI (ディープパケットインスペクション) エンジン、および FastPath ネットワークフローが含まれます。

Sophos Firewall は、接続内の最初のパケットを検査した後、信頼できるトラフィックを FastPath にオフロードします。

FastPath へのオフロードは、ファイアウォールアクセラレーションまたは IPsec アクセラレーションの形で実行されます。使用できるアクセラレーションの種類は、アプライアンスシリーズおよび SFOS バージョンによって異なります。ファイアウォールアクセラレーションおよび IPsec アクセラレーションは、デフォルトでオンになっています。

ファイアウォールアクセラレーション

接続のトラフィックは、最初はステートフルファイアウォールモードでフローします。各方向からのパケットが 1つずつ Sophos Firewall を通過すると、ファイアウォールスタックによってフローが細分化され、FastPath 内に接続キャッシュが登録されます。これにより、FastPath への同じ接続で、後続のパケットのカーネル処理がオフロードされます。

DPI エンジン: DPI エンジンは、ストリーミング処理を通じてレイヤ 4 以上からのトラフィックを検査します。この単体のエンジン内で、SSL/TLS の復号化およびインスペクション、IPS ポリシー、アプリケーションの特定と制御、Web ポリシー (プロキシレス型 Web フィルタリングを含む)、およびマルウェア対策スキャンが適用されます。マルウェア対策スキャンには、ゼロデイ対策およびファイルレピュテーション分析が含まれます。

オフロードの決定は、セキュリティ処理の各段階で行われます。

FastPath へのオフロード: ファイアウォールスタックは、DAQ (Data Acquisition) レイヤ経由で最初のパケットを DPI エンジンに配信し、セキュリティ判定を委ねます。オフロードされたパケットについては、FastPath が後続パケットを DAQ レイヤ経由で DPI エンジンに直接配信するため、カーネルメモリへのコピーの保持が不要になります。

これ以降のトラフィックは、カーネルによって FastPath にオフロードされ、そこでレイヤー 2 およびレイヤー 3 の処理が実行されます。このようにして、一部またはすべての処理をオフロードできるため、CPU への負荷が最小限に抑えられます。

ファイアウォールアクセラレーションのオン/オフ: CLI コンソールでファイアウォールアクセラレーションをオフにした場合や、FastPath がロードされない場合でも、Sophos Firewall は正常に動作します (FastPath によるパフォーマンス向上がないという点だけが異なります)。

ファイアウォールアクセラレーションをオンまたはオフにしてステータスを確認するには、ファイアウォールアクセラレーションの CLI コマンドを参照してください。

ルールとポリシーを使用すれば、トラフィックの特性に応じて FastPath へのオフロードを微調整し、クラウドアプリケーションのトラフィックや DPI エンジンを高速化することが可能です。

IPsec アクセラレーション

ポリシーベースおよびルートベースの IPsec VPN では、ESP のカプセル化、暗号化、カプセル化解除、復号化など、CPU への負荷が高い処理がオフロードされます。

こうした処理は NPU にオフロードされ、x86 ホストの CPU を解放します。NPU にハードウェア暗号化機能が搭載されたことによって、これが可能になりました。さらに、IPsec アクセラレーションによって、IPsec VPN トンネルのスループットも向上します。

IPsec の暗号化および復号化を FastPath にオフロードするにあたっては、フェーズ 2 の SA (セキュリティアソシエーション) が使用されます。Sophos Firewall で使用可能な暗号化と認証の全組み合わせの SA がオフロードされますが、以下はサポート対象外となります。

  • 3DES
  • BlowFish
  • MD5

!!! tip パフォーマンスを最大化するには、暗号化方式 AES-GCM 128 を使用することを推奨します。

IPsec VPN トラフィックは、以下のようにオフロードされます。

完全オフロード: オフロードされた SA のパケットは、FastPath でカプセル化、暗号化、カプセル化解除、復号化が行われます。内部トラフィックが一定の条件を満たす場合は、ファイアウォールスタック処理も FastPath にオフロードされ、完全なオフロードが実現します。

FastPath と SlowPath: オフロードされた SA のパケットは、FastPath で暗号化、復号化されます。内部トラフィックが FastPath へのオフロードの対象外である場合は、SlowPath でファイアウォール処理 (カプセル化およびカプセル化解除を含む) が行われます。なお、カプセル化の最終処理は、FastPath でパケットを暗号化した後に行われます。

SlowPath のみ: オフロードされない SA については、SlowPath で全処理が実行されます。以下に該当する場合、SA はオフロードされません。

  • SA の暗号スイートが、サポート対象外である。
  • SA が VLAN などの仮想インターフェース上にある。
  • IPsec アクセラレーションがオフになっている。

IPsec アクセラレーションのオン/オフを切り替えると、IPsec の全トンネルが再起動し、ダウンタイムが発生します。IPsec アクセラレーションのオン/オフを切り替えてステータスを確認する方法については、IPsec アクセラレーションの CLI コマンドを参照してください。

オフロードのサポート

現在、オフロードについては以下の制限があります。

モジュール: SSL VPN、QoS、DoS、RED、LAG、PPPoE トラフィックはオフロードの対象外です。

ブリッジモード: 特定のブリッジ構成のみが、オフロードの対象となります。

冗長化 (HA):

  • アクティブ-アクティブ: ファイアウォールアクセラレーションはサポート対象外です。IPsec アクセラレーションはサポートされています。
  • アクティブ-パッシブ: ファイアウォールアクセラレーションと IPsec アクセラレーションの両方がサポートされています。

VLAN およびワイヤレスインターフェース: VLAN およびワイヤレスインターフェースでは、IPsec アクセラレーションはサポート対象外です。

tcpdump: オフロードをオンにしたまま、tcpdump を実行することが可能です。FastPath トラフィックを tcpdump に送信するように設定できます。

FastPath で処理できない機能や障害があった場合に備え、ファイアウォールスタック処理 (SlowPath) もフォールバックパスとして保持されます。ファイアウォールスタックは、IP in IP などの特定のプロトコルの処理を継続します。

ルールとポリシーを使用して FastPath を最適化する

ルールとポリシーを適宜設定することで、ファイアウォールスタックおよび DPI エンジンをバイパスし、FastPath (ファイアウォールアクセラレーション) でトラフィックを完全に処理することが可能です。例として、以下のようなケースがあります。

  • IPS、Web フィルタリング、マルウェア対策、またはアプリケーション制御を使用しないファイアウォールルール。最初のパケットが接続の両側にある Sophos Firewall を通過した後に、トラフィックは FastPath にオフロードされます。
  • アプリケーション制御ポリシーを含むファイアウォールルール。トラフィックは約 8パケット後に FastPath にオフロードされます。
  • ルールアクションに IPS ポリシーが設定されたファイアウォールルールセッションのバイパス。IPS ポリシールールとこのアクションが一致するトラフィックは、FastPath にオフロードされます。
  • 以下のポリシーが設定されているファイアウォールルール:
    • SophosLabs からのインテリジェントなオフロードシグニチャを含む IPS ポリシー。
    • マルウェアやコンテンツスキャン、DPI エンジン設定を使用しない Web フィルタリング。マルウェアおよびコンテンツスキャンおよび DPI エンジン設定を含むファイアウォールルールの場合、FastPath は、ファイアウォールスタックをバイパスして、直接 DPI エンジンにトラフィックを配信します。
  • SSL/TLS インスペクションルールがない場合。アクションが「復号化」に設定されているルールでは、FastPath はファイアウォールスタックをバイパスして、直接 DPI エンジンにトラフィックを配信します。
  • アクションが「復号化しない」に設定された SSL/TLS インスペクションルール。STARTTLS 接続の場合、トラフィックは 15 パケット後に FastPath にオフロードされます。