Router Products Configuration Guide
Configuring X.25

Table Of Contents

Configuring X.25 and LAPB

Cisco's Implementation of LAPB and X.25

LAPB Configuration Task List

Configure a LAPB Datagram Transport

Modify LAPB Protocol Parameters

Configure LAPB Priority and Custom Queuing

Configure Transparent Bridging over Multiprotocol LAPB

X.25 Configuration Task List

Configure an X.25 Interface

Set the X.25 Mode

Set the Virtual Circuit Ranges

Set the Packet Numbering Modulo

Set the X.121 Address

Set the Default Flow Control Values

Set Default Window Sizes

Set Default Packet Sizes

Configure Additional X.25 Interface Parameters

Configure the X.25 Level 3 Timers

Configure X.25 Addresses

Understand Normal X.25 Addressing

Understand X.25 Subaddresses

Configure an Interface Alias Address

Suppress or Replace the Calling Address

Suppress the Called Address

Establish a Default Virtual Circuit Protocol

Disable Packet-Level Protocol Restarts

Modify LAPB Protocol Parameters

Configure an X.25 Datagram Transport

Configure Subinterfaces

Point-to-Point and Multipoint Subinterfaces

Creating and Configuring X.25 Subinterfaces

Map Protocol Addresses to X.121 Addresses

Protocol Encapsulation for Single-Protocol and Multiprotocol Virtual Circuits

Protocol Identification

Map Datagram Addresses to X.25 Hosts

Configure PAD Access

Establish an Encapsulation PVC

Set X.25 TCP Header Compression

Configure X.25 Bridging

Configure Additional X.25 Datagram Transport Features

Configure X.25 Payload Compression

Configure the Encapsulation Virtual Circuit Idle Time

Increase the Number of Virtual Circuits Allowed

Configure the Ignore Destination Time

Establish the Packet Acknowledgment Policy

Configure X.25 User Facilities

Define the Virtual Circuit Packet Hold Queue Size

Restrict Map Usage

Configure X.25 Routing

Enable X.25 Routing

Configure a Local X.25 Route

Configure an XOT (Remote) X.25 Route

Configure a Locally Switched PVC

Configure an XOT (Remote) PVC

Configure Additional X.25 Routing Features

Configure XOT to Use Interface Default Flow Control Values

Substitute Addresses in a Local X.25 Route

Configure XOT Alternate Destinations

Configure CMNS Routing

Enable CMNS on an Interface

Specify a CMNS Static Map of Addresses

Configure DDN or BFE X.25

DDN X.25 Dynamic Mapping

BFE IP Address Conventions

Enable DDN X.25

Define IP Precedence Handling

Configure Blacker Front-End X.25

Monitor and Maintain LAPB and X.25

X.25 Facility Handling

Facility Handling in Encapsulated X.25 Virtual Circuits

Facility Handling in Routed X.25 Virtual Circuits

Standard (1984 X.25) Facilities

ITU-T-Specified Marker Facilities

Local Marker Facilities Specified for DDN or BFE X.25

X.25 and LAPB Configuration Examples

Typical LAPB Configuration Example

Transparent Bridging for Multiprotocol LAPB Encapsulation Example

Typical X.25 Configuration Example

Virtual Circuit Ranges Example

PVC Switching on the Same Router Example

X.25 Route Address Pattern Matching Example

X.25 Routing Examples

PVC Used to Exchange IP Traffic Example

Point-to-Point Subinterface Configuration Example

Simple Remote PVC Tunneling Example

Remote PVC Tunneling Example

CMNS Configured for X.121 and MAC Addresses Example

CMNS Switched over a PDN Example

CMNS Switched over Leased Lines Example

DDN X.25 Configuration Example

Blacker Emergency Mode Example

X.25 Configured to Allow Ping Support over Multiple Lines Example

Booting from a Network Server over X.25 Example 


Configuring X.25 and LAPB


This chapter describes how to configure connections through X.25 networks and Link Access Procedure, Balanced (LAPB) connections. LAPB procedures are presented first for those users who only want to configure a simple, reliable serial encapsulation method. For a complete description of the commands mentioned in this chapter, refer to the "X.25 and LAPB Commands" chapter in the Router Products Command Reference publication. To translate between an X.25 packet assembler/disassembler (PAD) connection and another protocol, refer to the Protocol Translation Configuration Guide and Command Reference publication.

Cisco's Implementation of LAPB and X.25

X.25 is one of a group of specifications published by the International Telecommunication Union Telecommunication Standardization Sector (ITU-T); these specifications are international standards that are formally called Recommendations. The ITU-T Recommendation X.25 defines how connections between data terminal equipment (DTE) and data communications equipment (DCE) are maintained for remote terminal access and computer communications. The X.25 specification defines protocols for two layers of the OSI reference model. The data link layer protocol defined is LAPB. The network layer is sometimes called the packet level protocol (PLP), but is commonly (although less correctly) referred to as "the X.25 protocol."

The ITU-T updates its Recommendations periodically. The specifications dated 1980 and 1984 are the most common versions currently in use. Additionally, the International Standards Organization (ISO) has published ISO 7776:1986 as an equivalent to the LAPB standard, and ISO 8208:1989 as an equivalent to the ITU-T 1984 X.25 Recommendation packet layer. Our X.25 software follows the ITU-T 1984 X.25 Recommendation, except for its Defense Data Network (DDN) and Blacker Front End (BFE) operation, which follow the ITU-T 1980 X.25 Recommendation.


Note   The ITU-T carries out the functions of the former Consultative Committee for International Telegraph and Telephone (CCITT). The 1988 X.25 standard was the last published as a CCITT Recommendation. The first ITU-T Recommendation is the 1993 revision.


In addition to providing remote terminal access, our X.25 software provides transport for LAN protocols—IP, DECnet, XNS, ISO CLNS, AppleTalk, Novell IPX, Banyan VINES, and Apollo Domain—and bridging. For information about these protocols, refer to the specific protocol chapters in the this manual.

Briefly, the Cisco Systems X.25 software provides the following capabilities:

LAPB datagram transport—LAPB is a protocol that operates at Level 2 (the data link layer) of the OSI reference model. It offers a reliable connection service for exchanging data (in units called frames) with one other host. The LAPB connection is configured to carry a single protocol or multiple protocols. Protocol datagrams (IP, DECnet, AppleTalk, and so forth) are carried over a reliable LAPB connection, or datagrams of several of these protocols are encapsulated in a proprietary protocol and carried over a LAPB connection. Cisco also implements transparent bridging over multiprotocol LAPB encapsulations on serial interfaces.

X.25 datagram transport—X.25 can establish connections with multiple hosts; these connections are called virtual circuits. Protocol datagrams (IP, DECnet, AppleTalk, and so forth) are encapsulated inside packets on an X.25 virtual circuit. Mappings between a host's X.25 address and its datagram protocol addresses allow these datagrams to be routed through an X.25 network, thereby allowing an X.25 public data network (PDN) to transport LAN protocols.

X.25 switch—X.25 calls can be routed based on their X.25 addresses either between serial interfaces on the same router (local switching) or across an IP network to another router (X.25-over-TCP or XOT, previously called remote switching or tunneling). XOT encapsulates the X.25 packet level inside a TCP connection, allowing X.25 equipment to be connected via a TCP/IP-based network. Cisco's X.25 switching features provide a convenient way to connect X.25 equipment, but do not provide the specialized features and capabilities of an X.25 Public Data Network (PDN).

PAD—User sessions can be carried across an X.25 network using the Packet Assembly and Disassembly (PAD) protocols defined by the ITU-T Recommendations X.3 and X.29.

QLLC—The router can use the QLLC protocol to carry SNA traffic through an X.25 network.

Connection-Mode Network Service (CMNS)—CMNS is a mechanism that uses OSI-based NSAP addresses to extend local X.25 switching to nonserial media (for example, Ethernet, FDDI, and Token Ring). This implementation provides the X.25 PLP over LLC2 to allow connections over nonserial interfaces. Cisco's CMNS implementation supports services defined in ISO Standards 8208 (packet level) and 8802-2 (frame level).

DDN and BFE X.25—The DDN-specified Standard Service is supported. The DDN X.25 Standard Service is the required protocol for use with DDN Packet-Switched Nodes (PSNs). The Defense Communications Agency (DCA) has certified Cisco Systems' DDN X.25 Standard Service implementation for attachment to the Defense Data Network. Cisco's DDN implementation also includes Blacker Front End and Blacker Emergency Mode operation.

X.25 MIB—Subsets of the specifications in SNMP MIB Extension for X.25 LAPB (RFC 1381) and SNMP MIB Extension for the X.25 Packet Layer (RFC 1382) are supported. The LAPB XID Table X.25 Cleared Circuit Table, and X.25 Call Parameter Table are not implemented. All values are read-only. To use the X.25 MIB, refer to the Cisco Management Information Base (MIB) User Quick Reference publication, or the RFCs.

Our X.25 implementation does not support fast switching.

Reference information about X.25 facility handling by the capabilities listed above is found in the "X.25 Facility Handling" section before the examples at the end of this chapter.

LAPB Configuration Task List

It is possible to use only LAPB as a serial encapsulation method. This can be done when using a private serial line. You must use one of the X.25 packet-level encapsulations when attaching to an X.25 network.

The LAPB standards distinguish between two types of hosts: data terminal equipment (DTE), and data circuit-terminating equipment (DCE). At Level 2, or the data link layer in the OSI model, LAPB allows for orderly and reliable exchange of data between a DTE and a DCE. A router using LAPB encapsulation can act as a DTE or DCE device at the protocol level, which is distinct from the hardware DTE or DCE identity.

Using LAPB under noisy conditions can result in greater throughput than HDLC encapsulation. When LAPB detects a missing frame, the router retransmits the frame instead of waiting for the higher layers to recover the lost information. This behavior is good only if the host timers are relatively slow. In the case of quickly expiring host timers, however, you will discover that LAPB is spending much of its time transmitting host retransmissions. If the line is not noisy, the lower overhead of HDLC encapsulation is more efficient than LAPB. When using long delay satellite links, for example, the lock-step behavior of LAPB makes HDLC encapsulation the better choice.

To configure LAPB, complete the tasks in the following sections. The tasks in the first section are required; the remaining are optional.

Configure a LAPB Datagram Transport

Modify LAPB Protocol Parameters

Configure LAPB Priority and Custom Queuing

Configure Transparent Bridging over Multiprotocol LAPB

Monitor and Maintain LAPB and X.25

Examples of LAPB configurations are given at the end of this chapter.

Configure a LAPB Datagram Transport

Set the appropriate LAPB encapsulation to run datagrams over a serial interface. One end of the link must be DTE and the other must be DCE.

Task
Command
Specify a serial interface.

interface serial type number1

1 This command is documented in the "Interface Commands" chapter in the Router Products Command Reference publication.


To select an encapsulation and the protocol if using a single protocol, or to select the multiple protocol operation, perform one or more of the following tasks in interface configuration mode:

Task
Command

Enable encapsulation of a single protocol on the line using DCE operation.

encapsulation lapb dce [protocol]1

Enable encapsulation of a single protocol on the line using DTE operation.

encapsulation lapb [dte] [protocol]1

Enable use of multiple protocols on the line using DCE operation.

encapsulation lapb dce multi

Enable use of multiple protocols on the line using DTE operation.

encapsulation lapb [dte] multi2 , 3

1 Single protocol LAPB defaults to IP encapsulation.

2 Multi-LAPB does not support SRB bridging or TCP header compression, but does support transparent bridging.

3 Only protocols supported by a single protocol encapsulation are supported by multiprotocol LAPB encapsulation.


For an example of configuring LAPB DCE operation, see the section "Typical LAPB Configuration Example" later in this chapter.

Modify LAPB Protocol Parameters

X.25 Level 2 or LAPB operates at the data link layer of the OSI reference model. LAPB specifies methods for exchanging data (in units called frames), detecting out-of-sequence or missing frames, retransmitting frames, and acknowledging frames. Several protocol parameters can be modified to change LAPB protocol performance on a particular link. Because X.25 operates the PLP on top of the LAPB protocol, these tasks apply to both X.25 links and LAPB links. The parameters and their default values are summarized in .

Table 13-1 LAPB Parameters

Task (LAPB Parameter)
Command
Values or Ranges
Default

Set the modulo.

lapb modulo modulus

8 or 128

8

Set the window size (k).

lapb k window-size

1- (modulo minus 1) frames

