Network Working Group                                           A. Fuqua
Request for Comments: 2043                                           IBM
Category: Standards Track                                   October 1996


                  The PPP SNA Control Protocol (SNACP)

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Abstract

   The Point-to-Point Protocol (PPP) [1] provides a standard method for
   transporting multi-protocol datagrams over point-to-point links.  PPP
   defines an extensible Link Control Protocol, and proposes a family of
   Network Control Protocols for establishing and configuring different
   network-layer protocols.

   This document defines the Network Control Protocols for establishing
   and configuring Systems Network Architecture (SNA) over PPP and SNA
   over LLC 802.2 over PPP.

Table of Contents

   1.     Introduction ..........................................    2
      1.1       Specification of Requirements ...................    2
      1.2       Terminology .....................................    3
   2.     A PPP Network Control Protocol for SNA ................    4
   3.     Sending SNA PIUs and NLPs. ............................    5
      3.1       Sending SNA XID or FID2 PIUs over LLC ...........    5
      3.2       Sending HPR Network Layer Packets (NLPs) ........    5
      3.3       Other Considerations ............................    6
   SECURITY CONSIDERATIONS ......................................    6
   REFERENCES ...................................................    6
   ACKNOWLEDGEMENTS... ..........................................    7
   CHAIR'S ADDRESS ..............................................    7
   AUTHOR'S ADDRESS .............................................    7









Fuqua                       Standards Track                     [Page 1]


RFC 2043                       PPP SNACP                    October 1996


1.  Introduction

   PPP has three main components:

   1. A method for encapsulating multi-protocol datagrams.

   2. A Link Control Protocol (LCP) for establishing, configuring,
      and testing the data-link connection.

   3. A family of Network Control Protocols for establishing and
      configuring different network-layer protocols.

   In order to establish communications over a point-to-point link, each
   end of the PPP link must first send LCP packets to configure and test
   the data link.  After the link has been established and optional
   facilities have been negotiated as needed by the LCP, PPP must send
   SNACP packets to choose and configure the SNA network-layer protocol.
   Once SNACP has reached the Opened state, SNA datagrams can be sent
   over the link.

   The link will remain configured for communications until explicit LCP
   or SNACP packets close the link down, or until some external event
   occurs (an inactivity timer expires or network administrator
   intervention).

1.1.  Specification of Requirements

   In this document, several words are used to signify the requirements
   of the specification.  These words are often capitalized.

   MUST      This word, or the adjective "required", means that the
             definition is an absolute requirement of the specification.

   MUST NOT  This phrase means that the definition is an absolute
             prohibition of the specification.

   SHOULD    This word, or the adjective "recommended", means that there
             may exist valid reasons in particular circumstances to
             ignore this item, but the full implications must be
             understood and carefully weighed before choosing a
             different course.

   MAY       This word, or the adjective "optional", means that this
             item is one of an allowed set of alternatives.  An
             implementation which does not include this option MUST be
             prepared to interoperate with another implementation which
             does include the option.




Fuqua                       Standards Track                     [Page 2]


RFC 2043                       PPP SNACP                    October 1996


1.2.  Terminology

   This document frequently uses the following terms:

   datagram  The unit of transmission in the network layer (such as IP).
             A datagram may be encapsulated in one or more packets
             passed to the data link layer.

   frame     The unit of transmission at the data link layer.  A frame
             may include a header and/or a trailer, along with some
             number of units of data.

   packet    The basic unit of encapsulation, which is passed across the
             interface between the network layer and the data link
             layer.  A packet is usually mapped to a frame; the
             exceptions are when data link layer fragmentation is being
             performed, or when multiple packets are incorporated into a
             single frame.

   peer      The other end of the point-to-point link.

   silently discard
             This means the implementation discards the packet without
             further processing.  The implementation SHOULD provide the
             capability of logging the error, including the contents of
             the silently discarded packet, and SHOULD record the event
             in a statistics counter.

   PIU       Path information unit.  A message unit consisting of a
             transmission header (TH) alone, or a TH followed by a basic
             information unit (BIU) or a BIU segment.  PIU is analogous
             to datagram.

   TH        Transmission header.  Control information, optionally
             followed by a basic information unit (BIU) or a BIU
             segment, that is created and used by path control to route
             message units and to control their flow within the network.

   BIU       Basic information unit.  In SNA, the unit of data and
             control information passed between half-sessions.  It
             consists of a request/response header (RH) followed by a
             request/response unit (RU).

   message unit
             In SNA, the unit of data processed by any layer; for
             example, a basic information unit (BIU), a path information
             unit (PIU), or a request/response unit (RU).




Fuqua                       Standards Track                     [Page 3]


RFC 2043                       PPP SNACP                    October 1996


   NLP       Network Layer Packet.  In High Performance Routing (HPR),
             the message unit used to carry data over the route.
             Network Layer Packet is analogous to datagram.

