ATM Utilities

To access the tools included with the Windows   2000 Resource Kit , click Start , point to Programs , and then click Command Prompt . From this prompt, you can use the ATMADM, ATMLANE, and ATMARP utilities to diagnose and resolve network problems, or simply to monitor the state of network usage. Each utility is described in greater detail in the following sections.

ATMADM Utility

The ATMADM utility is provided with Windows ATM services to assist in troubleshooting. It monitors connections and addresses registered by the ATM Call Manager on an ATM network. You can use the utility to display statistics for incoming and outgoing calls on ATM adapters.

Parameters

ATMADM can retrieve information about ATM's the operation of ATM in your system. It displays ATM address information, ATM statistics, and the current state of all ATM connections.

note-icon

Note

To learn what options are available for any Windows 2000 command-line utility, type the utility name followed by a /?. After typing the following string:

atmadm /? <enter>

the utility returns a list of the available options for that utility.

The three main options available for ATMADM are A, S, and C. ATMADM -C displays call information for all current connections to the ATM network adapter installed on this computer. ATMADM -S displays statistics for monitoring the status of active ATM connections.

ATMADM -A displays the registered ATM network service access point address for each adapter installed in this computer. These ATM addresses indicate only the client's own address, and not the address of other ATM endpoints that it has called. The first 26 hexadecimal characters (13 bytes) of the 40-character string represent the switch address, the next 12 hexadecimal characters (6 bytes) indicate the MAC address of the hardware in question, and the last two hexadecimal characters represent the selector value. This selector value allows the call manager to distinguish between two different logical addresses that are addressed with the same hardware.

Addresses for Multiple Adapters

If the client contains two ATM adapters or devices, both are listed in the ATMADM-A report, but the friendly name is identical for identical devices. For instance, if a client contains two MAC adapters made by the same manufacturer, they both return the same name, though not the same address. This is illustrated in Figure 14.20, which shows a client with two ForeRunner adapters installed.

Figure 14.20 ATM Addresses for a Computer Configured with Two ATM Adapters

C:\users>atmadm -a
Windows ATM Call Manager Statistics
ATM Addresses for Interface : [003] ForeRunner PCA-200EPC ATM AdapterNNf
   4700918100000000613E5BFE0100204808119B00
ATM Addresses for Interface : [002] ForeRunner PCA-200EPC ATM Adapter
   4700918100000000613E5BFE010020480811F300

The second option, ATMADM -S, provides a set of useful statistics describing the performance of the ATM client: the number of connections it has created, received, and dropped since being added to the ATM network by a switch, and the number of virtual circuits that it is currently maintaining. In addition, this utility tracks the number of overhead cells sent for signaling and ILMI. Figure 14.21 shows an example of a typical report, with 10 active calls and a short history of successful incoming and outgoing calls.

Figure 14.21 Statistics for a Client with a Single ATM Adapter

C:\users>atmadm s
Windows ATM Call Manager Statistics
ATM Call Manager statistics for Interface : [002] ForeRunner PCA-200EPC ATM Adapter
        Current Active Calls                 = 10
        Total successful Incoming calls      = 19
        Total successful Outgoing calls      = 19
        Unsuccessful Incoming calls          = 0
        Unsuccessful Outgoing calls          = 0
        Calls Closed by Remote               = 20
        Calls Closed Locally                 = 8
        Signaling and ILMI Packets Sent     = 1488
        Signaling and ILMI Packets Received = 1506

These statistics are invaluable in diagnosing connection problems. For example, if ATMADM-S indicates that incoming calls have been successful but outgoing calls have all failed. Knowing which calls are getting through reduces the number of potential problems to investigate. In the case of failed outgoing calls, the client might be attempting to contact a client that is no longer available, but which is still listed in the ARP server cache of available addresses. Alternately, the desired endpoint might be unable to handle the call due to a lack of resources. Finally, the failure of outgoing calls could result from a compatibility problem. For example, the requested service category (such as UBR or real-time CBR) is not supported by the client.

If no incoming calls have been successful, the problem is more likely a result of the client's lack of ability to meet the incoming calls QoS requirements. This is especially possible if the client has provided a heavy allocation of resources to other connections.

