A Made IT project


http://www.made-it.com
info@made-it.com

X.25

Overview
In 1976 the CCITT adopted the X.25 standard labeled "Interface Between Data Terminal Equipment (DTE) and Data Circuit Terminating Equipment (DCE) for Terminals Operating in the Packet Mode on Public Data networks". X.25 is a peer-to-peer network and is only an interface protocol to packet-switched public networks. Packet-switching techniques are a flexible alternative that provides statistical multiplexing (the ability to have more than one logical channel over one physical channel) and any-to-any connectivity. The DTE interfaces with an X.25 service provider (DCE). Packet switches within the X.25 network are refered to as Data Switching Equipment (DSE).

X.25 specifies standards for the bottom three layers of the OSI-model.

  1. The physical layer requires the use of interface recommendations X.20 (asynchronous) and X.21 (synchronous).
  2. The link layer is split in two separate procedures based on ISO 3309 High Level Data Link Control (HDLC):
    1. Link Acces Procedure (LAP)
      This is an original X.25 provision consisting of the HDLC "asynchronous response mode".
    2. Link Acces Procedure Balanced (LAPB)
      This one was added later and is similar to the HDLC "asynchronous balanced mode". The LAPB makes it possible for communicating parties to operate in an autonomous, balanced mode in which neither is considered a master or slave.
  3. The network layer is called the packet level in X.25. This packet level accomplishes the flow of control information and data across the network.
The Frame Format
Layer 2Layer 3Layer 2
FlagAddressControlInformationFrame Check SequenceFlag

The frame format of X.25 is according to the ISO 3309 standard. The FLAG field is used to identify the beginning and ending of a frame. The ADDRESS field designates the binary address of the receiving station. The CONTROL field indicates the type of frame, such as:

  1. Unnumbered frames, consist of command information to start or stop the communication link. They do not contain data.
  2. Supervisory frames, contain routine operational commands, including the response to previously received frames. They do not contain data.
  3. Information frames, contain data packets, and may also contain response information
The INFORMATION fields contain the actual data and a data header, or is empty
The data header is 24 bits and split up in 4 parts:
4 bits General Format Identifier (GFI)
4 bits Logical Channel Group Number (LGN)
8 bits Logical Channel Number (LCN)
8 bits Packet Type ID (PTI) or P(R)|M|P(S)|0 (Packet sequence numbers used when a packet contains user data)

The FRAME CHECK SEQUENCE is the CRC (Cyclic Redundancy Check) code.

The Transmission

The transmission is started in a virtual circuit operation with a call request. The initiating DTE asks the network for a virtual circuit with the destination DTE. The packet used for this is called a Call Request packet. The Call Request packet contains the destination address.The address (along with the originating DTE's identification) is used by the network for the duration of the call.
The network responds with a "connect" message or with a message saying that the circuit can't be established and usually why. Now the actual data transfer can begin, on a routine or interrupt basis, and according to a set of "flow control" constraints imposed by the network. All these activities are handled by specific packet types. X.25 defines more than 30 packet types for various functions.

The Layer Discriptions

The Physical Layer:
This one is not specified in the CCITT recommendation, but X.25 is traditionally used on leased lines, although there is a dial-up function which uses X.121 as an addressing scheme. This addressing scheme allows up to 14 digits arranged in a hierarchy of zones and domains.
The connection is synchronous with speeds of 2.4, 4.8, 9.6, 56 and 64 kbps. There is also a 2 Mbps version.
Common RS-232/EIA interfaces can be used, but more usually you'll find X.21. For asynchronous connections you'll need a Packet Assembler/Disassembler (PAD).

The Data Link Layer:
The data link layer is responsible for the packet format, which is described above. And will be discussed here in more detail.
-The first and last field of the packet is the FLAG (X'7E'). -The ADDRESS field has two possible values X'01' and X'03' which are also known as A and B. Which are used to indicate 'originate' and 'answer'.

 DTEDCE
SendingX'01'X'03'
RespondingX'01'X'03'

-The CONTROL field is initialized with a Set Asynchronous Balanced Mode (SABM). There is also an extended operation (SABME) that provides a modulo-128 frame window. LAPB is a full-duplex mode of operation.

The Network Layer:
Often referred to as Packet Layer Protocol (PLP). The layer protocol provides a statistical multiplexing technique through the use of multiple logical connections across a physical link.
The three possible logical (virtual) connections are:

  1. Logical Channel
  2. Switched Virtual Circuit (SVC)
  3. Permanent Virtual Circuit (PVC)
The PVCs and SVCs are both end-to-end connections between two users, but they are different in the fact that PVCs are predefined by the X.25 service provider and SVCs are not. PVCs also have the advantage that they do not require the connection setup and takedown time which are needed with SVCs.

The network layer is also responsible for the information field, which consists of two parts: the actual data and the data header.
The first part of the data header is the 4-bit General Format Identifier (GFI) which indicates (among other things) the presence or absence of data.
The 4-bit Logical Channel Group Number (LGN) is the group number.
The 8-bit Logical Channel Number (LCN) is the channel number.
The LGN and LCN combined can be used as one big channel number.
LCN 0 is normally used for emergency network commands.
And the last part is the 8-bit Packet Type Identifier (PTI) or Level 3 flow control sequence numbers. The PTI is only present at level 3 protocol packets.

Notes:
Your local PTT or X.25 provider can give you a CUG number. This is a Closed User Group number and is used to prevent other X.25 users from accessing your network. Only users with the same CUG are able to contact eachother. This way it is possible to built a virtual private network.


Resources: