|
|
This feature module describes the X.25 Switch Local Acknowledgment feature. It includes information on the benefits of the new feature, supported platforms, related documents, and so forth.
This document contains the following sections:
This feature permits X.25 local acknowledgment on any router and allows switching between devices with unmatched window and data packet sizes---asymmetrical flow control.
With this feature, Cisco IOS software now supports local acknowledgment in addition to end-to-end acknowledgment, asymmetrical window and packet sizes, and further enhancements to flow control parameter negotiation.
Prior to this feature, end-to-end acknowledgment was the only option. This condition resulted in lower overall throughput and restrictive performance because an endpoint could only have a maximum number of its packets in transit at any given time. It could not send more packets until all had been acknowledged by the transmission and receipt of the delivery confirming packet containing the D-bit.
Window size dictates the number of packets that can be sent before the window closes. At this point, no more packets can be sent until a local acknowledgment is transmitted by the router. Packet size is the maximum size of packets a router can send or receive.
The X.25 Switch Local Acknowledgment feature applies to all switched services such as X.25, CMNS, XOT, and Annex G, and may be used wherever X.25 routing is configured. The main components of this feature are local acknowledgment, flow control parameter negotiation, and asymmetrical windows and packets.
Local acknowledgment means that the Cisco router can send acknowledgments for packets that do not have the D-bit set, before receiving an acknowledgment from the interface to which the packet was forwarded. This results in higher throughput of packets as acknowledgment is transmitted between local hops much faster and more efficiently than between end-to-end hops.
Figure 1 shows the Cisco router receiving packets from DTE A destined for DTE B. Without local acknowledgment enabled, the router forwards packets to the X.25 network and then forwards acknowledgments from the network back to DTE A. With local acknowledgment enabled, the router can acknowledge packets received from DTE A before it has received acknowledgments from the network for the forwarded packets. In this illustration, the X.25 network may also generate local acknowledgments.