If there are no successful incoming or outgoing calls and LAN emulation is in use, but signaling and ILMI packets continue to increment, the problem might be compatibility with the switch. As a result, the client fails to register with the LECS. Alternately, the services are available and the client has registered, but the desired endpoint is unavailable or overloaded.

If all fields return a result of 0 except for a signaling and ILMI Packet result of 1, the client probably has no physical connection to the switch. Check the integrity of cables and other physical connections.

The last option for this utility is ATMADM -C. This option provides a set of parameters describing all the computer's ATM connections, such as those to the BUS, to the LES, and to other ATM devices. Figure 14.22 shows a sample result after running this option.

Figure 14.22 Typical ATMADM -C Report

C:\users>atmadm -c
Windows ATM Call Manager Statistics
ATM Connections on Interface : [003] ForeRunner PCA-200EPC ATM AdapterNNf
Connection       VPI/VCI Remote Address/
                        Media Parameters (rates in bytes/sec)
In  P-P SVC    0/285   4700918100000000613E5BFE01002048082C3C01
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
In  P-P SVC    0/47    4700918100000000613E5BFE0100204808119B01
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
Out PMP SVC    0/37    4700000000003C0001A00000000000C11082B601 (11)
                       4700918100000000613E5BFE01002048082C3C01 (10)
                       39840F8001BC3C0000010016640060A000088B01 (8)
                       4700918100000000613E5BFE0100204808119B01 (7)
                       39840F8001BC3C0000010016640060A00008DC01 (6)
                       39840F8001BC61DF00072045000020480EB4EB01 (5)
                       39840F8001BC61DF00072045000000778FE73E01 (4)
                       39840F8001BC61DF00072045000000D10F4FAD01 (1)
                       39840F8001BC61DF00072045000020480E06E301 (0)
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9180
                       Rx: UBR, Peak 0, Avg 0, MaxSdu 0
In  P-P SVC    0/58    39840F8001BC61DF00072045000000D10F4FAD01
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
Out P-P SVC    0/51    39840F8001BC3C0000010016640060A000088B01
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
Out P-P SVC    0/45    4700790001020000000000000000A03E00000200
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
Out P-P SVC    0/44    39840F8001BC3C0000010016640060A00008DC01
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
In  PMP SVC    0/48    4700918100000000613E5BFE0100204808119B00
                       Tx: UBR, Peak 0, Avg 0, MaxSdu 0
                       Rx: UBR, Peak 16953936, Avg 16953936, MaxSdu 9180
Out P-P SVC    0/46    4700918100000000613E5BFE0100204808119B00
                       Tx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188
                       Rx: UBR, Peak 16953984, Avg 16953984, MaxSdu 9188

Several of the connections listed in Figure 14.22 can be traced to standard components. For instance, the entry for VCI/VPI pair 0/45 is the default ATMARP server address. The entry for 0/48 is the actual adapter address, as you can see by comparing it with the results of the ATMADM -A query. The entry for 0/37 is clearly a multicast connection with 12 endpoints.

In general, all VPI/VCI values of 0/0 to 0/32 are reserved for signaling and management functions. For example, 0/0 and 0/5 are reserved for UNI signaling, 0/16 is an ILMI channel, and 0/17 indicates ILMI for LANE. VPI/VCI values above 0/32 are endstation-to-endstation data direct or multicast connections.

The media parameters portion of each of the connection ends with the maximum service data unit. These indicate the type of connection operating, as shown in Table 14.2.

Table 14.2 Standard MTUs for Common Network Types

MTU Size

Network Type

9234

Ethernet option

18190

Typical Token Ring

4544

Token Ring option

1516

Ethernet default

9188

IP over ATM

ATMLANE Utility

This utility allows you to examine the various aspects of the Microsoft LAN emulation client. When it is run from the command line, it displays the ATM adapter device name, the ELANs configured on that ATM adapter, the ELAN's number (since an adapter can be configured with multiple ELANs), and the ELAN's state.

The ELAN state can be one of the following.

Table 14.3 Common ELAN States

ELAN State

Description

