This chapter lists the devices and protocols supported by MultiNet and explains how the MultiNet kernel interacts with the OpenVMS Operating System.
MultiNet supports a variety of network topologies. Table 7-1 lists the supported network interfaces.
|
HP Ethernet controller (shared)
|
MultiNet is compatible with the current versions of the standard Internet networking protocol specifications listed in Table 7-2.
|
BGP (Border Gateway Protocol): RFC-1105, RFC-1323
|
This section describes how the MultiNet kernel interacts with the OpenVMS Operating System. To understand the information in this section, some background in OpenVMS internals is helpful. Figure 7-1 illustrates the MultiNet protocols and the overall organization of the MultiNet kernel. [ Support is provided for ATM, Ethernet, FDDI, and Token Ring as well as PPP and SLIP.]
Figure 7-1 MultiNet Organization See graphic.
MultiNet interacts directly with the OpenVMS Operating System. Generic sockets pass requests to the protocol switch, that differentiates between requests for IP use and for other support facilities. Requests are then sent through the network interface switch, which identifies the device for which the request is bound. When a request is received from a device, the steps occur in reverse.
The programs implementing the lower layers of MultiNet data link, network, and transport layers, with the exception of shared OpenVMS device drivers reside in the MultiNet kernel. The MultiNet kernel is loaded into the OpenVMS S0 space (where the OpenVMS kernel is also loaded). Pages for S0 space are allocated when the OpenVMS system boots.
Note! You must use the SPTREQ SYSGEN parameter on VAX/VMS systems to set aside the appropriate number of S0 pages.
The MultiNet kernel accommodates multiple $QIO interfaces. Each $QIO interface is implemented by a separate OpenVMS pseudo-device driver, allowing MultiNet to simultaneously support the $QIO interfaces of several popular networking implementations. This lets you use, without modification, applications designed for these other networking implementations. The default MultiNet $QIO interface, implemented in INETDRIVER.EXE, is used by the MultiNet shareable socket library and all MultiNet applications.
All MultiNet $QIO drivers communicate with the MultiNet kernel through a set of kernel transfer vectors that interface with the generic socket layer. The generic socket layer of the MultiNet kernel provides most of the facilities common to all network protocols (including reading and writing user-level data and synchronizing OpenVMS I/O request packets with network protocol events).
The generic socket layer uses the protocol switch for protocol-specific operations. The protocol-specific code (which may consist of several interconnected protocol modules) calls through the network interface switch to the appropriate network device driver to encapsulate and transmit packets.
The protocol-specific code can also receive timer interrupts through the protocol switch. Incoming packets are decapsulated by the network device drivers and passed to the protocol-specific code through the network interface switch.
The MultiNet kernel includes code allowing it to handle I/O for most network interface devices itself, rather than using OpenVMS device drivers. However, for devices that MultiNet shares with other software (for example, a Hewlett-Packard Ethernet interface), the kernel uses standard OpenVMS device drivers and either VCI (VMS Communication Interface), FFI (Fast Function Interface), or ALTSTART driver interfaces.
The include and library files (optionally installed with MultiNet) provide access to several programming interfaces for writing custom client and server applications. These interfaces include:
A 4.3BSD-compatible shareable socket library
An RPC (Remote Procedure Call) library based on Sun Microsystems' public domain RPC library
The standard MultiNet $QIO interface
A $QIO interface compatible with the HP TCP/IP Services for OpenVMS [ Formerly called VMS/ULTRIX Connection or UCX (The Ultrix Connection). References in the MultiNet documentation set may refer to either UCX or HP T CP/IP Services for OpenVMS.]
Consult the Programmer's Reference for additional information about the socket library and the MultiNet $QIO programming interface. The Sun RPC library routines are documented in the Sun Microsystems guide, Networking on the Sun Workstation.
Table 7-3 shows the correspondence between the MultiNet components listed in Figure 7-1 and the layers of the OSI (Open Systems Interconnection) seven-layer reference model.
Table 7-3 MultiNet Correspondence with the OSI Reference Model
|
Application, Presentation, Session
|
FTP, TELNET, FINGER, other applications
|
Note! The protocol suites implemented under MultiNet do not map one-to-one onto the OSI reference model. In particular, each TCP/IP application protocol generally handles the functions normally ascribed to the Application and Presentation layers of the OSI model.