NAME

natmip - IP over ATM PVCs

SYNOPSIS

deviceatmoptionsNATM

DESCRIPTION

The NATM protocol stack includes support for IP over ATM. Without any
additional signalling stacks or other modules it is possible to build a
CLIP (classical IP over ATM) network based on PVCs.
An ATM network card (en0 in this example) is configured for IP by
something like:
ifconfig en0 128.252.200.1 netmask 0xffffff00 up
IP routing is done with special interface routes (routes with directly
reachable destinations) with a link layer gateway address. The link
layer address specifies the ATM interface through which the destination
can be reached, the virtual channel that connects to the destination and
the ATM characteristics of this channel. The address part of the link
layer address (see link_addr(3)) consists of a fixed part (the first 5
bytes) and a part that depends on the kind of the PVC (UBR, CBR, VBR,
ABR). Multi-byte values are big-endian encoded: the bytes with the lower
numbers contain the higher order bits.
byte 0 Is a flag byte. Currently only flag 0x20 is used.
When set, all IP frames are LLC/SNAP encapsulated
before putting them into an AAL5 frame. Setting
this flag is recommended and allows interoperability
with other CLIP implementations. Note that BPF
works only with LLC/SNAP encapsulation.
byte 1 This is the VPI of the channel.
bytes 2...3 VCI of the channel. Must not be zero.
byte 4 Traffic type. One of 0 (UBR), 1 (CBR), 2 (ABR), 3
(VBR).
The variable part for UBR connections may be either empty or three bytes:
bytes 5...7 Specifies the peak cell rate for UBR.
The variable part for CBR connections must be three bytes:
bytes 5...7 Specifies the peak cell rate for CBR.
The variable part for VBR connections must be 9 bytes long and specifies
three values:
bytes 5...7 Specifies the peak cell rate for VBR.
bytes 8...10 This is the sustainable cell rate.
bytes 11...13 The maximum burst size.
The variable part for ABR connections must be 19 bytes long and specifies
the following values:
bytes 5...7 Specifies the peak cell rate for ABR.
bytes 8...10 The minimum cell rate.
bytes 11...13 The initial cell rate.
bytes 14...16 The transient buffer exposure.
byte 17 The NRM value.
byte 18 The TRM value.
bytes 19...20 The ADTF value.
byte 21 The rate increase factor (RIF).
byte 22 The rate decrease factor (RDF).
byte 23 The cutoff decrease factor (CDF).
To add a PVC the route(8) utility can be used:
routeadd-iface 〈remoteIPaddress〉 -link 〈iface〉:〈lladdr〉
The iface is the ATM interface through which remoteIPaddress can be
reached and lladdr is the link layer address as a string of dot-
separated, hexadecimal bytes.
NATM also supports the old, original format. This consists of 4 byte
link layer addresses (and the channels are implicit UBR):
byte 0 Flags:
0x01 use AAL5.
0x02 if using AAL5, use an LLC/SNAP header.
Thus, parameter 3 means AAL5 and LLC/SNAP
encapsulation (this is the required setting for
interworking with other CLIP clients). Note that
BPF works only with LLC/SNAP encapsulation.
byte 1 VPI for the channel
bytes 2...3 VCI for the channel