INITIAL

The ELAN has just begun to operate.

LECS CONNECT ILMI

The ELAN is attempting to connect to the LECS using the ATM address obtained from ILMI.

LECS CONNECT WKA

The ELAN is attempting to connect to the LECS using the well-known LECS ATM address.

LECS CONNECT PVC

The ELAN is attempting to connect to the LECS using the LECS PVC.

LECS CONNECT CFG

The ELAN is attempting to connect to the LECS using a specially configured LECS address.

CONFIGURE

The ELAN has connected to the LECS and is exchanging configuration data with the LECS.

LES CONNECT

The ELAN is connecting to the LES using the address returned from the LECS.

JOIN

The ELAN is exchanging join data with the LES.

BUS CONNECT

The ELAN is discovering and connecting to the BUS.

OPERATIONAL

The ELAN is fully operational.

SHUTDOWN

The ELAN is shutting down.

Following the ELAN state three sets of parameters are displayed, as shown in Figure 14.24. The first set describes some of operating parameters of the LANE client. The parameters C1, C2, and up to C28 all have values that are either defaults, spelled out in the LANE specification from the ATM Forum, or parameters obtained from the LECS and LES.

The second set of parameters (C16) describes the current Ethernet address to ATM address mappings. All of these parameters are shown in Figure 14.23, which shows a normal report from an LEC.

Figure 14.23 Results of an ATMLANE Query

Windows ATM LAN Emulation Client Information
Adapter: \DEVICE\{11DC1752-1B17-11D2-A8E5-853DAA694C23}
ELAN: \Device\{FDEBFE5E-1B55-11D2-A8E6-000000000000}
    ELAN Number:        0
    ELAN State:         OPERATIONAL
C1  ATM Address:        47.0091.81.000000.0061.3e5b.fe01.0020480811f3.00
C2  LAN Type:           Ethernet/802.3
C3  MaxFrameSize:       1516
C4  Proxy:              Off
C5  ELAN Name:          Collage740ElanEth
C6  MAC Address:        00.20.48.08.11.f3
C7  ControlTimeout:     300 sec
C8  RouteDescriptors:   None
    LECS Address:       47.0079.00.000000.0000.0000.0000.00a03e000001.00
C9  LES Address:        39.840f.80.01bc61.df00.0720.4500.00006f072045.03
    BUS Address:        39.840f.80.01bc61.df00.0720.4500.00006f072045.04
C10 MaxUnkFrameCount:   5
C11 MaxUnkFrameTime:    1 sec
C12 VccTimeout:         1200 sec
C13 MaxRetryCount:      1
C14 LEC ID:             27
C15 multicastMacAddrs:  Broadcast,All_multicast
C16 LE_ARP Cache:       See below
C17 AgingTime:          300 sec
C18 ForwardDelayTime:   15 sec
C19 TopologyChange:     Off
C20 ArpResponseTime:    16 sec
C21 FlushTimeout:       4 sec
C22 PathSwitchingDelay: 6 sec
C23 LocalSegmentId:     4080
C24 McastSendVcType:    Best Effort
C25 McastSendVcRate:    0 cps
C26 McastSendPeakRate:  0 cps
C27 RemoteMacAddrs:     None
C28 ConnComplTimer:     4 sec
C16 LE_ARP Cache
00.00.c1.00.02.8b -> 39.840f.80.01bc61.df00.0720.4500.0000c100028b.00
00.20.48.0e.06.e3 -> 39.840f.80.01bc61.df00.0720.4500.0020480e06e3.00
00.a0.24.b3.3c.20 -> 47.0005.80.ffe100.0000.f219.19a5.00a024b33c20.00
00.00.d1.0f.4f.ad -> 39.840f.80.01bc61.df00.0720.4500.0000d10f4fad.00
00.00.d1.0f.5f.aa -> 47.0000.00.00003c.0000.a000.0000.0000d10f5faa.00
00.00.d1.0f.9f.66 -> 47.0000.00.00003c.0000.a000.0000.0000d10f9f66.00
ff.ff.ff.ff.ff.ff -> 39.840f.80.01bc61.df00.0720.4500.00006f072045.04
Connection Cache
PEER 47.0000.00.00003c.0000.a000.0000.0000d10f9f66.00 DataDirect
PEER 47.0000.00.00003c.0001.a000.0000.0000d100083c.00 DataDirect
PEER 47.0000.00.00003c.0001.a000.0000.0000d10f9f5e.00 DataDirect
PEER 39.840f.80.01bc61.df00.0720.4500.0000c100028b.00 DataDirect
PEER 47.0000.00.00003c.0000.a000.0000.0000d10f5faa.00 DataDirect
PEER 47.0005.80.ffe100.0000.f219.19a5.00a024b33c20.00 DataDirect
PEER 39.840f.80.01bc61.df00.0720.4500.0020480e06e3.00 DataDirect
PEER 39.840f.80.01bc61.df00.0720.4500.0000d10f4fad.00 DataDirect
BUS  39.840f.80.01bc61.df00.0720.4500.00006f072045.04 McastSend + McastFwd
LES  39.840f.80.01bc61.df00.0720.4500.00006f072045.03 CtrlDirect + CtrlDistr

