Guest

IBM Networking

Troubleshooting DLSw with debug Commands

Document ID: 17568

Updated: Jan 28, 2008

   Print

Introduction

This document provides information on how to troubleshoot Data Link Switching (DLSw) with debug commands.

Prerequisites

Requirements

There are no specific requirements for this document.

Components Used

This document is not restricted to specific software or hardware versions.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Conventions

For more information on document conventions, refer to the Cisco Technical Tips Conventions.

Debugs

Before you attempt any of the debug commands in this document, refer to Important Information on Debug Commands.

When you are troubleshooting the startup of a session, issue the debug dlsw command and observe:

  • The session initial setup

  • Whether the circuit is coming up

This diagram shows the flow for a Cisco 3174 communications controller to the host through Data-Link Switching Plus (DLSw+):

dlswts9_a.gif

The next example of the debug dlsw command shows the flow of a correct session as it is brought up.

caution Caution: The debug dlsw command can cause severe performance degradation, especially when performed on a router that has multiple circuits connected with multiple peers configured.

ibu-7206# debug dlsw

DLSw reachability debugging is on at event level for all protocol traffic
DLSw peer debugging is on
DLSw local circuit debugging is on
DLSw core message debugging is on
DLSw core state debugging is on
DLSw core flow control debugging is on
DLSw core xid debugging is on

ibu-7206#

DLSW Received-ctlQ : CLSI Msg : UDATA_STN.Ind   dlen: 208
CSM: Received CLSI Msg : UDATA_STN.Ind   dlen: 208 from TokenRing3/0
CSM:   smac 8800.5a49.1e38, dmac c000.0000.0080, ssap F0, dsap F0
CSM: Received frame type NETBIOS DATAGRAM from 0800.5a49.1e38, To3/0
DLSw: peer_put_bcast() to non-grouped peer 5.5.5.1(2065)
DLSw: Keepalive Request sent to peer 5.5.5.1(2065))
DLSw: Keepalive Response from peer 5.5.5.1(2065)
DLSW Received-ctlQ : CLSI Msg : TEST_STN.Ind   dlen: 41
CSM: Received CLSI Msg : TEST_STN.Ind   dlen: 41 from TokenRing3/0
CSM:   smac c001.68ff.0001, dmac 4000.0000.0001, ssap 4 , dsap 0

Notice the test frame that is coming from the LAN (locally) from station c001.68ff.0001 to the MAC address of 4000.0000.0001. Each time that you see a .Ind, it is a packet that is coming from the LAN. Any time that a packet is sent to the LAN, you should see a .RSP.

DLSw: peer_put_bcast() to non-grouped peer 5.5.5.1(2065)
%DLSWC-3-RECVSSP: SSP OP = 4( ICR ) -explorer from peer 5.5.5.1(2065)
DISP Sent : CLSI Msg : TEST_STN.Rsp dlen: 44

Notice the broadcast that is sent to the remote peer and the ICR (I Can Reach) response. This means that the remote router identified the station as reachable. Then notice the TEST_STN.Rsp, which is the router???s test response to the station.

DLSW Received-ctlQ : CLSI Msg : ID_STN.Ind   dlen: 54
pfinCSM: Received CLSI Msg : ID_STN.Ind   dlen: 54 from TokenRing3/0
CSM:   smac c001.68ff.0001, dmac 4000.0000.0001, ssap 4 , dsap 4

After the station receives the test response, the first Exchange Identification (XID) is sent to the Cisco router; this can be seen with the ID_STN.Ind. The router holds onto this frame until details are cleared up between the two DLSw routers.

DLSw: new_ckt_from_clsi(): TokenRing3/0 4001.68ff.0001:4->4000.0000.0001:4
DLSw: START-FSM (1622182940): event:DLC-Id state:DISCONNECTED
DLSw: core: dlsw_action_a()
DISP Sent : CLSI Msg : REQ_OPNSTN.Req   dlen: 108
DLSw: END-FSM (1622182940): state:DISCONNECTED->LOCAL_RESOLVE
DLSW Received-ctlQ : CLSI Msg : REQ_OPNSTN.Cfm CLS_OK dlen: 108
DLSw: START-FSM (1622182940): event:DLC-ReqOpnStn.Cnf state:LOCAL_RESOLVE
DLSw: core: dlsw_action_b()
CORE: Setting lf size to 30
%DLSWC-3-SENDSSP: SSP OP = 3( CUR  )  to peer 5.5.5.1(2065) success
DLSw: END-FSM (1622182940): state:LOCAL_RESOLVE->CKT_START
%DLSWC-3-RECVSSP: SSP OP = 4( ICR  )  from peer 5.5.5.1(2065)
DLSw: 1622182940 recv FCI 0 - s:0 so:0 r:0 ro:0
DLSw: recv RWO
DLSw: START-FSM (1622182940): event:WAN-ICR state:CKT_START
DLSw: core: dlsw_action_e()
DLSw: sent RWO
DLSw: 1622182940 sent FCI 80 on  ACK   - s:20 so:1 r:20 ro:1
%DLSWC-3-SENDSSP: SSP OP = 5( ACK  )  to peer 5.5.5.1(2065) success
DLSw: END-FSM (1622182940): state:CKT_START->CKT_ESTABLISHED

Notice the internal flow of DLSw between the two peers. These packets are normal for every session startup.

The first step in this process is to move from a disconnected state to a CKT_ESTABLISHED state; this sequence occurs:

  1. Both routers transmit a CUR frame for the circuit itself, called a CUR_cs (Can You Reach circuit setup).

  2. When the peer that initiates the CUR_cs frame receives an ICR_cs frame, the peer sends an acknowledgment and moves to establish a circuit.

  3. Both DLSw routers are ready for XID processing.

DLSw: START-FSM (1622182940): event:DLC-Id state:CKT_ESTABLISHED
DLSw: core: dlsw_action_f()
DLSw: 1622182940 sent FCA on  XID
%DLSWC-3-SENDSSP: SSP OP = 7( XID  )  to peer 5.5.5.1(2065) success
DLSw: END-FSM (1622182940): state:CKT_ESTABLISHED->CKT_ESTABLISHED

After an XID is received, the test response is sent to the station and is held by the router. The router then transmits this XID to its peer across this circuit, which means that packets are being sent to and from the peer with the circuit ID tagged to it.

In this way, DLSw knows what is going on in between two stations, because DLSw terminates the LLC2 session at each side of the cloud.

gnb%DLSWC-3-RECVSSP: SSP OP = 7( XID  )  from peer 5.5.5.1(2065)
DLSw: 1622182940 recv FCA on  XID   - s:20 so:0 r:20 ro:0
DLSw: START-FSM (1622182940): event:WAN-XID state:CKT_ESTABLISHED
DLSw: core: dlsw_action_g()
DISP Sent : CLSI Msg : ID.Rsp   dlen: 12
DLSw: END-FSM (1622182940): state:CKT_ESTABLISHED->CKT_ESTABLISHED
DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 39
DLSw: START-FSM (1622182940): event:DLC-Id state:CKT_ESTABLISHED
DLSw: core: dlsw_action_f()
%DLSWC-3-SENDSSP: SSP OP = 7( XID  )  to peer 5.5.5.1(2065) success
DLSw: END-FSM (1622182940): state:CKT_ESTABLISHED->CKT_ESTABLISHED

Initially, there is a response to the first XID that had been sent before.

Notice that, in ID.Rsp, the XID is sent to the station, which responds back with an ID.Ind (which is another XID that is sent across to the DLSw peer).

%DLSWC-3-RECVSSP: SSP OP = 8( CONQ )  from peer 5.5.5.1(2065)
DLSw: START-FSM (1622182940): event:WAN-CONQ state:CKT_ESTABLISHED

The station on the other side responds with a SABME (CONQ) to the XID; consequently, the XID negotiation has terminated and the session is ready to start.

DLSw: core: dlsw_action_i()
DISP Sent : CLSI Msg : CONNECT.Req   dlen: 16

!--- CONNECT.Req means that a SABME has been sent.

DLSw: END-FSM (1622182940): state:CKT_ESTABLISHED->CONTACT_PENDING
DLSW Received-ctlQ : CLSI Msg : CONNECT.Cfm CLS_OK dlen: 8
DLSw: START-FSM (1622182940): event:DLC-Connect.Cnf state:CONTACT_PENDING
DLSw: core: dlsw_action_j()
%DLSWC-3-SENDSSP: SSP OP = 9( CONR )  to peer 5.5.5.1(2065) success
DISP Sent : CLSI Msg : FLOW.Req   dlen: 0
DLSw: END-FSM (1622182940): state:CONTACT_PENDING->CONNECTED

The router now receives the UA from the station, and this can be seen in the CONNECT.Cfm message. This is sent to the remote peer via a CONR.

%DLSWC-3-RECVSSP: SSP OP = 10( INFO )  from peer 5.5.5.1(2065)
DLSw: 1622182940 decr r - s:20 so:0 r:19 ro:0
DLSw: START-FSM (1622182940): event:WAN-INFO state:CONNECTED
DLSw: core: dlsw_action_m()
DISP Sent : CLSI Msg : DATA.Req   dlen: 34
DLSw: END-FSM (1622182940): state:CONNECTED->CONNECTED 
DLSw: 1622182940 decr s - s:19 so:0 r:19 ro:0
DLSW Received-disp : CLSI Msg : DATA.Ind   dlen: 35
DLSw: sent RWO
DLSw: 1622182940 sent FCI 80 on  INFO  - s:19 so:0 r:39 ro:1
%DLSWC-3-SENDSSP: SSP OP = 10( INFO )  to peer 5.5.5.1(2065) success
%DLSWC-3-RECVSSP: SSP OP = 10( INFO )  from peer 5.5.5.1(2065)
DLSw: 1622182940 decr r - s:19 so:0 r:38 ro:1
DLSw: 1622182940 recv FCA on  INFO  - s:19 so:0 r:38 ro:0
DLSw: 1622182940 recv FCI 0 - s:19 so:0 r:38 ro:0
DLSw: recv RWO
DLSw: START-FSM (1622182940): event:WAN-INFO state:CONNECTED
DLSw: core: dlsw_action_m()
DISP Sent : CLSI Msg : DATA.Req   dlen: 28
DLSw: END-FSM (1622182940): state:CONNECTED->CONNECTED

The DATA.Req is an indication that an I-frame has been transmitted; DATA.Ind is a indication that an I-frame has been received. These are very useful to determine what packets are flowing across the DLSw routers.

DLSW Received-ctlQ : CLSI Msg : DISCONNECT.Ind   dlen: 8
DLSw: START-FSM (1622182940): event:DLC-Disc.Ind state:CONNECTED

That output shows a DISCONNECT.Ind; as seen before, any .Ind is coming from the LAN. This means that the station has sent a disconnect. This causes the router to start to tear down the circuit.

DLSw: core: dlsw_action_n()
%DLSWC-3-SENDSSP: SSP OP = 14( HLTQ )  to peer 5.5.5.1(2065) success
DLSw: END-FSM (1622182940): state:CONNECTED->DISC_PENDING
%DLSWC-3-RECVSSP: SSP OP = 15( HLTR )  from peer 5.5.5.1(2065)
DLSw: START-FSM (1622182940): event:WAN-HLTR state:DISC_PENDING

After the disconnect is received, the router sends a HALT to the remote peer and waits for its response. After the response is received, the router sends a UA to the station and closes down the circuit. This is shown as DISCONNECT.Rsp:

DLSw: core: dlsw_action_q()
DISP Sent : CLSI Msg : DISCONNECT.Rsp   dlen: 4
DISP Sent : CLSI Msg : CLOSE_STN.Req   dlen: 4
DLSw: END-FSM (1622182940): state:DISC_PENDING->CLOSE_PEND
DLSW Received-ctlQ : CLSI Msg : CLOSE_STN.Cfm CLS_OK dlen: 8
DLSw: START-FSM (1622182940): event:DLC-CloseStn.Cnf state:CLOSE_PEND
DLSw: core: dlsw_action_y()
DLSw: 1622182940 to dead queue
DLSw: END-FSM (1622182940): state:CLOSE_PEND->DISCONNECTED

DLSw then puts the circuit in the dead queue. From the dead queue, pointers are cleaned up and are ready for a new circuit.

dlswts9_b.gif

For a session with NetBIOS, there are changes in the way DLSw handles negotiation; but, the debugs are very similar. The only difference in both SNA and NetBIOS is that XIDs do not flow for NetBIOS stations, and the DLSw routers instead exchange NetBIOS Name Query and NetBIOS Name Recognized frames.

DLSw Media Translation

dlswts9_c.gif

After the interface comes up, the router starts the process: it determines the location of the remote controller.

%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial4, changed state to up
DLSW Received-ctlQ : CLSI Msg : ID_STN.Ind    dlen: 46
CSM: Received CLSI Msg :   ID_STN.Ind    dlen: 46 from Serial4
CSM: smac 4000.5494.00dd, dmac 4000.9404.0001, ssap 4 , dsap 4
%DLSWC-3-RECVSSP: SSP OP = 4( ICR ) -explorer from peer 10.17.2.198(2065)
DLSw: new_ckt_from_clsi(): Serial4 4000.5494.00dd:4-4000.9404.0001:4

After the ICR frame is received, the DLSw starts the finite state machine (FSM) for this session. This is done by the REQ_OPNSTN.Req and REQ_OPNSTN.Cfm that go between DLSw and the Cisco Link Services Interface (CLSI).

DLSw: START-FSM (488636): event:DLC-Id state:DISCONNECTED
DLSw: core: dlsw_action_a()
DISP Sent : CLSI Msg : REQ_OPNSTN.Req   dlen: 106
DLSw: END-FSM (488636): state:DISCONNECTED->LOCAL_RESOLVE
DLSW Received-ctlQ : CLSI Msg : REQ_OPNSTN.Cfm CLS_OK dlen: 106
DLSw: START-FSM (488636): event:DLC-ReqOpnStn.Cnf state:LOCAL_RESOLVE
DLSw: core: dlsw_action_b()
CORE: Setting lf size to FF

After conversation with CLSI, the router then sends session startup CUR frames to the remote router. These CUR frames are between the two routers only.

%DLSWC-3-SENDSSP: SSP OP = 3( CUR ) to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:LOCAL_RESOLVE->CKT_START
%DLSWC-3-RECVSSP: SSP OP = 4( ICR  )  from peer 10.17.2.198(2065)
DLSw: 488636 recv FCI 0 - s:0 so:0 r:0 ro:0
DLSw: recv RWO
DLSw: START-FSM (488636): event:WAN-ICR state:CKT_START
DLSw: core: dlsw_action_e()
DLSw: sent RWO
DLSw: 488636 sent FCI 80 on  ACK   - s:20 so:1 r:20 ro:1
%DLSWC-3-SENDSSP: SSP OP = 5( ACK  )  to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:CKT_START->CKT_ESTABLISHED

After the circuit is established, it sends the stored XID and start XID exchange.

It is very important to understand from where the XIDs are coming. In this situation, there are two important outputs:

  • DLC-Id???Means that the XID came from the local DLC station.

  • WAN-XID???Means that the XID came from the remote router (the remote station).

