开放数据链路
接口 OpenData-link Interface NetWare使用众所周知的与协议无关的开放数据链路接口结构,来对
网络上的不同协议同时提供支持。
网络驱动程序将它们自己连接到ODI层。分组被指向ODI层之上的相应的
协议栈,例如
网间分组交换(IPX),传输控制协议/
因特网协议(TCP/IP),或App leTalk。接近顶端,服务协议对可以在NetWare服务器上安装的不同操作系统提供文件和系统支持。
开放数据链路接口(ODI)是 Apple 和 Novell 为写
网络驱动程序开发的一个
应用程序接口(API)。类似于 NDIS,ODI 提供
协议栈和适配器驱动程序之间的厂商中立接口。它位于 OSI 模型的第2层,
数据链路层。这个接口也使一个或更多
网络驱动器能够支持一个或更多
协议栈。例如,ODI 允许一台计算机仅有一个 NIC 同时连接到 IPX/SPX
网络和 TCP/IP
network 两者中。
在
工作站使用类似的策略,以允许用户使用不同
通信协议(如基于UNIX的TCP/IP)的
网络相连。将需要Novell的LAN Work Placefor DOS,以提供对DOS和Windows工作站的TCP/IP支持。另外,Novell的 LAN Work Place for Macintosh,向Apple Macintosh用户提供在NetWare LAN上的很大范围的主机、服务器和工作组的透明访问,例如,对VAX
小型计算机、IBM
大型计算机和UNIX工作站。其他厂商也提供类似的产品。
如果需要将
工作站连接到NetWare,以及其他类型的
网络,如Microsoft LAN管理器、IBM LAN服务器和3Com 3+共享网络,就可以安装NetWare
软件包中提供的ODI
网络驱动程序接口规范支持(ODINSUP)驱动程序。ODINSUP允许ODI
网络驱动程序接口和Microsoft
网络驱动程序接口规范(NDIS)共存.这通常是Microsoft产品使用的,如LAN管理器和Windows NT。
ODI允许NetWare服务器和工作站与其他不同的系统进行通信,这些系统包括使用不同协议栈的
大型计算机。
ODI标准化了网络接口卡
驱动程序的开发,厂商们不再需要担心他们的驱动程序是否适合一种特定的协议栈。事实上,驱动程序是为和链路支持层(LSL)连接而编写的。LSL就象一种交换板,它分组被指定到相应的协议栈。
可以在图O-5中看到ODI的一些部件层,在底部是对不同类型
网络接口卡的接口,在顶部是和NetWare
操作系统接口的协议,在中间是链路支持层,它在部件间指导通信传输。
多链路接口(MLI) 多链路接口(MLI)层是为连接
网络接口卡设备驱动程序的一个接口。这些设备驱动程序是由和Novell链路支持层的规范匹配的厂商编写的。这些驱动程序被以多链路接口驱动程序(NLID)的形式引用。
链路支持层(LSL) LSL为在底层的驱动程序和在顶部的协议提供一个链路。它象一个交换板那样工作,从MLID指导
网络通信到相应的协议,或者相反方向进行。
多协议接口(MPI)多协议接口(MPI)对
协议栈的连接提供了一个接口,例如IPX、TCP/IP和AppleTalk。其他协议栈,如OSI和SNA,将在未来可以获得。
当一个分组抵达一个
网络接口卡时,它被卡的MLID进行处理,并送到LSL。LSL决定这个分组将到那个协议栈,并将它送到这个协议。这个分组以正常的方式向上通过
协议栈,在那里它被较高级别的协议进行处理。