Troubleshooting the Data Link Layer


As previously mentioned, the second layer runs at least two protocolsLink Access Procedure on the D channel (LAPD) and PPP on the B channel. LAPD is also known as Q921; it is the focus of this section.

LAPD is used between the Cisco router and the telco switch to provide a full-duplex error-free link. This protocol is not end-to-end: It can be used only to troubleshoot the connection between the local router (CPE) and the local switch. The troubleshooting of both protocols (LAPD and PPP) must be done separately.

NOTE

Always keep in mind that LAPD (Q921) activation needs to occur before PPP because Q921 signaling is part of the D channel signaling. No data with any encapsulation (including PPP) can be passed if the D channel is not functioning properly.


Using the #show isdn status command immediately after Layer 1 activation displays the output shown in Example 12-10.

Example 12-10. show isdn status Output
 804-isdn#show isdn status Global ISDN Switchtype = basic-ni ISDN BRI0 interface         dsl 0, interface ISDN Switchtype = basic-ni     Layer 1 Status:         ACTIVATED     Layer 2 Status:         Layer 2 NOT Activated 

An important part of the second layer activation is the negotiation of the terminal endpoint identifier (TEI). In the BRI environment on a single S/T connection, a single BRI interface can connect up to 8 devices. Each device can have a unique TEI number that's assigned by the local switch. The switch recognizes the devices that are sending and receiving data, and negotiation starts with the router, which sends IDREQ. The switch responds with IDASSN. The IDREQ and IDASSN packets contain two important valuesthe activation indicator (AI) and the reference indicator (RI). The initial IDREQ sent to the switch is set to 127. This is a broadcast request that asks the switch to assign any TEI. Unlike Primary Rate Interfaces (PRIs), where only one device is connected to the switch and the TEI is always 0, the valid TEI for BRIs is between 64 and 126 (if they are dynamically assigned). The range from 0 to 63 is allocated for fixed or statically assigned TEIs. The RI in the IDREQ packet is a random number that needs to always match an associated IDREQ and IDASSN packet. In Example 12-11, the router sends IDREQ with ri = 86 and broadcast ai = 127. The switch responds with the matching IDASSN ri = 86, and assigns ai = 80, which is a valid TEI. Further down in the output, you can see another IDREQ and IDASSN with ri = 1463 and assigned TEI = 89. Example 12-11 shows the recommended command for troubleshooting and the initialization of Layer 2.