2.  A PPP Network Control Protocol for SNA

   The SNA Control Protocol (SNACP) is responsible for configuring,
   enabling, and disabling SNA on both ends of the point-to-point link.
   SNACP uses the same packet exchange mechanism as the Link Control
   Protocol (LCP). SNACP packets may not be exchanged until PPP has
   reached the Network-Layer Protocol phase.  SNACP packets received
   before this phase is reached should be silently discarded.

   Note that there are actually two SNA Network Control Protocols; one
   for SNA over LLC 802.2 and another for SNA without LLC 802.2.  These
   SNA NCPs are negotiated separately and independently of each other.

   The SNA Control Protocol is exactly the same as the Link Control
   Protocol [1] with the following exceptions:

   Frame Modifications

      The packet may utilize any modifications to the basic frame format
      which have been negotiated during the Link Establishment phase.

   Data Link Layer Protocol Field

      Exactly one SNACP packet is encapsulated in the PPP Information
      field, where the PPP Protocol field indicates type hex 804B (SNA
      over LLC 802.2) or hex 804D (SNA).

   Code field

      Only Codes 1 through 7 (Configure-Request, Configure-Ack,
      Configure-Nak, Configure-Reject, Terminate-Request, Terminate-Ack
      and Code-Reject) are used.  Other Codes should be treated as
      unrecognized and should result in Code-Rejects.

   Timeouts

      SNACP packets may not be exchanged until PPP has reached the
      Network-Layer Protocol phase. An implementation should be prepared
      to wait for Authentication and Link Quality Determination to
      finish before timing out waiting for a Configure-Ack or other
      response.  It is suggested that an implementation give up only
      after user intervention or a configurable amount of time.





Fuqua                       Standards Track                     [Page 4]


RFC 2043                       PPP SNACP                    October 1996


   Configuration Option Types

      There are no Configuration Options for SNA or for SNA over LLC
      802.2.

3.  Sending SNA PIUs and NLPs.

   Before any SNA packets may be communicated, PPP must reach the
   Network-Layer Protocol phase, and the appropriate SNA Control
   Protocol must reach the Opened state.

   The maximum length of a SNA packet transmitted over a PPP link is the
   same as the maximum length of the Information field of a PPP
   encapsulated packet.

   The format of the PPP Information field itself is the same as that
   defined in [1].  Detailed information on SNA and APPN can be found in
   [3], [4], [5], [6], and [7].

3.1.  Sending SNA XID or FID2 PIUs over LLC

   Exactly one SNA XID or FID2 PIU over LLC 802.2 is encapsulated in the
   PPP Information field, where the PPP Protocol field indicates type
   hex 004B (SNA over LLC 802.2).

   A summary of this frame structure, beginning with the PPP Protocol
   field, is shown below. The fields are transmitted from left to right.

                -- LLC portion (PPP Information Field) -------------
               |                                                    |
   -+----------+----------+----------+----------+-------------------+-
    | Protocol | DSAP     | SSAP     | Control  | LLC Information   |
    | 0x004B   | Address  | Address  | Field    | Field             |
   -+----------+----------+----------+----------+-------------------+-

   The LLC information field contains the XID or FID2 PIU. LLC(2) is
   included in this format for link-level error recovery.  Error
   recovery is done by the routers at each end of the PPP link.

3.2.  Sending HPR Network Layer Packets (NLPs)

   Exactly one HPR Network Layer Packet (NLP) is encapsulated in the PPP
   Information field, where the PPP Protocol field indicates type hex
   004D (SNA).







Fuqua                       Standards Track                     [Page 5]


RFC 2043                       PPP SNACP                    October 1996


   A summary of this frame structure, beginning with the PPP Protocol
   field, is shown below. The fields are transmitted from left to right.

                -- HPR Network Layer Packet (NLP) --
                  |   (PPP Information Field)          |
      -+----------+--------+--------+------------------+-
       | Protocol | NHDR   | THDR   | data             |
       | 0x004D   |        |        |                  |
      -+----------+--------+--------+------------------+-

3.3.  Other Considerations

   It is architecturally possible to transport HPR NLPs over LLC over
   PPP using PPP Protocol field type hex 004B (SNA over LLC 802.2) if
   the optional HPR link-level error recover tower is included in the
   implementation.

Security Considerations

   Security issues are not discussed in this memo.

References

   [1]   Simpson, W., "The Point-to-Point Protocol (PPP)", STD 51,
         RFC 1661, Daydreamer, July 1994.

   [2]   Reynolds, J., and J. Postel, "Assigned Numbers", STD 2, RFC
         1700, USC/Information Sciences Institute, October 1994.

   [3]   "SNA Formats", GA27-3136, IBM.

   [4]   "SNA APPN Architecture Reference", SC30-3422, IBM.

   [5]   "APPN Architecture and Product Implementations Tutorial",
          GG24-3669-02, IBM.

   [6]   APPN Implementers Workshop homepage,
         http://www.raleigh.ibm.com/app/aiwhome.htm

   [7]   "APPN High Performance Routing (HPR) Architecture",
         ftp://networking.raleigh.ibm.com/pub/standards/aiw/appn/hpr


   IBM documents are orderable through 1-800-879-2755.







Fuqua                       Standards Track                     [Page 6]


RFC 2043                       PPP SNACP                    October 1996


Acknowledgements

   Some of the text in this document is taken from previous documents
   produced by the Point-to-Point Protocol Working Group of the Internet
   Engineering Task Force (IETF).

   Some of the text in this document is taken from miscellaneous IBM
   documents.

   Many people provided suggestions and portions of text for this
   document.  Special thanks to Allen Carriker, Marcia Peters, and Scott
   G. Wasson.

Chair's Address

   The working group can be contacted via the current chair:

   Karl F. Fox
   Ascend Communications
   3518 Riverside Dr., Suite 101
   Columbus, Ohio  4322

   EMail: karl@ascend.com

Author's Address

   Questions about this memo can also be directed to:

   Andrew M. Fuqua
   International Business Machines Corporation
   P. O. Box 12195
   Research Triangle Park, NC  27709

   EMail: fuqua@vnet.ibm.com

















Fuqua                       Standards Track                     [Page 7]