The third set of parameters shows the current ATM connections used by the ELAN. The first column shows the class of the connection, a Peer, BUS, or LES. The second column lists the destination ATM address of the connection, and the third column describes the specific connection type for that VC (DataDirect for a Peer, Mcast for the BUS, and Ctrl for the LES). The six types of VCs are described in the following section.

Configuration Direct    A bi-directional VC established between the LEC and the LECS as part of the LECS Connect process; it is used by the client to obtain configuration information such as the ATM address of the LES.

Control Direct    A bi-directional, point-to-point VC that carries control information between a LANE client and the LES. Used, for example, during address resolution.

Control Distribute    A point-to-multipoint VC from the LES to one or more LECs.

Data Direct    The most common type of VC, a bi-directional, point-to-point connection that carries data between two LECs.

Multicast Send    A bi-directional, point-to-point VC between a LEC and the BUS. Used for sending multicast frames to the BUS.

Multicast Forward    A unidirectional point-to-point or point-to-multipoint VC from the BUS to one or more LECs, used for forwarding multicast data frames to members of an ELAN.

ATMARP Utility

This utility describes the Address Resolution Protocol (ARP) server or Atmarmps.sys used in an IP over ATM network. However, since the Windows 2000 IP over ATM service combines the functions of ARP, MARS, and MCS servers, it provides more information than its name might first imply. While the tool is named ARP, it also describes MARS and MCS statistics, such as packets received, forwarded, members joining the multicast list of clients, attempts to add new clients, registrations, leaf joins, and so on.

The utility includes two primary options, ATMARP -C and ATMARP -S, as well as an ATMARP /reset option. This last option works as might be expected; it resets the values of all ARP and MARS statistics to zero. The default is ATMARP -S; simply typing ATMARP or ATMARP -S brings up a report similar to the example shown in Figure 14.24, describing the current state and the history of the ATMARP server:

Figure 14.24 Typical ATMARP -S Report

C:\>atmarp
Windows ATM ARP Server Information
Adapter: {BA021C4A-8475-11D2-9FC7-95AE3A1F5FF7}
Arp Server Statistics
    Elapsed Time: 71763 seconds
    Recvd. Pkts.: 14869 total           (0 discarded)
         Entries: 13    current         (13 max)
       Responses: 11    acks            (909 naks)
      Client VCs: 6     current         (11 max)
  Incoming Calls: 4582  total