Example 12-11. Activation of Layer 2 in a Cisco 804 ISDN Router
 804-isdn#debug isdn q921 *Mar  1 00:01:14.995: ISDN BR0: TX ->  IDREQ  ri = 86  ai = 127  ID request *Mar  1 00:01:15.019: ISDN BR0: RX <-  IDASSN  ri = 86  ai = 80  ID assign *Mar  1 00:01:15.027: ISDN BR0: TX ->  SABMEp sapi = 0  tei = 80 ! The following line and the preceding line mean LAPD is OK for TEI=80 *Mar  1 00:01:15.043: ISDN BR0: RX <-  UAf sapi = 0  tei = 80 *Mar  1 00:01:15.047: %ISDN-6-LAYER2UP: Layer 2 for Interface BR0,     TEI 80 changed to up *Mar  1 00:01:15.051: ISDN BR0: TX ->  INFOc sapi = 0  tei = 80  ns = 0     nr = 0  i = 0x08007B3A0E3430383537363437343030313031 ! Layer 3 exchange *Mar  1 00:01:15.091: ISDN BR0: RX <-  RRr sapi = 0  tei = 80  nr = 1 *Mar  1 00:01:15.095: ISDN BR0: TX ->  INFOc sapi = 0  tei = 80  ns = 1     nr = 0  i = 0x08010105040288901801832C0B3138303037373335303438 *Mar  1 00:01:15.139: ISDN BR0: RX <-  INFOc sapi = 0  tei = 80  ns = 0     nr = 1  i = 0x08007B3B028081 *Mar  1 00:01:15.147: ISDN BR0: RX <-  RRr sapi = 0  tei = 80  nr = 2 *Mar  1 00:01:15.151: ISDN BR0: TX ->  RRr sapi = 0  tei = 80  nr = 1 *Mar  1 00:01:15.167: ISDN BR0: TX ->  IDREQ  ri = 1463  ai = 127 ! TEI request *Mar  1 00:01:15.175: ISDN BR0: RX <-  INFOc sapi = 0  tei = 80  ns = 1     nr = 2  i = 0x08007B952A0480800150 *Mar  1 00:01:15.187: ISDN BR0: TX ->  RRr sapi = 0  tei = 80  nr = 2 *Mar  1 00:01:15.191: ISDN BR0: RX <-  IDASSN  ri = 1463  ai = 89 ! TEI assign *Mar  1 00:01:15.199: ISDN BR0: TX ->  SABMEp sapi = 0  tei = 89 *Mar  1 00:01:15.219: ISDN BR0: RX <-  UAf sapi = 0  tei = 89 ! The following line and the preceding line mean 89 OK *Mar  1 00:01:15.219: %ISDN-6-LAYER2UP: Layer 2 for Interface BR0,     TEI 89 changed to up *Mar  1 00:01:15.227: ISDN BR0: TX ->  INFOc sapi = 0  tei = 89  ns = 0     nr = 0  i = 0x08007B3A0E3430383537363437343130313031 ! Layer 3 *Mar  1 00:01:15.267: ISDN BR0: RX <-  RRr sapi = 0  tei = 89  nr = 1 *Mar  1 00:01:15.279: ISDN BR0: RX <-  INFOc sapi = 0  tei = 89  ns = 0     nr = 1  i = 0x08007B3B028181 *Mar  1 00:01:15.287: ISDN BR0: TX ->  RRr sapi = 0  tei = 89  nr = 1 *Mar  1 00:01:15.311: ISDN BR0: RX <-  INFOc sapi = 0  tei = 89  ns = 1     nr = 1  i = 0x08007B952A0480800150 *Mar  1 00:01:15.323: ISDN BR0: TX ->  RRr sapi = 0  tei = 89  nr = 2 *Mar  1 00:01:15.739: ISDN BR0: RX <-  INFOc sapi = 0  tei = 80  ns = 2     nr = 2  i = 0x08018102180189 *Mar  1 00:01:15.747: ISDN BR0: TX ->  RRr sapi = 0  tei = 80  nr = 3 *Mar  1 00:01:17.039: ISDN BR0: RX <-  INFOc sapi = 0  tei = 80  ns = 3     nr = 2  i = 0x08018107 *Mar  1 00:01:17.043: ISDN BR0: TX ->  RRr sapi = 0  tei = 80  nr = 4 *Mar  1 00:01:17.051: ISDN BR0: TX ->  INFOc sapi = 0  tei = 80  ns = 2     nr = 4  i = 0x0801010F 

If negotiation of Layer 2 doesn't occur, IDREQ is transmitted with different random RI and wildcard ri = 127, but you won't see an IDASSN. This indicates that the switch is not responding. Another problem scenario is an invalid TEI from the switch, which can indicate an LEC issuepossibly a malfunctioning switch.

The following message types can be checked during TEI identification:

  • ID Request

  • ID Assigned

  • ID Denied

  • ID Check Request

  • ID Check Response

  • ID Remove

  • ID Verify

The only way to change or remove the TEI assigned to the router's BRI interface is to reload the router. Then, the boot code forces the first ISDN TEI first-call flag to be reset. The first call flag affects all switch types, thus forcing incoming and outgoing calls to activate the BRI interface. To enable the router to negotiate the TEI on the first call, use the following configuration command:

 804-isdn(config)#isdn tei-negotiation first-call 

NOTE

Some European ISPs remove the TEI assignment during night hours. Then, the user who has a functioning connection during the day cannot make calls out and must power-cycle the router to make it operational during the day. This command is particularly useful for these cases because it allows the TEIs to be re-established during the first call out.


