XOT is a protocol for transparent transmission of X.25 packets over TCP/IP networks. The protocol primarily establishes procedures for connecting virtual circuits and for maintaining X.25 packet boundaries during transmission over TCP/IP's stream-based transport mechanism.
Developed originally by Cisco Systems, the XOT protocol was later made available to the Internet community as RFC 1613. Cisco implemented XOT in its routers, and now the LayGO Toolkit includes XOT server software enabling LayGO X.25 clients to connect to remote X.25 devices through Cisco routers via TCP/IP.
LayGO XOT Servers rely on specially configured LayGO RPC Servers to communicate with LayGO X.25 clients. Each X.25 major device is associated with a particular port on a particular Cisco router. The port is configured for traditional X.25 over LAPB communication. The LayGO XOT Server maps each X.25 virtual circuit on the X.25 major device onto a separate TCP/IP socket connection with the router. The router relays the XOT traffic on that socket to the associated port and X.25 traffic from the port to the TCP/IP socket. Cisco routers and LayGO XOT support both X.25 switched virtual circuits (SVCs) and X.25 permanent virtual circuits (PVCs). SVC call routing is accomplished using the usual X.25 DTE/DCE addressing procedures during the call setup phase. PVC connection establishment requires a special procedure which is defined as part of the XOT protocol.
LayGO client programs can often take advantage of XOT with little or no modification. The main difference is routing inside the LayGO protocol stack provided by the LayGO Return Layer protocol. A typical X.25 connection using a local synchronous communication port requires a device composed of 3 protocol blocks:
The X.21 bis layer provides the interface to the synchronous communication port. The HDLC LAPB layer provides an error-free point-to-point link with the remote device. In XOT, both are replaced by a TCP/IP connection established by the LayGO XOT Server. To divert the X.25 packet stream to the XOT Server, the client merely replaces the HDLC LAPB and X.21 bis blocks with a LayGO Return Layer block:
Everything else is the same. Once the Return Layer and X.25 major device are connected, SVC and PVC devices can be opened on the major device in the usual way.
Inside the Return Layer, devices are internally connected in pairs, 0 to 1, 2 to 3, etc. with packets routed between the members of the pair. The LayGO XOT Server connects directly to the corresponding Return Layer device to access the X.25 encoded packet stream. It decodes and routes each X.25 packet, encapsulating it inside an XOT packet and sending it out on the TCP/IP socket which is mapped to the virtual circuit. (If the virtual circuit is not mapped to a socket, the LayGO XOT Server automatically creates a socket and establishes the connection with the router, then forwards the packet.) At the other end, the Cisco router removes the TCP/IP and XOT encapsulation and delivers the original X.25 packet to the configured port. The whole process is completely transparent to the client.