natmip(4)
NAME
natmip - IP over ATM PVCs
SYNOPSIS
device atm options NATM
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/SNAPencapsulated
before putting them into an AAL5 frame.Setting
this flag is recommended and allows interoperability
with other CLIP implementations. Notethat 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:
route add -iface <remote IP address> -link- <iface>:<lladdr>
- The iface is the ATM interface through which remote IP
- address 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 anLLC/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
EXAMPLES
- Suppose you have 3 hosts 128.252.200.1, 128.252.200.2 and
- 128.252.200.3
connected by ATM through PVCs:
between 128.252.200.1 and 128.252.200.2: 0xc9 UBR
between 128.252.200.1 and 128.252.200.3: 0xca VBR
between 128.252.200.2 and 128.252.200.3: 0xcb CBR- The parameters for the VBR channel are: PCR 50000, SCR
- 10000, MBS 10.
The peak cell rate for the CBR channel is 100000. - To enable the links use the following commands:
- on host 128.252.200.1:
- ifconfig en0 128.252.200.1 netmask 0xffffff00 up
route add -iface 128.252.200.2 -link en0:3.0.0.c9.0
route add -iface 128.252.200.3 -link - en0:3.0.0.ca.3.0.c3.50.0.27.10.0.0.a
- on host 128.252.200.2:
- ifconfig en0 128.252.200.2 netmask 0xffffff00 up
route add -iface 128.252.200.1 -link en0:3.0.0.c9.0
route add -iface 128.252.200.3 -link - en0:3.0.0.cb.1.1.86.a0
- on host 128.252.200.3:
- ifconfig en0 128.252.200.3 netmask 0xffffff00 up
route add -iface 128.252.200.1 -link - en0:3.0.0.ca.3.0.c3.50.0.27.10.0.0.a
route add -iface 128.252.200.2 -link - en0:3.0.0.cb.1.1.86.a0
- This can also be done in rc.conf(5):
- on host 128.252.200.1:
- network_interfaces="lo0 en0"
ifconfig_en0="inet 128.252.200.1 netmask - 255.255.255.0"
static_routes="host2 host3"
route_host2="-iface 128.252.200.2 -link - en0:3.0.0.c9.0"
route_host3="-iface 128.252.200.3 -link - en0:3.0.0.ca.3.0.c3.50.0.27.10.0.0.a"
- on host 128.252.200.2:
- network_interfaces="lo0 en0"
ifconfig_en0="inet 128.252.200.2 netmask - 255.255.255.0"
static_routes="host1 host3"
route_host1="-iface 128.252.200.1 -link - en0:3.0.0.c9.0"
route_host3="-iface 128.252.200.3 -link - en0:3.0.0.cb.1.1.86.a0"
- on host 128.252.200.3:
- network_interfaces="lo0 en0"
ifconfig_en0="inet 128.252.200.3 netmask - 255.255.255.0"
static_routes="host1 host2"
route_host1="-iface 128.252.200.1 -link - en0:3.0.0.ca.3.0.c3.50.0.27.10.0.0.a"
route_host2="-iface 128.252.200.2 -link - en0:3.0.0.cb.1.1.86.a0"
SEE ALSO
en(4), fatm(4), hatm(4), natm(4), patm(4)
AUTHORS
- Chuck Cranor of Washington University implemented the NATM
- protocol layer
along with the EN ATM driver in 1996 for NetBSD. - BSD August 11, 2003