7

Set maximum bits per frame (N1).

lapb n1 bits

Bits (must be a multiple of 8)

Based on hardware MTU and protocol overhead

Set count for sending frames (N2).

lapb n2 tries

1-255 tries

20

Set the retransmission timer (T1).

lapb t1 milliseconds

1-64000 milliseconds

3000

Set the hardware outage period.

lapb interface-outage milliseconds

 

0 (disabled)

Set the idle link period (T4).

lapb t4 seconds

 

0 (disabled)


The LAPB modulo determines the operating mode. Modulo 8 (basic mode) is widely available, because it is required for all standard LAPB implementations and is sufficient for most links. Modulo 128 (extended mode) can achieve greater throughput on high-speed links that have a low error rate (some satellite links, for example) by increasing the number of frames that can be transmitted before waiting for acknowledgment (as configured by the LAPB window parameter, k). By its design, LAPB's k parameter can be at most one less than the operating modulo. Modulo 8 links can typically send seven frames before an acknowledgment must be received; modulo 128 links can set k to a value as large as 127. By default, LAPB links use the basic mode with a window of 7.

When connecting to an X.25 network, use the N1 parameter value set by the network administrator. This value is the maximum number of bits in a LAPB frame, which determines the maximum size of an X.25 packet. When using LAPB over leased lines, the N1 parameter should be eight times the hardware maximum transmission unit (MTU) size plus any protocol overhead.

The LAPB N1 range is dynamically calculated by the Cisco IOS software whenever an MTU change, an L2/L3 modulo change, or a compression change occurs on a LAPB interface.


Caution   
The LAPB N1 parameter provides little benefit beyond the interface MTU, and can easily cause link failures if misconfigured. Cisco recommends that this parameter be left at its default value.

The transmit counter (N2) is the number of unsuccessful transmit attempts will be made before the link is declared down.

The retransmission timer (T1) determines how long a transmitted frame can remain unacknowledged before the router polls for an acknowledgment. For X.25 networks, the router retransmission timer setting should match that of the network.

For leased-line circuits, the T1 timer setting is critical because the design of LAPB assumes that a frame has been lost if it is not acknowledged within period T1. The timer setting must be large enough to permit a maximum-sized frame to complete one round trip on the link. If the timer setting is too small, the router will poll before the acknowledgment frame can return, which may result in duplicated frames and severe protocol problems. If the timer setting is too large, the router waits longer than necessary before requesting an acknowledgment, which reduces bandwidth.

The LAPB standards define a timer to detect unsignaled link failures (T4). The T4 timer is reset every time a frame is received from the partner on the link. If the T4 timer expires, a Receiver Ready frame with the Poll bit set is sent to the partner, which is required to respond. If the partner does not respond, the standard polling mechanism is used to determine whether the link is down. The period of T4 must be greater than the period of T1.

Another LAPB timer function allows brief hardware failures, while the protocol is up, without requiring a protocol reset. If a brief hardware outage occurs, the link will continue uninterrupted if the outage is cured before the specified hardware outage period expires.

For an example of configuring the LAPB T1 timer, see the section "Typical LAPB Configuration Example" later in this chapter.

Configure LAPB Priority and Custom Queuing

Cisco priority queuing and custom queuing are available for LAPB to allow administrators to improve a link's responsiveness to a given type of traffic by specifying the priority of that type of traffic for transmission on the link.

Priority queuing is a mechanism that classifies packets based on certain criteria and then assigns the packets to one of four output queues, with high, medium, normal, or low priority. Custom queuing similarly classifies packets and assigns them to one of ten output queues, and controls the percentage of an interface's available bandwidth that is used for a queue.

For example, an administrator can use priority queuing to ensure that all Telnet traffic is processed promptly and that SMTP traffic is sent only when there is no other traffic to send. Priority queuing in this example can starve the non-Telnet traffic; custom queuing can be used instead if the administrator wants to ensure that some traffic of all categories will get a chance to send.

Both priority queuing and custom queuing can be defined, but only one of them can be assigned to a given interface.

To configure priority and custom queuing for LAPB, perform the following tasks:

1 Perform the standard priority and custom queuing tasks except the task of assigning a priority or custom group to the interface, as described in the "Managing the System" chapter.

2 Perform the standard LAPB encapsulation tasks, as specified in the "Configure a LAPB Datagram Transport" section of this chapter.

3 Assign either a priority group or a custom queue to the interface, as described in the "Managing the System" chapter.


Note   The lapb hold-queue command is no longer supported, but the same functionality is provided by the standard queue control command hold-queue size out.


Configure Transparent Bridging over Multiprotocol LAPB

To configure transparent bridging over multiprotocol LAPB, perform the following tasks beginning in global configuration mode:

Task
Command

Specify the serial interface and enter interface configuration mode.

interface serial number1

Assign no IP address to the interface.

no ip address2

Configure multiprotocol LAPB encapsulation.

encapsulation lapb multi

Assign the interface to a bridge group.

bridge-group bridge-group3

Define the type of spanning tree protocol.

bridge bridge-group protocol [ieee | dec]

1 This command is documented in the "Interface Commands" chapter of the Router Products Command Reference publication.

2 This command is documented in the "IP Commands" chapter of the Router Products Command Reference publication.

3 This command is documented in the "Transparent Bridging Commands" chapter of the Router Products Command Reference publication.



Note   This feature requires use of the encapsulation lapb multi command. You cannot use the encapsulation lapb protocol command with a bridge keyword to configure this feature.


For an example of configuring the transparent bridging over multiprotocol LAPB, see the section "Transparent Bridging for Multiprotocol LAPB Encapsulation Example" later in this chapter.

X.25 Configuration Task List

To configure X.25, complete the tasks in one or more of the following sections, depending upon the X.25 application or task required for your network. The interface, datagram transport, and routing tasks are divided into sections based generally on how common the feature is and how often it is used. Those features and parameters that are relatively uncommon are found in the "Additional" sections. LAPB frame parameters can be modified to optimize X.25 operation, as described earlier in this chapter.

Configure an X.25 Interface

Configure Additional X.25 Interface Parameters

Modify LAPB Protocol Parameters

Configure an X.25 Datagram Transport

Configure Additional X.25 Datagram Transport Features

Configure X.25 Routing

Configure Additional X.25 Routing Features

Configure CMNS Routing

Configure DDN or BFE X.25

Monitor and Maintain LAPB and X.25

All of these features can coexist on an X.25 interface.

Default parameters are provided for X.25 operation; however, you can change the settings to meet the needs of your X.25 network or as defined by your X.25 service supplier. We also provide additional configuration settings to optimize your X.25 usage.


Note   If you connect a router to an X.25 network, use the parameters set by the network administrator for the connection; these parameters will typically be those described in the "Configure an X.25 Interface" and "Modify LAPB Protocol Parameters" sections. Also, note that the X.25 Level 2 parameters described earlier in this chapter affect X.25 Level 3 operations.


See the end of this chapter for examples of configuring X.25.

Configure an X.25 Interface

To configure an X.25 interface on the router, perform the tasks in the following sections:

Set the X.25 Mode

Set the Virtual Circuit Ranges

Set the Packet Numbering Modulo

Set the X.121 Address

Set the Default Flow Control Values

These tasks describe the parameters that are essential for correct X.25 behavior. The first task is required. The others might be required or optional, depending on what the router is expected to do and on the X.25 network.

You can also configure other, less common parameters, as specified in the "Configure Additional X.25 Interface Parameters" section.

Set the X.25 Mode

A router using X.25 Level 3 encapsulation can act as a DTE or DCE protocol device (according to the needs of your X.25 service supplier), can use DDN or BFE encapsulation, or can use the IETF standard encapsulation, as specified by RFC 1356.

Because the default serial encapsulation is HDLC, you must explicitly configure an X.25 encapsulation method.

To configure the mode of operation and one of these encapsulation types for a specified interface, perform the following task in interface configuration mode:

Task
Command

Set X.25 mode of operation.

encapsulation x25 [dte | dce] [[ddn | bfe] | [ietf]]]


Typically a public data network will require attachment as a DTE. (This is distinct from the hardware interface DTE/DCE identity.)

The default mode of operation is DTE, and the default encapsulation method is Cisco's pre-IETF method. If either DDN or BFE operation is needed, it must be explicitly configured.

For an example of configuring X.25 DTE operation, see the section "Typical X.25 Configuration Example" later in this chapter.

Set the Virtual Circuit Ranges

The X.25 protocol maintains multiple connections over one physical link between a DTE and a DCE. These connections are called virtual circuits or logical channels (LCs). X.25 can maintain up to 4095 virtual circuits numbered 1 through 4095. An individual virtual circuit is identified by giving its logical channel identifier (LCI) or virtual circuit number (VCN). Many documents use the terms virtual circuit and LC, and VCN, LCN, and LCI interchangeably. Each of these terms refer to the virtual circuit number.

An important part of X.25 operation is the range of virtual circuit numbers. Virtual circuit numbers are broken into four ranges (listed here in numerically increasing order):

1 Permanent virtual circuits (PVCs)

2 Incoming-only circuits

3 Two-way circuits

4 Outgoing-only circuits

The incoming-only, two-way, and outgoing-only ranges define the virtual circuit numbers over which a switched virtual circuit (SVC) can be established by placing an X.25 call, much like a telephone network establishes a switched voice circuit when a call is placed.

The rules about DCE and DTE devices initiating calls are as follows:

Only the DCE device can initiate a call in the incoming-only range.

Only the DTE device can initiate a call in the outgoing-only range.

Both the DCE device and the DTE device can initiate a call in the two-way range.