Flow control is an X.25 optional user facility. Using the new x25 subscribe flow-control command, it permits flow control parameter negotiation of packet sizes and window sizes. This command can be altered to one of three states---default behavior (no x25 subscribe flow-control), facilities always included, or facilities never included (flow control parameter negotiation is not enabled). By default, these flow control parameter negotiation facilities are included in call setup (outgoing) packets only when their values differ from the default values.
When flow control parameter negotiation is enabled, the two new X.25 commands---x25 subscribe windowsize and x25 subscribe packetsize---allow you to configure flow control restrictions by specifying window size and packet size ranges for permitted and target values. A value that cannot be negotiated into the permitted range is treated as illegal, causing the call to fail. The router first attempts values within the target range, but allows values outside the target range to be considered as long as the range complies with procedures defined in the ITU-T Recommendation X.25. With this feature, the Cisco router allows different flow control value configurations and acceptable window and packet size formats for both DTE devices.
Flow control parameter negotiation was available in the Cisco router prior to this feature, but devices without it were unable to negotiate consistent flow control values across the link, and so had to be configured with compatible values.
Asymmetrical window and packet sizes are now supported, such as in the following examples on serial interfaces 0 and 1:
For data flow from a channel with a smaller packet size than its outbound channel, the switch may combine data packets, and for a channel with a larger packet size than its outbound channel, the switch will fragment the packets.
Figure 2 shows asymmetrical configuration of the Cisco router (reference: ITU-T Recommendation X.25, Table 4-1/X.25). DTE A (window size 3; packet size 128) and DTE B (window size 5; packet size 256) are able to communicate despite differing window and packet sizes.
The ability to disable flow control parameter negotiation provides compatibility with equipment that does not support flow control parameter negotiation. Similarly, forcing flow control parameter negotiation provides compatibility with devices that require the flow control parameter negotiation facilities to be present in all calls.
Cisco routers can now support asymmetrical windows and packet sizes.
Increased overall connectivity throughput may be achieved because the window and packet acknowledgment is local to the sending and receiving DTE devices rather than end-to-end.
Devices can switch between channels that have unmatched window sizes and data packet sizes.
For descriptions of supported MIBs and how to use MIBs, see the Cisco MIB web site on CCO at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.
See the following sections for configuration tasks for the X.25 Switch Local Acknowledgment feature. Each task in the list indicates if the task is optional or required.
To configure the X.25 Switch Local Acknowledgment feature, you must enable the x25 routing acknowledge local command.
| Command | Purpose |
|---|---|
Router(config)#x25 routing acknowledge local |
To control packet transmission flow values on the interface, use one or more of the flow control commands---x25 subscribe windowsize, x25 subscribe packetsize, or x25 subscribe flow-control.
| Command | Purpose |
|---|---|
Router(config-if)#x25 subscribe flow-control {always|never} | Determines flow control parameter negotiation behavior. |
Router(config-if)#x25 subscribe windowsize {permit wmin wmax | target wmin wmax} | Sets permitted and target ranges for window size negotiation. |
Router(config-if)#x25 subscribe packetsize {permit pmin pmax | target pmin pmax} | Sets permitted and target ranges for packet size negotiation. |
The flow control subscription commands may be applied to an X.25 interface, to an X.25 profile, or to a LAN interface on which the cmns enable command has been configured. For XOT, the flow control parameter negotiation facilities are always included (the equivalent of x25 subscribe flow-control always).
To verify the local acknowledgment setting of the X.25 Switch Local Acknowledgment feature, use the show running-configuration command in EXEC mode. In the following example, X.25 encapsulation has been set on serial interface 1/4 with acknowledgment set to "local":
Router#show running-configuration x25 routing acknowledge local
You can also use the show protocol command in EXEC mode to verify local acknowledgment.
Router#show protocol Global values: Internet Protocol routing is enabled X.25 routing is enabled, acknowledgements have local significance only
To verify the flow control settings of the X.25 Switch Local Acknowledgment feature, use the show running-configuration command in EXEC mode. In the following example, X.25 encapsulation has been set on serial interface 1/4 with flow control negotiation set to "always." Permitted packet sizes are set at 64 (minimum) and 1024 (maximum), with target packet sizes set at 128 (minimum) and 1024 (maximum). Permitted window sizes are set at 1 (minimum) and 7 (maximum), with target window sizes set at 2 (minimum) and 4 (maximum):
Router#show running-configuration x25 subscribe flow-control always x25 subscribe packetsize permit 64 1024 target 128 1024 x25 subscribe windowsize permit 1 7 target 2 4
This section provides the following configuration examples:
The following example shows X.25 local acknowledgment being configured on the router.
Router(config)#x25 routing acknowledge local
The following example shows X.25 routing with local acknowledgment being enabled globally and flow control negotiation being enabled on serial interface 1/4. Window size ranges are set at a permitted rate of 1 (minimum) and 7 (maximum) and target rate of 2 (minimum) and 4 (maximum). Packet size ranges are set at a permitted rate of 64 (minimum) and 1024 (maximum), and target rate of 128 (minimum) and 1024 (maximum).
Router(config)#x25 routing acknowledge local Router(config)#interface serial 1/4 Router(config-if)#encapsulation x25 dte Router(config-if)#x25 subscribe flow-control always Router(config-if)#x25 subscribe windowsize permit 1 7 target 2 4 Router(config-if)#x25 subscribe packetsize permit 64 1024 target 128 1024
You do not have to configure window and packet size ranges, because their default settings are appropriate for most configurations. The following example shows X.25 routing with local acknowledgment being enabled globally and flow control negotiation being enabled on serial interface 1/4 with default window and packet size settings:
Router(config)#interface serial 1/4 Router(config-if)#encapsulation x25 dte Router(config-if)#x25 subscribe flow-control always
The following example shows X.25 routing with local acknowledgment being enabled globally and flow control negotiation disabled on serial interface 1/4. Because flow control parameter negotiation has been disabled, it is inappropriate to set the window and packet size ranges.
Router(config)#x25 routing acknowledge local Router(config)#interface serial 1/4 Router(config-if)#encapsulation x25 dte Router(config-if)#x25 subscribe flow-control never
This section documents new or modified commands. All other commands used with this feature are documented in the Cisco IOS Release 12.0 command reference publications.
name | X.25 profile name that you assign. |
dce | Indicates a DCE interface. |
dte | Indicates a DTE interface. |
dxe | Indicates a DXE interface. |
dte
Global configuration
| Release | Modification |
|---|---|
12.0(3)T | This command was introduced. |
12.0(7)T | The x25 subscribe flow-control command was added to the X.25 profile configuration mode X.25 options. |
You can enable many X.25 commands in X.25 profile configuration mode. Table 1 lists the following X.25 commands in X.25 profile configuration mode which you may use to create your X.25 profile:
| Command | Description |
|---|---|
Accepts all reverse charged calls. | |
Sets interface X.121 address. | |
Defines an alias address pattern. | |
Enables AODI (Always On/Direct ISDN) Service. | |
Sets protocol for calls with unknown Call User Data. | |
Sets explicit facilities for originated calls. | |
Sets highest incoming channel. | |
Sets highest outgoing channel. | |
Sets limit on packets queued per circuit. | |
Sets time to prevent calls to a failed destination. | |
Sets highest two-way channel. | |
Sets inactivity time before clearing SVC. | |
Sets lowest incoming channel. | |
Restarts when LAPB resets. | |
Sets lowest outgoing channel. | |
Sets lowest two-way channel. | |
Maps protocol addresses to X.121 address. | |
Sets operating standard. | |
Allows non-zero DTE cause codes. | |
Sets maximum VCs simultaneously open to one host per protocol. | |
Sets default maximum output packet size. | |
Controls flow control parameter negotiation facilities in call setup packets. | |
Omits destination address in outgoing calls. | |
Omits source address in outgoing calls. | |
Sets DCE Restart Request retransmission timer. | |
Sets DCE Call Request retransmission timer. | |
Sets DCE Reset Request retransmission timer. | |
Sets DCE Clear Request retransmission timer. | |
Sets packet count acknowledgment threshold. | |
Uses local source address for forwarded calls. | |
Sets default input window (maximum unacknowledged packets). | |
Sets default output window (maximum unacknowledged packets). |
Table 2 lists the following LAPB commands in X.25 configuration mode which you may use to create your X.25 profile:
| Command | Description |
|---|---|
N2 | Maximum number of attempts to transmit a frame. |
T1 | Retransmission timer. |
T2 | Explicit acknowledge deferral timer. |
T4 | Keepalive timer. |
interface-outage | Interface outage deadband (partial T3). |
k | Maximum number of outstanding frames (window size). |
modulo | Set frame numbering modulus. |
The following example shows the NetworkNodeA profile being set as a DCE interface, and with x25 htc, x25 idle, x25 accept-reverse, and x25 modulo commands enabled:
Router(config)# x25 profile NetworkNodeA dce Router(config-x25)# x25 htc 128 Router(config-x25)# x25 idle 5 Router(config-x25)# x25 accept-reverse Router(config-x25)# x25 modulo 128
| Command | Description |
show x25 profile | Displays information about configured X.25 profiles. |
To enable X.25 switching or tunneling, use the x25 routing global configuration command. To disable the forwarding of X.25 calls, use the no form of this command.
x25 routing [acknowledge local | acknowledge end-to-end] [tcp-use-if-defs]
acknowledge local | Sets local acknowledgment on the router. |
acknowledge end-to-end | Sets end-to-end acknowledgment on the router. (Default acknowledge setting.) |
tcp-use-if-defs | (Optional) Accepts calls received over TCP. |
None
Global configuration
| Release | Modification |
|---|---|
10.0 | This command was introduced. |
12.0(7)T | The acknowledge local and acknowledge end-to-end keywords were added. |
The x25 routing command enables X.25 switching between the X.25 services (X.25, Connection-Mode Network Service (CMNS) and X.25 over TCP (XOT), and Annex G). X.25 calls will not be forwarded until this command is issued.
Keywords acknowledge local and acknowledge end-to-end are optional, with acknowledge end-to-end being the default. To confirm what type of acknowledgment has been set, use the show protocol command.
The tcp-use-if-defs keyword may be needed for receiving XOT calls from routers using older software versions. Normally, calls received over a TCP connection (remote routing reception) will have the flow control parameters (window sizes and maximum packet sizes) indicated, because proper operation of routed X.25 requires that these values match at both ends of the connection.
Some previous versions of Cisco IOS software, however, do not ensure that these values are present in all calls. In this case, the Cisco IOS software normally forces universally acceptable flow control values (window sizes of 2 and maximum packet sizes of 128) on the connection. Because some equipment disallows modification of the flow control values in the call confirm, the tcp-use-if-defs keyword causes the router to use the default flow control values of the outgoing interface and indicate the resulting values in the call confirm. This modified behavior may allow easier migration to newer versions of the Cisco IOS software.
The following example enables X.25 routing:
x25 routing
The following example enables X.25 routing with local acknowledgment:
x25 routing acknowledge local
To control flow control parameter negotiation facilities in call setup packets, use the x25 subscribe flow-control interface configuration command. This command has three states---default behavior (no x25 subscribe flow-control), facilities always included, or facilities never included (flow control parameter negotiation is not enabled). To have flow control parameter negotiation facilities included in call setup (outgoing) packets only when their values differ from the default values, use the no form of this command.
x25 subscribe flow-control {always | never}
always | Flow control parameter negotiation facilities are enabled and the flow control parameters are always included with call setup packets and are optional on inbound packets. |
never | Flow control parameter negotiation facilities are disabled and the flow control parameters are never included with call setup packets, and are not permitted on inbound packets. Negotiation of flow control parameters is disabled. |
Flow control parameter negotiation facilities are included only when the parameter values differ from the default values.
Interface or X.25 profile configurations
| Release | Modification |
|---|---|
12.0(7)T | This command was introduced. |
This command controls inclusion of the X.25 flow control parameter negotiation facilities in call setup packets. By default, these facilities are included in call setup packets only when their values differ from the default values.
Configuring the no x25 subscribe flow-control command restores the default behavior. This only includes facilities outbound call setup packets when the requested values do not match the interface defaults.
The following example shows flow control parameter negotiation disabled on serial interface 1/4:
Router(config)#interface serial 1/4 Router(config-if)#x25 subscribe flow-control never
| Command | Description |
Sets permitted and target ranges for packet size during flow control negotiation. | |
Sets permitted and target ranges for window size during flow control negotiation. | |
Enables X.25 switching or tunneling. | |
Configures an X.25 profile without allocating any hardware specific information. |
To set permitted and target ranges for packet size during flow control negotiation, use the x25 subscribe packetsize interface configuration command. To revert to the default packet size ranges, use the no form of this command.
x25 subscribe packetsize {permit pmin pmax | target pmin pmax}
permit | Permitted packet-size range identifier. |
pmin | Minimum setting for packet size range (16 to 4096 by a power of two). |
pmax | Maximum setting for packet size range (16 to 4096 by a power of two). |
target | Target packet-size range identifier. |
None
Interface configurations
| Release | Modification |
|---|---|
12.0(7)T | This command was introduced. |
The x25 subscribe packetsize command lets you specify the range of permitted and target values for packet size. These are called flow control parameter negotiation facilities. You can specify the permitted minimum and maximum packet sizes and target values for packet transmission (16 to 4096 as a power of two). Setting these values outside the permitted range will result in connection failure. The router attempts to negotiate values within the target range, but will only allow values outside the target range to be negotiated as long as the negotiation complies with the procedure defined in X.25 recommendations.
This command should be configured separately on both the data terminal equipment (DTE) and data circuit-terminating equipment (DCE), so that the permit range will be compatible and calls will be able to pass through the network. The target range is less critical. It only needs to be set on the Cisco router conducting the switching.
The effective ranges will be further constrained by other configuration options including the selection of normal (modulo 8) or extended (modulo 128) sequence numbers, the maximum packet size supported by the interface, and the x25 subscribe flow-control command.
The following example shows X.25 local acknowledgment being configured on serial interface 1/4, with packet size ranges being set at a permitted rate of 64 (minimum) and 1024 (maximum) and target rate of 128 (minimum) and 1024 (maximum):
Router(config)#x25 routing acknowledge local Router(config)#interface serial 1/4 Router(config-if)#encapsulation x25 dte Router(config-if)#x25 subscribe packetsize permit 64 1024 target 128 1024
| Command | Description |
Sets permitted and target ranges for window size during flow control negotiation. | |
Controls flow control parameter negotiation facilities in call setup packets. | |
Enables X.25 switching or tunneling. |
To set permitted and target ranges for window size during flow control negotiation, use the x25 subscribe windowsize interface configuration command. To revert to the default window size ranges, use the no form of this command.
x25 subscribe windowsize {permit wmin wmax | target wmin wmax}
permit | Permitted window size range identifier. |
wmin | Minimum setting for window size range (1 to 127). |
wmax | Maximum setting for window size range (1 to 127). |
target | Target window-size range identifier. |
None
Interface configurations
| Release | Modification |
|---|---|
12.0(7)T | This command was introduced. |
The x25 subscribe windowsize command lets you specify the range of permitted and target values for window size. These are called flow control values. You can specify the permitted minimum and maximum window size permitted and target values for packet transmission (1 to 127) at one time. Setting these values outside the permitted range may result in connection failure. The router attempts to negotiate values within the target range, but will only allow values outside the target range to be negotiated as long as the negotiation complies with the procedure defined in X.25 recommendations.
The effective ranges will be further constrained by other configuration options including the selection of normal (modulo 8) or extended (modulo 128) sequence numbers, the maximum window size supported by the interface, and the x25 subscribe flow-control command.
The following example shows X.25 local acknowledgment being configured on serial interface 1/4, with window size ranges being set at a permitted rate of 1 (minimum) and 7 (maximum) and target rate of 2 (minimum) and 4 (maximum):
Router(config)#x25 routing acknowledge local Router(config)#interface serial 1/4 Router(config-if)#encapsulation x25 dte Router(config-if)#x25 subscribe windowsize permit 1 7 target 2 4
| Command | Description |
Sets permitted and target ranges for packet size during flow control negotiation. | |
Controls flow control parameter negotiation facilities in call setup packets. | |
Enables X.25 switching or tunneling. |
call request---An X.25 packet sent from a DTE (subscriber) to its DCE (network attachment) that initiates a connection to a destination DTE.
CMNS---Connection-Mode Network Service. Extends local X.25 switching to a variety of media (Ethernet, FDDI, Token Ring).
D-bit---An X.25 data packet flag used to request end-to-end acknowledgment for the packet.
DCE---data circuit-terminating equipment. Devices and connections of a communications network that comprise the network end of the user-to-network interface (for example, modem). The DCE provides a physical connection to the network, forwards traffic, and provides a clocking signal used to synchronize data transmission between DCE and DTE devices.
DTE---data terminal equipment. A device (for example, computer, protocol translator, or multiplexer) at the user end of a user-network interface that serves as a data source, destination, or both. The DTE connects to a data network through a DCE device (for example, modem) and typically uses clocking signals generated by the DCE. A network identifies each attached subscriber (DTE) by assigning an X.121 address.
end-to-end acknowledgment---This occurs when a switch only acknowledges receipt of a data packet after receiving a corresponding acknowledgment from the next hop.
local acknowledgment---This occurs when a switch acknowledges a received data packet before it has received acknowledgment of the data from the next hop.
incoming call---An X.25 packet sent from a DCE (network attachment) to its DTE (subscriber) that presents a connection requested by the source DTE.
XOT---X.25 over TCP.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Fri Dec 10 19:10:42 PST 1999
Copyright 1989-1999©Cisco Systems Inc.