不正アクセスをブロックせず正常アクセスをブロックする
謎のファイアウォール機能「ActiveArmor」
長々と説明してきたが、この「nForce 4」の2005年頃の紹介ページが、まだウェブアーカイブに残っている(関連リンク)。こちらを見てみると、特徴として以下の項目が並んでいる。
- NVIDIA SLI Support
- PCI Express Support
- SATA Support
- NVIDIA RAID
- NVIDIA ActiveArmor
- NVIDIA Gigabit Ethernet
このうち、2005年のページにあって現在のページにないのが、今回のテーマである「NVIDIA ActiveArmor」である。実はこのActiveArmorもホワイトペーパーがまだ残っている。単純に言えばActiveArmorとは、TCP/IP Offloading+ハードウェアベースのファイアウォールである。
マイクロソフトは2004年9月に公開したWindows XP SP2でファイアウォール機能を標準で搭載したが、これはあくまでもソフトウェアベースのファイアウォールであった。これをハードウェアで行なうとともに、TCP/IP Offloadingも組み合わせることで、特にネットワークゲームを実施中のネットワーク関連のCPU負荷を減らすことで、よりゲームの実行にCPUを割り当てられる、というのがNVIDIAの主張であった。
そのActive Armorを実際に使うとどうなるかが、黒歴史の始まりである。最初の問題は「逆ファイアウォールとして動く」だ。ActiveArmorを有効にするとMSNに繋がらない、Yahooに繋がらないといった、「正常にアクセスしているはずのサイトへのアクセスをブロック」してくれることに、多くのユーザーがブチ切れて、それ以上ActiveArmorを使わなかったので、実害はそれほどなかった(?)。
ところがこれを綿密に調べた熱心なユーザーもおり、その結果逆に不正アクセスを全然防いでいない事が発覚した。まさしく「逆ファイアウォール」だったわけだ。まずこれが第1の問題。
第2の問題は、ActiveArmorを有効にすると、カタログとは逆にCPU占有率が猛烈に上がるという問題が発覚した。これは実はTCP/IP Offloadingの問題と密接に関係している。確かに初期のActive Armorは有効にすると、ファイルのダウンロードなどでCPUの占有率が大幅に下がった(本当かどうかは知らないが、100%→20%になった、なんて掲示板での書き込みもあった)。
ところがこのCPU負荷低減の大半は、TCP/IP Offloadingによるものだった。そしてTCP/IP Offloadingを有効にすると、パケットが破損するという問題が今度は発見されることになった。破損する、というよりもTCP/IP Offloading Engineがパケットを破壊しているというのが正確な表現だ。
TCP/IPの場合、パケットが破損したら再送を掛けることでこれを回復しようとするため、たまに何パケットか破損するくらいなら問題はないのだが、結構な頻度でこのパケット破損が発生し、そのたびに再送を掛けることになると、結局実効転送速度がぐんと落ちることになる。
この問題も比較的早期に発見され、ドライバーを何度もバージョンアップしながら修正に努めた結果、最終的にはTCP/IP Offloading Engineをほとんど使わないことで回避に成功した。これを成功した、というのは正しい表現なのか良くわからないのだが、とにかくパケット破損は格段に減ったのだが、その代償としてCPU占有率が格段に上がることになった。
実際、NVIDIAのGbEを使わずに、PCIeレーン経由でMarvellのGbEコントローラーを外付けにした製品もいくつかあるのだが、MarvellのGbEを使ったほうがCPU負荷が少なくなったそうだ。こうなると、Active Armorのファイアウォール機能も、当然CPU占有率がグンとあがることになる。
CPU占有率が高く、肝心の不正アクセスをブロックできずに正常アクセスをブロックするファイアウォールを使おう、なんて酔狂な人間はそれほど多くない。悪かったのは、どうもこのファイアウォールのエンジンもハードウェアでかなり実装されていたようで、ドライバーの変更で簡単にどうこうできるものではなかったため、CPU占有率はともかく動作のおかしさは最後までどうにもならなかった。
そこで、NVIDIAはどうしたかというと、先にウェブサイトを比較して紹介したとおり、ひっそりとActiveArmorの看板を外してしまった。最初に説明したとおり、Crush K8-04にはActiveArmor用のハードウェアが入っており、主要な製品では利用可能だった(これも製品差別化の1つだったため、上位グレードの製品は利用できても下位グレードの製品では無効化することはあった)が、これに続くワンチップ化されたGeForce 6100シリーズやnForce 570などでは、ActiveArmorの回路そのものが削減されたようだ。
製品差別化のためにあれこれ入れたものの、最後までまともに動作させられずに終わったという観点では間違いなく黒歴史的機能であるのだが、幸いなのはそれ以外はまともだったことだろう。
その後、CPUの性能が上がったことで、Windowsに付属のファイアウォールでも性能的な問題がなくなったこともあり、ActiveArmorを搭載するメリットそのものが失われたことで、同種の技術をさらに突っ込むことを放棄したのは、NVIDIAにしては賢明な判断だったと言わざるを得ない。
この連載の記事
-
第768回
PC
AIアクセラレーター「Gaudi 3」の性能は前世代の2~4倍 インテル CPUロードマップ -
第767回
PC
Lunar LakeはWindows 12の要件である40TOPSを超えるNPU性能 インテル CPUロードマップ -
第766回
デジタル
Instinct MI300のI/OダイはXCDとCCDのどちらにも搭載できる驚きの構造 AMD GPUロードマップ -
第765回
PC
GB200 Grace Blackwell SuperchipのTDPは1200W NVIDIA GPUロードマップ -
第764回
PC
B100は1ダイあたりの性能がH100を下回るがAI性能はH100の5倍 NVIDIA GPUロードマップ -
第763回
PC
FDD/HDDをつなぐため急速に普及したSASI 消え去ったI/F史 -
第762回
PC
測定器やFDDなどどんな機器も接続できたGPIB 消え去ったI/F史 -
第761回
PC
Intel 14Aの量産は2年遅れの2028年? 半導体生産2位を目指すインテル インテル CPUロードマップ -
第760回
PC
14nmを再構築したIntel 12が2027年に登場すればおもしろいことになりそう インテル CPUロードマップ -
第759回
PC
プリンター接続で業界標準になったセントロニクスI/F 消え去ったI/F史 -
第758回
PC
モデムをつなぐのに必要だったRS-232-CというシリアルI/F 消え去ったI/F史 - この連載の一覧へ