NDISとODI

Windows 98でLANカードのドライバの種類を見たところ,NDISドライバとODIドライバというものがありました。この二つは何が違うのですか。


NDISとは「Network Device Interface Specification」の略で,マイクロソフトと3Comが提唱したものです。NDISドライバは,マイクロソフトのLAN Managerで利用されていました。NDISの仕様は,MSDN CDのDDKs→Windows 3.51 DDK→Network Drivers→Reference→NDISに含まれています。
 一方ODIは「Open Driver Interface」の略で,ノベルが制定したものです。もっぱらノベル製のネットワークOSであるNetWare用のドライバとして使われていました。このODIドライバを用いてTCP/IPを利用するTCP/IPスタックがWindows 3.1の時代には多く存在し,また当時はLAN ManagerよりもNetWareのほうがLANとしては一般的でLANカードの多くが対応していたため,それなりに普及していました。ちなみにこのODIの仕様はhttp://developer.novell.com/ndk/doclandk.htmから入手できます。
 さてWindows 98から見た現実的な違いとしては,ドライバのインタフェースが異なること以上の差は現在のところないと考えていいでしょう。Windows 98のTCP/IPスタックは,どちらでもとくに問題なく使えるからです。
(大原雄介)