(The ITU-T Recommendation defines "incoming" and "outgoing" in relation to the DTE/DCE interface role; Cisco's documentation uses the more intuitive sense. Unless the ITU-T sense is explicitly referenced, a call received from the interface is an incoming call and a call sent out the interface is an outgoing call.)

There is no difference in the operation of the SVCs except the restrictions on which a device can initiate a call. These ranges can be used to prevent one side from monopolizing the virtual circuits, which can be useful for X.25 interfaces with a small total number of SVCs available.

Six X.25 parameters define the upper and lower limit of each of the three SVC ranges. A PVC must be assigned a number less than the numbers assigned to the SVC ranges. An SVC range is not allowed to overlap another range.


Note   Because the X.25 protocol requires the DTE and DCE to have identical virtual circuit ranges, if the interface is up, changes to the virtual circuit range limits will be held until the X.25 protocol RESTARTs the packet service.


To configure X.25 virtual circuit ranges, complete the following tasks:

Task
Command
Default

Set the lowest incoming-only circuit number.

x25 lic limit

0

Set the highest incoming-only circuit number.

x25 hic limit

0

Set the lowest two-way circuit number.

x25 ltc limit

1

Set the highest two-way circuit number.

x25 htc limit

1024 (serial)
4095 (CMNS)

Set the lowest outgoing-only circuit number.

x25 loc limit

0

Set the highest outgoing-only circuit number.

x25 hoc limit

0


Each of these parameters can range from 1 to 4095, inclusive. Note that the values for these parameters must be the same on both ends of an X.25 link. For connection to a public data network (PDN), these values must be set to the values assigned by the network. An SVC range is unused if its lower and upper limits are set to 0; other than this use for marking unused ranges, virtual circuit 0 is not available.

For an example of configuring virtual circuit ranges, see the section "Virtual Circuit Ranges Example" later in this chapter.

Set the Packet Numbering Modulo

Our implementation of X.25 supports both modulo 8 and modulo 128 packet sequence numbering; module 8 is the default. To set the packet numbering modulo, perform the following task in interface configuration mode:

Task
Command

Set the packet numbering modulo (the default is 8).

x25 modulo {8 | 128}



Note   Because the X.25 protocol requires the DTE and DCE to have identical modulos, if the interface is up, changes to the modulo will be held until the X.25 protocol restarts the packet service.


The X.25 modulo and the LAPB modulo are distinct, and each serves a different purpose. LAPB modulo 128 (or extended mode) can be used to achieve higher throughput across the DTE/DCE interface; it only affects the local point of attachment. X.25 PLP modulo 128 can be used to achieve higher end-to-end throughput for virtual circuits by allowing more data packets to be in-transit through the X.25 network.

Set the X.121 Address

If your router does not originate or terminate Calls but only participates in X.25 switching, this task is optional. However, if the router is attached to a PDN, you must set the interface X.121 address assigned by the X.25 network service provider. Interfaces that use the DDN or BFE mode will have an X.121 address generated from the interface IP address; for correct DDN or BFE operation, any such X.121 address must not be modified.

To set the X.121 address, perform the following task in interface configuration mode:

Task
Command

Set the X.121 address.

x25 address x.121-address


For an example of configuring the X.25 interface address, see the section "Typical X.25 Configuration Example" later in this chapter.

Set the Default Flow Control Values

Setting correct default flow control parameters (window size and packet size) is essential for correct operation of the link because X.25 is a strongly flow controlled protocol. However, it is easy to overlook this task because many networks use standard default values. Mismatched default flow control values will cause X.25 local procedure errors, evidenced by CLEAR and RESET events.

To configure flow control parameters, complete the tasks in the following sections. These tasks are optional if your X.25 attachment uses the standard default values for maximum packet sizes (128 bytes incoming and outgoing) and window sizes (two packets incoming and outgoing).

Set Default Window Sizes

Set Default Packet Sizes


Note   Because the X.25 protocol requires the DTE and DCE to have identical default maximum packet sizes and default window sizes, changes made to the window and packet sizes when the interface is up will be held until the X.25 protocol RESTARTs the packet service.


Set Default Window Sizes

X.25 networks have a default input and output window size that is defined by the network administrator. You must set the router default input and output window sizes to match those of the network. These defaults are the values that are assumed if an SVC is set up without explicitly negotiating its window sizes. Any PVC also assumes these default values unless different values are configured. To set the default window sizes (default is 2), perform the following tasks in interface configuration mode:

Task
Command

Set the default virtual circuit receive window size.

x25 win packets

Set the default virtual circuit transmit window size.

x25 wout packets


For an example of setting the default window sizes, see the sections "Typical X.25 Configuration Example" and "DDN X.25 Configuration Example" later in this chapter.

Set Default Packet Sizes

X.25 networks have a default maximum input and output packet size (default is 128) that is defined by the network administrator. You must set the router default input and output maximum packet sizes to match those of the network. These defaults are the values that are assumed if an SVC is set up without explicitly negotiating its maximum packet sizes. Any PVC will also assume these default values unless different values are configured. To set the router default input and output maximum packet sizes, perform the following tasks in interface configuration mode:

Task
Command

Set the default input maximum packet size.

x25 ips bytes

Set the default output maximum packet size.

x25 ops bytes


To send a packet larger than the agreed X.25 packet size over an X.25 virtual circuit, a router must break the packet into two or more X.25 packets with the M-bit ("more data" bit) set. The receiving device collects all packets in the M-bit sequence and reassembles them into the original packet.

It is possible to define default packet sizes that cannot be supported by the lower layer (see the LAPB N1 parameter). However, the router will negotiate lower maximum packet sizes for all SVCs so the agreed sizes can be carried. The router will also refuse a PVC configuration if the resulting maximum packet sizes cannot be supported by the lower layer.

For an example of setting the default maximum packet sizes, see the sections "Typical X.25 Configuration Example" and "DDN X.25 Configuration Example" later in this chapter.

Configure Additional X.25 Interface Parameters

Some X.25 applications have less common or special needs. Several X.25 parameters are available to modify the X.25 protocol behavior for these applications.

To configure less common X.25 interface parameters for these special needs, perform the tasks in the following sections, as needed:

Configure the X.25 Level 3 Timers

Configure X.25 Addresses

Establish a Default Virtual Circuit Protocol

Disable Packet-Level Protocol Restarts

Configure the X.25 Level 3 Timers

The X.25 Level 3 retransmission timers determine how long the router will wait for acknowledgment of control packets. You can set these timers independently. Only those timers that apply to the interface are configurable. (A DTE interface does not have the T1x timers, and a DCE interface does not have the T2x timers.)

To set the retransmission timers, perform any of the following tasks in interface configuration mode:

Task
Command

Set DTE T20 Restart Request.

x25 t20 seconds

Set DCE T10 Restart Indication.

x25 t10 seconds

Set DTE T21 Call Request.

x25 t21 seconds

Set DCE T11 Incoming Call.

x25 t11 seconds

Set DTE T22 Reset Request.

x25 t22 seconds

Set DCE T12 Reset Indication.

x25 t12 seconds

Set DTE T23 Clear Request.

x25 t23 seconds

Set DCE T13 Clear Indication.

x25 t13 seconds


For an example of setting the retransmission timers, see the section "DDN X.25 Configuration Example" later in this chapter.

Configure X.25 Addresses

When establishing SVCs, X.25 uses address in the form defined by the ITU-T Recommendation X.121 (or simply an "X.121 address"). An X.121 address has zero to 15 digits. Because of the importance of addressing to call setup, several interface addressing features are available for X.25.

To configure X.25 addresses, perform the tasks in the following sections:

Understand Normal X.25 Addressing

Understand X.25 Subaddresses

Configure an Interface Alias Address

Suppress or Replace the Calling Address

Suppress the Called Address

Understand Normal X.25 Addressing

An X.25 interface's X.121 address is used when it is the source or destination of an X.25 call. The X.25 call setup procedure identifies both the calling (source) and the called (destination) X.121 addresses. When an interface is the source of a call, it encodes the interface X.121 address as the source address.An interface determines that it is the destination of a received call if the destination address matches the interface's address.

Cisco's X.25 can also route X.25 calls, which involves placing and accepting calls, but the router is neither the source nor the destination for these calls. Routing X.25 does not modify the source or destination addresses, thus preserving the addresses specified by the source host. Routed (switched) X.25 simply connects two logical X.25 channels to complete an X.25 virtual circuit. An X.25 virtual circuit, then, is a connection between two hosts (the source host and the destination host) that is switched between zero or more routed X.25 links.

The null X.121 address (the X.121 address that has zero digits) is a special case. The router will assume that it is the destination host for any call it receives that has the null destination address.

Understand X.25 Subaddresses

A subaddress is an X.121 address that matches the digits defined for the interface's X.121 address, but has one or more additional digits after the base address. X.25 will act as the destination host for an incoming PAD call that specifies a destination that is a subaddress of the interface's address; the trailing digits specify which line a PAD connection is requesting. This feature is described in the Protocol Translation Configuration Guide and Command Reference publication. Other calls that use a subaddress can be accepted if the trailing digit or digits are zeros; otherwise the router will not act as the call's destination host.

Configure an Interface Alias Address

You can supply alias X.121 addresses for an interface. This allows the interface to act as the destination host for calls that have a destination address that is neither the interface's address, an allowed subaddress of the interface, nor the null address.

Local processing (for example, IP encapsulation) can be performed only for incoming calls whose destination X.121 address matches the serial interface or alias of the interface.

To configure an alias, perform the following task in global configuration mode:

Task
Command

Supply an alias X.121 address for the interface.

x25 route [#position] x121-address-pattern [cud pattern] alias type number


Suppress or Replace the Calling Address

Some attachments require that no calling (source) address be presented in outgoing calls; this is called suppressing the calling address.

When attached to a Public Data Network, X.25 may need to ensure that outgoing calls only use the assigned X.121 address for the calling (source) address. Routed X.25 will normally use the original source address. Although individual X.25 route configurations can modify the source address, we provide a simple command to force the use of the interface address in all calls sent; this is called replacing the calling address.

To suppress or replace the calling address, perform the appropriate task in interface configuration mode:

Task
Command

Suppress the calling (source) X.121 address in outgoing calls.

x25 suppress-calling-address

Replace the calling (source) X.121 address in switched calls.

x25 use-source-address


Suppress the Called Address

Some attachments require that no called (destination) address be presented in outgoing calls; this is called suppressing the called address.

To suppress the called address, perform the following task in interface configuration mode:

Task
Command

Suppress the called (destination) X.121 address in outgoing calls.

x25 suppress-called-address


Establish a Default Virtual Circuit Protocol

The Call Request packet that sets up a virtual circuit can encode a field called the Call User Data (CUD) field. Typically the first few bytes of Call User Data identify which high-level protocol will be carried by the virtual circuit. The router, when acting as a destination host, normally refuses a call if the Call User Data is absent or the protocol identification isn't recognized. The PAD protocol, however, specifies that unidentified calls be treated as PAD connection requests. Other applications require they be treated as IP encapsulation connection requests, per RFC 877. To configure either PAD or IP encapsulation treatment of unidentified calls, perform the following task in interface configuration mode

Task
Command

Establish a default virtual circuit protocol.

x25 default {ip | pad}


:

Disable Packet-Level Protocol Restarts

By default, a PLP protocol restart is performed when the link level resets (for example, when LAPB reconnects). This behavior can be disabled for those few networks that do not allow it, but disabling this behavior is not recommended because it can cause anomalous packet layer behavior. To disable packet-level protocol restarts, perform the following task in interface configuration mode:

Task
Command

Disable packet-level restarts.

no x25 linkrestart


Modify LAPB Protocol Parameters

X.25 Level 2 or LAPB operates at the data link layer of the OSI reference model. LAPB specifies methods for exchanging data (in units called frames), detecting out-of-sequence or missing frames, retransmitting frames, and acknowledging frames. Several protocol parameters can be modified to change LAPB protocol performance on a particular link. Because X.25 operates the PLP on top of the LAPB protocol, these tasks apply to both X.25 links and LAPB links. The parameters and their default values are summarized in .

Table 13-2 LAPB Parameters

Task (LAPB Parameter)
Command
Values or Ranges
Default

Set the modulo.

lapb modulo modulus

8 or 128

8

Set the window size (k).

lapb k window-size

1- (modulo minus 1) frames

7

Set maximum bits per frame (N1).

lapb n1 bits

1088-32840 bits (must be a multiple of 8)

Based on hardware MTU and protocol overhead

Set count for sending frames (N2).

lapb n2 tries

1-255 tries

20

Set the retransmission timer (T1).

lapb t1 milliseconds

1-64000 milliseconds

3000

Set the hardware outage period.

lapb interface-outage milliseconds

 

0 (disabled)

Set the idle link period (T4).

lapb t4 seconds

 

0 (disabled)


The LAPB modulo determines the operating mode. Modulo 8 (basic mode) is widely available, because it is required for all standard LAPB implementations and is sufficient for most links. Modulo 128 (extended mode) can achieve greater throughput on high-speed links that have a low error rate (some satellite links, for example) by increasing the number of frames that can be transmitted before waiting for acknowledgment (as configured by the LAPB window parameter, k). By its design, LAPB's k parameter can be at most one less than the operating modulo. Modulo 8 links can typically send seven frames before an acknowledgment must be received; modulo 128 links can set k to a value as large as 127. By default, LAPB links use the basic mode with a window of 7.

When connecting to an X.25 network, use the N1 parameter value set by the network administrator. This value is the maximum number of bits in a LAPB frame, which determines the maximum size of an X.25 packet. When using LAPB over leased lines, the N1 parameter should be eight times the hardware maximum transmission unit (MTU) size plus any protocol overhead.

The transmit counter (N2) is the number of unsuccessful transmit attempts will be made before the link is declared down.

The retransmission timer (T1) determines how long a transmitted frame can remain unacknowledged before the router polls for an acknowledgment. For X.25 networks, the router retransmission timer setting should match that of the network.

For leased-line circuits, the T1 timer setting is critical because the design of LAPB assumes that a frame has been lost if it is not acknowledged within period T1. The timer setting must be large enough to permit a maximum-sized frame to complete one round trip on the link. If the timer setting is too small, the router will poll before the acknowledgment frame can return, which may result in duplicated frames and severe protocol problems. If the timer setting is too large, the router waits longer than necessary before requesting an acknowledgment, which reduces bandwidth.

The LAPB standards define a timer to detect unsignaled link failures (T4). The T4 timer is reset every time a frame is received from the partner on the link. If the T4 timer expires, a Receiver Ready frame with the Poll bit set is sent to the partner, which is required to respond. If the partner does not respond, the standard polling mechanism is used to determine whether the link is down. The period of T4 must be greater than the period of T1.

Another LAPB timer function allows brief hardware failures, while the protocol is up, without requiring a protocol reset. If a brief hardware outage occurs, the link will continue uninterrupted if the outage is cured before the specified hardware outage period expires.

For an example of configuring the LAPB T1 timer, see the section "Typical LAPB Configuration Example" later in this chapter.

Configure an X.25 Datagram Transport

X.25 support is most commonly configured as a transport for datagrams across an X.25 network. Datagram transport (or encapsulation) is a cooperative effort between two hosts across an X.25 network. This is configured by establishing a mapping on the encapsulating interface between the far host's protocol address (for example, IP or DECnet) and its X.121 address. The Call identifies the protocol that the virtual circuit will carry (in the Call User Data field), so the terminating host can accept the Call if it is configured to exchange the identified traffic with the source host.

illustrates two routers sending datagrams across an X.25 public data network.

Figure 13-1 Transporting LAN Protocols across an X.25 Public Data Network

Perform the tasks in the following sections, as necessary, to complete the X.25 configuration for your network needs:

Configure Subinterfaces

Map Protocol Addresses to X.121 Addresses

Establish an Encapsulation PVC

Set X.25 TCP Header Compression

Configure X.25 Bridging

The following sections describe how to perform these configuration tasks. Configuring the X.25 parameters and special features, including TCP header compression and X.25 bridging, are described in the section "Configure Additional X.25 Datagram Transport Features" later in this chapter.

Configure Subinterfaces

Subinterfaces are virtual interfaces that can be used to connect several networks to each other through a single physical interface. Subinterfaces are made available on our routers because routing protocols, especially those using the split horizon principle, may need help to determine which hosts need a routing update. The split horizon principle, which allows routing updates to be distributed to other routed interfaces except the interface on which the routing update was received, works well in a LAN environment in which other routers reached by the interface have already received the routing update.

However, in a WAN environment using connection-oriented interfaces (like X.25 and Frame Relay), other routers reached by the same physical interface might not have received the routing update. Rather than forcing network administrators to connect routers by separate physical interfaces, we provide subinterfaces that are treated as separate interfaces. A network administrator can separate hosts into subinterfaces of a physical interface, the X.25 protocol is unaffected, and routing processes see each subinterface as a separate source of routing updates, so all subinterfaces are eligible to receive routing updates.

Point-to-Point and Multipoint Subinterfaces

There are two types of subinterfaces: point-to-point and multipoint. Subinterfaces are implicitly multipoint, unless configured as point-to-point.

A point-to-point subinterface is used to encapsulate one or more protocols between two hosts. An X.25 point-to-point subinterface will accept only a single encapsulation command (such as x25 map or x25 pvc) for a given protocol (though you can use multiple encapsulation commands, one for each protocol, or multiple protocols for one map or PVC), so there can be only one destination for the protocol. All protocol traffic routed to a point-to-point subinterface will be forwarded to the one destination host defined for the protocol. (Because only one destination is defined for the interface, the routing process does not even have to consult the destination address in the datagrams.)

A multipoint subinterface is used to connect one or more hosts for a given protocol. There is no restriction on the number of encapsulation commands that can be configured on a multipoint subinterface. Because the hosts appear on the same subinterface, they are not relying on the router to distribute routing updates between them. When a routing process forwards a datagram to a multipoint subinterface, the X.25 encapsulation process must be able to map the datagram's destination address to a configured encapsulation command. If the routing process cannot find a map for the datagram destination address, the encapsulation will fail.


Note   Because of the complex operations dependent on a subinterface and its type, the router will not allow a subinterface's type to be changed, nor can a subinterface with the same number be established again once it has been deleted. Once a subinterface has been deleted, it takes a reload to remove all internal references. However, the deleted subinterface can be easily reconstituted using a different subinterface number.


Creating and Configuring X.25 Subinterfaces

To create and configure a subinterface, complete the following tasks in interface configuration mode:

Task
Command

Create a point-to-point or multipoint subinterface.

interface serial number.subinterface-number [point-to-point | multipoint]1

Configure an X.25 encapsulation map for the subinterface.

or

Establish an encapsulation PVC for the subinterface.

or do both.

x25 map protocol address [protocol2 address2 [... [protocol9 address9]]] x.121-address [option]

x25 pvc circuit protocol address [protocol2 address2 [...[protocol9 address9]]] x.121-address [option]

1 This command is documented in the "Interface Commands" chapter of the Router Products Command Reference publication.


For an example of configuring an X.25 subinterface and using multiple encapsulation commands for a single destination address, see the "Point-to-Point Subinterface Configuration Example" section later in this chapter. For more general information about configuring subinterfaces, refer to the "Configuring Interfaces" chapter of this manual.


Note   When configuring IP routing over X.25, you might need to make adjustments to accommodate split horizon effects. Refer to the "Configuring IP Routing Protocols" chapter of this manual for details about how the router handles possible split horizon conflicts. By default, split horizon is enabled for X.25 networks.


Map Protocol Addresses to X.121 Addresses

This section describes the X.25 single-protocol and multiprotocol encapsulation options that are available and describes how to map protocol addresses to an X.121 address for a remote host. This section also includes reference information about how protocols are identified.

Protocol Encapsulation for Single-Protocol and Multiprotocol Virtual Circuits

We have long supported encapsulation of a number of datagram protocols across X.25, using a standard method when available, or a proprietary method when necessary. These traditional methods assign a protocol to each virtual circuit. If more than one protocol is carried between the router and a given host, each active protocol will have at least one virtual circuit dedicated to carrying its datagrams.

We also support a newer standard, RFC 1356, which standardizes a method for encapsulating most datagram protocols over X.25. It also specifies how one virtual circuit can carry datagrams from more than one protocol.

A router can be configured to use any of the available encapsulation methods with a particular host.

Once an encapsulation virtual circuit is established using any method, sending and receiving a datagram is a simple process of fragmenting and reassembling the datagram into and from an X.25 complete packet sequence. An X.25 complete packet sequence is one or more X.25 data packets that have the More bit set in all but the last packet. A virtual circuit that can carry multiple protocols includes protocol identification data as well as the protocol data at the start of each complete packet sequence.

Protocol Identification

This section contains background material only.

The various methods and protocols used in X.25 SVC encapsulation are identified in a specific field of the call packet; this field is defined by X.25 to carry Call User Data (CUD). Only PVCs do not use Call User Data to identify its encapsulation (since PVCs do not use the X.25 call setup procedures).

The primary difference between the available Cisco and IETF encapsulation methods is the specific value used to identify a protocol. When any of the methods establishes a virtual circuit for carrying a single protocol, the protocol is identified in the call packet by using the CUD. When a virtual circuit is established to carry more than one protocol (only available using the RFC 1356 methodology), a protocol identification field precedes the datagram encapsulated in the X.25 data packet; every datagram exchanged over that virtual circuit has its protocol identified.

summarizes the values used in the Call User Data field to identify protocols.

Table 13-3 Protocol Identification in the Call User Data Field

Protocol
Cisco Protocol Identifier
IETF RFC 1356
Protocol Identifier

Apollo Domain

0xD4

0x80 (5-byte SNAP encoding1 )

AppleTalk

0xD2

0x80 (5-byte SNAP encoding)

Banyan VINES

0xC0 00 80 C42

0x80 (5-byte SNAP encoding)

Bridging

0xD5

(Not implemented)

ISO CLNS

0x81

0x813

Compressed TCP

0xD8

0x00 (5-byte SNAP encoding)4

DECnet

0xD0

0x80 (5-byte SNAP encoding)

IP

0xCC

0xCC5
or
0x80 (5-byte SNAP encoding)

Novell IPX

0xD3

0x80 (5-byte SNAP encoding)

PAD

0x016

0x016

QLLC

0xC3

(Not available)

XNS

0xD1

0x80 (5-byte SNAP encoding)

Multiprotocol

(Not available)

0x00

1 SNAP encoding is defined from the Assigned Numbers RFC; Cisco's implementation recognizes only the IETF OUI 0x00 00 00 followed by a two-byte Ethernet protocol type.

2 The use of 0xC0 00 80 C4 for Banyan VINES is defined by Banyan.

3 The use of 0x81 for CLNS is compatible with ISO/IEC 8473-3:1994.

4 Compressed TCP traffic has two types of datagrams, so IETF encapsulation requires a multiprotocol virtual circuit.

5 The use of 0xCC for IP is backwards-compatible with RFC 877.

6 The use of 0x01 for PAD is defined by ITU-T Recommendation X.29.


Once a multiprotocol virtual circuit has been established, datagrams on the virtual circuit have protocol identification data before the actual protocol data; the protocol identification values are the same used by RFC 1356 in the CUD field for an individual protocol.


Note   IP datagrams can be identified using a 1-byte identification (0xCC) or a 6-byte identification (0x80 followed by the 5-byte SNAP encoding). The 1-byte encoding is used by default, although the SNAP encoding can be configured.


Map Datagram Addresses to X.25 Hosts

Encapsulation is a cooperative process between the router and another X.25 host. Since X.25 hosts are reached using an X.121 address (an X.121 address has between 0 and 15 decimal digits), the router must have a means to map a host's protocols and addresses to its X.121 address.

Each encapsulating X.25 interface should be configured with the relevant datagram parameters. For example, an interface that encapsulates IP will typically have an IP address.

A router set up for DDN or BFE service uses a dynamic mapping technique to convert between IP and X.121 addresses. These techniques have been designed specifically for attachment to the DDN network and to Blacker encryption equipment. Their design, restrictions, and operation make them work well for these specific applications, but not for other networks.

You should also establish the X.121 address of an encapsulating X.25 interface using the x25 address interface configuration command. This is the address that encapsulation calls should be directed to. It will also be used as the source X.121 address when originating an encapsulation call, which is how the destination host will be able to map the source host and protocol to the protocol address; thus an encapsulation virtual circuit must be a mapped at both the source and destination host interfaces. A DDN or BFE interface will have an X.121 address generated from the interface IP address, which for proper operation, should not be modified.

For each X.25 interface, you must explicitly map each destination host's protocols and addresses to its X.121 address. If needed and the destination host has the capability, one host map can be configured to support several protocols; alternatively, you can define one map for each supported protocol.

To establish a map, perform the following task in interface configuration mode:

Task
Command

Map one or more host protocol addresses to the host's X.121 address.

x25 map protocol address [protocol2 address2[...[protocol9 address9]]] x.121-address [option]


As an example, if you are encapsulating IP over a given X.25 interface, you should define an IP address for the interface and, for each of the desired destination hosts, map the host's IP address to its X.121 address.


Note   You can map an X.121 address to as many as nine protocol addresses, but each protocol can be mapped only once in the command line.


An individual host map can use the given keyword to specify the following protocols:

apollo—Apollo Domain

appletalk—AppleTalk

bridge—Bridging

clns—OSI Connectionless Network Service

compressedtcp—TCP header compression

decnet—DECnet

ip—IP

ipx—Novell IPX

pad—Packet Assembler/Disassembler

qllc—IBM's QLLC

vines—Banyan VINES

xns—XNS

Each mapped protocol takes a datagram address except bridging (all bridged datagrams are sent to all bridge maps on an interface) and CLNS (which uses the mapped X.121 address as the SNPA, which is referenced by a clns neighbor command); the configured datagram protocol(s) and their relevant address are mapped to the destination host's X.121 address. All protocols that are supported for RFC 1356 operation can be specified in a single map (bridging and QLLC are not supported for RFC 1356 encapsulation). If IP and TCP header compression are both specified, the same IP address must be given for both protocols.

When setting up the address map, you can include options, such as enabling broadcasts and specifying the number of virtual circuits allowed, and defining various user facility settings.


Note   Multiprotocol maps, especially those configured to carry broadcast traffic, can result in significantly larger traffic loads, requiring a larger hold queue, larger window sizes, or multiple virtual circuits.


For specific information about how to establish a protocol to run over X.25, refer to the appropriate protocol chapters in this publication or in the Router Products Command Reference publication.

The configuration for the Open Shortest Path First (OSPF) protocol can be greatly simplified by adding the optional broadcast keyword. See the x25 map command description in the "X.25 and LAPB Commands" chapter of the Router Products Command Reference publication for more information.

Configure PAD Access

By default, packet assembler/disassembler (PAD) connection attempts are processed for session creation or protocol translation (subject to the configuration of those functions) from all hosts. To restrict PAD connections to only statically mapped X.25 hosts, perform the following tasks in interface configuration mode:

Task
Command

Restrict PAD access.

x25 pad-access

Configure a host for PAD access.

x25 map pad x121-address [option]


You can configure outgoing PAD access using the optional features of the x25 map pad command without restricting incoming PAD connections to the configured hosts.

Establish an Encapsulation PVC

Permanent virtual circuits (PVCs) are the X.25 equivalent of leased lines; they are never disconnected. You no longer need to configure an address map before defining a PVC; an encapsulation PVC implicitly defines a map.

To establish a PVC, perform the following task in interface configuration mode: