|
For information on
X.25 simulation and analysis 
View
this file in pdf format.
ITU-X.25
http://www.itu.int/itudoc/itu-t/rec/x/x1-199/x25_23040.html
X.25 is the CCITTs recommendation for
the interface between a DTE and DCE over a Public Data Network.
Generally, X.25 covers layers 1 to 3 of the ISO communication
model, but the term is used here to refer specifically to packet
layer 3. X.25 is carried within the Information Field of LAPB
frames.
The X.25 is illustrated
here in relation to the OSI model:
Click the protocols on the map to
see more details.

Command
LAPB frame types are defined as commands or responses depending
on the address field and the direction of the frame. A command
frame from the DTE has an address of 1; a command frame from
the DCE has an address of 3.
Control frames
All LAPB frame types except for information frames.
Control packets
All X.25 packet types except for DATA packets.
D bit
Delivery confirmation bit of the X.25 packet header. Used
to indicate whether packet layer acknowledgements have local
(0) or global (1) significance between the DTE and DCE. This
is not a universally accepted bit and is generally set to 0.
Information frame
A specific LAPB frame type that is used to transport data
across the link, inside the information field of the frame.
The information field contains the X.25 packet header and data
according to the standards in the X.25 layer 3 protocol.
LAPB
Link Access Procedure-Balanced protocol. The CCITTs
adaptation of the layer 2 HDLC protocol for the X.25 interface.
The LAPB address field, in contrast to HDLC, only has two permissible
values.
LCN
Logical Channel Number. Together with the LGN (in the X.25
packet header), identifies the actual logical channel number
of the DTE-DCE link. The LCN is an 8-bit field and consequently
represents a number between 0 and 255.
LGN
Logical Channel Group Number. Together with the LCN (in
the X.25 packet header), identifies the actual logical channel
number of the DTE-DCE link. The LGN is a 4-bit field and consequently
represents a number between 0 and 15, inclusive.
M bit
More data bit. A bit contained within the X.25 data packet
which is set by layers higher than layer 3 to inform the destination
DTE that more data will follow in the next packet. Using the
M bit, packets can be logically grouped together to convey
a large block of related information.
Modulo
Window Size. Represents the maximum number of frames (layer 2)
or packets (layer 3) that can be left outstanding and unacknowledged
for a DTE after transmission. In Modulo 8, sequence numbers
can be represented by the digits 0 to 7 and are encoded in
3 bits of information. In Modulo 128, sequence numbers can
be represented by the digits 0 to 127 and are encoded in 7
bits of information.
N(R)
A frame sequence number used in both LAPB information and
supervisory frames in order to indicate to the transmitter
the status of sent information frames. The meaning of N(R)
is dependent on the type of the frame and can include acknowledgements,
missed frames or a busy state. A 3-bit N(R) field is used to
identify sequence numbers for a modulo 8 transmission; a 7-bit
field is used for modulo 128.
N(S)
A frame sequence number used only within an LAPB information
frame to identify each frame sent to the receiver. A 3-bit
N(S) field is used to identify sequence numbers for a modulo
8 transmission; a 7-bit field is used for modulo 128.
P(R)
A packet sequence number used in the X.25 data packets
in order to indicate to the transmitter the status of sent
data packets. The meaning of P(R) is dependent on the type
of the packet and can include acknowledgements, missed frames
or a busy state. A 3-bit P(R) field is used to identify sequence
number of modulo 8 transmission; a 7-bit field is used for
modulo 128.
P(S)
A packet sequence number used only within an X.25 data
packet in order to identify each packet sent to the receiver.
A 3-bit P(R) field is used to identify the sequence number
of modulo 8 transmission; a 7-bit field is used for modulo
128.
P/F bit
The Poll/Final bit is set within the LAPB information frame
by the transmitter to insist on an immediate response from
the receiver. The receiver always turns on the bit in its response
to a command from the sender with a poll bit set.
Q bit
A bit within the X.25 packet header used to signify X.25
control packets used by asynchronous PADs. Mainly used as a "qualified" proprietary
protocol within the packet.
Response
LAPB frame types are defined as commands or responses,
depending on the address field and the direction of the frame.
A response frame is specified as a frame with either an address
of 1, (from the DCE), or an address of 3 (from the DTE).
Sequence number
A unique number given to specific frames and packets to
ensure that they are received and interpreted in the correct
order. The bit size of the sequence number field is dependent
on the respective modulo (maximum window size) of the layer
and determines the maximum number of frames or packets that
can be outstanding by the transmitter at any given time.
Supervisory frames
A collection of LAPB frames used to control information
flow, request retransmissions and acknowledge information frames.
Receive Ready (RR) and Reject (REJ) are two examples.
Unnumbered frame
A collection of LAPB frames used to provide additional
data-link control functions such as link initialization and
disconnection, link reset after unrecoverable errors, and rejection
of invalid frames. They are called unnumbered because they
do not contain frame sequence numbers. Disconnect (DISC) and
Unnumbered Acknowledgement (UA) are two examples.
X.25
The CCITTs recommendation for the interface between
a DTE and DEC over a Public Switched Telephone Network (PSTN).
Generally, X.25 covers layers 1 to 3 of the ISO model, but
the term is used in this document to refer specifically to
packet layer 3.
ADCCP
www.ansi.org Ansi X3.66 1979
The Advanced Data Communication Control Procedures (ADCCP) defines a method of data link control in terms of the various combinations of primary link control function, secondary link control functions, and balanced link control that make up the control functions and protocols at three types of logical data link control stations:
- Primary station.
- Secondary station.
- Combined station.
In particular, the logical functions and protocols of secondary stations and combined stations are specified identically with respect to the action taken and the response frames. The primary station and combined station procedures for managing and scheduling the data link, via the transmission of command frames, are the responsibility of the system designer.
The header appears as follows:
|
Flag |
Address field |
Control field |
Information |
FCS |
Flag |
|
ADCCP frame structure |
Flag
The value of the flag is always (0x7E). In order to ensure that the bit pattern of the frame delimiter flag does not appear in the data field of the frame (and therefore cause frame misalignment), a technique known as Bit Stuffing is used by both the transmitter and the receiver.
Address field
The first byte of the frame after the header flag is known as the Address Field. ADCCP is used on multipoint lines and it can support as many as 256 terminal control units or secondary stations per line. The address field defines the address of the secondary station which is sending the frame or the destination of the frame sent by the primary station.
Control field
The field following the Address Field is called the Control Field and serves to identify the type of the frame. In addition, it includes sequence numbers, control features and error tracking according to the frame type.
Every frame holds a one bit field called the Poll/Final bit. In the NRM mode of ADCCP this bit signals which side is talking, and provides control over who will speak next and when. When a primary station has finished transmitting a series of frames, it sets the Poll bit, thus giving control to the secondary station. At this time the secondary station may reply to the primary station. When the secondary station finishes transmitting its frames, it sets the Final bit and control returns to the primary station.
Modes of operation
ADCCP has 3 modes of operation according to the strength of the master/slave relationship. This is determined by a unique frame type specifier:
- Normal Response Mode (NRM): This mode is totally master/slave and is signified by the SNRM(E) frame. The primary station initiates the session and full polling is used for all frame transmissions.
- Asynchronous Response Mode (ARM): This mode is similar to NRM and is signified by the SARM(E) frame. The difference, however, is that secondary stations can transmit freely without waiting for a poll.
- Asynchronous Balanced Mode (ABM): This mode is totally balanced (i.e., no master/slave relationship) and is signified by the SABM(E) frame. Each station can initialize, supervise, recover from errors and send frames at any time.
FCS
The Frame Check Sequence (FCS) enables a high level of physical error control by allowing the integrity of the transmitted frame data to be checked. The sequence is first calculated by the transmitter using an algorithm based on the values of all the bits in the frame. The receiver then performs the same calculation on the received frame and compares its value to the CRC.
Window size
ADCCP supports an extended window size (modulo 128) where the number of possible outstanding frames for acknowledgement is raised from 8 to 128. This extension is generally used for satellite transmissions where the acknowledgement delay is significantly greater than the frame transmission times. The type of the link initialization frame determines the modulo of the session and an "E" is added to the basic frame type name (e.g., SABM becomes SABME).
Extended address
ADCCP provides another type of extension to the basic format. The address field may be extended to more than one byte by agreement between the involved parties. When an address extension is used, the presence of a 1 bit in the first bit of an address byte indicates that the following byte is also an address byte. The last byte of the string of address bytes is signalled by a 0 bit in the first position of the byte.
Frame types
The following are the Supervisory Frame Types in ADCCP:
| RR |
Information frame acknowledgement and indication to receive more. |
| REJ |
Request for retransmission of all frames after a given sequence number. |
| RNR |
Indicates a state of temporary occupation of station (e.g., window full). |
| SREJ |
Request for retransmission of one given frame sequence number. |
| |
| The following are the Unnumbered Frame Types in ADCCP: |
| |
|
| DISC |
Request disconnection. |
| UA |
Acknowledgement frame. |
| DM |
Response to DISC indicating disconnected mode. |
| FRMR |
Frame reject. |
| SABM |
Initiator for asynchronous balanced mode. No master/slave relationship. |
| SABME |
SABM in extended mode. |
| SARM |
Initiator for asynchronous response mode. Semi master/slave relationship. |
| SARME |
SAMR in extended mode. |
| REST |
Reset sequence numbers. |
| CMDR |
Command reject. |
| SNRM |
Initiator for normal response mode. Full master/slave relationship. |
| SNRME |
SNRM in extended mode. |
| RD |
Request disconnect. |
| RIM |
Secondary station request for initialization after disconnection. |
| SIM |
Set initialization mode. |
| UP |
Unnumbered poll. |
| UI |
Unnumbered information. Sends state information/data. |
| XID |
Identification exchange command. |
| |
| There is one Information Frame Type in ADCCP: |
| |
|
| Info |
Information frame. |
Interested in more details about testing this protocol?
HDLC
ISO-3309
http://www.iso.ch/cate/d8561.html
The High Level Data Link Control (HDLC) protocol
was developed by ISO and is based primarily on the pioneering
work done by IBM on SDLC.
The format of a standard HDLC frame is as
follows:
| Flag |
Address field
|
Control field
|
Information
|
FCS |
Flag |
| HDLC
frame structure |
Flag
The value of the flag is always (0x7E). In order to ensure
that the bit pattern of the frame delimiter flag does not appear
in the data field of the frame (and therefore cause frame misalignment),
a technique known as Bit Stuffing is used by both the transmitter
and the receiver.
Address field
The first byte of the frame after the header flag is known
as the Address Field. HDLC is used on multipoint lines and it
can support as many as 256 terminal control units or secondary
stations per line. The address field defines the address of
the secondary station which is sending the frame or the destination
of the frame sent by the primary station.
Control field
The field following the Address Field is called the Control
Field and serves to identify the type of the frame. In addition,
it includes sequence numbers, control features and error tracking
according to the frame type.
Every frame holds a one bit field called
the Poll/Final bit. In the NRM mode of HDLC this bit signals
which side is talking, and provides control over
who will speak next and when. When a primary station has finished
transmitting a series of frames, it sets the Poll bit, thus
giving control to the secondary station. At this time the secondary
station may reply to the primary station. When the secondary
station finishes transmitting its frames, it sets the Final
bit and control returns to the primary station.
Modes of operation
HDLC has 3 modes of operation according to the strength
of the master/slave relationship. This is determined by a unique
frame type specifier:
- Normal Response Mode (NRM): This mode
is totally master/slave and is signified by the SNRM(E) frame.
The primary station initiates the session and full polling
is used for all frame transmissions.
- Asynchronous Response Mode (ARM): This
mode is similar to NRM and is signified by the SARM(E) frame.
The difference, however, is that secondary stations can transmit
freely without waiting for a poll.
- Asynchronous Balanced Mode (ABM): This
mode is totally balanced (i.e., no master/slave relationship)
and is signified by the SABM(E) frame. Each station can initialize,
supervise, recover from errors and send frames at any time.
FCS
The Frame Check Sequence (FCS) enables a high level of physical
error control by allowing the integrity of the transmitted frame
data to be checked. The sequence is first calculated by the
transmitter using an algorithm based on the values of all the
bits in the frame. The receiver then performs the same calculation
on the received frame and compares its value to the CRC.
Window size
HDLC supports an extended window size (modulo 128) where
the number of possible outstanding frames for acknowledgement
is raised from 8 to 128. This extension is generally used for
satellite transmissions where the acknowledgement delay is significantly
greater than the frame transmission times. The type of the link
initialization frame determines the modulo of the session and
an "E" is added to the basic frame type name (e.g.,
SABM becomes SABME).
Extended address
HDLC provides another type of extension to the basic format.
The address field may be extended to more than one byte by agreement
between the involved parties. When an address extension is used,
the presence of a 1 bit in the first bit of an address byte
indicates that the following byte is also an address byte. The
last byte of the string of address bytes is signalled by a 0
bit in the first position of the byte.
Frame types
The following are the Supervisory Frame Types in HDLC:
| RR |
Information frame acknowledgement and indication
to receive more. |
| REJ |
Request for retransmission of all frames after
a given sequence number. |
| RNR |
Indicates a state of temporary occupation
of station (e.g., window full). |
| SREJ |
Request for retransmission of one given frame
sequence number. |
| The following are the Unnumbered
Frame Types in HDLC: |
| DISC |
Request disconnection. |
| UA |
Acknowledgement frame. |
| DM |
Response to DISC indicating disconnected mode. |
| FRMR |
Frame reject. |
| SABM |
Initiator for asynchronous balanced mode.
No master/slave relationship. |
| SABME |
SABM in extended mode. |
| SARM |
Initiator for asynchronous response mode.
Semi master/slave relationship. |
| SARME |
SAMR in extended mode. |
| REST |
Reset sequence numbers. |
| CMDR |
Command reject. |
| SNRM |
Initiator for normal response mode. Full master/slave
relationship. |
| SNRME |
SNRM in extended mode. |
| RD |
Request disconnect. |
| RIM |
Secondary station request for initialization
after disconnection. |
| SIM |
Set initialization mode. |
| UP |
Unnumbered poll. |
| UI |
Unnumbered information. Sends state information/data. |
| XID |
Identification exchange command. |
| There is one Information Frame
Type in HDLC: |
| Info |
Information frame. |
Interested in more details about testing
this protocol?
LAPB
ITU-X.25
http://www.itu.int/itudoc/itu-t/rec/x/x1-199/x25_23040.html
LAPB is the layer 2 protocol used to carry
X.25 packets. The format of a standard LAPB frame is as follows:
| Flag |
Address field
|
Control field
|
Information
|
FCS |
Flag |
|
LAPB frame structure |
Flag
The value of the flag is always
(0x7E). In order to ensure that the bit pattern of the frame
delimiter flag does not appear in the data field of the frame
(and therefore cause frame misalignment), a technique known
as Bit Stuffing is used by both the transmitter and the receiver.
Address field
The first byte of the frame after
the header flag is known as the Address Field. In LAPB, however,
this field has no meaning since the protocol works in a point
to point mode and the DTE network address is represented in
the layer 3 packets. This byte is therefore put to a different
use; it separates the link commands from the responses and can
have only two values: 0x01 and 0x03. 01 identifies frames containing
commands from DTE to DCE and responses to these commands from
DCE to DTE. 03 is used for frames containing commands from DCE
to DTE and for responses from DTE to DCE.
Control field
The field following the Address
Field is called the Control Field and serves to identify the
type of the frame. In addition, it includes sequence numbers,
control features and error tracking according to the frame type.
In LAPB, since there is no master/slave relationship,
the sender uses the Poll bit to insist on an immediate response.
In the response frame this same bit becomes the receivers Final
bit. The receiver always turns on the Final bit in its response
to a command from the sender with the Poll bit set. The P/F
bit is generally used when either end becomes unsure about proper
frame sequencing because of a possible missing acknowledgement,
and it is necessary to re-establish a point of reference.
Modes of operation
LAPB works in the Asynchronous Balanced
Mode (ABM). This mode is totally balanced (i.e., no master/slave
relationship) and is signified by the SABM(E) frame. Each station
may initialize, supervise, recover from errors, and send frames
at any time. The DTE and DCE are treated as equals.
FCS
The Frame Check Sequence (FCS) enables
a high level of physical error control by allowing the integrity
of the transmitted frame data to be checked. The sequence is
first calculated by the transmitter using an algorithm based
on the values of all the bits in the frame. The receiver then
performs the same calculation on the received frame and compares
its value to the CRC.
Window size
LAPB supports an extended window
size (modulo 128) where the number of possible outstanding frames
for acknowledgement is raised from 8 to 128. This extension
is generally used for satellite transmissions where the acknowledgement
delay is significantly greater than the frame transmission times.
The type of the link initialization frame determines the modulo
of the session and an "E" is added to the basic frame
type name (e.g., SABM becomes SABME).
Frame types
The following are the Supervisory
Frame Types in LAPB:
| RR |
Information frame acknowledgement and indication
to receive more. |
| REJ |
Request for retransmission of all frames after
a given sequence number. |
| RNR |
Indicates a state of temporary occupation
of station (e.g., window full). |
The following are the Unnumbered Frame Types
in LAPB:
| DISC |
Request disconnection. |
| UA |
Acknowledgement frame. |
| DM |
Response to DISC indicating disconnected mode. |
| FRMR |
Frame reject. |
| SABM |
Initiator for asynchronous balanced mode.
No master/slave. |
| SABME |
SABM in extended mode. |
| There is one Information Frame
Type in LAPB: |
| Info |
Information frame. |
Interested in more details about testing
this protocol?
MLP
Multilink procedure (MLP) exists as an added
upper sublayer of the data link layer (LAPB), operating between
the packet layer and a multiplicity of single data link protocol
functions (SLPs) in the data link layer.
When specified in the LAPB frame, the MLP
frame is inserted before the LAPB information field. The contents
of the MLC (multilink control field) are as follows:
| 4
|
5
|
6
|
7
|
8
|
16
|
| MNH(S) |
V |
S |
R |
C |
MNL(S) |
| MLC
frame structure |
MNH(S)
Bits 9-12 of 12-bit multilink send sequence number MN(S).
MNL(S)
Bits 1-8 of 12-bit multilink send sequence number MN(S).
V
Void sequencing bit.
S
Sequence check option bit.
R
MLP reset request bit.
C
MLP reset confirmation bit.
 |
Decode of MLP
in LAPB |
Interested in more
details about testing this protocol?
X.25
The structure of the X.25 packet is as follows
for Modulo 8:
| |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
| GFI |
Q |
D |
S |
S |
LGN
|
| |
LCN |
| Pkt. Type |
P(R) |
M |
P(S) |
0 |
| |
User data
.
.
.
. |
|
X.25 packet structure
for Modulo 8 |
The structure of the X.25 packet is as follows
for Modulo 128:
| |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
| GFI |
Q |
D |
S |
S |
LGN
|
| |
LCN |
| Packet |
P(S) |
0 |
| Type |
P(R) |
M |
| |
User data
.
.
.
. |
| X.25
packet structure for Modulo 128 |
GFI
General format identifier which
indicates the layout of the remainder of the packet header.
| Q |
Q bit. |
| D |
D bit. |
| s |
Sequence scheme - specifies whether the frame
is modulo 8 (ss=1) or module 128 (ss=2). |
LGN
Logical channel group number is a 4-bit field which together
with the LCN identifies the actual logical channel number.
LCN
Logical channel number is an 8-bit field which identifies
the actual logical channel number of the DTE-DCE link.
Packet type
8-bit field which identifies the packet type (in Modulo
128 the packet type is 16 bits). See below for a list of all
available packet types.
| P(R) |
Packet receive sequence number which appears
in data and flow control packets or the called DTE address
which may appear in call setup, clearing and registration
packets. |
| P(S) |
Packet send sequence number which appears
in data packets or the calling DTE address field which may
appear in call setup, clearing, and registration packets. |
| M |
More data bit which appears only in data packets.
The field is set to 1 to indicate that the packet is part
of a sequence of packets that should be treated as a logical
whole. |
Packet types may be as follows:
| CALL ACC |
Call Accept |
| CALL REQ |
Call Request |
| CLR CNF |
Clear Confirmation |
| CLR REQ |
Clear Request |
| DATA |
Data Packet |
| DIAG |
Diagnostic |
| INT CNF |
Interrupt Confirmation |
| INT REQ |
Interrupt Request |
| REJ |
Reject |
| RES CNF |
Reset Confirmation |
| RES REQ |
Reset Request |
| RNR |
Receive Not Ready |
| RR |
Receive Ready |
| RSTR CNF |
Restart Confirmation |
| RSTR REQ |
Restart Request |
| REG REQ |
Registration Request |
| REG CNF |
Registration Confirmation |
Interested in more details about testing
this protocol?
X.29
ITU-T X.29 (12/97).
http://www.itu.int/ITU-T/
The X.29 protocol provides procedures
for the exchange of control information and user data between
a packet assembly/disassembly (PAD) facility and a packet mode
DTE or another PAD. The protocol header structure is as follows:
| 1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
Octet |
|
Control Identifier |
Message Code |
1 |
Control Identifier
Used to identify the facility such as
PAD to be controlled
Message Code
The message code field: Possible message
codes can be
2 Set PAD message
4 Read PAD message
6 Set and read PAD message
0 Parameter indication PAD message
1 Invitation to clear PAD message
3 Indication of break PAD message 0 0 1 1
7 Reselection PAD message
5 Reselection PAD message
8 Reselection with TOA/NPI
Interested in more details about testing
this protocol?
X.75
ITU-X.25
http://www.itu.int/itudoc/itu-t/rec/x/x1-199/x75_23053.html
X.75 is a signalling system which is used
to connect packet switched networks (such as X.25) on international
circuits. It permits the transfer of call control and network
control information and user traffic.
On layer 2, X.75 uses LAPB in the same way
as X.25. On layer 3, X.75 is identical to X.25 with one exception.
X.25 has a field (of variable length) for facilities, while
X.75 has a field (of variable length) for network utilities
followed by facilities.
 |
X.75 decode |
Interested in more details about testing
this protocol?
X.25 Family Protocol Information
HDLC | LAPB
| MLP | X.25 | X.25
Terminology | X.29 | X.75
|