网络驱动程序接口规范 (Network Driver Interface Specification(NDIS))是通过将不同的协议从网络接口卡上拆除,使得用户可以访问不同的协议。在设计过程中,协议并不需要关于网络卡的任何情况。没有网卡规范接口,只有一个对协议的通用接口。为了使用NDIS卡,需要安装卡和它的驱动程序,装入希望使用的所有协议并通过使用一个称为NETBIND的命令将它们连在一起。
NDISI的基本目的是在一个服务器或一个
工作站上安装多个
协议栈,从而使用户能够与不同的协议进行通信。在NDIS之前(或可比较的Novel1开放
数据链路结构或ODI),必须先下载一个
协议栈,然后再装入下一个协议栈。NDIS使得多个
协议栈对一个
网络接口卡(NIC)
寻址,然后连接网络上的系统;或使每个协议栈寻址它自己的NIC。NDIS允许一个
工作站至多拥有四个NIC,并且每个NIC支持四个
协议栈。 例如,一个用户希望既和Novell NetWare服务器相连(
网间分组交换协议IPX),又与一个基于UNIX的系统相连(
传输控制协议/
Internet协议,TCP/IP),他只需简单地将IPX和TCP/IP协议栈装入在一起即可。NDIS在两个
协议栈之间进行仲裁,并保证从NetWare服务器来的消息被送到IPX栈,而将TCP/IP消息指引到TCP/IP协议栈。NDIS既提供对网络接口卡访问的协议,又提供对介质访问的协议。如果NetWare服务器和UNIX系统是在分离的网络上,
工作站就需要两个接口卡,并且必须为每个卡都装入一个
协议栈。
同样,Novell NetWare服务器和Microsoft Windows NT高级服务器也可以运行多协议栈,因而在不同类型工作站(DOS,UNIX,Macintosh等)的用户都可以访问服务器。
当NDISI在Windows NT自举期间内置入时,它读取一个称为PROT(OCOL.INI的文件内容这个文件描述安装在
工作站和协议站的NIC并和每个卡相连。
为提供对NDIS和ODI一起的支持,Novell开发了
开放数据链路接口网络支持规范,或ODINSUP(SUP源于“support”)。它允许ODI和NDIS网络驱动程序接口共存,因而
工作站就可以和任何ODI系统相连,例如一个IPX服务器和任何NDIS系统(如一个NDISLAN管理器服务器)相连。