Platform Notes: The SunATM Driver Software

Basic ATM Interface Plumbing

ATM interfaces must be plumbed prior to configuration for LANE or Classical IP. This plumbing configuration is specified in the /etc/opt/SUNWconn/atm/atmconfig file. For a detailed description of plumbing and unplumbing ATM interfaces, see "Plumbing and Unplumbing Individual ATM Interfaces".

Editing the /etc/opt/SUNWconn/atm/atmconfig File

The /etc/opt/SUNWconn/atm/atmconfig file is a generic file that must appear on every SunATM system. It provides general configuration information used by the SunATM setup utilities to bring up ATM interfaces at boot time.

The file consists of one or more entries per interface. An entry contains the following fields described in Table 3-1:

Table 3-1 /etc/opt/SUNWconn/atm/atmconfig Field Descriptions

Field 

Description 

Interface

Physical interface, baN.

UNI/Framing

Version of the UNI specification used for signalling, 3.0, 3.1, or 4.0; or, for entries with only two fields, the Framing Interface, SONET or SDH.

CIP_Host

Hostname used for Classical IP. 

LANE_Instance

Instance number for a LAN Emulation interface; LAN Emulation interfaces will be called laneN where N is the LAN Emulation instance number. The LANE instance number must be between 0 and 999. Note: The LANE instance number is not necessarily the same as the physical instance number.

LANE_Host

Hostname used for LAN Emulation 

The Interface and UNI fields are required for all interfaces. The CIP_Host field is required for interfaces that run Classical IP, and the LANE_Instance and LANE_Host fields are required for interfaces that run LAN Emulation. If a field is not used, it is represented by a hyphen.

Modifications to individual interfaces will take effect when the interface is plumbed. This will happen either at boot time or when you use the atmifconfig utility to plumb interfaces. If you modify an existing (already running) interface, you must first unplumb it with the atmifconfig utility. Refer to the atmifconfig(1m) man page or "Plumbing and Unplumbing Individual ATM Interfaces" for more information.

Changing the Framing Interface in the /etc/opt/SUNWconn/atm/atmconfig File

The framing interface defines the encapsulation method used for ATM cells as they are sent onto the wire. The default framing interface is SONET, but the SunATM software also supports the SDH interface. Your switch product information should indicate which interface your switch uses.

Previous versions of the SunATM software allowed you to choose a framing interface for the entire system (by setting a variable in the /etc/system file). In the SunATM software, the system variable can be used to allow backwards compatibility, but the preferred method is to select the framing interface for each interface and to add an entry in the /etc/opt/SUNWconn/atm/atmconfig file. An entry in /etc/opt/SUNWconn/atm/atmconfig overrides a variable set in /etc/system for a particular interface. If there is no value in either /etc/system or /etc/opt/SUNWconn/atm/atmconfig, the default framing interface is SONET.

Framing entries in /etc/opt/SUNWconn/atm/atmconfig should appear on individual lines, with two fields. The first field indicates the interface, baN, where N is the instance number (for example: ba0). The second is either SDH or SONET, depending on the desired setting.

Example of an /etc/opt/SUNWconn/atm/atmconfig File

The following sample atmconfig file creates this configuration:

Using Variables in the  /etc/opt/SUNWconn/atm/aarconfig File

Because the prefix portion of an ATM address specifies the ATM switch, a number of hosts specified in an aarconfig file can have ATM addresses that share the same prefix. To simplify setting up the aarconfig file, you can define variables that contain part of an ATM address.

A variable's name is an identifier consisting of a collection of no more than 32 letters, digits, and underscores. The value associated with the variable is denoted by a dollar sign followed immediately by the variable name.


Note -

Use variables in the ATM address field only. They are not valid in any of the other fields in an entry.


You can use a colon to concatenate multiple variables to represent a single ATM address expression. Thus, if one variable, v1, is set to 11:22 and another variable, v2, is set to 33:44, the sequence $v1:$v2 represents 11:22:33:44. You can include hexadecimal numbers with variables in the expression. The expression 45:$v1:$v2 would have the value 45:11:22:33:44.

