X.25 Packet Switched networks allow remote devices to communicate with each other over private digital links without the expense of individual leased lines. Packet Switching is a technique whereby the network routes individual packets of HDLC data between different destinations based on addressing within each packet. An X.25 network consists of a network of interconnected nodes to which user equipment can connect. The user end of the network is known as Data Terminal Equipment (DTE) and the carrier’s equipment is Data Circuit-terminating Equipment (DCE) . X.25 routes packets across the network from DTE to DTE.


The protocol known as X.25 was developed by the organization now known as the International Telecommunications Union (ITU) and encompasses the first three layers of the OSI 7-layered architecture as defined by the International Organization for Standardization (ISO) as follows:

  • Layer 1: The Physical Layer is concerned with electrical or signaling. It includes several electrical standards including V.35 , RS232 and X.21.
  • Layer 2: The Data Link Layer, which is an implementation of the ISO HDLC standard called Link Access Procedure Balanced (LAPB) and provides an error free link between any two physically connected nodes. The Data Link Layer is responsible for error-free communication between any two nodes. Thus errors are checked and corrected for each hop all the way across the network.It is this feature that makes X.25 so robust, and so suitable for noisy, error-prone links. The downside is the latency forced on the system, because each frame has to be received in its entirety and checked before it can be forwarded to the next node. It is not unusual to have latencies of over half a second across X.25 networks. The larger the packet size and the lower the line speed the longer the latency period. Thus X.25 packets tend to be short – 128 0r 256 bytes as opposed to 1500 bytes or more for more modern protocols.Modern protocols like Frame Relay or ATM take advantage of the low error rates of digital lines to avoid the latency problems of hop-to-hop error correction. They have no error correction and only rudimentary flow control, relying on higher-level protocols like TCP/IP to provide end-to-end error correction and flow control.
  • Layer 3: The Network Layer that governs the end-to-end communications between the different DTE devices. Layer 3 is concerned with connection set-up and teardown and flow control between the DTE devices, as well as network routing functions and the multiplexing of simultaneous logical connections over a single physical connection.

X.25 permits a DTE user on an X.25 network to communicate with a number of remote DTE’s simultaneously. Connections occur on logical channels of two types:

  • Switched virtual circuits (SVC‘s) – SVC’s are very much like telephone calls; a connection is established, data are transferred and then the connection is released. Each DTE on the network is given a unique DTE address which can be used much like a telephone number.
  • Permanent virtual circuits (PVC‘s) – a PVC is similar to a leased line in that the connection is always present. The logical connection is established permanently by the Packet Switched Network administration. Therefore, data may always be sent, without any call setup.

To establish a connection on an SVC, the calling DTE sends a Call Request Packet, which includes the address of the remote DTE to be contacted.

The destination DTE decides whether or not to accept the call (the Call Request packet includes the sender’s DTE address, as well as other information that the called DTE can use to decide whether or not to accept the call). A call is accepted by issuing a Call Accepted packet, or cleared by issuing a Clear Request packet.

Once the originating DTE receives the Call Accepted packet, the virtual circuit is established and data transfer may take place. When either DTE wishes to terminate the call, a Clear Request packet is sent to the remote DTE, which responds with a Clear Confirmation packet.

The destination for each packet is identified by means of the Logical Channel Identifier (LCI) or Logical Channel Number (LCN). This allows the PSN to route the each packet to its intended DTE.

X.25 relies on the underlying robustness of HDLC LAPB to get data from node to node through the X.25 network. An X.25 packet makes up the data field of an HDLC frame. Additional flow control and windowing are provided for each Logical Channel at the X.25 level.


Uses of X.25

X.25 is a mechanism for transferring transparent data. Standards exist for encapsulation of higher-level data such as TCP/IP or SNA traffic over X.25. One of the largest uses of X.25 is the transfer of asynchronous data streams such as those produced by simple terminals like credit card readers. These devices connect to a Packet Assembler/Disassembler (PAD) that organizes the asynch data streams into X.25 packets for transmission across the network. PAD design is based on ITU standards X.28, X.29 and X.3.

By the year 2000, use of X.25 for general networking such as SNA support, ATM connectivity and data transfer was in decline, replaced by TCP/IP based systems. X.25 remains important in Point-of-Sale credit card and debit card authorization. However, there is an enormous investment in X.25 infrastructure throughout the world, and in some regions, it continues to expand. Thus X.25 will remain important for years to come.

Characteristics of X.25

Maximum packet sizes vary from 64 bytes to 4096 bytes, with 128 bytes being a default on most networks. Both maximum packet size and packet level windowing may be negotiated between DTE’s on call set up.

X.25 is optimized for what today would be considered quite low speed lines: 100kbps and below. At line speeds above 100 kbps the effects of latency, small packet sizes and small window sizes are such that the bandwidth cannot be efficiently utilized.

X.25 has been the basis of the development of other packet switched protocols like TCP/IP and ATM. These protocols also have the ability to handle one-to-many connections and the ability to match DTE’s having different line speeds, both characteristics of X.25.

X.25 has been around since the mid 1970’s and so is pretty well debugged and stable. There are literally no data errors on modern X.25 networks.

The major technical drawback of X.25 today is the inherent delay caused by the store-and-forward mechanism, which in turn restricts the useful data transmission rate. Frame Relay and ATM, for instance, have no inter-node error or flow control, so end-to-end latency is minimal.

Sangoma support

Sangoma supports user level X.25 though our Application Programmer Interfaces (APIs) and developer toolkits. Clients use these to build X.25 into their own products and projects. Typical uses are credit card switching, banking machine connections and telephony control. The toolkits are available under Linux.