EN JA
NATMIP(4)
NATMIP(4) FreeBSD Kernel Interfaces Manual NATMIP(4)

名称

natmipIP オーバ ATM PVC

書式

device atm
options NATM

解説

NATM プロトコルスタックは IP オーバ ATM のサポートを含んでいます。少しも追加シグナリングスタックまたは他のモジュールなしで、PVC に基づく CLIP (古典的な IP オーバ ATM) ネットワークを構築すすることは可能です。

ATM ネットワークカード (この例では en0) では次のようなものによって IP が設定されます。

ifconfig en0 128.252.200.1 netmask 0xffffff00 up

IP ルーティングはリンクレイヤゲートウェイアドレスとともに (直接到達可能な宛先 (終点)があるルートの) 特別なインタフェースルートで行われます。リンクレイヤアドレスはこのチャネルの宛先と ATM の特性に接続する仮想チャネルに到達することができる宛先を通して ATM インタフェースを指定します。リンクレイヤアドレスのアドレス部は ( link_addr(3) 参照) は固定部分 (最初の 5 バイト) と PVC (UBR, CBR, VBR, ABR) の種類に依存する部分で構成されます。マルチバイト値はビッグエンディアンでコード化されます: 下位の数のバイトは、より高い位数ビットを含んでいます。

バイト 0
フラグバイトです。現在フラグ 0x20 だけが使用されています。設定されるなら、すべての IP フレームは AAL5 フレームにそれらを入れる前にカプセル化された LLC/SNAP です。このフラグを設定することは、お勧めであり、他の CLIP 実装で相互接続を許します。 BPF は単に LLC/SNAP カプセル化で動作していることに注意してください。
バイト 1
これはチャネルの VPI です。
バイト 2...3
チャネルの VCI です。 0 であってはいけません。
バイト 4
トラフィックタイプです。 0 (UBR), 1 (CBR), 2 (ABR), 3 (VBR) の一つです。

UBR 接続のための可変部分は、空か 3 バイトのいずれかです:

バイト 5...7
UBR のピークセルレートを指定します。

CBR 接続のための可変部分は 3 バイトでなければなりません:

バイト 5...7
CBR のピークセルレートを指定します。

VBR 接続のための可変部分は、9 バイトで 3 つの値を指定しなければなりません:

バイト 5...7
VBR のピークセルレートを指定します。
バイト 8...10
これは持続可能なセルレートです。
バイト 11...13
最大バースト (破裂) サイズです。

ABR 接続のための可変部分は、19 バイトで次の値を指定しなければなりません。

バイト 5...7
ABR のピークセルレートを指定します。
バイト 8...10
最小のセルレートです。
バイト 11...13
初期のセルレートです。
バイト 14...16
一時的なバッファ暴露 (ばくろ) です。
バイト 17
NRM 値です。
バイト 18
TRM 値です。
バイト 19...20
ADTF 値です。
バイト 21
レートは増加ファクタ (RIF) です。
バイト 22
レート減少ファクタ (RDF) です。
バイト 23
カットオフ減少ファクタ (CDF) です。

PVC を追加するために、 route(8) ユーティリティを使用することができます:

route add -iface < remote IP address> -link < iface>:< lladdr>

ifaceremote IP address に到達することができる ATM インタフェースで、 lladdr はドットで分離された 16 進バイトの文字列のリンクレイヤアドレスです。

また、NATM は古いオリジナルの形式をサポートします。これは 4 バイトのリンクレイヤアドレスから構成されます (そして、チャネルは暗黙の UBR です):

バイト 0
フラグ:
0x01
AAL5 を使用します。
0x02
AAL5 を使用するなら、LLC/SNAP ヘッダを使用します。

したがって、パラメータ 3 は AAL5 と LLC/SNAP カプセル化を意味します (これは他の CLIP クライアントとのインタワーキングのために必要な設定です)。 BPF が単に LLC/SNAP カプセル化で動作していることに注意してください。

バイト 1
チャネルのための VPI
バイト 2...3
チャネルのための VCI

使用例

PVC を通して ATM によって接続された 3 つのホスト 252.200.1, 128.252.200.2 と 128.252.200.3 があると仮定します:

  • 128.252.200.1 と 128.252.200.2 の間: 0xc9 UBR
  • 128.252.200.1 と 128.252.200.3 の間: 0xca VBR
  • 128.252.200.2 と 128.252.200.3 の間: 0xcb CBR

VBR チャネルへのパラメータは: PCR 50000, SCR 10000, MBS 10 です。 CBR チャネルのためのピークセルレートは 100000 です。

リンクを有効にするために、次のコマンドを使用します:

ホスト 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

ホスト 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

ホスト 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

また、これは rc.conf(5): で行えます:

ホスト 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"

ホスト 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"

ホスト 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"

関連項目

en(4), fatm(4), hatm(4), natm(4), patm(4)

作者

ワシントン大学の Chuck Cranor は、1996 年に NetBSD のために EN ATM ドライバとともに NATM プロトコルレイヤ (層) を実装しました。
August 11, 2003 FreeBSD