PR

 イソップ物語の「ウサギとカメ」を覚えているだろうか。ウサギとカメがかけっこし,最後にカメが逆転するというあの話だ。実は次世代インターネット・プロトコル「IPv6」の世界でも,ウサギとカメが競争している。

 競争の舞台はIPv6用TCP/IPソフトの開発。世界中の研究者が開発チームを作って競い合っているが,その有力チームに「USAGIプロジェクト」と「KAMEプロジェクト」があるのだ。

 USAGIプロジェクトの開発対象OSはLinux。これに対してKAMEプロジェクトは,BSD(Berkeley software distribution)系UNIXで動作するIPv6ソフトの開発を進めている。ただしこちらの競争,イソップ物語とは違って先行するのはカメである。KAMEプロジェクトが発足したのは98年4月。一方のUSAGIプロジェクトが始まったのは2000年8月である。

 BSD系UNIXがLinuxをリードする--。昨今のLinuxブームから考えると,いささか不可解な印象を持つかもしれない。なぜIPv6の世界では,BSD系UNIXでの開発が先行したのだろう。これを説明するには,IPv4用TCP/IPソフトの開発の歴史をひもとかなければならない。

 TCP/IPソフトのルーツと呼べるのは,80年代前半に誕生したBSD用のTCP/IPソフトである。90年代に入ってLinuxやWindowsで動作するTCP/IPソフトが作られることになるが,それらの多くはこのBSD用TCP/IPソフトを参考にして開発された。独自にTCP/IPソフトを開発した場合でも,その動作はBSD用TCP/IPソフトと相互接続することで確認するのが一般的だった。

 IPv6ソフトの開発者たちも,今後登場するIPv6ソフトのルーツとなるようなソフトを作りたいと考えた。仕様に忠実で,かつ安定して動作するソフトである。これをより確実にするには,IPv4ソフトのルーツとなったBSD用TCP/IPソフトをベースにするのがいい。こうしたことから,95年ごろから世界各国のチームが始めたIPv6用TCP/IPソフトの開発は,すべてBSD上で進められることとなった。これらのチームの開発結果は,最終的にKAMEに引き継がれて現在に至っている。

 BSD系UNIXには,21のプラットフォーム上で動作するNetBSD,PC/AT互換機用に特化したFreeBSD,セキュリティを強くしたOpenBSDの三つがある。今では,これらのすべてにKAMEプロジェクトのIPv6対応TCP/IPソフトが標準搭載されている。

 実はLinuxにもIPv6ソフトが組み込まれたことがある。97年のことだ。だがこのソフトについては,IPv6を定めたRFCの仕様通りに動作しなかったり,相互接続がうまくいかないなど,いくつかの不具合が報告されている。USAGIプロジェクトは,KAMEプロジェクトの成果をフィードバックし,安定したIPv6用TCP/IPスタックをLinux環境に持ち込むことを目標に結成されたのである。

 さて,ウサギはカメに追いつけるだろうか。

高田 学也=日経NETWORK)

関連リンク

米カリフォルニア大学バークレイ校でBSDを開発したチームが設立した企業「BSDi」
KAMEプロジェクトはBSD系UNIXのIPv6対応TCP/IPソフトを開発する
USAGIプロジェクトはBSD系UNIXでの開発成果をLinuxに持ち込む