Use the following format to define variables in the aarconfig file:


set VARIABLE = EXPRESSION

where VARIABLE is the name of a variable and EXPRESSION is an expression concatenating one or two-digit hexadecimal numbers or the values of variables that have been previously defined. The equal sign is optional, but separate the variable and expression either by white space (spaces or tabs), an equal sign, or both.

Several predefined variables are built into the SunATM software. These variables are summarized in Table 3-2.


Note -

You can not use the $prefix variable or any other variables that use it (including $myaddress and $localswitch_server) on interfaces that are not running ILMI.


Table 3-2 Predefined SunATM Variables

Variable 

Description 

prefix

The 13-byte prefix associated with the local switch. 

mac

The 6-byte medium access control (MAC) address associated with the local host or interface.

sel

The default 1-byte selector for the local interface. 

macsel

The concatenation of $mac:$sel.

myaddress

The concatenation of $prefix:$mac:$sel, resulting in the default address for the local interface.

anymac

A wild card representing any 6-byte ESI. Should only be used in a entries.

anymacsel

A wild card representing any 7-byte ESI and Selector combination. Should only be used in a entries.

?

A wild card matching one or two hexadecimal digits within any colon-separated field. For example, $prefix:$anymac:? is equivalent to both $prefix:$anymac:?? and $prefix:$anymacsel. However, it is not the same as $prefix:$anymacsel:0?, which requires that the first digit of the selector byte is a 0. This wild card should only be used in a entries.

sunmacselN

The concatenation of one of a series of reserved MAC addresses and $sel to create a block of reserved ATM ARP server addresses. N should be a decimal number in the range 0-199.

localswitch_server

The concatenation of $prefix, a unique reserved MAC address, and $sel. When used as a server address, restricts server access to clients connected to the local switch only.

In most network configurations, the ATM address assigned to the local interface is $myaddress; using this variable in the l entry makes it possible to use identical aarconfig files on all Classical IP clients using a given server.

The sunmacselN variables can be used in conjunction with a prefix, as well as with known server addresses that are not bound to a particular system. As an example, consider the case where a server that supports 50 clients fails. If the ATM address of the server is specific to that particular server, you must change the s entry on all 50 clients to switch to a backup server. However, if the ATM address used for that server is $prefix:$sunmacsel3, this address is not only guaranteed to be unique, since it uses reserved medium access control (MAC) addresses, you can also simply assign that address to the backup server on the same switch by changing the l entry to an s entry on one system and bringing up a new server with no changes to the clients.


Note -

The sunmacselN variables do not include a prefix since a client and server may be on different switches and thus have different local prefix values.


In the case of a single-switch network, you can use localswitch_server as a well-known server address that includes the prefix associated with the local switch and a MAC address. It will restrict server access to clients on the local switch and provide a unique ATM address among all ATM clients connected to that switch. Thus, any host with a network prefix other than that of the local switch will be refused a connection to the ARP server if the ARP server's address is $localswitch_server.

Several rules apply to the use of variables in the aarconfig file:

Sample Classical IP Configurations

The following examples demonstrate entries in the /etc/opt/SUNWconn/atm/aarconfig file for several typical network configurations.

