Chapter 3. Data Link Layer Network Components is a discussion of the data link layer, its general configuration needs, and network drivers. These drivers handle the specifics of communicating over networking hardware, such as an Ethernet board, a serial line, or even the shared-memory backplane. These drivers are the foundation of the network stack. For information on booting VxWorks using these drivers, see chapter 13. Booting over the Network.
After the chapter on the data link layer, chapter 4. TCP/IP Under VxWorks introduces the MUX and the TCP/IP protocol suite. Under VxWorks, TCP/IP uses the MUX interface to communicate with the data link layer. The purpose of the MUX is to decouple the data link and network layers. This makes it easier to add new network drivers under an existing protocol. It also makes it easier for an alternative protocol to run over the standard VxWorks data link layer. For more information on the MUX, see the Network Protocol Toolkit User's Guide.
The discussion of IP, TCP, and UDP is primarily an overview that prepares you for a discussion of their configuration needs under VxWorks. However, this chapter does describe ARP and Proxy ARP in some detail. ARP provides dynamic mapping from an IP address to the corresponding media address. Using ARP, VxWorks implements a proxy ARP scheme that can make distinct networks appear as one logical network. This proxy ARP scheme is an alternative to the use of explicit subnets for accessing the shared-memory network.
The next group of protocols discussed, in chapter 5. Network Configuration Protocols, are the network configuration protocols:
The networking stack can use either DHCP or BOOTP to set up and maintain its network configuration information. At boot time, both DHCP and BOOTP can provide IP addresses and related information. BOOTP assigns IP addresses permanently. The DHCP protocol extends BOOTP to allow the assignment of IP addresses on a temporary basis. Thus, the client receives an IP address on lease. When the lease expires, the client must renegotiate the lease. As a result, DHCP remains active during run-time.
Although SNMP can provide network configuration information, it differs significantly from BOOTP and DHCP in that it was not designed for use at boot time. Instead, you use it to set up network management station (NMS) from which you can remotely configure, monitor, and control network devices called agents. Thus, SNMP is a network configuration protocol, but in a very different sense of the term.
Beyond providing a few paragraphs of description, this manual does not discuss SNMP. For detailed information on using SNMP with VxWorks, see WindNet SNMP VxWorks Optional Product Supplement.
Chapter 6. Dynamic Routing Protocols discusses the routing applications:
Chapter 7. Networking APIs discusses the VxWorks implementation of sockets. Using sockets, applications can communicate across a backplane, within a single CPU, across an Ethernet, or across any connected combination of networks. Socket communications can occur between any combination of VxWorks tasks and host system processes. VxWorks supports a standard BSD socket interface to TCP and UDP. Using these standard BSD sockets, you can:
In addition to the standard BSD socket interface, VxWorks also supports zbuf sockets, an alternative set of socket calls based on a data abstraction called the zbuf (the zero-copy buffer). Using zbuf sockets, you share data buffers (or portions of data buffers) between separate software modules. Although this interface is WRS-specific, the interface can communicate with standard BSD sockets. Thus, the other end of the socket connection can use the standard BSD interface even if you chose to use the zbuf interface on the VxWorks side of the connection.
DNS is a distributed database that most TCP/IP applications can use to translate host names to IP addresses and back. DNS uses a client/server architecture. The client side is known as the resolver. The server side is called the name server. VxWorks provides the resolver functionality in resolvLib. DNS is discussed briefly in chapter 8. DNS: Domain Name System. For detailed information on DNS, see RFC-1034 and RFC-1035.
Using an SNTP client, a target can maintain the accuracy of its internal clock based on time values reported by one or more remote sources. Using an SNTP server, the target can provide time information to other systems. SNTP is discussed briefly in chapter 9. SNTP: A Time Protocol.
Chapters 10. RPC: Remote Procedure Calls, 11. File Access Applications, and 12. rlogin and telnet: Host Access Applications discuss the applications that provide remote access over the network. VxWorks supports the following: