Network Working Group                                          J. Onions
Request for Comments: 1086                                    Nottingham
                                                                 M. Rose
                                                           December 1988

                  ISO-TP0 bridge between TCP and X.25

Status of this Memo

   This memo proposes a standard for the Internet community.  Hosts on
   the Internet that choose to implement ISO TP0 transport connectivity
   between TCP and X.25 based hosts are expected to experiment with this
   proposal.  TCP port 146 is reserved for this proposal.  Distribution
   of this memo is unlimited and comments are highly encouraged.


   This memo specifies a protocol that is used to bridge ISO TP0 packets
   between X.25 and TCP networks.  This technique is useful when
   interconnecting a DDN IP internet to an X.25 subnetwork.  This is not
   a "magic bullet" solution to the DDN/ISO interoperability problem.
   Rather, if one is running higher-layer ISO protocols in both networks
   (namely ISO TP0), then a TP0 bridge can be used to achieve

   The protocol itself is fairly simple as the method of operation for
   running TP0 over the TCP and X.25 protocols have previously been
   defined.  A bridge offering ISO-TP0 gateway services simply applies
   both methods as appropriate.  The protocol works by TP0/TCP hosts
   "registering" an X.25 subaddress (and corresponding TCP port/IP
   address) with the bridge.  TP0/X.25 hosts use the standard method for
   establishing, maintaining, and releasing connections.  When a
   connection is established, the bridge establishes the corresponding
   TCP connection and simply shuffles TP0 packets between the two.  When
   a TP0/TCP host initiates a connection, it establishes a TCP
   connection to the bridge using port number 146 and communicates the
   desired X.25 address.  The bridge establishes a connection to the
   native X.25 host and simply shuffles TP0 packets between the two.

1.  Introduction and Motivation

   The migratory protocol described in [RFC1006] makes possible the
   transmission of TP0 packets between hosts on TCP/IP internets.  With
   the addition of a small protocol converter, a TCP/IP host can be made
   to appear in the X.25 addressing space and be able to accept and make

Onions & Rose                                                   [Page 1]

RFC 1086          ISO-TP0 bridge between TCP and X.25      December 1988

   connections using the TP0 protocol.

   This procedure is particularly useful in the following cases:

      1.  A host on an IP based internet can communicate with hosts on
      X.25 based networks providing the hosts are running ISO protocols.
      This also assumes a friendly gateway willing to run the actual TP0
      bridge and make available to the IP host part of its X.25 address

      2.  A site having sparse connections to an X.25 network and using
      a TCP/IP based local area network for local communications.  In
      this case all hosts on the LAN can have access to hosts on the
      X.25 network running ISO TP0.

   Pictorially, this memo describes interoperation in the following

          |                                 |
          |                   +-----------------------------------+
          |  +----+           |     +----+  |           +----+    |
          |  |    |           |     |    |  |           |    |    |
          |  |    +-----------|-----+    +--------------+    |    |
          |  |    |     TP0   |     |    |  |  TP0      |    |    |
          |  +----+           |     +----+  |           +----+    |
          | TCP Host          |  Bridge Host|         X.25 Host   |
          |                   |             |                     |
          |                   |             |                     |
          |                   |             |                     |
          +-------------------|-------------+                     |
            TCP/IP Network    |                                   |
                              |                                   |
                                           X.25 Network

2.  Definitions and Philosophy

   Some modest terminology and philosophy is introduced to aid
   readability and stir interest.

   The ISO Transport Service (TS) provides a reliable, packet-stream to
   its users [ISO8072].  The ISO Transport Protocol (TP) implements this
   service [ISO8073].  There are five classes of this protocol.  The
   class is selected on the basis of the services offered by the
   underlying network service.  Transport class 0 (TP0) is used when the
   network service offered is connection-oriented and error-detecting.

Onions & Rose                                                   [Page 2]

RFC 1086          ISO-TP0 bridge between TCP and X.25      December 1988

   As should be expected, TP0 is a rather simple protocol, since the
   underlying network service actually provides most of the qualities
   offered by the transport service.

   CCITT Recommendation X.25 [ISO8208,X.25] offers such a network
   service.  It is beyond the scope of this memo to describe X.25 in any
   detail, but two observations are pertinent:  First, X.25 is offered
   as a wide-area network service by many commercial and (non-U.S.)
   government carriers.  Second, the TP0/X.25 combination is very
   popular in Europe and other communities with a strong PTT-oriented

   It has been argued that the DoD Transmission Control Protocol (TCP)
   [MIL1778, RFC793] can also be seen as providing a connection-oriented
   and error-detecting network service.  This remark is controversial in
   the sense that the TCP is actually an end-to-end transport protocol
   and not a network protocol; the DoD Internet Protocol (IP) [MIL1777,
   RFC791] is the network protocol in the DoD Protocol Suite.  However,
   one of the advantages of layering is that, when properly architected,
   it enhances flexibility.  This notion led to the development of
   [RFC983] and its successor [RFC1006], which described how to provide
   the ISO transport service on top of TCP/IP internetworks.

3.  The Model

   The model is simple.  The method for transmitting TP0 packets using
   TCP is defined in [RFC1006].  The method for transmitting TP0 packets
   using X.25 is defined in [ISO8878].  The TP0 bridge merely has to
   convert between the two forms.  As with most protocols, there are
   three well-defined phases of interaction:  connection establishment,
   data transfer, and connection release.  The method of operation for
   the data transfer and connection release phases are quite similar