The next step in the activation of Layer 2 is the HDLC connection with the switch. The router sends an asynchronous balance mode extended (SABME) message with TEI xx (in the example, it's 73). In response to SABME, the local switch responds with a series of unnumbered acknowledgments (UAs). At this point, Layer 2 is ACTIVE. If you enter #show isdn status, you can see the second layer reported as ACTIVATED.

NOTE

Under normal circumstances, you should not see SABME messages. If you do see them, it is a clear indication that Layer 2 is trying to reinitialize. This is usually seen when transmitting poll requests (RRp) and not receiving a response from the switch (RRf), or vice versa.


After Layer 2 is activated, a sign of normal exchange is the exchange of INFO frames between the router and the local switch. Responses for the INFO messages are RR frames, as shown in Example 12-12.

Example 12-12. debug isdn q921 Output
 804-isdn#debug isdn q921 *Mar  3 23:59:04.788: ISDN BR0: RX <-  INFOc sapi = 0  tei = 80  ns=0 nr = 1 *Mar  3 23:59:11.736: ISDN BR0: TX ->  RRp sapi = 0  tei = 80  nr = 1 *Mar  3 23:59:11.752: ISDN BR0: RX <-  INFOc sapi = 0  tei =80  ns=0 nr = 1 

NOTE

Under normal circumstances, you should not see the exchange of any negotiation messages, such as IDREQ or IDASSN, but you should see the exchange shown in the previous output. Also, note that a PRI always uses a Terminal Endpoint Identifier (TEI) of zero because the link is point-to-point only. A TEI uniquely identifies multiple clients on an ISDN bus, which is a BRI.


The INFO frames contain Q931 signaling information and they exchange NS (send sequence number) and NR (next expected sequence number) fields. It is similar to the myseen and yourseen messages on the serial lines. To understand this analogy, look at the idle BRI channel (no user data is exchanged) and you can see a keepalive mechanism, which is when both parties exchange RR frames every 10 to 30 seconds, depending on settings, as shown in Example 12-13.

Example 12-13. Keepalive Mechanism in debug isdn q921 Output
 804-isdn#debug isdn q921 *Mar  4 00:39:11.671: ISDN BR0: TX ->  RRp sapi = 0  tei = 80  nr = 44 *Mar  4 00:39:11.687: ISDN BR0: RX <-  RRf sapi = 0  tei = 80  nr = 1 *Mar  4 00:39:19.675: ISDN BR0: TX ->  RRp sapi = 0  tei = 89 nr = 60 *Mar  4 00:39:19.691: ISDN BR0: RX <-  RRf sapi = 0  tei = 89  nr = 24 

In active second-layer environments, you can see the messages in Example 12-13. They allow you to conclude that Layer 2 is functioning properly. The final result of the successful establishment of the second layer is shown in Example 12-14's output.

Example 12-14. The Successful Establishment of the Second Layer
 804-isdn#show isdn status Global ISDN Switchtype = basic-ni ISDN BRI0 interface         dsl 0, interface ISDN Switchtype = basic-ni     Layer 1 Status:         ACTIVE     Layer 2 Status:         TEI = 64, Ces = 1, SAPI = 0, State = MULTIPLE_FRAME_ESTABLISHED         TEI = 73, Ces = 2, SAPI = 0, State = MULTIPLE_FRAME_ESTABLISHED     Spid Status:         TEI 64, ces = 1, state = 5(init)             spid1 configured, spid1 sent, spid1 valid             Endpoint ID Info: epsf = 0, usid = 0, tid = 1         TEI 73, ces = 2, state = 5(init)             spid2 configured, spid2 sent, spid2 valid             Endpoint ID Info: epsf = 0, usid = 1, tid = 1, 

In terms of a Cisco 77x series router, the expected output is displayed in Example 12-15.

Example 12-15. Cisco 77x Series Router Output
 776-isdn> show status Status    01/03/1995 05:30:24 Line Status   Line Activated   Terminal Identifier Assigned    SPID Accepted   Terminal Identifier Assigned    SPID Accepted Port Status                                           Interface Connection Link   Ch:  1      Waiting for Call   Ch:  2      Waiting for Call 

NOTE

The output of an IOS command for the second layer must have TEIs in the expected range, SAPI = 0, and State = MULTIPLE_FRAME_ESTABLISHED for each B channel. If only one B channel has the MULTIPLE_FRAME_ESPABLISHED state, ISDN is still operational, but it will only have use of that channel.


After the first and second layers on the D channel are established, you can approach Layer 3. Troubleshooting this layer should be attempted only after you verify that Layer 1 and Layer 2 are active.




Troubleshooting Remote Access Networks CCIE Professional Development
Troubleshooting Remote Access Networks (CCIE Professional Development)
ISBN: 1587050765
EAN: 2147483647
Year: 2002
Pages: 235

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net