DLSw: START-FSM (488636): event:DLC-Id state:CKT_ESTABLISHED
DLSw: core: dlsw_action_f()
DLSw: 488636 sent FCA on  XID
%DLSWC-3-SENDSSP: SSP OP = 7( XID  )  to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
%DLSWC-3-RECVSSP: SSP OP = 7( XID  )  from peer 10.17.2.198(2065)
DLSw: 488636 recv FCA on  XID   - s:20 so:0 r:20 ro:0
DLSw: START-FSM (488636): event:WAN-XID state:CKT_ESTABLISHED
DLSw: core: dlsw_action_g()
DISP Sent : CLSI Msg : ID.Rsp   dlen: 12
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
%DLSWC-3-RECVSSP: SSP OP = 7( XID  )  from peer 10.17.2.198(2065)
DLSw: START-FSM (488636): event:WAN-XID state:CKT_ESTABLISHED
DLSw: core: dlsw_action_g()
DISP Sent : CLSI Msg : ID.Req   dlen: 88
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 82
DLSw: START-FSM (488636): event:DLC-Id state:CKT_ESTABLISHED
DLSw: core: dlsw_action_f()
%DLSWC-3-SENDSSP: SSP OP = 7( XID  )  to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
%DLSWC-3-RECVSSP: SSP OP = 7( XID  )  from peer 10.17.2.198(2065)
DLSw: START-FSM (488636): event:WAN-XID state:CKT_ESTABLISHED
DLSw: core: dlsw_action_g()
DISP Sent : CLSI Msg : ID.Rsp   dlen: 88
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 82
DLSw: START-FSM (488636): event:DLC-Id state:CKT_ESTABLISHED
DLSw: core: dlsw_action_f()
%DLSWC-3-SENDSSP: SSP OP = 7( XID  )  to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
%DLSWC-3-RECVSSP: SSP OP = 7( XID  )  from peer 10.17.2.198(2065)
DLSw: START-FSM (488636): event:WAN-XID state:CKT_ESTABLISHED
DLSw: core: dlsw_action_g()
DISP Sent : CLSI Msg : ID.Rsp   dlen: 88
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED
DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 82
DLSw: START-FSM (488636): event:DLC-Id state:CKT_ESTABLISHED
DLSw: core: dlsw_action_f()
%DLSWC-3-SENDSSP: SSP OP = 7( XID  )  to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CKT_ESTABLISHED

The router then receives the CONQ from the AS/400 (SABME) that is translated to the serial line as a Set Normal Response (SNRM). When the UA appears on the serial line (CONNECT.Cfm), the router sends the CONR to the other side and moves the session to CONNECTED.

%DLSWC-3-RECVSSP: SSP OP = 8( CONQ )  from peer 10.17.2.198(2065)
DLSw: START-FSM (488636): event:WAN-CONQ state:CKT_ESTABLISHED
DLSw: core: dlsw_action_i()
DISP Sent : CLSI Msg : CONNECT.Req   dlen: 16
DLSw: END-FSM (488636): state:CKT_ESTABLISHED->CONTACT_PENDING
DLSW Received-ctlQ : CLSI Msg : CONNECT.Cfm CLS_OK dlen: 8
DLSw: START-FSM (488636): event:DLC-Connect.Cnf state:CONTACT_PENDING
DLSw: core: dlsw_action_j()
%DLSWC-3-SENDSSP: SSP OP = 9( CONR )  to peer 10.17.2.198(2065) success
DLSw: END-FSM (488636): state:CONTACT_PENDING->CONNECTED

DLSw Conducting Reverse Media Translation

dlswts9_d.gif

Another common setup is called reverse-Synchronous Data Link Control (SDLC) Logical Link Control (LLC; SDLLC), which is when the primary station is attached to the router through an SDLC line. This is usually seen in host environments that migrate the host to a Token Ring attachment. This setup changes the way that DLSw handles the SDLC line, because there is usually a high degree of uncertainty as to whether the remote PU is active or not.

Because the AS/400 is either primary or is set to negotiable in the role, it needs to start the session. When that happens, this sequence occurs:

  1. The serial line becomes operational.

  2. The AS/400 sends the first XID.

  3. The search process for the remote controller starts.

  4. The setup for the circuit completes.

  5. XID negotiation begins in the line.

Local DLSw Media Translation

When the XID negotiation finishes, the AS/400 sends an SNRM to the Cisco router. This causes the router to send a CONQ and to expect a CONR from the remote router. But the UA is not sent until after the receipt of the CONR.

dlswts9_e.gif

%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2, changed state to up
%SYS-5-CONFIG_I: Configured from console by console
 DLSW Received-ctlQ : CLSI Msg : ID_STN.Ind   dlen: 46
CSM: Received CLSI Msg : ID_STN.Ind   dlen: 46 from Serial2

Because this is a DLSw local, the behavior is a little different. The first thing that is seen is the XID from the serial side. The XID from the serial side needs to be stored until the LLC test frames and responses are completed.

CSM:   smac 4000.5494.00dd, dmac 4000.9404.0001, ssap 4 , dsap 4
  DISP Sent : CLSI Msg : TEST_STN.Req   dlen: 46
  DISP Sent : CLSI Msg : TEST_STN.Req   dlen: 46
  DISP Sent : CLSI Msg : TEST_STN.Req   dlen: 46
CSM: Write to all peers not ok - PEER_NO_CONNECTIONS
  DLSW Received-ctlQ : CLSI Msg : TEST_STN.Ind   dlen: 43
CSM: Received CLSI Msg : TEST_STN.Ind   dlen: 43 from TokenRing0
CSM:   smac c000.9404.0001, dmac 4000.5494.00dd, ssap 0 , dsap 4

The test station leaves the router, and the response comes back from the AS/400. The local FSM can now be created. (Remember that this is a local session.)

DLSw: csm_to_local(): Serial2-->TokenRing0  4000.5494.00dd:4->4000.9404.0001:4
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:ADMIN-START
DLSw: LFSM-A: Opening DLC station
 DISP Sent : CLSI Msg : REQ_OPNSTN.Req   dlen: 106
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:DISCONNECTED ->OPN_STN_PEND
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:ADMIN-START
DLSw: LFSM-A: Opening DLC station
 DISP Sent : CLSI Msg : REQ_OPNSTN.Req   dlen: 106
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:DISCONNECTED ->OPN_STN_PEND
 DLSW Received-ctlQ : CLSI Msg : REQ_OPNSTN.Cfm CLS_OK dlen: 106
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-ReqOpnStn.Cnf
DLSw: LFSM-B: DLC station opened
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:OPN_STN_PEND ->ESTABLISHED
 DLSW Received-ctlQ : CLSI Msg : REQ_OPNSTN.Cfm CLS_OK dlen: 106
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-ReqOpnStn.Cnf
DLSw: LFSM-B: DLC station opened
DLSw: processing saved clsi message

After local confirmation that the FSM is ready, the router sends the XID (ID.Req) to the partner, which is the AS/400 in this scenario.

DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
DISP Sent : CLSI Msg : ID.Req   dlen: 12
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:ESTABLISHED  ->ESTABLISHED
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:OPN_STN_PEND ->ESTABLISHED
DLSW Received-ctlQ : CLSI Msg : ID.Cfm CLS_OK dlen: 32
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
DISP Sent : CLSI Msg : ID.Rsp   dlen: 12
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:ESTABLISHED  ->ESTABLISHED

An XID comes from the Token Ring. This ID.Ind has a length of 108 and has to be forwarded to the partner in this scenario, which is the SDLC line. This can be seen with the ID.Req that was sent. Notice that, every time that a packet is received, an LFSM must be started.

DLSw Received-ctlQ : CLSI Msg : ID.Ind dlen: 108
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
 DISP Sent : CLSI Msg : ID.Req   dlen: 88
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:ESTABLISHED  ->ESTABLISHED

Notice the XID response from the serial line and as it is forwarded to the partner (in this case the Token Ring station). This goes on for a while, until the XID exchange for this PU 2.1 device is finished.

 DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 82
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
 DISP Sent : CLSI Msg : ID.Rsp   dlen: 80
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:ESTABLISHED  ->ESTABLISHED
 DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 108
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
 DISP Sent : CLSI Msg : ID.Rsp   dlen: 88
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:ESTABLISHED  ->ESTABLISHED
 DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 82
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
 DISP Sent : CLSI Msg : ID.Rsp   dlen: 80
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:ESTABLISHED  ->ESTABLISHED
 DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 108
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
 DISP Sent : CLSI Msg : ID.Rsp   dlen: 88
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:ESTABLISHED  ->ESTABLISHED
%LINK-3-UPDOWN: Interface Serial2, changed state to up
 DLSW Received-ctlQ : CLSI Msg : ID.Ind   dlen: 82
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Id
DLSw: LFSM-X: forward XID to partner
 DISP Sent : CLSI Msg : ID.Rsp   dlen: 80
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:ESTABLISHED  ->ESTABLISHED

After the XID exchange, a SABME is received from the AS/400 through the CONNECT.Ind. This tells the router to send a CONNECT.Req to the SDLC line, which is the SNRM. Then a CONNECT.Cfm (UA) is received from the serial line, which causes the DLSw code to send a CONNECT.Rsp (UA) to the AS/400.

 DLSW Received-ctlQ : CLSI Msg : CONNECT.Ind   dlen: 8
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-Connect.Ind
DLSw: LFSM-C: starting local partner
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:ADMIN-CONN
DLSw: LFSM-D: sending connect request to station
 DISP Sent : CLSI Msg : CONNECT.Req   dlen: 16
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:ESTABLISHED  ->CONN_OUT_PEND
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:ESTABLISHED  ->CONN_IN_PEND
 DLSW Received-ctlQ : CLSI Msg : CONNECT.Cfm CLS_OK dlen: 8
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Connect.Cnf
DLSw: LFSM-E: station accepted the connection
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:ADMIN-CONN
DLSw: LFSM-F: accept incoming connection
 DISP Sent : CLSI Msg : CONNECT.Rsp   dlen: 20
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:CONN_IN_PEND ->CONNECTED
 DISP Sent : CLSI Msg : FLOW.Req   dlen: 0
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:CONN_OUT_PEND->CONNECTED

This is the session that occurs when the controller (SDLC) is shut down:

%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2, changed state to down
%LINK-5-CHANGED: Interface Serial2, changed state to administratively down
 DLSW Received-ctlQ : CLSI Msg : DISCONNECT.Ind   dlen: 8
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Disc.Ind
DLSw: LFSM-Q: acknowledge disconnect
 DISP Sent : CLSI Msg : DISCONNECT.Rsp   dlen: 4

Here, a DISC is sent to the AS/400 (DISCONNECT.Rsp). The local circuit is then torn down.

DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:ADMIN-STOP
DLSw: LFSM-Z: close dlc station request
 DISP Sent : CLSI Msg : CLOSE_STN.Req   dlen: 4
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:ESTABLISHED  ->CLOSE_PEND
 DISP Sent : CLSI Msg : CLOSE_STN.Req   dlen: 4
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:ESTABLISHED  ->CLOSE_PEND
 DLSW Received-ctlQ : CLSI Msg : CLOSE_STN.Cfm CLS_OK dlen: 8
DLSw: START-LFSM TokenRing0 (4000.9404.0001->4000.5494.00dd) event:DLC-CloseStn.Cnf
DLSw: LFSM-Y: driving partner to close circuit
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:ADMIN-STOP
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:CLOSE_PEND   ->CLOSE_PEND
DLSw: END-LFSM (4000.9404.0001->4000.5494.00dd): state:CLOSE_PEND   ->DISCONNECTED
 DLSW Received-ctlQ : CLSI Msg : DISCONNECT.Ind   dlen: 8
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-Disc.Ind
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:CLOSE_PEND   ->CLOSE_PEND
 DLSW Received-ctlQ : CLSI Msg : CLOSE_STN.Cfm CLS_OK dlen: 8
DLSw: START-LFSM Serial2 (4000.5494.00dd->4000.9404.0001) event:DLC-CloseStn.Cnf
DLSw: LFSM-Y: removing local switch entity
DLSw: END-LFSM (4000.5494.00dd->4000.9404.0001): state:CLOSE_PEND   ->DISCONNECTED

After the DISCONNECT.Ind (UA) is received from the AS/400, the session is cleaned up, and it is moved to a disconnect state.

Performance Issues

For more information about performance issues, refer to the Bandwidth Management and Queuing section in Data-Link Switching Plus (DLSw+), or refer to DLSw+ SAP/MAC Filtering Techniques.

Related Information

Updated: Jan 28, 2008
Document ID: 17568