See the following documents for detailed information:
The packet header
Multiplexing
Routing
Addresses
Datagram v virtual call network
Optional user facilities - Subscription Facilities
Optional user facilities - Per Call parameters
Quality of Service (QOS) parameters
OSI Network Layer
common packet layer problems on Public Network
1 - Introduction
The X.25 Packet layer is the highest of the 3 layers that form X25. It performs the following functions:
- Routing
- Switching
- Multiplexing
- Flow Control
X.25 Packet layer can form part of the network
layer in a system that supports the OSI 7 layer
model.
1.1 Relationship between packet layer and link layer
The packet layer defines the packets exchanged between the DTE and the DCE.
Packets are carried in the Information field of frames defined by layer 2
of X.25
In most, but not all, cases the packet is passed through the network with
little modification (ie end-to-end), Unlike the frame header/trailer which is
regenerated for each link.
Some parts of the packet can be modified as it passes through the network,
for instance, LCN, facilities, etc.
1.2 - Trunk failure
1.2 - Link level failure
Effects of bit and link levels on packet level
Ideally the states of levels 1, 2 and 3 should be independent, however it
could be very expensive if a failure at the bit or link level caused all calls
to hang, so the network will clear all calls if it detects a failure, this will
only happen if the network sees a change of status of the physical interface,
or if it sees a DISC frame, of if it is unable to deliver a frame to the DTE.
2 - Procedures
2.5 - Example sending a data packet
Customer | Switch | Switch | Customer |
--- I frame | |||
RR frame -- | |||
--- I frame | |||
RR frame -- | |||
--- I frame | |||
RR frame -- | |||
--- I frame | |||
RR frame -- | |||
I frame --- | |||
---RR frame | |||
I frame --- | |||
--- RR frame | |||
I frame --- | |||
--- RR frame | |||
I frame --- | |||
--- RR frame | |||
The example shows a Data packet being sent between two customers,
Note:
- Each packet is carried in an I-frame
- Each link is independent
3.2 - Services provided by network layer
- Routing/switching - proper network like telephone & telex - not just to get data from A to B
- Multiplexing - makes maximum use of line - allows multiple calls at once - only uses line capacity when information to be sent.
- Flow control - allows devices connected to network through - different speed lines to communicate with each other.
4 - Packet headers
All packets contain a 3 byte header and some packets have an optional data
field:
<-frame hdr-> | GFI LCGN | LCN | packet type | optional data field | <-frame trailer -> |
5.9.1 Packet Level initialisation
Once the link is established then the packet level is initialised. This can
be done by either end,
Restart by network:
customer network
RESTART IND 07FA | cause 07 network operational |
RESTART CONF | diagnostic FA line status change |
Restart by customer:
customer network
RESTART REQ 00xx
RESTART CONF
Restart collision:
RESTART REQ
RESTART IND
This ensures level 3 starts in a tidy state with all calls cleared, and keeps
level 2 and level 3 independent.
Following a link level failure, calls should not be made or accepted until
a Restart exchange has occurred. see section on level 2/3 interface.
Restart - Restart Conf exchanges can be done at any time and will have the
effect of clearing all calls on the link.
Valid Restart Causes for the network to send are as follows:
Hex | cause |
01 | local procedure error |
03 | Network Congestion |
07 | Network Operational |
Note: RESTART and RESTART CONF are the only packet types which affect all
calls on the link and so they always use GFI=10, LCN=0, see section on logical
channel numbers for details.
7 - Logical Channels
When X.25 was being defined, a basic decision had to be made about whether
it should support datagrams or virtual calls:
Datagram network
This is conceptually the simplest type of packet switched network, each packet
is self contained and must contain the user data
and any information needed
by the network to deliver the packet correctly such as the calling address.
Advantages of a datagram network
- Very resilient, since each packet finds its own way through the network depending on the loading and status of switches and links at the time.
- Datagram networks are more efficient for quick transactions which may only generate 1 or 2 packets.
Disadvantages of a datagram network
- High overhead, since each packet must contain the calling address, optionally the called address, and any additional facilities such as reverse charging.
- There is the possibility that since packets can go through the network by different routes they could overtake each other, therefore steps need to be taken to ensure packets are reassembled in the correct order at the destination.
8 - Virtual call network
This is similar to a telephone call in that there is a call establishment
phase, followed by data transfer, followed by call cleardown. Only the call
request packet need contain the calling address and call facilities, this call
request packet sets up a route through the network and subsequent packets need
only specify a virtual circuit number to identify the call.
Advantages of a virtual call network
- Packets are delivered in order since they all take the same route.
- More efficient in line usage since, each packet does not need to contain the full address.
- Network resources are allocated at call setup time so that even during times of congestion, provided that a call has been setup, then subsequent packets should get through.
- Billing is easier, since billing records need only be generated per call and not per packet.
Disadvantages of a virtual call network
- The switching equipment needs to be more powerful since each switch needs to store details of all the calls that are passing through it and to allocate capacity for any traffic that each call could generate.
- Resilience to the loss of trunk circuits is more difficult since if a trunk fails then all the calls over that trunk must be dynamically reestablished over a different route.
Conclusion
CCITT chose a protocol that supports virtual call networks, however as a concession to datagram networks X.25 allows 'fast select calls' which are call request packets which may contain upto 128 bytes of data.
20 - Call reconnect on trunk failure
DTE DCE trunk DTE DCE
unique call ID
-- call --? -------------------? -- call --?
?-- acc -- ?------------------- ?-- add ---
?------------------- data transfer ---------------------?
trunk fails
?---CLR F500 * CLR F500 ---?
------- re-est over diff --?
route
same unique call ID
-------- REJ 0 ------------?
?------- REJ 0 -------------
recover any data that may
have been lost on failed
trunk
---------DATA 0 -----------?
?--------------------- data transfer ---------------------?
=================================================================
If the call cannot be re-established __ ___ ____ ______ __ ______________
DTE DCE trunk DTE
DCE
unique call ID
-- call --? -------------------? -- call --?
?-- acc -- ?------------------- ?-- add ---
?------------------- data transfer ---------------------?
trunk fails
?---CLR F500 * CLR F500 ---?
------- re-est over diff --?
route
same unique call ID
?-- CLR NC ---- --- CLR NC --?
21 - Module 3 / Practical 1 - Decoding packet headers using
Halcyon Tester
Procedure
1 - tee in the Halcyon tester to the circuit (at the exchange end) as follows:
2 - Connect and switch on mains power to all equipment.
3 - Start trace:
Set up Halcyon for: HDLC
ASCII 8
Press RUN on Halcyon
4 - Make a call from one of the terminals and send some data.
Clear the call from any end by typing <CNTL-P>CLR
You should see the hex data on the trace and if you press
the CODE/HEX key you should see the data in ASCII as you
typed
it on the terminal.
The format of the packet is as follows:
'7E' in half tone to indicate the start of the frame.
then 2 byte frame header
then 3 byte packet header
then the user data (CODE/HEX) key toggles between ASCII and
HEX
try decoding the 3 byte packet header.
5 - Stop the trace by pressing the CAPTURE key on the Halcyon.
6 - To decode the information into a more useful form,
press the ANALYSE key (FORMAT key on Mk2) on the Halcyon
press the ENTER key to step through the trace 10 frames at a
time.
7 - Press SHIFT then CAPTURE - this sequence tells the Halcyon to
display
the text in the data packets.
8 - Keep pressing ENTER until you get some packets.
(packets are carried in I frames and are displayed in inverse
video - black characters on a white background)
(ENTER steps through 10 frames
^ next frame
v last frame
to see the current frame in HEX press the CODE/HEX key
each time you press the key you will get the whole frame
eg,
7E <2 byte frame header> <3 byte packet header> <user data>
note no FCS is displayed if correct.
9 - Write down the sequence of packets on the line and deduce
from
the trace,
what was typed on the terminals,
What logical group and channel was the call on.
Module 3 / Practical 2 - Decoding packet headers using Tekelec
simulator
Procedure
1 - connect up the equipment as shown below:
/---\ /-------------------------\
/-----------\ /---\
/--/ \---/ \-----------------/
port\---/ \---\
\------/---| |-----------------|trunk
|---\-------/
Texas /--/ | |
terminal
Printer |/-/ | |
|
|| \-------------------------/
\-----------/
|| Tekelec TE92 or Chameleon PAD(DTE)
||
|| /-------------------\
|\-/ |
\--/ Keyboard |
\-------------------/
2 - Connect and switch on mains power to all equipment.
3 - Set up Tekelec as simulator
and bring the link up (SLON,SLG4,SPOF)
4 - Use the Tekelec to make a call and send some data, you will
have
to work out the packets and send them in hexadecimal, when
you have
worked out what to send then type PH followed by pairs of
hexadecimal
digits with no spaces in between -
eg, PH14060B0E2342192010064000
5 - Try sending all the other types of packet.
Slide Net 10 ................ Common packet level problems
24 Typical Faults
* Cannot make call - Check clear cause and diagnostic
* Call statistics: common problem calls not clearing
* Multiline: Difficult to find faults
on problems get circuit number
25 - Questions on network layer
1 - Which of these is an advantage of a virtual call network over
a datagram network,
a) it is more flexible
b) packets always arrive in the correct order
c) it is easier to design.
d) it is an international standard.
2) When a call packet arrives at a node (PSE) in the network,
what determines where it will be switched to.
a) The called address
b) The calling address
c) The logical channel and LCGN
d) The facility field.
3) When a data packet arrives at a node (PSE) in the network,
what determines where it will be switched to.
a) The called address
b) The calling address
c) The logical channel and LCGN
d) The facility field.
4) These packets are taken from a trace in hex, what types of
packet are they,
4.1) 14 06 0B 0E 23 42 19 20 10 06 40 00
a) a call packet
b) a data packet
c) a restart packet
d) an interrupt packet
4.2) 14 06 22 48 45 4C 4C 4F
a) a call packet
b) a data packet
c) a restart packet
d) an interrupt packet
5 - A Packet terminal sends and receives the following packets -
Subscriber -? Exchange 14 06 0B 0E 23 45 67 89 0A BC 00
Exchange -? Subscriber 14 06 13 03 79
What is happening,
a) a successful call has been made
b) an attempted call has been cleared by the remote end due
to the remote end
c) an attempted call has been cleared by the network due to
network congestion
d) an attempted call has been cleared by the network due to
invalid facility request
26 - Example
This is an example from a HP tester:
s = start flag e = end flag a = abort b = bad fcs g = good fcs
f f a b g
Find the call request and call accept.
Hewlett - Packard 4953A Protocol Analyzer
Char = A Hex = A1 Binary = 10100001 Type = DTE Character
Agges0A100E242402024001000004004000000gge s0 A 1165gge
1ggff3622BE327013032000508113222771000ggf f3 8 2063ggf
s0 8 gge s0Agges0A1165gges0A11
f3 1 ggf f31ggff1A2083ggff1C20
s0A11Agge s0 E gges0E1206gge s0 E124gge
f3A2A1ggf f1 1 ggff3C2921ggf f3 E221ggf
8gge s0 C gge s0C100gges0E gge s0E124gges0E9000000
1ggf f3 1 ggf f1E22Fggff31 ggf f10291ggff122202204
s0 0 gge s02 gge
f1 1 ggf f11 ggf
BLOCK NUMBER = 41
Hewlett - Packard 4953A Protocol Analyzer
DTE DCE
QD MOD LCN TYPE P(S) M P(R) DATA QD MOD LCN TYPE P(S) M P(R) DATA
00 8 207 RR 7
00 8 207 Data 0 0 1 11000
E49AA
00 8 202 Call E2424
E3270
00 8 210 Data 4 0 3 5
3
00 8 210 RR 4
00 8 21A RR 5
00 8 229 Data 1 0 0 6
1
00 8 202 Call Acc
00 8 222 RR 2
00 8 229 RR 2
10 8 202 Data 0 0 0 00000
22041
10 8 202 Data 1 0 0 00000
61020
00 8 222 Data 3 0 6 22222
00000
00 8 219 RR 5
00 8 219 Data 6 0 2 54332
5C870
00 8 214 RR 4
00 8 22B Data 4 0 7 5
F
BLOCK NUMBER = 41