Document ID: 18880
Contents
Introduction
Prerequisites
Requirements
Components Used
Conventions
Load Balance to the Same X.25 Destination
Back Up X.25 Interface
Use the Hunt-Group to Load Balance and Back Up X.25 Calls
NetPro Discussion Forums - Featured Conversations
Related Information
Introduction
This document provides information on how to balance load in order to get more use of your bandwidth when you use X.25 between multiple interfaces.
Prerequisites
Requirements
There are no specific requirements for this document.
Components Used
This document is not restricted to specific software and 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.
Load Balance to the Same X.25 Destination
This section describes how you can use the x25 nvc [x] command to load balance to the same X.25 destination.
When traffic is sent towards a destination, the window of a virtual circuit (VC) can be closed. This is because, no acknowledgement is provided for the packets the router sends.
To resolve the problem, several VCs to the same IP destination can be opened. To do so, use the x25 nvc [x] interface command (where x is the number of concurrent VCs to the destination).
The datagram that the router must send is first assigned to a destination. The router then checks whether a VC is available to transmit the datagram. If a VC is unable to transmit any further packets (that is, if the window is closed), a new VC is opened.
Before a new VC is opened, these rules are taken into consideration:
-
If any of the actual circuits towards the destination has a receiver not ready (RNR) condition, the new VC cannot be opened. This is because, the remote device is already in congestion at a higher OSI layer, and if an additional VC is opened to that device, it would aggravate the problem.
-
For an additional VC to be opened, the map must already have the maximum NVC used (configured by the x25 nvc [x] command).
-
When a call is already outstanding for this map, an additional VC can be opened only if the call has not reached the transfer state.
-
If a previous call has failed, an additional VC can be opened only if the retry timer has not expired.
A datagram is discarded, and is not queued:
-
If the per-destination limit is exceeded. You can set the per-destination limit with the x25 hold-queue command.
-
If the interface output-queue limit is exceeded. You can set the output-queue limit with the hold-queue [number] out command
Back Up X.25 Interface
You can define several X.25 route statements with the same selection-pattern. The X.25 call is switched based on the first match.
Note: To match the entries, verification happens from the first statement in the configuration to the last. Entries are not evaluated at the time calls are routed. Instead, they are checked from top to bottom. Due to this, calls will not be forwarded to the required destination if you configure the sequence incorrectly, or if you use the regular expression in a route statement incorrectly. Remember these points:
-
You can configure the option number to define which route statement will take precedence.
-
The route statement is not evaluated if the X.25 interface is unavailable because of one of these reasons:
-
The line is down, which is a physical interface problem (see Troubleshooting Serial Interfaces for more information).
-
The protocol is down.
-
Link Access Procedure, Balanced (LAPB) is not up. In other words, there is a configuration problem with the remote device attached to this interface.
-
The Logical Link Control, type 2 (LLC2) is not up (see Note 2).
-
-
Even if the primary link goes back up, all calls switched through the secondary links do not move back to the primary link. In Cisco IOSĀ® Software Releases 12.1T and later, you can use the x25 failover command.
-
For X.25 over TCP/IP (XOT), you can define several IP destination addresses to be tried in sequence in case the XOT session fails (and provide this as a backup setup for X.25 calls that cross the IP cloud).
Note 1
The calls are always switched through the primary match even if the X.25 calls are cleared. To fix this problem, use the hunt-group feature explained in the Use the Hunt-Group to Load Balance and Back Up X.25 Calls section.
Note 2
Currently, LLC2 does not behave as described above. Here is the normal process of a routing decision with LLC2:
-
If no context exists for a CMNS destination, an attempt is made to bring up a context to the identified station specified in the x25 route command.
-
If the context is successfully created and enters R1, the call is forwarded to the destination.
-
If the context already exists but is not in R1, or if it fails to come up, the subsequent routes must be evaluated.
These points describe how the LLC2 must be handled. However, at this point, the decision process does not enable the LLC2 to return a status (R1), and subsequent routes are not evaluated. This issue is being tracked in Cisco Bug Id CSCdm01125. This document will be updated accordingly with any developments in this issue.
Here is an example of a situation in which LLC2 cannot be established:
*Oct 24 10:16:42.851: Serial2/0: X.25 I R1 Call (17) 8 lci 100 *Oct 24 10:16:42.851: From (11): 11111111111 To (4): 2222 *Oct 24 10:16:42.851: Facilities: (0) *Oct 24 10:16:42.851: Call User Data (4): 0x01000000 (pad) *Oct 24 10:16:42.891: cmns_new_device: Ethernet0/0, type 1, len 6, addr aabb.cc00.6700 *Oct 24 10:16:42.891: cmns_create_device: Ethernet0/0 aabb.cc00.6700 *Oct 24 10:16:42.891: cmns_dev_activate: Ethernet0/0 aabb.cc00.6700; cls 2, dev 0 *Oct 24 10:16:42.891: sending req_opnstn.req (primary) *Oct 24 10:16:42.891: Serial2/0: X.25 O R1 Clear (5) 8 lci 100 *Oct 24 10:16:42.891: Cause 0, Diag 0 (DTE originated/No additional information) *Oct 24 10:16:42.891: Serial2/0: X.25 I R1 Clear Confirm (3) 8 lci 100 *Oct 24 10:16:42.915: got req_opnstn.cnf (7000) for Ethernet0/0 aabb.cc00.6700, state 2 *Oct 24 10:16:42.915: cmns_dev_activate: Ethernet0/0 aabb.cc00.6700; cls 2, dev 3 *Oct 24 10:16:42.915: sending connect.req R2# *Oct 24 10:16:54.131: got connect.cnf (700F) for Ethernet0/0 aabb.cc00.6700, state 4 *Oct 24 10:16:54.131: cmns_dev_deactivate: Ethernet0/0 aabb.cc00.6700; cls 2, dev 17 *Oct 24 10:16:54.131: sending disconnect.req *Oct 24 10:16:54.131: got disconnect.cnf (7000) for Ethernet0/0 aabb.cc00.6700, state 12 *Oct 24 10:16:54.131: cmns_dev_deactivate: Ethernet0/0 aabb.cc00.6700; cls 2, dev 13 *Oct 24 10:16:54.131: sending close_stn.req *Oct 24 10:16:54.131: got close_stn.cnf (7000) for Ethernet0/0 aabb.cc00.6700, state 14 *Oct 24 10:16:54.131: cmns_dev_deactivate: Ethernet0/0 aabb.cc00.6700; cls 2, dev 15 *Oct 24 10:16:54.131: cmns_delete_context: Ethernet0/0 aabb.cc00.6700 *Oct 24 10:16:54.131: freeing context for Ethernet0/0 aabb.cc00.6700
This process is repeated constantly, even though other X.25 routes exist.
Note: This issue is specific to LLC2.
Use the Hunt-Group to Load Balance and Back Up X.25 Calls
With the X.25 hunt-group feature, you can associate several options to switch the calls with one selection pattern. This feature was introduced in Cisco IOS Software Release 12.0(3)T.
Note: If the call is cleared, you need a new call before it can be switched with the help of the next option from the hunt-group definition.
Note: For more information on how to configure the x25 hunt-group command, see X.25 Load Balancing. For a sample configuration, see X.25 Load Balancing With Hunt Groups.
NetPro Discussion Forums - Featured Conversations
| NetPro Discussion Forums - Featured Conversations for WAN |
| Network Infrastructure: WAN, Routing, and Switching |
Related Information
| Updated: Jun 01, 2005 | Document ID: 18880 |
