System information
The Transport Layer
Book Title
13-294
ARP
ARP entities are classified as either address resolution clients or address resolution services. Address
resolution clients are usually implemented in client nodes, whereas address resolution services are
typically provided by service nodes.
An ARP packet has an 8-byte header consisting of a 2-byte packet type, a 4-byte network number,
and a 2-byte subnetwork number. There are four packet types: a query request, which is a request for
an ARP service; a service response, which is a response to a query request; an assignment request,
which is sent to an ARP service to request a VINES internetwork address; and an assignment
response, which is sent by the ARP service as a response to the assignment request. The network
number and subnet number fields have meaning only in an assignment response packet.
ARP clients and services implement the following algorithm when a client starts up. First, the client
broadcasts query request packets. Then, each service that is a neighbor of the client responds with a
service response packet. The client then issues an assignment request packet to the first service that
responded to its query request packet. The service responds with an assignment response packet
containing the assigned internetwork address.
ICP
ICP defines exception notification and metric notification packets. Exception notification packets
provide information about network-layerexceptions; metric notification packets contain information
about the final transmission used to reach a client node.
Exception notifications are sent when a VIP packet cannot be routed properly, and the error subfield
in the VIP header’s transport control field is enabled. These packets also contain a field identifying
the particular exception by its error code.
ICP entities in service nodes generate metric notification messages when the metric subfield in the
VIP header’s transport control field is enabled, and the destination address in the service node’s
packet specifies one of the service node’s neighbors.
The Transport Layer
VINES provides three transport-layer services:
• Unreliable datagram service—Sends packets that are routed on a best-effort basis but not
acknowledged at the destination.
• Reliable message service—A virtual-circuit service that provides reliable sequenced and
acknowledged delivery of messages between network nodes. A reliable message can be
transmitted in a maximum of four VIP packets.
• Data stream service—Supports the controlled flow of data between two processes. The data
stream service is an acknowledged virtual circuit service that supports the transmission of
messages of unlimited size.
Upper-Layer Protocols
As a distributed network, VINES uses the remote-procedure call (RPC) model for communication
between clients and servers. RPC is the foundation of distributed service environments. The NetRPC
protocol (Layers 5 and 6) provides a high-level programming language that allows access to remote
services in a manner transparent to both the user and the application.