Mars Server Statistics
    Recvd. Pkts.: 13949 total           (13 discarded)
    MCData Pkts.: 49069 total           (0 discarded, 49069 reflected)
         Members: 6     current         (8 max)
         Promis.: 0     current         (1 max)
       Add Party: 24    total           (0 failed)
    Registration: 4142  requests        (0 failed)
           Joins: 9323  total           (36 failed, 9286 dup's)
          Leaves: 31    total           (0 failed)
        Requests: 453   total
       Responses: 440   acks            (0 naks)
         VC Mesh: 1     joins           (0 acks)
          Groups: 0     current         (1 max)
      Group Size: 1     max

Elapsed Time notes the seconds elapsed since the ARP/MARS/MCS service was started, or since ATMARP /reset was run. All the statistics that total up a value over time are reset to zero by the /reset command. "Received Packets" indicates the total number of ATP and MARS control packets received by the server on this adapter, as well as the number discarded. A high number of discarded packets indicates a communications or resource-related problem. "Entries" lists both the number of ARP entries currently in the internal ARP table and the maximum number that it has held since the start of statistics collection. "Responses" simply lists the number of ARP ACK and NACK response sent. "Client VCs" lists the current number of incoming client VCs, while "Incoming Calls" lists the aggregate total number of client VC calls.

Next come the MARS server statistics. These begin with the total number of packets received and discarded. A high number of discarded packets indicates a communications or resource-related problem. Next, "MCData Pkt" ** represents ** the total number of multicast packets received from clients, discarded, and reflected on the cluster control VC. "Members" describes the current number of multicast clients, as well as the maximum number of clients at any one time since the start of data collection. "Promis" just lists the number of current (and maximum) number of clients that have requested promiscuous joins. "Add Party" tracks the number of times the ARP server has attempted to add a client to the cluster control VC, and how many of them have failed. "Registration" lists the number of clients that have attempted to register with the MCS, and how many have failed. "Joins" and "Leaves" list the number of requests by clients to join and to leave a multicast group, the number of requested that failed, and the number that duplicated an earlier join. These include promiscuous join and leave requests.

"Requests" lists the total number of MARS requests, that is requests asking for ATM addresses associated with a particular IP multicast group address. "Responses" lists the number of ACKs (indicating a successful response containing at least one address) and NAKs (indicating no ATM addresses were associated with the IP multicast address in question).

"VC Mesh" shows the total number of successful joins involving VC Mesh IP multicast group addresses. ACKs list the number of MARS requests for a VC Mesh–served IP multicast group address. "Groups" tracks the number of VC-Mesh IP multicast group addresses, both current and the maximum number at any time. The last ATMARP -S entry, "Group Size" provides the maximum number of clients that requested the same VC Mesh IP multicast address group at any one time.

The MARS server (based on a user-modifiable configuration) determines which addresses are MCS-served. VC Mesh group addresses ** are all the addresses that are not served by the MCS. When an address is MCS-served, the MARS server return its own ATM address in response to clients' requests for information about that set of multicast addresses. For all others — that is, for VC Mesh group addresses — the MARS returns a list of ATM addresses of those clients who have joined the specific address.

The term "VC Mesh" derives from the fact that communication between clients end up creating a "mesh" of point-to-multipoint VCs. Each client that hopes to send data to a particular VC Mesh group address must create a point-to-multipoint VC; all the clients receiving data sent on that address make up the leaves of that VC.

In contrast to the default server information the ATMARP -C report provides a look at the address cache. A sample output is provided in Figure 14.25, containing four address mappings:

Figure 14.25 Results of ATMARP -C

Windows ATM ARP Server Information
Adapter: {EB535D2A-8044-11D2-AFE3-A9CC1F4296B4}
Arp Cache
192.168.74.20 -> 47.0000.00.00003c.0000.a000.0000.0000c1100879.01
192.168.74.23 -> 47.0000.00.00003c.0000.a000.0000.0020480811da.01
Mars Cache
promiscuous -> 47.0000.00.00003c.0000.a000.0000.0020480811da.01
  1. -> 47.0000.00.00003c.0000.a000.0000.0000c1100879.01:q

Each entry in the ARP cache shows the mapping of one IP unicast address to an ATM address. There is no hard-coded limit to the number of addresses that can be stored in this cache, and the list entries are not in any particular order.

Each entry in the MARS caches shows the mapping of one IP multicast group address to one or more ATM addresses. The special IP multicast group address known as "promiscuous," lists the ATM addresses of clients that have joined in promiscuous mode.

Only VC Mesh IP multicast group addresses show up in the cache. This is significant because a network can easily have active multicast sessions going on between several clients using several IP multicast group addresses (all of which happen to be MCS-served). In this case, the MARS cache remains empty.