Linux X.25 Project

As my third year dissertation at University I have taken it upon myself to
write an X.25 implementation for Linux. My aim is to provide a complete X.25
Packet Layer and a LAPB module to allow for "normal" X.25 to be run using
Linux. There are two sorts of X.25 cards available, intelligent ones that
implement LAPB on the card itself, and unintelligent ones that simply do
framing, bit-stuffing and checksumming. These both need to be handled by the
system.

I therefore decided to write the implementation such that as far as the
Packet Layer is concerned, the link layer was being performed by a lower
layer of the Linux kernel and therefore it did not concern itself with
implementation of LAPB. Therefore the LAPB modules would be called by
unintelligent X.25 card drivers and not by intelligent ones, this would
provide a uniform device driver interface, and simplify configuration.

To confuse matters a little, an 802.2 LLC implementation for Linux is being
written which will allow X.25 to be run over an Ethernet (or Token Ring) and
conform with the JNT "Pink Book", this will have a different interface to
the Packet Layer but there will be no confusion since the class of device
being served by the LLC will be completely seperate from LAPB. The LLC
implementation is being done as part of another protocol project (SNA) and
by a different author.

Just when you thought that it could not become more confusing, another
option appeared, XOT. This allows X.25 Packet Layer frames to operate over
the Internet using TCP/IP as a reliable link layer. An RFC exists that
specifies the format and behaviour of the protocol. If time permits this
option will also be actively considered.

It is hoped that a linux-x25 mailing list will be opened soon to allow for
the discussion of Linux X.25, but it hasn't appeared yet.

Jonathan

jsn@cs.nott.ac.uk
g4klx@g4klx.demon.co.uk