Although some of the examples show only one sample aarconfig file, similarly configured files must appear on each system. Example 2 shows the files for each of the three systems in the configuration.

  1. SVC-only: Clients use the default address and access to the ARP server is restricted to clients on the local switch only.

    1. The /etc/opt/SUNWconn/atm/aarconfig file on a client:


      Interface   Host  ATM Address             VCI Flag
      ba0          -    $myaddress               -   l
      ba0          -    $localswitch_server      -   s

    2. The /etc/opt/SUNWconn/atm/aarconfig file on the server:


      Interface Host ATM Address          VCI  Flag
      ba0       -    $localswitch_server   -      L

  2. PVC-only: hosta is connected to hostb and hostc over PVCs. There is no ARP server.

    1. /etc/opt/SUNWconn/atm/aarconfig on hosta:


      Interface   Host       ATM Address   VCI  Flag
      ba0         -          -               -     l
      ba0         hostb      -             100     t
      ba0         hostc      -             101     t

    2. on hostb:


      Interface     Host    ATM Address        VCI    Flag
      ba0           -                 -          -       l
      ba0           hosta             -        100       t
      ba0           hostc             -        102       t

    3. on hostc:


      Interface  Host   ATM Address    VCI   Flag
      ba0        -      -                -      l
      ba0        hosta  -              101      t
      ba0        hostb  -              102      t

  3. SVC with no ARP server: hosta uses SVCs to connect to hostb and hostc. All hosts are connected to the same switch; there is no ARP server.


    Interface   Host   ATM Address                    VCI   Flag
    ba0         -      $myaddress                       -     l
    ba0         hostb  $prefix:08:00:20:d5:08:a8:00     -     t
    ba0         hostc  $prefix:08:00:20:21:20:c3:00     -     t

  4. PVC/SVC mix: hosta uses an SVC to connect to hostb, and a PVC to connect to hostc. hostb is not on the local switch; there is no ARP server.


    Interface  Host  ATM Address                                           VCI  Flag
    ba0        -     $myaddress                                                   -     l
    ba0       hostb 45:00:00:00:00:00:00:00:0f:00:0:08:00:20:d5:08:a8:00   -     t
    ba0       hostc  -                                                       100   t

  5. IPv6 PVC/SVC mix: hosta uses an SVC to connect to hostb, and a PVC to connect to hostc.


    Interface   Host      ATM Address                    VCI   Flagba0         -         $myaddress                       -     lba0         hostb-v6  $prefix:08:00:20:d5:08:a8:00     -     t6ba0         hostc-v6   -                              100    t6

  6. IPv4/IPv6 mix: hosta uses a static IPv4 SVC to connect to hostb and a static IPv6 SVC to connect to hostc.


    Interface   Host     ATM Address                    VCI   Flagba0         -        $myaddress                       -     lba0         hostb    $prefix:08:00:20:d5:08:a8:00     -     tba0         hostc-v6 $prefix:08:00:20:21:20:c3:00     -     t6

  7. ARP server with Access Restrictions: Hosts are connected to an ATM ARP server that resolves addresses. Access is restricted to the local switch subnet and one additional switch subnet.

    1. /etc/opt/SUNWconn/atm/aarconfig on hosta:


      Interface     Host     ATM Address          VCI           Flag
      ba0           -        $myaddress             -              l
      ba0           -        $prefix:$sunmacsel0    -              s

    2. /etc/opt/SUNWconn/atm/aarconfig on server:


      Interface  Host  ATM Address                                        VCI    Flag
      ba0         -    $prefix:$sunmacsel0                                  -       L
      ba0         -    $prefix:$anymacsel                                   -       a
      ba0         -    45:00:00:00:00:00:00:00:0f:00:00:00:00:$anymacsel    -       a

  8. Manual address configuration: Hosts are connected to a switch that does not support ILMI.

    1. /etc/opt/SUNWconn/atm/aarconfig on server:


      set prfx = 45:00:00:00:00:00:00:00:0f:00:00:00:00
      Interface  Host  ATM Address        VCI        Flag
      ba0        -     $prfx:$sunmacsel0    -           L
      ba0        -     -                    -           m

    2. /etc/opt/SUNWconn/atm/aarconfig on client:


      set prfx = 45:00:00:00:00:00:00:00:0f:00:00:00:00
      Interface  Host  ATM Address        VCI         Flag
      ba0        -     $prfx:$macsel        -            l
      ba0        -     $prfx:$sunmacsel0    -            s
      ba0        -      -                   -            m