Content-type: text/html
atmconfig - Configures the ATM subsystem
/usr/sbin/atmconfig command arguments
Arguments can appear in any order after the command. All required arguments must be specified.
This section is organized by the tasks you can perform with the atmconfig command. Each task subsection provides the atmconfig command syntax and the flags to use to complete the task.
Syntax:
/usr/sbin/atmconfig up driver=driver_name
[[grain=value [precise]] |
[[fgrain=value [fprecise]] [bgrain=value [bprecise]]]]
[[vcmaxbw=limit] | [[fvcmaxbw=limit] [bvcmaxbw=limit]]]
[[resvlim=value] | [[fresvlim=value] [bresvlim=value]]]
[useesi=esis]
Instructs the driver_name driver to initiate contact with the network;
the driver is not necessarily online when the command returns. Use the
status command to determine the driver's actual state. Use the
wait command to suspend execution until the driver is online. Once a
driver is configured up, you must take it down before you can configure it up
again (for example, to change the allocation granularity).
Specifies the name (driver_name) of the driver as it registered with the
system, followed by the unit number. For example lta0 for DGLTA unit 0.
Instructs the driver to set its bidirectional (grain), forward/outgoing
(fgrain), or backward/incoming (bgrain) allocation
granularities to the specified value. You can specify one value for
both directions, or specify a value for the forward and backward
directions separately. A driver's allocation granularity
is its incremental bandwidth unit, expressed as a cell rate (R)
and a multiplication factor (A/B). Use one of the following methods to
calculate allocation granularity:
Cell rate in cells per second (cps). This is an integer value. For example,
grain=88 specifies 88 cps. This is equivalent to specifying grain=Rx1/1.
Cell rate as a ratio of the driver's full line rate. For example, if the
driver's line rate is 353207 cps, grain=1/3301 specifies 107 cps.
This is equivalent to specifying grain=353207x1/3301.
Cell rate as a fractional number of cells per second. For example,
grain=5005x1/10 specifies 500.5 cps.
To register ESI 1, 2 and 3, use the following useesi argument: useesi=1-3
To register register ESI 1, 4, 5 and 6, use the following useesi argument: useesi=1,4-6
To register register ESI 1, 2, and 3, use the following useesi argument: useesi=-3
To register register ESI 60 up to the maximum (64), use the following useesi argument: useesi=60-
Syntax:
/usr/sbin/atmconfig down driver=driver_name Instructs the driver_name driver to disconnect from the network, releasing all virtual circuits (VCs) in an orderly manner, unregistering all Endpoint System Identifiers (ESIs), and taking down the interface. No new connections can be made while the interface is taken down. When this command returns, the system has started a shutdown procedure that can take several minutes.
Syntax:
/usr/sbin/atmconfig status driver=driver_name Reports the current status of the driver_name driver. The interface can be in the following states: The interface is off line. The interface is online and is synchronized with the switch. The driver is UP, but currently does not have a live connection to the switch. The interface is UP, but is in the process of shutting down. Specifies the name (driver_name) of the driver as it registered with the system, followed by the unit number. For example lta0 for DGLTA unit 0.
Syntax:
/usr/sbin/atmconfig setlimit driver=driver_name
[[vcmaxbw=limit] | [[fvcmaxbw=limit] [bvcmaxbw=limit]]]
[[resvlim=limit] | [[fresvlim=limit] [bresvlim=limit]]]
Instructs the driver_name driver to reconfigure limits after a driver
is configured up. This command only applies to adapters that support CBR and
cell pacing.
Specifies the name of the driver as it registered with the system, followed by
the unit number. For example, lta0 for DGLTA unit 0.
Resets the per-VC bidirectional (vcmaxbw), forward/outgoing
(fvcmaxbw), or backward/incoming (bvcmaxbw) bandwidth limit to the
specified number of allocation granularity units. You can specify one limit for
both directions, or specify a limit for the forward and backward
directions separately.
Syntax:
/usr/sbin/atmconfig vclist [driver=driver_name]
[converge=name] [signal=name] [pvc] [svc]
[ppaid=PPA_ID] [bindid=BIND_ID]
[selector=Selector] [vpi=vpi] [vci=vci]
[vcid=vcid] [cref=call_reference] [zombies]
[short] [long] [log] [services]
Displays the currently active VCs. Each active VC is listed along
with its state, its local VC identifier (a unique value used
to identify the VC locally), the Virtual Path Identifier (VPI) and Virtual
Channel Identifier (VCI), and the remote address.
Syntax:
/usr/sbin/atmconfig drvlist [driver=driver_name]
[long] [stats]
Displays standard information about each currently configured ATM device driver.
For example, the driver's name, current state, number of ESIs,
PPAs, active VCs, and physical interface type.
Specifies the name (driver_name) of the driver as it registered with the
system, followed by the unit number. For example, lta0 for DGLTA unit 0.
If driver is specified, only information about the specified
driver is displayed.
In addition to the standard information, displays additional driver
information. For example, maximum VPI and VCI values, hardware MTU,
capabilities, and ESI values. If the driver supports CBR
capabilities, it also displays per-VC bandwidth, bandwidth restrictions, and
availability information. If the driver supports pacing capabilities, it also
displays per-VC bandwidth restrictions.
In addition to the standard information, displays driver usage statistics.
For example, the total number of bytes, packets, and cells sent and
received over all VCs since the driver was last brought up.
Syntax:
/usr/sbin/atmconfig cvglist [converge=name] [stats] Displays information about all ATM convergence modules currently configured on the system. For example, the convergence module names, the number of active VCs attached to each module, the number of private ESIs owned by the module, and the number of bindings owned by the modules. Specifies the name of a specific convergence module (name) as it is registered on the system. If this argument is provided, only information about the specified convergence module is displayed. Specifies that module statistics are to be displayed. These statistics include bytes and packets (PDUs) sent and receives, and the sum of all call statistics of all bind points owned by each convergence module.
Syntax:
/usr/sbin/atmconfig siglist [signal=name] [stats] Displays information about all signaling modules currently configured on the system. For example, the name of the module, the number of VCs (generally, signaling channels) owned by the module, and the number of PPAs owned by the module. Specifies the name of a signaling module (name) as it is currently registered on the system. If this argument is provided, only information about the specified signaling module is displayed. Specifies that call statistics associated with the signaling modules is to be displayed. These statistics may differ slightly from any statistics maintained internally by specific signaling modules since signaling modules have access to information and events not known to the rest of the system.
Syntax:
/usr/sbin/atmconfig ppalist [driver=driver_name]
[converge=name] [signal=name] [ppaid=PPA_ID]
[bindid=BIND_ID] [selector=Selector] [zombies]
[short] [long]
Displays information about all currently configured Physical Points of
Attachment (PPAs). For example, the name of the driver to which the PPA is
attached, the name of the signaling module that controls the PPA, the ID
of the PPA, the state of the PPA, and the ESI ID of the ESI used in creating
the PPA's address.
Syntax:
/usr/sbin/atmconfig esilist [driver=driver_name] [converge=name] Displays information about the currently configured ESIs. For example, the name of the driver to which the ESI is attached, the owner of the ESI (for private ESIs), the ESI identifier, the signaling modules with which the ESIs have been registered, and the ESI value. each ESI registered with the ATM subsystem is displayed on one line and each instance of the ESI that has been registered with a signaling module for network registration is displayed on one line. Specifies the name (driver_name) of the driver as it registered with the system, followed by the unit number. For example, lta0 for DGLTA unit 0. If a driver name is specified, only ESIs attached to that driver are displayed. Specifies the name (name) of a convergence module as it is registered on the system. If this argument is provided, only private ESIs belonging to that convergence module are displayed.
Syntax:
/usr/sbin/atmconfig bindlist [converge=name]
[ppaid=PPA_ID] [bindid=BIND_ID]
[selector=Selector] [zombies]
Displays information about all currently active ATM service binds on the
system. For example, the name of the module which made the bind, the bind
identifier, the bind selector value, and the number of VCs currently attached
to the bind (VCs whose called or calling party address is represented by
the bind).
Syntax:
/usr/sbin/atmconfig +pvc driver=driver_name
converge=name vpi=vpi_value vci=vci_value
[selector=selector_value]
[[mtu=value] | [[fmtu=value] [bmtu=value]]]
[[qos=class] | [[fqos=class] [bqos=class]]]
[[+tagging | -tagging] | [[+ftagging | -ftagging]
[+btagging | -btagging]]]
[+bei | -bei] [[peak0=rate] |
[[fpeak0=rate] [bpeak0=rate]]]
[[peak1=rate] | [[fpeak1=rate]
[bpeak1=rate]]] [bbtraffic=NONE|CBR|pacing]
[bbclass=NONE|A|C|X] [bbtiming=NONE|req|notreq]
[+bbclipping | -bbclipping]
Creates and enables a new Permanent Virtual Circuit (PVC) and attaches it to a
convergence module specified in the converge=name argument. The PVC
does not have to be enabled on the switch, but should be as the system
may attempt to send data as soon as it recognizes the new PVC. For
completeness, all connection service parameter arguments can be specified;
however not all of them have local significance.
Specifies the name (driver_name) of the driver as it registered with the
system, followed by the unit number. For example lta0 for DGLTA unit 0.
Specifies the name of a convergence module. name is the
name (case insensitive) that the convergence module used
when it registered with the system. A convergence module is
an interface module that interfaces a specific protocol or
protocols to ATM. For example, converge=atmip for the
IP to ATM (RFC 1577) convergence module.
Specifies a VPI value to be used in looking up or creating
a VC. Any VPI value that is valid on the interface and
network may be specified.
Specifies a VCI value to be used in looking up or creating
a VC. Any VCI value that is valid on the interface and
network may be specified.
Specifies the specific instance of convergence module service. The
selector_value is unique to the convergence module, and is created when
the convergence module binds to a PPA.
The following arguments specify the traffic contract parameters, which describe the characteristics of the cell stream transferred over the PVC. These parameters are defined in the ATM Forum User-Network Interface (UNI) Specification (V3.0). When setting up PVCs on the network, use the same traffic parameters when configuring the PVC on switches and the other end system. Specifies the maximum packet size that can be transmitted and received (mtu), transmitted (fmtu), or received (bmtu) on the PVC. You can specify one value for both transmitted and received packets, or specify a value for transmitted and received packets separately. If none of the mtu arguments are specified, a default value is set. Specifies the quality of service requested in both (qos), the forward/outgoing (fqos), or backward/incoming (bqos) directions. You can specify one value for both directions, or specify a value for forward and backward directions separately. The class parameter specifies the quality of service required to meet a given service class's performance objectives. Valid qos_class values and example service classes are as follows: Unspecified (Best Effort). This is the default. Connection oriented constant bit rate traffic with source/destination timing relationships. Connection oriented variable bit rate traffic with source/destination timing relationships. Connection oriented variable bit rate traffic with no timing relationships. Connectionless variable bit rate traffic with no timing relationships. Undefined bit rate traffic. Available bit rate traffic.
Syntax:
/usr/sbin/atmconfig -ep epref=endpoint_reference_id
{driver=driver_name vpi=vpi_value vci=vci_value} |
vcid=VC_identifier
Drops an endpoint from an existing VC. The endpoint is
removed from the VC and its resources deallocated. If the
specified endpoint is the last one on the VC, the VC is
also destroyed and all of its resources deallocated.
Identifies the endpoint to be dropped. The
endpoint_reference_id is the value that the signaling module
provided when the endpoint was added to the VC. Use the atmconfig
vclist long command to display all the endpoint references
associated with a VC.
Specifies the name (driver_name) of the driver as it registered with the
system, followed by the unit number. For example lta0 for DGLTA unit 0.
Specifies a VPI value to be used in looking up
a VC. Any VPI value that is valid on the interface and
network may be specified.
Specifies a VCI value to be used in looking up
a VC. Any VCI value that is valid on the interface and
network may be specified.
Specifies the local VC identifier that uniquely identifies
a VC on the local system (among all interfaces). This
value has local significance only and is used as a shorthand for referencing a
VC. The VC ID can be obtained from the vclist command. This can be used
in place of the VPI/VCI when specifying an existing VC.
Syntax:
/usr/sbin/atmconfig {-pvc | -vc} {driver=driver_name
vpi=vpi_value vci=vci_value | vcid=VC_identifier}
Destroys an existing PVC (-pvc) or VC (-vc).
The PVC or VC is disconnected from the convergence module to which it was
attached and its resources deallocated. At this point, all data
received for the PVC's or VC's VCI is discarded.
Specifies the name (driver_name) of the driver as it registered with the
system, followed by the unit number. For example lta0 for DGLTA unit 0.
Specifies a VPI value to be used in looking up or creating
a VC. Any VPI value that is valid on the interface and
network may be specified.
Specifies a VCI value to be used in looking up or creating
a VC. Any VCI value that is valid on the interface and
network may be specified.
Specifies the local VC identifier that uniquely identifies
a VC on the local system (among all interfaces). This
value has local significance only and is used as a shorthand for referencing a
VC. The VC ID can be obtained from the vclist command. This can be used
in place of the VPI/VCI when specifying an existing VC.
Syntax:
/usr/sbin/atmconfig {+esi | -esi} driver=driver_name
{addr=ESI_value | esi=esi_number}
Configures (+esi) an ESI on or removes (-esi) an ESI from the system. The new ESI is registered with the system and with the local switch. This results in one or more (depending on the number of address prefixes assigned by the switch) ATM addresses being created.
Syntax:
/usr/sbin/atmconfig {+vfc | -vfc} driver=driver_name Enables (+vfc) or disables (-vfc) vendor-specific flow control on the interface specified by the driver=driver_name argument. The specified interface must support this type of flow control. Specifies the name (driver_name) of the driver as it registered with the system, followed by the unit number. For example lta0 for DGLTA unit 0.
Syntax:
/usr/sbin/atmconfig {+sdh | -sdh | +sonet} driver=driver_name Enables (+sdh) or disables (-sdh | +sonet) Synchronous Digital Hierarchy (SDH) mode on ATM adapters that support both SONET and SDH physical interfaces. Specifies the name (driver_name) of the driver as it registered with the system, followed by the unit number. For example, lta0 for DGLTA unit 0.
Syntax:
/usr/sbin/atmconfig source [file=file_name] Processes batch commands in the /etc/atm.conf file. If the file=filename argument is provided, batch commands are processed from the specified file. Specifies the path name of a file to be used as alternate input for a command. The path name is relative to the current working directory and should be a full path name.
Syntax:
/usr/sbin/atmconfig wait state=up|down|oos
driver=driver_name
Instructs batch files to suspend execution until the driver specified in the
driver=driver_name argument is either up, down, out-of-service (oos).
Specifies the interface state for which to test. This
argument is used in commands that check the state of an
interface. up checks for the interface being enabled and
in contact with the switch. down checks for the interface
being disabled and out of contact with the switch. oos
checks for the interface being enabled but not in contact
with the switch (for example, the switch is down or the connection
to the switch is broken).
Specifies the name (driver_name) of the driver as it registered with the
system, followed by the unit number. For example lta0 for DGLTA unit 0.
The atmconfig command configures ATM networking and displays information about the ATM networks. The command only controls the base ATM modules; it does not control specific device drivers, convergence modules, or signaling protocols.
The atmconfig command is used to enable and disable device drivers, create and destroy permanent virtual circuits (PVCs), destroy switched virtual circuits (SVCs), and create and destroy Endpoint System Identifiers (ESIs). It is also used to display the currently active VCs and driver status, and to batch process configuration files.
Typically, you establish the system configuration only once. After that, you have some method by which this configuration is applied on every system boot. For ATM, this is accomplished using batch files.
Batch files are plain text files that contain commands atmconfig executes as if they were typed on the command line, except the atmconfig command name is not specified. All the commands and arguments that are available for command line execution are available in batch execution. Each line contains exactly one command or is a comment, beginning with a number sign (#). The atmconfig command will process entries in batch files sequentially, one line at a time, until the end of the file is reached. If any command fails, execution stops and atmconfig exits.
If the source command appears in a batch file, the specified batch file is processed and the processing of the current file is resumed at the next line. If a sourced batch file generates an error, atmconfig exits.
The atmconfig batch files can contain labels for use in conditional execution. Label definitions consist of the colon character (:) followed by one or more printable characters; only the first character following the colon is meaningful. For example, the labels this and that are considered identical, but the labels this and That are considered different. Labels are referenced using the label alone, without the colon. Labels are used only from the goto or call commands. Forward references are permitted.
The atmconfig command provides 52 variables with very simple variable manipulation and testing facilities. The variables have the following characteristics: Variables consist of any alphanumeric string, but are only significant to the first characters. Variables must begin with an alphabetic character but may contain any printable characters. The variables A through Z are signed longs (64 bits) and the variables a through z are unsigned longs (64 bits). Variables can be set to constant values, incremented, decremented, and tested against constant values. Variables are useful in implementing loops. Variables can only be used in if, set, increment, decrement, and print commands. All variables are initialized to 0 unless explicitly initialized using the set command.
Constants used in setting and comparing variables may be specified in decimal, octal, or hexadecimal. Octal numbers begin with 0 (zero). Hexadecimal numbers being with the string 0x, or 0X.
In addition to the atmconfig commands available from the command line, batch files can contain the following commands: Prints the arguments to the screen (standard out). Variables are printed by specifying the variable name preceded by a percent sign (%). If a string that starts with the percent sign must be printed, specifying two percent characters together (%%) at the start of a string prints a single percent sign. Suspends execution for the specified number of seconds. If the time argument is not supplied, the sleep period is 1 second. Runs the specified program with the supplied arguments; the full path name for the program should be used. The atmconfig command runs the program as a separate process and waits for the program to exit before continuing to the next line in the batch file. If the program exits with a status of other than 0, atmconfig exits, printing the program's exit status. Runs the specified program in background. The atmconfig command does not wait for the program to exit before continuing to the next line of the batch file. The exit status of the program is ignored. Halts the execution of the current batch file and starts the execution of the specified batch file. When the exec'ed batch file is finished, atmconfig exits. An new execution environment (variables and labels) is created for the new batch file. Runs the specified program with the supplied arguments; specify the full path for the program name. If the program exits with a status of 0, the line immediately after the if line is executed. If the program returns a non-0 status, the next line is skipped and execution of the batch file continues. If the specified program is not found, atmconfig prints an error message and exits. Runs the specified program with the supplied arguments; specify the full path for the program name. If the program exits with a non-0 status, the line immediately after the if line is executed. If the program returns a 0 status, the next line is skipped and execution of the batch file continues. This form is useful for handling failures of programs executed by the batch file. If the specified program is not found, atmconfig prints an error message and exits. Instructs atmconfig to continue execution at the line following the line on which the label is defined. Instructs atmconfig to continue execution at the line following the line on which the label is defined. Before atmconfig makes the branch, it saves the location of the next line to use as the implied branch location for the next return command. Calls may be nested. Subroutines have no special structure or meaning to atmconfig, so make sure that batch file execution does not fall into a subroutine. Instructs atmconfig to continue execution at the location saved by an associated call command. Halts execution of the current batch file and either returns to any calling batch files (if batch files have been nested using the source command) or causes atmconfig to exit. Sets the specified variable to the specified value. Value must be a constant (a numeric character string) and properly cast depending on the variable type. Adds 1 to the specified variable's current value, replacing the variables value with the result. Subtracts 1 from the specified variable's current value, replacing the variables value with the result. Compare the specified variable to the specified value using the specified operation. The value must be a constant (a numeric character string). If the comparison is TRUE, the next line in the batch file is executed. If the comparison is FALSE, the next line in the batch file is skipped. The value is cast as necessary depending on the variable type.
For example, the following lines implement a loop that counts from 1 to 10 and prints out each count: # The variable name is really 'c', not 'count', # and it is unsigned. set count 1 # The loop label name is really 'l', not 'loop'. :loop print %count increment count if ( count <= 10 ) goto loop print loop done
To handle errors from executed programs, use the ifnot command followed by a goto command: # Retry signaling 20 times or until it comes up # # The loop label name is really 'a', not 'again'. :again ifnot /usr/sbin/atmconfig up driver=lta0 goto sigfail print Signaling up. exit # The label name is really 's', not 'sigfail'. :sigfail # Count is used without being explicitly set. # Count is initialized to 0 by default so the first # reference returns a value of 0. The name of the # variable is really 'c', not 'count', and it is # unsigned. if ( count > 20 ) goto giveup print Signaling failed to initialize. print Trying again in 10 seconds. sleep 10 increment count goto again
# The label name is really 'g', not 'giveup'. :giveup print Signaling would not initialize. Taking down the interface. down driver=lta0 exit
Default configuration batch file ATM address-to-host name mappings
Commands: atmsig(8)
Files: atm.conf(4), atmhosts(4)
Asynchronous Transfer Mode delim off