Collection Contents Index Network communication concepts Supported network protocols pdf/chap26.pdf

User's Guide
   PART 4. Database Administration and Advanced Use
     CHAPTER 26. Client/Server Communications       

Real world protocol stacks


The OSI model is close enough to current networking software and hardware to be a useful model for thinking about networks. There are inevitable complications because of the different ways in which software companies have designed their own systems. Also, there are complications when an individual computer is running more than one protocol stack, as is increasingly common.

Top of page  Common protocol stacks

The TCP/IP protocol is available on all major operating systems. In addition, some widely used network software packages implement their own protocol stacks. Here are some networking software vendors together with their most common proprietary protocol stacks.

In each case, the installed data link layer may be changed from ODI to NDIS (or vice versa) by other networking software if more than one network protocol is installed. In these cases a translation driver ensures that both ODI and NDIS data link layer interfaces are available to the higher levels of the protocol stack. Working with more than one protocol stack is discussed in more detail in the next section.

Top of page  Working with multiple protocol stacks

For two network applications (such as a client application and a database server) to communicate, the client computer and the server computer must have compatible protocol stacks at each level. When each computer has a single network protocol installed, it is fairly straightforward to ensure that each is running the same stack. However, when each computer is running multiple protocols, the situation becomes more complex.

At the transport and network layers, there is no problem with more than one protocol running at once; as long as there is a compatible path through the protocol stacks, the two applications can communicate.

ODI and NDIS interfaces 

There are two widely-used interfaces between the data link layer and the network layer above it: ODI and NDIS. The data link layer communicates directly with the network adapter, so only one data link driver can be installed at a time. However, because most data link layers do not modify the information placed on the network wire, an ODI data link driver on one computer is compatible with an NDIS driver on another computer.

Each network layer is written to work with one, and only one, of ODI or NDIS. However, translation drivers are available that enable network level protocols that require an NDIS (or ODI) data link interface to work with ODI (or NDIS) data link layers. Consequently, a protocol stack built on an ODI data link layer can be compatible with a protocol stack based on an NDIS data link layer as long as the upper layers are compatible.

ODI and NDIS translation drivers 

For example, Novell provides a driver named odinsup, which enables support for NDIS network protocols on an ODI data link layer, as well as a driver named odi2ndi, which translates in the other direction. Microsoft provides an ODI to NDIS mapper called odihlp.exe with Windows for Workgroups and Windows 95.

The translation drivers enable NDIS-based protocol stacks to be compatible with ODI-based protocol stacks on other computers, and to coexist on the same computer. You can think of the network adapter driver, the NDIS or ODI interface, and (if present) the translation driver as together forming the data link layer. For instance, you can configure a computer running OS/2 with an NDIS driver to communicate (via odi2ndi) with a Novell NetWare server using IPX on ODI drivers and, at the same time, communicate (via the NDIS driver) with a Windows NT computer using TCP/IP on an NDIS driver.

Troubleshooting tip
    Not all translation drivers achieve complete compatibility. Be sure to get the latest available version of the driver you need. Although we provide some tips concerning network troubleshooting, the primary source of assistance in troubleshooting a particular protocol stack is the documentation for the network communications software that you install.

Top of page  

Collection Contents Index Network communication concepts Supported network protocols pdf/chap26.pdf