home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1377.txt < prev    next >
Text File  |  1996-05-07  |  23KB  |  308 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                            D. Katz Request for Comments: 1377                                         cisco                                                            November 1992 
  8.  
  9.            The PPP OSI Network Layer Control Protocol (OSINLCP) 
  10.  
  11. Status of this Memo 
  12.  
  13.    This RFC specifies an IAB standards track protocol for the Internet    community, and requests discussion and suggestions for improvements.    Please refer to the current edition of the "IAB Official Protocol    Standards" for the standardization state and status of this protocol.    Distribution of this memo is unlimited. 
  14.  
  15. Abstract 
  16.  
  17.    The Point-to-Point Protocol (PPP) [1] provides a standard method of    encapsulating Network Layer protocol information over point-to-point    links.  PPP also defines an extensible Link Control Protocol, and    proposes a family of Network Control Protocols (NCPs) for    establishing and configuring different network-layer protocols. 
  18.  
  19.    This document defines the NCP for establishing and configuring OSI    Network Layer Protocols. 
  20.  
  21.    This memo is the product of the Point-to-Point Protocol Working Group    of the Internet Engineering Task Force (IETF).  Comments on this memo    should be submitted to the ietf-ppp@ucdavis.edu mailing list. 
  22.  
  23. Table of Contents 
  24.  
  25.    1.     Introduction ..........................................    2    1.1    OSI Network Layer Protocols over PPP ..................    2    2.     A PPP Network Control Protocol (NCP) for OSI ..........    5    2.1    Sending OSI NPDUs .....................................    6    2.2    NPDU Alignment ........................................    6    2.3    Network Layer Addressing Information ..................    6    3.     OSINLCP Configuration Options .........................    7    3.1    Align-NPDU ............................................    7    REFERENCES ...................................................    9    ACKNOWLEDGEMENTS .............................................    9    SECURITY CONSIDERATIONS ......................................   10    CHAIR'S ADDRESS ..............................................   10    AUTHOR'S ADDRESS .............................................   10 
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  Katz                                                            [Page 1] 
  32.  RFC 1377                      PPP OSINLCP                  November 1992 
  33.  
  34.  1.  Introduction 
  35.  
  36.    PPP has three main components: 
  37.  
  38.       1. A method for encapsulating datagrams over serial links. 
  39.  
  40.       2. A Link Control Protocol (LCP) for establishing, configuring,          and testing the data-link connection. 
  41.  
  42.       3. A family of Network Control Protocols (NCPs) for establishing          and configuring different network-layer protocols. 
  43.  
  44.    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    NCP packets to choose and configure one or more network-layer    protocols.  Once each of the chosen network-layer protocols has been    configured, datagrams from each network-layer protocol can be sent    over the link. 
  45.  
  46.    The link will remain configured for communications until explicit LCP    or NCP packets close the link down, or until some external event    occurs (an inactivity timer expires or network administrator    intervention). 
  47.  
  48. 1.1.  OSI Network Layer Protocols over PPP 
  49.  
  50.    A number of protocols have been defined for the Network Layer of OSI,    including the Connectionless Network Layer Protocol (CLNP, ISO 8473)    [3], the End System to Intermediate System routing protocol (ES-IS,    ISO 9542) [4], the Intermediate System to Intermediate System routing    protocol (IS-IS, ISO 10589) [5], and the Inter-Domain Routeing    Protocol (IDRP, CD 10747) [6].  Generally, these protocols were    designed to run over non-reliable data link protocols such as PPP. 
  51.  
  52.    Network Layer Protocol Identifier (NLPID) 
  53.  
  54.       OSI Network Layer protocols can be discriminated according to the       first octet in each Network Protocol Data Unit (NPDU, that is,       packet), known as the Network Layer Protocol Identifier (NLPID),       which is defined in ISO/TR 9577 [7].  This allows the various       protocols to be run over a common data link without any       discriminator below the network layer. 
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62. Katz                                                            [Page 2] 
  63.  RFC 1377                      PPP OSINLCP                  November 1992 
  64.  
  65.     Inactive Network Layer Protocol 
  66.  
  67.       ISO/TR 9577 reserves a NLPID value of zero to represent the       "Inactive Network Layer Protocol", as defined in ISO 8473.  The       inactive network layer protocol MUST NOT be used over PPP.  This       assures that whichever OSI network layer protocol is used will       have a non-zero NLPID value. 
  68.  
  69.    Connection-Oriented Network Protocol 
  70.  
  71.       The OSI Connection-Oriented Network Protocol (ISO 8208) [8],       effectively the Packet Layer of CCITT X.25, is intended to be run       over a reliable data link, such as IEEE 802.2 type II or LAPB.       Therefore, the unreliable data link service provided by PPP is not       appropriate for use with ISO 8208. 
  72.  
  73.    ConnectionLess Network Protocol (CLNP) 
  74.  
  75.       The ConnectionLess Network Protocol offers a simple non-reliable       datagram service very similar to IP, and is designed to run over a       non-reliable data link service, such as provided by PPP. 
  76.  
  77.    End-System to Intermediate-System Protocol (ES-IS) 
  78.  
  79.       ES Hellos and IS Hellos are retransmitted on a periodic timer-       driven basis (based on expiration of the "Configuration Timer").       The resulting ES and IS configuration information is invalidated       on a timer driven basis, based on expiration of the "Holding       Timer" for each piece of information.  The value of a Holding       Timer is set by the source of the information, and transmitted in       the Holding Time field of the appropriate ES-IS packet.  ISO 9542       recommends that the holding time field is set to approximately       twice the Configuration Timer parameter, such that even if every       other Hello packet is lost the configuration information will be       retained (implying that the Holding Timer is actually set to       slightly more than twice the Configuration Timer). 
  80.  
  81.       Generally, the recommendation in ISO 9542 is sufficient for PPP       links.  For very unreliable links, it may be necessary to set the       Holding Timer to be slightly more than three times the       Configuration Timer to ensure that loss of configuration       information is an unusual event. 
  82.  
  83.       Redirect information is not transmitted on point-to-point links,       but may be transmitted on general topology subnetworks, which in       turn may make use of PPP.  Redirect information is sent on a       event-driven basis (based on a CLNP packet being forwarded by a       router out the incoming interface), but redirect information is 
  84.  
  85.  
  86.  
  87. Katz                                                            [Page 3] 
  88.  RFC 1377                      PPP OSINLCP                  November 1992 
  89.  
  90.        invalidated on a timer-driven basis.  Loss of a single redirect       may result in a subsequent data packet being sent to the same       incorrect router, which will re-issue the redirect.  This operates       in the same manner as ICMP redirects for IP packets, and does not       pose any problem for operation over PPP links. 
  91.  
  92.    Intermediate-System to Intermediate-System Protocol (IS-IS) 
  93.  
  94.       IS-IS allows for broadcast links (typically LANs), point-to-point       links (such as PPP), and general topology links (such as X.25       networks) which are modelled as a collection of point-to-point       links. 
  95.  
  96.       There are four types of IS-IS packets: IS-IS Hello Packets, Link       State Packets (LSPs), Complete Sequence Number Packets (CSNPs),       and Partial Sequence Number Packets (PSNPs). 
  97.  
  98.       IS-IS Hello messages are transmitted periodically on point-to-       point links (based on expiration of the "ISISHello" timer).       Routers expect to receive IS-IS Hello packets periodically.       Specifically, the IS-IS Hello packet specifies a "Holding Time".       If no subsequent IS-IS Hello is received over the corresponding       link for the specified time period, then the neighboring router is       assumed to have been disconnected or to be down.  It is highly       undesireable for links to "flap" up and down unnecessarily, which       implies that the holding time needs to be large enough that a link       is very unlikely to be declared down due to a failure to receive       an IS-IS Hello.  This implies that running IS-IS over unreliable       data links requires the Holding time to be greater than "k" times       the ISISHello timer, where k is chosen such that the loss of k       consecutive IS-IS Hello's is rare.  If the quality of the link is       poor, then the Holding Time will need to be increased or the       "ISISHello" time decreased. 
  99.  
  100.       LSPs are acknowledged by the IS-IS protocol (via use of partial       sequence number packets).  A lost LSP will be recovered from with       no problem provided that PPP links are treated the same way as       other point-to-point links.  On those rare occasions where a       partial sequence number packet is lost, this might result in the       retransmission of a link state packet over a single link, but will       not impact the correct operation of the routing algorithm. 
  101.  
  102.       CSNPs are sent upon link startup on a point-to-point link.  This       does not need to be changed for PPP.  If a CSNP fragment is lost       upon startup it is merely loss of an optimization -- LSPs that did       not need to be transmitted over the link will be transmitted.  If       a periodic CSNP fragment is lost it merely means that detection of       low probability database corruption will take longer. 
  103.  
  104.  
  105.  
  106. Katz                                                            [Page 4] 
  107.  RFC 1377                      PPP OSINLCP                  November 1992 
  108.  
  109.        PSNPs function as ACKs.  Loss of a PSNP may result in an       unnecessary retransmission of an LSP, but does not prevent correct       operation of the routing protocol. 
  110.  
  111.    Inter-Domain Routeing Protocol (IDRP) 
  112.  
  113.       IDRP expects to run over datagram links, but requires reliable       exchange of IDRP information.  For this reason, IDRP contains       built-in reliability mechanisms which ensure that packets will be       received correctly. 
  114.  
  115. 2.  A PPP Network Control Protocol (NCP) for OSI 
  116.  
  117.    The OSI Network Layer Control Protocol (OSINLCP) is responsible for    configuring, enabling, and disabling the OSI protocol modules on both    ends of the point-to-point link.  OSINLCP uses the same packet    exchange machanism as the Link Control Protocol (LCP).  OSINLCP    packets may not be exchanged until PPP has reached the Network-Layer    Protocol phase.  OSINLCP packets received before this phase is    reached should be silently discarded. 
  118.  
  119.    The OSI Network Layer Control Protocol is exactly the same as the    Link Control Protocol [1] with the following exceptions: 
  120.  
  121.    Frame Modifications 
  122.  
  123.       The packet may utilize any modifications to the basic frame format       which have been negotiated during the Link Establishment phase. 
  124.  
  125.    Data Link Layer Protocol Field 
  126.  
  127.       Exactly one OSINLCP packet is encapsulated in the Information       field of a PPP Data Link Layer frame where the Protocol field       indicates type hex 8023 (OSI Network Layer Control Protocol). 
  128.  
  129.    Code field 
  130.  
  131.       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. 
  132.  
  133.    Timeouts 
  134.  
  135.       OSINLCP 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 
  136.  
  137.  
  138.  
  139. Katz                                                            [Page 5] 
  140.  RFC 1377                      PPP OSINLCP                  November 1992 
  141.  
  142.        response.  It is suggested that an implementation give up only       after user intervention or a configurable amount of time. 
  143.  
  144.    Configuration Option Types 
  145.  
  146.       OSINLCP has one Configuration Option, which is defined below. 
  147.  
  148. 2.1.  Sending OSI NPDUs 
  149.  
  150.    Before any Network Protocol Data Units (NPDUs) may be communicated,    PPP must reach the Network-Layer Protocol phase, and the OSI Network    Layer Control Protocol must reach the Opened state. 
  151.  
  152.    Exactly one OSI NPDU is encapsulated in the Information field of a    PPP Data Link Layer frame where the Protocol field indicates type hex    0023 (OSI Network Layer). 
  153.  
  154.    The maximum length of an OSI NPDU transmitted over a PPP link is the    same as the maximum length of the Information field of a PPP data    link layer frame.  Larger NPDUs must be segmented as necessary.  If a    system wishes to avoid segmentation and reassembly, it should use    transport layer mechanisms to discourage others from sending large    PDUs. 
  155.  
  156. 2.2.  NPDU Alignment 
  157.  
  158.    OSI protocols have peculiar alignment problems due to the fact that    they are often encapsulated in data link protocols with odd-length    headers, while PPP defaults to even-length headers.  A router    switching an OSI packet may find that the beginning of the packet    falls on an inconvenient memory boundary when the hardware used to    transmit the packet to its next hop requires a particular alignment.    This situation can be addressed by the use of leading zero padding. 
  159.  
  160.    When sending, an implementation MAY insert one to three octets of    zero between the PPP header and the OSI NPDU.  These zero octets    correspondingly reduce the maximum length of the NPDU that may be    transmitted. 
  161.  
  162.    On reception, any such leading zero octets (if present) MUST be    removed.  Regardless of whether leading zero padding is used, an    implementation MUST also be able to receive a PPP packet with any    arbitrary alignment of the NPDU. 
  163.  
  164. 2.3.  Network Layer Addressing Information 
  165.  
  166.    OSINLCP does not define a separate configuration option for the    exchange of OSI Network Layer address information.  Instead, the ES- 
  167.  
  168.  
  169.  
  170. Katz                                                            [Page 6] 
  171.  RFC 1377                      PPP OSINLCP                  November 1992 
  172.  
  173.     IS protocol, ISO 9542, should be used.  This protocol provides a    mechanism for determining the Network Layer address(es) of the    neighbor on the link, as well as determining if the neighbor is an    End System or an Intermediate System. 
  174.  
  175.    A draft addendum to ES-IS [9] is being defined in ISO to add support    for dynamic address assignment.  This addendum has currently passed    the formal "Committee Draft" (CD) letter ballot. 
  176.  
  177. 3.  OSINLCP Configuration Options 
  178.  
  179.    OSINLCP Configuration Options allow negotiatiation of desirable    Internet Protocol parameters.  OSINLCP uses the same Configuration    Option format defined for LCP [1], with a separate set of Options. 
  180.  
  181.    The most up-to-date values of the OSINLCP Option Type field are    specified in the most recent "Assigned Numbers" RFC [2].  Current    values are assigned as follows: 
  182.  
  183.       1       Align-NPDU 
  184.  
  185. 3.1.  Align-NPDU 
  186.  
  187.    Description 
  188.  
  189.       This Configuration Option provides a way for the receiver to       negotiate a particular alignment of the OSI NPDU.  Empirical       evidence suggests that the greatest time deficit for re-alignment       exists at the receiver. 
  190.  
  191.       The alignment is accomplished through combination of PPP header       compression with leading zero padding (see above).  It is       recommended that alignment be entirely through header compression       combinations whenever possible.  For example, an alignment of 3       could be achieved by combining uncompressed PPP Address and       Control fields (2 octets) with a compressed PPP Protocol field (1       octet). 
  192.  
  193.       This option is negotiated separately in each direction.  A       receiver which does not need alignment MUST NOT request the       option.  A sender which desires alignment prior to sending SHOULD       Configure-Nak with an appropriate value. 
  194.  
  195.          Implementation Note: In a complex environment, there might be          several conflicting needs for alignment.  It is recommended          that the receiver request alignment based on the needs of the          highest speed next hop link.  Also, greater efficiency might be          obtained by negotiating upstream the values requested by 
  196.  
  197.  
  198.  
  199. Katz                                                            [Page 7] 
  200.  RFC 1377                      PPP OSINLCP                  November 1992 
  201.  
  202.           downstream PPP links, since those packets will not need a          change in alignment on transit. 
  203.  
  204.       The alignment request is advisory, and failure to agree on an       alignment MUST NOT prevent the OSINLCP from reaching the Opened       state.  By default, the alignment is done according to the needs       of the sender, and all receivers MUST be capable of accepting       packets with any alignment. 
  205.  
  206.          Vernacular: If you don't like this option, you can refuse to          negotiate it, and you can send whatever alignment you want.          However, if you accept the peer's alignment option, then you          MUST transmit packets with the agreed alignment. 
  207.  
  208.    A summary of the Align-NPDU Configuration Option format is shown    below.  The fields are transmitted from left to right. 
  209.  
  210.     0                   1                   2     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+    |     Type      |    Length     |   Alignment   |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
  211.  
  212.    Type 
  213.  
  214.       1 
  215.  
  216.    Length 
  217.  
  218.       3 
  219.  
  220.    Alignment 
  221.  
  222.       This field specifies the offset of the beginning of the OSI NPDU       relative to the beginning of the PPP packet header (not including       any leading Flag Sequences). 
  223.  
  224.       A value of 1 through 4 requires an offset of that specific length,       modulo 4.  For example, a value of 1 would require no padding when       the PPP Address, Control, and Protocol fields are compressed.  One       octet of leading zero padding would be necessary when the PPP       header is full sized. 
  225.  
  226.       A value of 255 requests an offset of an odd length (1 or 3).  A       value of 254 requests an offset of an even length (2 or 4).  If       the sender is not capable of dynamically varying the amount of       padding, it MUST NAK with one of the two specific values. 
  227.  
  228.  
  229.  
  230.  Katz                                                            [Page 8] 
  231.  RFC 1377                      PPP OSINLCP                  November 1992 
  232.  
  233.  References 
  234.  
  235.    [1] Simpson, W., "The Point-to-Point Protocol (PPP)", RFC 1331,        Daydreamer, May 1992. 
  236.  
  237.    [2] Reynolds, J., and J. Postel, "Assigned Numbers", STD 2, RFC 1340,        USC/Information Sciences Institute, July 1992. 
  238.  
  239.    [3] ISO, "Information processing systems -- Data communications --        Protocol for providing the connectionless-mode network        service", ISO 8473, 1988. 
  240.  
  241.    [4] ISO, "Information processing systems -- Telecommunications and        information exchange between systems -- End system to        Intermediate system Routeing exchange protocol for use in        conjunction with the protocol for providing the connectionless-        mode network service (ISO 8473)", ISO 9542, 1988. 
  242.  
  243.    [5] ISO, "Information processing systems -- Telecommunications and        information exchange between systems -- Intermediate system to        Intermediate system Intra-Domain routeing exchange protocol for        use in conjunction with the protocol for providing the        connectionless-mode network service (ISO 8473)", ISO 10589,        1990. 
  244.  
  245.    [6] ISO, "Protocol for Exchange of Inter-domain Routeing        Information among Intermediate Systems to Support Forwarding of        ISO 8473 PDUs", ISO CD 10747, 1991. 
  246.  
  247.    [7] ISO, "Information technology -- Telecommunications and        information exchange between systems -- Protocol identification        in the network layer", ISO/IEC TR9577:1990. 
  248.  
  249.    [8] ISO, "Information processing systems -- Data communications --        X.25 packet level protocol for Data terminal equipment", ISO        8208, 1984. 
  250.  
  251.    [9] Taylor, E., "Addendum to ISO 9542 (PDAM 1 - Dynamic Discovery        of OSI NSAP Addresses by End Systems)", SC6/N7248. 
  252.  
  253. Acknowledgments 
  254.  
  255.    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). 
  256.  
  257.    Special thanks to Ross Callon (DEC), and Cyndi Jung (3Com), for    contributions of text and design suggestions based on implementation 
  258.  
  259.  
  260.  
  261. Katz                                                            [Page 9] 
  262.  RFC 1377                      PPP OSINLCP                  November 1992 
  263.  
  264.     experience. 
  265.  
  266.    Thanks also to Bill Simpson for his editing and formatting efforts,    both for this document and for PPP in general. 
  267.  
  268. Security Considerations 
  269.  
  270.    Security issues are not discussed in this memo. 
  271.  
  272. Chair's Address 
  273.  
  274.    The working group can be contacted via the current chair: 
  275.  
  276.    Brian Lloyd    Lloyd & Associates    3420 Sudbury Road    Cameron Park, California 95682 
  277.  
  278.    Phone: (916) 676-1147    EMail: brian@lloyd.com 
  279.  
  280. Author's Address 
  281.  
  282.    Questions about this memo can also be directed to: 
  283.  
  284.    Dave Katz    cisco Systems, Inc.    1525 O'Brien Dr.    Menlo Park, CA  94025 
  285.  
  286.    Phone: (415) 688-8284    EMail: dkatz@cisco.com 
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306. Katz                                                           [Page 10] 
  307.  
  308.