Open Data-Link Interface (ODI) は、
ネットワークカードを操作するための
アプリケーションプログラミングインタフェース (API) であり、Novell と
Apple Computer によって共同開発されました。このインターフェースは、異なる
プロトコルスタックと様々な
ネットワークカードを柔軟に組み合わせて使用できるように設計されており、ネットワーク環境における互換性と効率性を向上させることを目的としています。
ODIは、Microsoftと3Comが開発した
Network Driver Interface Specification (NDIS) と同様の役割を果たします。これらの仕様は、
ネットワークカードのドライバと、その上で動作する
プロトコルスタックとの間のインターフェースを標準化します。この標準化により、
ネットワークカードの製造業者とプロトコルの開発者は、特定のハードウェアやソフトウェアに依存することなく、製品を開発・提供することができます。
具体的には、ODIは
OSI参照モデルにおける第2層、すなわちデータリンク層で動作します。データリンク層は、ネットワーク上のノード間でのデータ転送を担う層であり、物理層が提供する物理的な接続を利用して、信頼性の高いデータ伝送を実現します。ODIはこの層に位置することで、様々なプロトコル(TCP/IP, IPX/SPXなど)が、同じ
ネットワークカードを共有することを可能にします。
ODIの重要な特徴の一つは、一つの
ネットワークカードに対して複数の
プロトコルスタックを同時に利用できることです。これは、例えば、TCP/IPネットワークとIPX/SPXネットワークの両方に同じ
ネットワークカードで接続できることを意味します。逆もまた同様で、複数の
ネットワークカード(ドライバ)を、一つの
プロトコルスタックで利用することも可能です。
このような柔軟性により、ODIは様々なネットワーク環境に適応しやすく、特に、
NetWareとMacintosh環境での利用に最適化されていました。
NetWareは当時、企業内ネットワークの構築で広く利用されていたネットワークオペレーティングシステムであり、Macintoshはグラフィカルユーザーインターフェースを備えたことで、デザインやクリエイティブ分野で広く利用されていました。ODIはこれらの環境でのネットワーク接続をより簡単にし、効率的に運用することを可能にしました。
関連技術としては、NDIS (
Network Driver Interface Specification) や、UDI (Uniform Driver Interface) が挙げられます。NDISはMicrosoftが開発した同様の規格であり、主にWindows環境で利用されています。UDIは、デバイスドライバをより抽象化し、より広い範囲のオペレーティングシステムやデバイスでの利用を目指した規格です。
ODIの登場は、ネットワーク技術における相互運用性と柔軟性の向上に大きく貢献しました。異なるプロトコルやハードウェア間の障壁を低減し、より複雑で多様なネットワーク環境を構築することを可能にしたと言えるでしょう。