home *** CD-ROM | disk | FTP | other *** search
/ Hackers Toolkit 2.0 / Hackers_Toolkit_v2.0.iso / HTML / archive / Texts / Rfc / RFC1547.TXT < prev    next >
Encoding:
Text File  |  1999-11-04  |  48.6 KB  |  1,198 lines

  1. Network Working Group                                         D. Perkins
  2. Request for Comments: 1547                    Carnegie Mellon University
  3. Category: Informational                                    December 1993
  4.  
  5.  
  6.      Requirements for an Internet Standard Point-to-Point Protocol
  7.  
  8. Status of this Memo
  9.  
  10.    This memo provides information for the Internet community.  This memo
  11.    does not specify an Internet standard of any kind.  Distribution of
  12.    this memo is unlimited.
  13.  
  14. Abstract
  15.  
  16.    This document discusses the evaluation criteria for an Internet
  17.    Standard Data Link Layer protocol to be used with point-to-point
  18.    links.  Although many industry standard protocols and ad hoc
  19.    protocols already exist for the data link layer, none are both
  20.    complete and sufficiently versatile to be accepted as an Internet
  21.    Standard.  In preparation to designing such a protocol, the features
  22.    necessary to qualify a point-to-point protocol as an Internet
  23.    Standard are discussed in detail.  An analysis of the strengths and
  24.    weaknesses of several existing protocols on the basis of these
  25.    requirements demonstrates the failure of each to address key issues.
  26.  
  27.       Historical Note: This was the design requirements document dated
  28.       June 1989, which was followed for RFC-1134 through the present.
  29.       It is now published for completeness and future guidance.
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52. Perkins                                                         [Page 1]
  53.  
  54.  
  55. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  56.  
  57.  
  58. Table of Contents
  59.  
  60.    1.    Introduction ................................................3
  61.    1.1   Definitions of Terms ........................................4
  62.    2.    Required Features ...........................................6
  63.    2.1   Simplicity ..................................................7
  64.    2.2   Transparency ................................................7
  65.    2.3   Packet Framing ..............................................7
  66.    2.4   Bandwidth Efficiency ........................................8
  67.    2.5   Protocol Processing Efficiency ..............................8
  68.    2.6   Protocol Multiplexing .......................................8
  69.    2.7   Multiple Physical and Data Link Layer Protocols..............8
  70.    2.8   Error Detection .............................................9
  71.    2.9   Standardized Maximum Packet Length (MTU) ....................9
  72.    2.10  Switched and Non-Switched Media .............................9
  73.    2.11  Symmetry ....................................................9
  74.    2.12  Connection Liveness .........................................10
  75.    2.13  Loopback Detection ..........................................10
  76.    2.14  Misconfiguration Detection ..................................11
  77.    2.15  Network Layer Address Negotiation ...........................11
  78.    2.16  Data Compression Negotiation ................................11
  79.    2.17  Extensibility and Option Negotiation ........................12
  80.    3.    Features Not Required .......................................12
  81.    3.1   Error Correction ............................................12
  82.    3.2   Flow Control ................................................13
  83.    3.3   Sequencing ..................................................13
  84.    3.4   Backward Compatibility ......................................13
  85.    3.5   Multi-Point Links ...........................................13
  86.    3.6   Half-Duplex or Simplex Links ................................14
  87.    3.7   7-bit Asynchronous RS-232 Links .............................14
  88.    4.    Prior Work On PPP Protocols .................................14
  89.    4.1   Internet Protocols ..........................................14
  90.    4.1.1 RFC 891 - DCN Local-Network Protocols, Appendix A............14
  91.    4.1.2 RFC 914 - Thinwire Protocols ................................14
  92.    4.1.3 RFC 916 - Reliable Asynchronous Transfer Protocol............15
  93.    4.1.4 RFC 935 - Reliable Link Layer Protocols .....................15
  94.    4.1.5 RFC 1009 - Requirements for Internet Gateways ...............15
  95.    4.1.6 RFC 1055 - Serial Line IP ...................................16
  96.    4.2   International Protocols .....................................16
  97.    4.2.1 ISO 3309 - HDLC Frame Structure .............................16
  98.    4.2.2 ISO 6256 - HDLC Balanced Class of Procedures.................16
  99.    4.2.3 CCITT X.25 and X.25 LAPB ....................................17
  100.    4.2.4 CCITT I.441 LAPD ............................................17
  101.    4.3   Other Protocols .............................................17
  102.    4.3.1 Cisco Systems point-to-point protocols ......................17
  103.    4.3.2 MIT PC/IP framing protocol ..................................18
  104.    4.3.3 Proteon p4200 point-to-point protocol .......................18
  105.    4.3.4 Ungermann Bass point-to-point protocol ......................18
  106.  
  107.  
  108.  
  109. Perkins                                                         [Page 2]
  110.  
  111.  
  112. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  113.  
  114.  
  115.    4.3.5 Wellfleet point-to-point protocol ...........................19
  116.    4.3.6 XNS Synchronous Point-to-Point Protocol .....................19
  117.    REFERENCES ........................................................20
  118.    SECURITY CONSIDERATION.............................................21
  119.    CHAIR'S ADDRESS ...................................................21
  120.    AUTHOR'S ADDRESS ..................................................21
  121.    EDITOR'S ADDRESS ..................................................21
  122.  
  123. 1. Introduction
  124.  
  125.    The Internet has seen explosive growth in the number of hosts
  126.    supporting IP [1].  The vast majority of these hosts are connected to
  127.    Local Area Networks (LANs) of various types, Ethernet being the most
  128.    common.  Most of the other hosts are connected through Wide Area
  129.    Networks (WANs), such as X.25 style Public Data Networks (PDNs).
  130.  
  131.    In the past, relatively few of these hosts were connected with simple
  132.    point-to-point links.  Yet, point-to-point serial links are among the
  133.    oldest methods of data communications, and almost every host supports
  134.    point-to-point connections.  For example, asynchronous RS-232
  135.    interfaces are essentially ubiquitous.
  136.  
  137.    One reason for the small number of point-to-point IP links was the
  138.    lack of a single established encapsulation protocol.  There were
  139.    plenty of non-standard (and at least one de facto standard)
  140.    encapsulation protocols available, but there was not one which was
  141.    agreed upon as an Internet Standard.
  142.  
  143.    A number of protocols have been proposed to the Internet community,
  144.    but no consensus was reached as to which protocol should be adopted
  145.    as a standard.  The reason may be that these proposals often
  146.    addressed specific problems rather than providing general purpose
  147.    service.
  148.  
  149.    For example, one of the most successful protocols to-date was Rick
  150.    Adam's SLIP protocol for BSD UNIX [9].  SLIP provides only the most
  151.    rudimentary support for sending IP datagrams over asynchronous serial
  152.    lines, and ignores issues such as the use of protocols other than IP
  153.    and the use of synchronous links.
  154.  
  155.    This document proposes a set of requirements for an Internet Standard
  156.    point-to-point protocol (ISPPP).  Its purpose is not to propose any
  157.    one design for the standard; any solutions outlined in the text are
  158.    intended only as examples, and do not preclude other implementations.
  159.  
  160.    The document is divided into four major sections.  The first section
  161.    defines a number of technical terms used in this document.  The
  162.    second section lists the proposed requirements and details some
  163.  
  164.  
  165.  
  166. Perkins                                                         [Page 3]
  167.  
  168.  
  169. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  170.  
  171.  
  172.    issues that are ignored by other protocols.  The third section
  173.    attempts to clarify a number of non-requirements.  The fourth section
  174.    analyzes existing protocols in light of the proposed requirements and
  175.    discusses the failure of each to address key issues.
  176.  
  177. 1.1 Definitions of Terms
  178.  
  179.    This section defines many of the terms which will be used in further
  180.    sections of this document.  The terms "layer" and "level" are used
  181.    extensively and refer to protocol layers as defined by the
  182.    International Organization For Standardization's Reference Model
  183.    (ISORM) standard.  In particular, the terms Physical Layer, Data Link
  184.    Layer and Network Layer refer to layers one, two and three
  185.    respectively of the ISORM.  A "higher layer" refers to one with a
  186.    numerically larger layer number.
  187.  
  188.     datagram
  189.  
  190.       The unit of transmission in the network layer (such as IP).  A
  191.       datagram may be encapsulated in one or more packets (q.v.) passed
  192.       to the data link layer.
  193.  
  194.     data link layer
  195.  
  196.       Layer two in the ISO reference model.  Defines how bits
  197.       transmitted and received by the physical layer are recognized as
  198.       bytes and frames.  May also define procedures for error detection
  199.       and correction, sequencing and flow control.
  200.  
  201.     fragment
  202.  
  203.       The result of fragmentation.  Fragmentation at the network layer
  204.       breaks large datagrams into multiple parts less than or equal to
  205.       the size of the packets passed to the data link layer.
  206.       Fragmentation at the data link layer breaks large packets into
  207.       multiple frames.
  208.  
  209.     frame
  210.  
  211.       The unit of transmission at the data link layer.  A frame may
  212.       include a header and/or a trailer along with some number of units
  213.       of data.
  214.  
  215.     framing protocol
  216.  
  217.       A protocol at the data link level for marking the beginning and
  218.       end of a frame transmitted across a link.
  219.  
  220.  
  221.  
  222.  
  223. Perkins                                                         [Page 4]
  224.  
  225.  
  226. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  227.  
  228.  
  229.     internet
  230.  
  231.       An interconnected system of networks tied together by a common
  232.       "internet protocol" providing a common and consistent network
  233.       address structure.
  234.  
  235.     Internet
  236.  
  237.       Specifically refers to the IP Internet.
  238.  
  239.     Internet Standard Point-to-Point Protocol (ISPPP)
  240.  
  241.       A point-to-point protocol which is declared an official Internet
  242.       Standard.  This protocol does not yet exist, but its proposed
  243.       characteristics are presented in this paper.
  244.  
  245.     Maximum Transmission Unit (MTU)
  246.  
  247.       The maximum allowable length for a packet (q.v.) transmitted over
  248.       a point-to-point link without incurring network layer
  249.       fragmentation.
  250.  
  251.     network layer
  252.  
  253.       Layer three in the ISO reference model.  Responsible for routing
  254.       packets (q.v) between physical networks.
  255.  
  256.     octet
  257.  
  258.       A unit of transmission consisting of 8 bits.  On most machines an
  259.       octet is the same as a byte or a character, but this need not be
  260.       true.
  261.  
  262.     packet
  263.  
  264.       The unit of transmission passed across the interface between the
  265.       network layer and the data link layer.  A packet is usually mapped
  266.       to a frame (q.v); the exception is when data link layer
  267.       fragmentation is being performed.
  268.  
  269.     physical layer
  270.  
  271.       The first layer in the ISO reference model.  Describes electrical,
  272.       mechanical and timing characteristics of a link.
  273.  
  274.     point-to-point protocol (ppp)
  275.  
  276.       A data link layer protocol for the transmission of packets (q.v.)
  277.  
  278.  
  279.  
  280. Perkins                                                         [Page 5]
  281.  
  282.  
  283. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  284.  
  285.  
  286.       over a point-to-point link.  In the following discussion, the
  287.       acronym "ppp" refers to any generic point-to-point protocol.
  288.  
  289.     serial line IP (slip)
  290.  
  291.       Often incorrectly used as a synonym for "point-to-point protocol",
  292.       "slip" specifically refers to any protocol for the transmission of
  293.       IP datagrams over a serial point-to-point line.
  294.  
  295.     SLIP
  296.  
  297.       Although many proposed protocols are named "SLIP", this document
  298.       will use SLIP (uppercase) to refer to Rick Adam's slip (q.v.) for
  299.       BSD UNIX [9].
  300.  
  301. 2. Required Features
  302.  
  303.    In order for a point-to-point protocol to be accepted by the Internet
  304.    community it must adequately address many requirements.  This section
  305.    itemizes and discusses the proposed requirements.  Although the main
  306.    emphasis of the discussion is on protocol architecture requirements,
  307.    implementation requirements are sometimes discussed as well.
  308.  
  309.    These particular requirements were chosen to assure that the ISPPP
  310.    adequately serves the needs of its users.  Some of these needs are
  311.    universal and dictate clear requirements for the protocol; for
  312.    example, a packet framing protocol is a fundamental necessity.  Other
  313.    needs are more specific and may even be conflicting.  Connection
  314.    liveness determination is very important on some links but can be
  315.    very expensive on others.  A standard protocol must address all of
  316.    these needs; in particular, it must be able to resolve conflicts
  317.    effectively.
  318.  
  319.    Resolving these conflicts requires that a protocol feature have both
  320.    enabled and disabled modes and that these modes must be compatible
  321.    with each other.  The enabled mode allows the protocol to solve
  322.    problems in environments where they exist.  The disabled mode allows
  323.    problems to be ignored in environments where they do not exist.  To
  324.    assure interoperabilty, implementations are required to support both
  325.    modes and allow the user (not necessarily human) to dynamically
  326.    choose which is appropriate.
  327.  
  328.    This is essentially the same solution used in the User Datagram
  329.    Protocol (UDP) [2].  The UDP datagram checksum may be computed
  330.    (enabled mode) or it may not (disabled mode).  Compatibility is
  331.    maintained by requiring the checksum to be transmitted as zero in
  332.    disabled mode and ignored when received as zero in either mode.
  333.    Implementations of UDP are generally encouraged to support both modes
  334.  
  335.  
  336.  
  337. Perkins                                                         [Page 6]
  338.  
  339.  
  340. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  341.  
  342.  
  343.    but allow the application to choose modes.
  344.  
  345. 2.1 Simplicity
  346.  
  347.    The ISPPP must be simple.  The Internet architecture very carefully
  348.    places the most complexity in the transport layer (that is, TCP).
  349.    The internetwork layer (IP) is a fairly simple, almost stateless
  350.    protocol providing an unreliable datagram service.  The data link
  351.    layer need provide no more capability than the IP protocol; no error
  352.    correction, sequencing or flow control is necessary.  Including these
  353.    would in most cases needlessly duplicate the capabilities of the
  354.    transport layer, and might possibly decrease efficiency.  This is not
  355.    to say that these capabilities must never be included; there are some
  356.    cases which may warrant them.  For instance, very noisy links may be
  357.    more efficiently handled using a more complex data link layer
  358.    protocol such as CCITT's LAPB.  Nevertheless, the watchword for a
  359.    point-to-point protocol should be simplicity.
  360.  
  361.    A simple design also decreases the incidence of programming errors,
  362.    thereby increasing the likelihood of interoperability among different
  363.    implementations.  Since interoperability is a primary goal of
  364.    standardization, this is another strong argument for simplicity.
  365.  
  366. 2.2 Transparency
  367.  
  368.    The ISPPP must be transparent to higher layers.  The protocol must
  369.    not place any constraints on transmitted data.  All ISPPP data,
  370.    including higher level headers as well as data, must be transported
  371.    unmodified end-to-end.  No restrictions are placed on how the ISPPP
  372.    accomplishes this.  For example, if the ISPPP uses a particular
  373.    character for framing, it must also provide some way of
  374.    disambiguating higher level data containing that character from a
  375.    framing character (such as escaping or bit-stuffing).  This is mainly
  376.    an issue for the data link and physical layer protocols incorporated
  377.    into the ISPPP.
  378.  
  379. 2.3 Packet Framing
  380.  
  381.    The ISPPP must be able to correctly and efficiently frame packets.  A
  382.    receiver must be able to locate correctly the beginning and end of
  383.    each transmitted packet.  Within each packet, the receiver must be
  384.    able to identify the boundaries of each octet.  Finally, within each
  385.    octet, each bit must be located and identified.  No restrictions
  386.    other than those specified in this document are placed on the packet
  387.    framing protocol.
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Perkins                                                         [Page 7]
  395.  
  396.  
  397. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  398.  
  399.  
  400. 2.4 Bandwidth Efficiency
  401.  
  402.    The ISPPP must make efficient use of available bandwidth.  At most,
  403.    the ppp overhead may impose a few percent reduction in raw link
  404.    bandwidth.
  405.  
  406. 2.5 Protocol Processing Efficiency
  407.  
  408.    The processing of the ISPPP headers must typically be very fast and
  409.    efficient.  The format for data packets should be very simple in the
  410.    normal case, without complex field checking.
  411.  
  412. 2.6 Protocol Multiplexing
  413.  
  414.    The ISPPP must support multiplexing of many higher level protocols.
  415.    Although the Internet community is interested mainly in IP, co-
  416.    existence of other protocols is frequently required.  IP networks
  417.    must often support additional protocols such as AppleTalk, DECnet,
  418.    IPX, and XNS.  For point-to-point links to connect gateways on
  419.    geographically separated Local Area Networks (LANs), the ISPPP must
  420.    simultaneously support all protocols implemented on both the LANs and
  421.    the gateways.  This suggests that the ISPPP must include a protocol
  422.    type field or other multiplexing scheme.  Given the large number of
  423.    protocols, the potential use of the protocol type field as a data
  424.    compression aid, and the experimental nature of the Internet, eight
  425.    bits of type field are not sufficient.  Sixteen bits of type field
  426.    are suggested, although twelve bits (4096 protocols) should suffice.
  427.  
  428. 2.7 Multiple Physical and Data Link Layer Protocols
  429.  
  430.    The ISPPP must support a multiplicity of physical and data link layer
  431.    protocols.  Many types of point-to-point links exist.  Links can be
  432.    serial or parallel, synchronous or asynchronous, low speed or high
  433.    speed, electrical or optical.  Standards are required for the
  434.    transmission of IP datagrams over each type of commonly used link.
  435.  
  436.    The ISPPP must not inhibit the use of any type of link.  This
  437.    includes, but is not limited to, asynchronous, bit-oriented
  438.    synchronous (HDLC [10] and X.25 LAPB [11]), and byte-oriented
  439.    synchronous (BISYNC and DDCMP [15]) links.
  440.  
  441.    The ISPPP must initially provide support for at least the following
  442.    types of links:
  443.  
  444.       Full duplex asynchronous RS-232 [3] links with 8 bits of data and
  445.       no parity, ranging in speeds from 300 to 19.2k bps or more.
  446.  
  447.       Full duplex bit-oriented synchronous links including RS-422, RS-
  448.  
  449.  
  450.  
  451. Perkins                                                         [Page 8]
  452.  
  453.  
  454. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  455.  
  456.  
  457.       423, V.35 and T1.
  458.  
  459.       Other links should be standardized as the need arises.
  460.  
  461. 2.8 Error Detection
  462.  
  463.       The ISPPP must provide some form of basic error detection.  Most
  464.       network and transport layer protocols provide mechanisms to detect
  465.       corrupted packets.  However, some network protocols expect error
  466.       free transmission and either provide error detection only on a
  467.       conditional basis or do not provide it at all.  It is the
  468.       consensus of the Internet community that error correction should
  469.       always be implemented in the end-to-end transport, but that link
  470.       error detection in the form of a checksum, Cyclic Redundancy Check
  471.       (CRC) or other frame check mechanism is useful to prevent wasted
  472.       bandwidth from propagation of corrupted packets.  Link level error
  473.       correction is not required.
  474.  
  475. 2.9 Standardized Maximum Packet Length (MTU)
  476.  
  477.       The ISPPP must have a standardized default maximum packet length
  478.       for each type of point-to-point link.  This standardization helps
  479.       to promote interoperable implementations.  Higher layer protocols
  480.       must not attempt to transmit packets longer than the MTU.  If a
  481.       higher layer protocol does try to transmit a packet which is too
  482.       long, the ISPPP must drop the packet and return an error.  The MTU
  483.       may potentially be changed from the default via some sort of
  484.       explicit negotiation or private agreement, but the default must be
  485.       enforced in all other cases.  The default should be at least 1500
  486.       bytes, to efficiently carry common LAN traffic.
  487.  
  488. 2.10 Switched and Non-Switched Media
  489.  
  490.       The ISPPP must be able to support both switched (dynamic) and non-
  491.       switched (static) point-to-point links.  A common example of a
  492.       non- switched link is a 3-wire asynchronous RS-232 cable which
  493.       might connect a host to a particular gateway.  Switched media may
  494.       be exemplified by connections over a standard voice network or an
  495.       Integrated Services Digital Network (ISDN).  Links over ISDN are
  496.       currently rare, but are expected to become increasingly
  497.       commonplace.  To be a viable standard, the ISPPP must be able to
  498.       effectively support both types of links.  Procedures for
  499.       establishing switched connections are beyond the scope of this
  500.       document.
  501.  
  502. 2.11 Symmetry
  503.  
  504.       The ISPPP should operate symmetrically to maximize flexibility.
  505.  
  506.  
  507.  
  508. Perkins                                                         [Page 9]
  509.  
  510.  
  511. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  512.  
  513.  
  514.       The ISPPP must allow communications among any combination of
  515.       gateways and hosts.  One host may need to communicate directly
  516.       with another host, or it may be connected to a gateway to gain
  517.       access to a whole network.  A gateway may establish a connection
  518.       to a single host in order to deliver a packet, or it may connect
  519.       to another gateway on a permanent or transient basis.  Symmetry is
  520.       destroyed by pre-assigned static roles, such as master and slave
  521.       or gateway and host.  If necessary, roles may be dynamically
  522.       determined on a per connection basis.
  523.  
  524. 2.12 Connection Liveness
  525.  
  526.       The ISPPP must include a mechanism to automatically determine when
  527.       a link is functioning properly and when it is defunct.  This
  528.       mechanism should be enabled by default, but the protocol and all
  529.       implementations must allow this mechanism to be disabled.
  530.  
  531.       When enabled, this mechanism should discover changes in a link's
  532.       status in a timely fashion -- no more than a few minutes.
  533.       Continuing to utilize a link which is down often causes routing
  534.       problems commonly referred to as "black holes".  These problems
  535.       can be hard to find and diagnose.  By automatically detecting a
  536.       failing link, a point-to-point protocol can avoid such problems,
  537.       and also provide a powerful tool for a network manager trying to
  538.       locate and remedy the fault.
  539.  
  540.       When a point-to-point connection is not functioning properly, it
  541.       must be declared "down" for the purposes of routing packets for
  542.       higher level protocols.  In order to certify a link "up", the
  543.       systems on either end of the link must be able to successfully
  544.       exchange packets.  In other words, the systems at both ends must
  545.       be able both to transmit and to receive packets, and the link must
  546.       be able to transport packets in both directions.  Links are
  547.       defined to be "down" at initialization, their liveness must be
  548.       verified before they may be declared "up".
  549.  
  550.       This feature may be disabled in situations where connection status
  551.       determination is "expensive".  For example, a link may traverse a
  552.       Public Data Network (such as TELENET or TYMNET) which accounts for
  553.       bandwidth utilization.  Constant pinging would result in charges
  554.       being accrued even in the absence of useful communications.
  555.  
  556. 2.13 Loopback Detection
  557.  
  558.    The ISPPP must be capable of automatically detecting a looped-back
  559.    link without operator assistance.  Modems and other communications
  560.    gear are often placed in a loopback mode to aid in diagnosis of
  561.    circuit failures.  Detection of this condition must take no longer
  562.  
  563.  
  564.  
  565. Perkins                                                        [Page 10]
  566.  
  567.  
  568. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  569.  
  570.  
  571.    than one period of the liveness protocol.  While the link is in
  572.    loopback mode, each end of the link must declare the other end to be
  573.    unreachable.  However, to aid in diagnosis, each end of the link may
  574.    declare itself reachable for any higher-level protocol which
  575.    distinguishes between the two ends of the link.
  576.  
  577. 2.14 Misconfiguration Detection
  578.  
  579.    The ISPPP must be able to quickly detect misconfigured point-to-point
  580.    connections.  A connection which is misconfigured must never be
  581.    declared to be up.  Many systems, gateways in particular, have more
  582.    than one point-to-point connection.  When many cables terminate
  583.    within a small area, the possibility for confusion abounds.  It
  584.    becomes very easy to mistakenly plug a cable into the wrong
  585.    connector, or even to swap cables.  The protocol should do its best
  586.    to provide protection against these errors by verifying the remote
  587.    end's identity whenever possible before marking an interface as
  588.    operational.  The purpose of this verification is not rigorous
  589.    authentication but the detection of simple errors.
  590.  
  591. 2.15 Network Layer Address Negotiation
  592.  
  593.    The ISPPP must allow network layer (such as IP) addresses to be
  594.    negotiated.  The negotiation algorithm should be as simple as
  595.    possible and must be guaranteed to terminate in all cases.  Many
  596.    network layer protocols and implementations are required to know the
  597.    addresses at both ends of a point-to-point link before packets may be
  598.    routed.  These addresses may be statically configured, but it may
  599.    sometimes be necessary or convenient for these addresses be
  600.    dynamically ascertained at connection establishment.  This is
  601.    especially important when switched media are used.  For example, a
  602.    dial-up IP gateway must know the IP address of its peer before
  603.    packets can be successfully routed.  This address can be either
  604.    statically or dynamically configured.  In the former case, the
  605.    gateway's peer must therefore learn the static address (static with
  606.    respect to the gateway).  In the latter situation, the gateway must
  607.    dynamically learn the address used by its peer.
  608.  
  609. 2.16 Data Compression Negotiation
  610.  
  611.    The ISPPP must provide a way to negotiate the use of data compression
  612.    algorithms.  This mechanism should be as simple as possible and must
  613.    be guaranteed to terminate in all cases.  The protocol is not
  614.    required to standardize any data compression algorithms; conforming
  615.    implementations of the protocol therefore may refuse to do data
  616.    compression when negotiating (refusal to do data compression always
  617.    takes precedence over an offer to do it).  However, to allow the use
  618.    of data compression between consenting systems, the point-to-point
  619.  
  620.  
  621.  
  622. Perkins                                                        [Page 11]
  623.  
  624.  
  625. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  626.  
  627.  
  628.    protocol must not impede the use of data compression.  In fact, it
  629.    should be possible to use multiple, independent data compression
  630.    schemes simultaneously.  Because data compression algorithms are
  631.    still very experimental in the Internet environment, it is likely
  632.    that many different algorithms will be tried.  The negotiation
  633.    protocol must distinguish between these different algorithms to
  634.    ensure that data compression is not enabled unless the same algorithm
  635.    or algorithms are used at both ends of the connection.  The number of
  636.    such supported algorithms must be easily extensible.
  637.  
  638. 2.17 Extensibility and Option Negotiation
  639.  
  640.    The ISPPP must allow for future extensions in a flexible way.  The
  641.    Internet will never cease to evolve.  Changes in technology and user
  642.    demands create new requirements.  To function effectively as a
  643.    standard, the protocol must have the ability to evolve along with its
  644.    environment.
  645.  
  646.    To accomplish this, the ISPPP should be designed to be as extensible
  647.    as possible and to allow for experimentation within the guidelines of
  648.    the other requirements presented in this document.  A proposed
  649.    solution is to specify an option negotiation protocol.  The option
  650.    negotiation protocol could be used for the negotiation of network
  651.    layer addresses, data compression schemes, MTU, encryption, etc.  The
  652.    option negotiation protocol must itself be extensible; it should
  653.    allow the negotiation of a large number of future options and it
  654.    should allow the use of other types of point-to-point links and
  655.    encapsulation schemes.
  656.  
  657. 3.  Features Not Required
  658.  
  659.    This section discusses functionality which is explicitly not
  660.    required.  These functions may potentially be included in
  661.    implementations as long as the inclusion does not violate any of the
  662.    requirements itemized in the previous section.
  663.  
  664. 3.1 Error Correction
  665.  
  666.    As discussed above in the sections on Simplicity and Error Detection,
  667.    error correction is the responsibility of the transport layer and is
  668.    not required in a point-to-point protocol.  However, on links with
  669.    high error rates, performance may be increased by adding error
  670.    correction at the data link level.  Therefore, the ISPPP must not
  671.    prevent the addition of error correction by private agreement, even
  672.    though such mechanisms are not required in the basic implementation.
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679. Perkins                                                        [Page 12]
  680.  
  681.  
  682. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  683.  
  684.  
  685. 3.2 Flow Control
  686.  
  687.    Flow control (such as XON/XOFF) is not required.  Any implementation
  688.    of the ISPPP is expected to be capable of receiving packets at the
  689.    full rate possible for the particular data link and physical layers
  690.    used in the implementation.  If higher layers cannot receive packets
  691.    at the full rate possible, it is up to those layers to discard
  692.    packets or invoke flow control procedures.  As discussed above, end-
  693.    to-end flow control is the responsibility of the transport layer.
  694.    Including flow control within a point-to-point protocol often causes
  695.    violation of the simplicity requirement.
  696.  
  697. 3.3 Sequencing
  698.  
  699.    Sequencing of packets is not required.  The ISPPP need provide no
  700.    more service than the IP protocol, an unreliable datagram service
  701.    which is free to reorder packets.  In fact, it is specifically
  702.    allowed to reorder packets based upon some type-of-service criteria
  703.    implemented in higher-level protocols.
  704.  
  705. 3.4 Backward Compatibility
  706.  
  707.    There is no requirement for the ISPPP to provide backward
  708.    compatibility with any other point-to-point protocol.  First, there
  709.    are no official Internet Standards with which backward compatibility
  710.    must be maintained.  Second, attempting to maintain backward
  711.    compatibility may lead to needless restrictions on the new protocol.
  712.    However, there is no need for the designers of the ISPPP to go out of
  713.    their way to inhibit backward compatibility.
  714.  
  715. 3.5 Multi-Point Links
  716.  
  717.    There is no requirement for supporting multi-point links.  Many
  718.    features which are required are only valid between two peers.  These
  719.    links are sufficiently rare that the benefits of supporting them are
  720.    outweighed by the added complexity their support would introduce into
  721.    the ISPPP.
  722.  
  723.       Historical Note: The original rationale also stated: "Furthermore,
  724.       it is unlikely that many new types of multi-point links will be
  725.       introduced in the foreseeable future."  Since this was written,
  726.       considerable effort has been expended in new multi-point links,
  727.       including Switched Multimegabit Data Service, Frame Relay, and
  728.       Asynchronous Transfer Mode.  However, it is clear that these are
  729.       considerably more complex than ISPPP.
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736. Perkins                                                        [Page 13]
  737.  
  738.  
  739. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  740.  
  741.  
  742. 3.6 Half-Duplex or Simplex Links
  743.  
  744.    Support for half-duplex or simplex links is not required.  These
  745.    types of links are not in common use in the current Internet.  Half-
  746.    duplex links require some method of turning the line around.  The
  747.    ISPPP need not have an explicit mechanism for handling line turn-
  748.    around.  Such support might possibly be added in the future via the
  749.    required extension mechanism.
  750.  
  751. 3.7  7-bit Asynchronous RS-232 Links
  752.  
  753.    The use of asynchronous RS-232 need not support 7-bit links.  8-bit
  754.    links are predominant in the Internet environment and supporting 7-
  755.    bit links introduces unnecessary complexity.
  756.  
  757. 4.  Prior Work On PPP Protocols
  758.  
  759.    This section reviews a number of existing point-to-point and data
  760.    link layer protocols and points out which of our requirements are not
  761.    satisfied.
  762.  
  763. 4.1 Internet Protocols
  764.  
  765. 4.1.1 RFC 891 - DCN Local-Network Protocols, Appendix A
  766.  
  767.    In Appendix A of RFC 891, "DCN Local-Network Protocols" [4], D.L.
  768.    Mills describes the data link layer packet formats used by the
  769.    Fuzzball system for asynchronous, character-oriented synchronous,
  770.    DDCMP, HDLC, ARPANET 1822, X.25 LAPB and ethernet links.  These
  771.    protocols meet the stated requirements for simplicity, transparency,
  772.    packet framing and efficiency, but fall short of many of the others.
  773.    Most of these protocols assume the use of the IP protocol, and do not
  774.    include any type of protocol demultiplexing field.  No error
  775.    detection mechanism is provided except when necessary to comply with
  776.    another standard such as ethernet.  RFC 891 does not mention the MTU
  777.    used for any of these links.  Other requirements such as loopback
  778.    detection and misconfiguration detection are not discussed.  Finally,
  779.    no option negotiation scheme is defined; without a protocol
  780.    demultiplexing field it would be difficult or impossible to include
  781.    one.
  782.  
  783. 4.1.2 RFC 914 - Thinwire Protocols
  784.  
  785.    RFC 914, "Thinwire Protocols" [5], discusses the use of low speed
  786.    links in the Internet.  This document places its main emphasis on
  787.    decreasing round-trip delay and increasing link efficiency with the
  788.    help of header compression (vs. data compression) techniques.  Three
  789.    "Thinwire" protocols are discussed, Thinwire I, Thinwire II and
  790.  
  791.  
  792.  
  793. Perkins                                                        [Page 14]
  794.  
  795.  
  796. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  797.  
  798.  
  799.    Thinwire III.  The latter two protocols require the use of a reliable
  800.    data link layer protocol; one such protocol, "SLIP" (not to be
  801.    confused with Rick Adams' SLIP), is proposed in Appendix D of the
  802.    RFC.  As proposed, "SLIP" does not meet many of the stated
  803.    requirements.  Although not terribly complex, as a reliable, error
  804.    detecting and correcting protocol, it is not "simple".  The 32 octet
  805.    packet size makes it inefficient for large or uncompressed packets,
  806.    requiring complex fragmentation and reassembly.  The use of other
  807.    than asynchronous links is not mentioned.  The entire reliable link
  808.    layer would be redundant over LAPB links.  There is no mechanism for
  809.    option negotiation or future extensibility.
  810.  
  811. 4.1.3 RFC 916 - Reliable Asynchronous Transfer Protocol
  812.  
  813.    RFC 916 [6] presents RATP, the Reliable Asynchronous Transfer
  814.    Protocol.  RATP provides error detection and correction, sequencing
  815.    and flow control across a point-to-point connection.  It is directed
  816.    towards full duplex RS-232 links although it is useful for other
  817.    point-to-point links.  Although the author claims that RATP is not as
  818.    complex as some other protocols, it is far from simple.  RATP solves
  819.    many of the problems which we have labeled non-requirements and fails
  820.    to solve many of our stated requirements.  Specifically, RATP does
  821.    not support option negotiation and has no mechanism for future
  822.    extensibility.  Since RFC 916 was published, no consensus has emerged
  823.    advocating RATP.  For these reasons RATP is not recommended as the
  824.    ISPPP.
  825.  
  826. 4.1.4 RFC 935 - Reliable Link Layer Protocols
  827.  
  828.    RFC 935 [7] is a rebuttal to the protocols proposed in RFCs 914 and
  829.    916.  J. Robinson discusses existing and widely-used national and
  830.    international standards which meet the needs addressed by the two
  831.    prior RFCs.  The standards reviewed include character-oriented
  832.    asynchronous and synchronous (bisynch) protocols and bit-oriented
  833.    synchronous protocols.  RFC 935 does not present any higher level
  834.    issues such as option negotiation or extensibility.
  835.  
  836.  
  837. 4.1.5 RFC 1009 - Requirements for Internet Gateways
  838.  
  839.    Section 3 of RFC 1009, "Constituent Network Interfaces" [8], briefly
  840.    discusses requirements for transmission of IP datagrams over a number
  841.    of types of point-to-point links including X.25 LAPB, HDLC framed
  842.    synchronous links, Xerox Synchronous Point-to-Point synchronous lines
  843.    and the MIT Serial Line Framing Protocol for asynchronous lines.  RFC
  844.    1009 merely mentions these as reasonable candidates and does not go
  845.    into depth on any of them.  All are discussed further in this
  846.    document.
  847.  
  848.  
  849.  
  850. Perkins                                                        [Page 15]
  851.  
  852.  
  853. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  854.  
  855.  
  856. 4.1.6 RFC 1055 - Serial Line IP
  857.  
  858.    Rick Adams' Serial Line IP (SLIP) protocol [9] has become something
  859.    of a de facto standard due to the popularity of the 4.2 and 4.3BSD
  860.    UNIX operating systems.  SLIP is easily added to 4.2 systems and is
  861.    included with 4.3.  Many other TCP/IP implementation have added SLIP
  862.    implementations in order to be compatible.  Yet SLIP is not a real
  863.    standard; the protocol was only recently published in RFC form.
  864.    Before RFC 1055 it was specified in the SLIP source code.  SLIP does
  865.    not meet most of the requirements set forth above.  SLIP certainly
  866.    meets the requirement for simplicity, and also meets the requirements
  867.    for transparency and bandwidth efficiency.  But SLIP only provides
  868.    for sending IP packets over asynchronous serial lines.  Since it
  869.    provides no higher level protocol field for demultiplexing, SLIP
  870.    cannot support multiple concurrent higher level protocols.  Providing
  871.    only a framing protocol, SLIP would be entirely redundant when used
  872.    with a LAPB synchronous link.  SLIP includes absolutely no mechanism
  873.    for error detection, not even parity.  Again due to its lack of a
  874.    protocol type field, SLIP does not support any type of option
  875.    negotiation or extensibility.
  876.  
  877. 4.2 International Protocols
  878.  
  879. 4.2.1 ISO 3309 - HDLC Frame Structure
  880.  
  881.    ISO 3309 [10], the HDLC frame structure, is a simple data link layer
  882.    protocol which provides framing of packets transmitted over bit-
  883.    oriented synchronous links.  Special flag sequences mark the
  884.    beginning and end of frames and bit stuffing allows data containing
  885.    flag characters to be transmitted.  A 16-bit Frame Check Sequence
  886.    provides error detection.
  887.  
  888.    By itself, the HDLC frame structure does not meet most of the
  889.    requirements.  HDLC does not provide protocol multiplexing, standard
  890.    MTUs, fault detection or option negotiation.  There is no mechanism
  891.    for future extensibility.
  892.  
  893.    Given the HDLC frame structure's wide acceptance and simplicity, it
  894.    may be an ideal building block for the ISPPP.
  895.  
  896. 4.2.2 ISO 6256 - HDLC Balanced Class of Procedures
  897.  
  898.    ISO 6256, the HDLC Balanced Class of Procedures, specifies a data
  899.    link layer protocol which provides error correction, sequencing and
  900.    flow control.  ISO 6256 builds on ISO 3309 and ISO 4335, HDLC
  901.    Elements of Procedures.
  902.  
  903.    As far as meeting our requirements is concerned, ISO 6256 does not
  904.  
  905.  
  906.  
  907. Perkins                                                        [Page 16]
  908.  
  909.  
  910. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  911.  
  912.  
  913.    provide any more utility than does ISO 3309.  The capabilities that
  914.    are provided are all considered unnecessary and overly complex.
  915.  
  916. 4.2.3 CCITT X.25 and X.25 LAPB
  917.  
  918.    CCITT recommendation X.25 [11] describes a network layer protocol
  919.    providing error-free, sequenced, flow controlled virtual circuits.
  920.    X.25 includes a data link layer, X.25 LAPB, which uses ISO 3309, 4335
  921.    and 6256.  Neither X.25 LAPB or full LAPB meet any more of our
  922.    requirements than the ISO protocols.
  923.  
  924. 4.2.4 CCITT I.441 LAPD
  925.  
  926.    CCITT I.441 LAPD [12] defines the Link Access Procedure on the ISDN
  927.    D-Channel.  The data link layer of LAPD is very similar to that of
  928.    LAPB and fails to meet the same requirements.
  929.  
  930. 4.3 Other Protocols
  931.  
  932. 4.3.1 Cisco Systems point-to-point protocols
  933.  
  934.    The Cisco Systems gateway supports both asynchronous links using SLIP
  935.    and synchronous links using either simple HDLC framing, X.25 LAPB or
  936.    full X.25.  The HDLC framing procedure includes a four byte header.
  937.    The first octet (address) is either 0x0F (unicast intent) or 0x8F
  938.    (multicast intent).  The second octet (control byte) is left zero and
  939.    is not checked on reception.  The third and fourth octets contain a
  940.    standard 16 bit Ethernet protocol type code.
  941.  
  942.    A "keepalive" or "beaconing" protocol is used to ensure the two-way
  943.    connectivity of the serial line.  Each end of the link periodically
  944.    sends two 32 bit sequence numbers to the other side.  One sequence
  945.    number is the local side's sequence number, the other is the sequence
  946.    number received from the other side.  Hearing the local sequence
  947.    number from the other side indicates that the link is working in both
  948.    directions.
  949.  
  950.    The keepalive protocol is extensible.  One extension is used to
  951.    default IP addresses on serial lines of systems without non-volatile
  952.    memory.  A request for address is sent to the remote side.  The
  953.    remote side responds with its own IP address and a subnet mask.  When
  954.    the querying side receives the reply, it checks if the host portion
  955.    of the remote address is either 1 or 2.  If so, the opposite address
  956.    is chosen for the local address.  If not, the protocol cannot be used
  957.    and we must rely on other address resolution means.  This protocol
  958.    assumes that each serial link uses one subnet or network number.
  959.  
  960.    LAPB assuming IP is another possible encapsulation.  A multi-protocol
  961.  
  962.  
  963.  
  964. Perkins                                                        [Page 17]
  965.  
  966.  
  967. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  968.  
  969.  
  970.    extension of LAPB (multi-LAPB) includes a 16 bit Ethernet type code
  971.    after the address and control bytes and in front of the actual
  972.    protocol data.  DDN X.25 and Commercial X.25 encapsulations are also
  973.    supported.  Multiple protocols are supported by making protocol
  974.    dependent CALL REQUEST's.
  975.  
  976. 4.3.2 MIT PC/IP framing protocol
  977.  
  978.    The MIT PC/IP framing protocol [13] provides a mechanism for the
  979.    transmission of IP datagrams over asynchronous links.  The low-level
  980.    protocol (LLP) sublayer provides encapsulation while the local net
  981.    protocol provides multiplexing of IP datagrams and IP address request
  982.    packets.  The protocol only allows host-to-gateway connections.
  983.    Host-to-gateway flow control is provided by requiring the host to
  984.    transmit request packets to the gateway until an acknowledgment is
  985.    received.  Rudimentary IP address negotiation requires the host to
  986.    ascertain its IP address from the gateway.
  987.  
  988.    The protocol does not implement error detection, connection status
  989.    determination, fault detection or option negotiation.  Only
  990.    asynchronous links are supported.
  991.  
  992. 4.3.3 Proteon p4200 point-to-point protocol
  993.  
  994.    The Proteon p4200 multi-protocol router supports transmission of
  995.    packets over bit-oriented synchronous links with a wide range of
  996.    speeds (zero to 2 Mb/sec).  The p4200 point-to-point protocol
  997.    encapsulates packets inside HDLC frames but does not use the HDLC
  998.    address or control fields; these two octets are instead used for a
  999.    16-bit type field.  The p4200 does use the HDLC frame check sequence
  1000.    trailer.  Protocol type numbers are ad hoc and do not correspond to
  1001.    any existing standard.  A simple liveness protocol detects dead
  1002.    connections.
  1003.  
  1004.    Although the Proteon protocol does meet many of our requirements, it
  1005.    does not meet our requirements for option negotiation.
  1006.  
  1007. 4.3.4 Ungermann Bass point-to-point protocol
  1008.  
  1009.    The Ungermann Bass router supports synchronous links using simple
  1010.    HDLC framing.  Neither the HDLC address or control field are used, IP
  1011.    datagrams are placed immediately after the HDLC flag.
  1012.  
  1013.    The U-B protocol does not meet any of our requirements for fault
  1014.    detection or option negotiation.  No mechanism for future
  1015.    extensibility is currently defined.
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021. Perkins                                                        [Page 18]
  1022.  
  1023.  
  1024. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  1025.  
  1026.  
  1027. 4.3.5 Wellfleet point-to-point protocol
  1028.  
  1029.    The Wellfleet router supports synchronous links using simple HDLC
  1030.    framing.  The HDLC framing procedure uses the HDLC address and places
  1031.    the Unnumbered Information (UI) command in all frames.  A simple
  1032.    header following the UI command provides a two octet type field using
  1033.    the same values as Ethernet.
  1034.  
  1035.    The Wellfleet protocol does not meet any of our requirements for
  1036.    fault detection or option negotiation.  No mechanism for future
  1037.    extensibility is currently defined, although one could be added.
  1038.  
  1039. 4.3.6 XNS Synchronous Point-to-Point Protocol
  1040.  
  1041.    The Xerox Network Systems Synchronous Point-to-Point protocol (XNS
  1042.    PPP) [14] was designed to address most of the same issues that an
  1043.    ISPPP must address.  In particular, it addresses the issues of
  1044.    simplicity, transparency, efficiency, packet framing, protocol
  1045.    multiplexing, error detection, standard MTUs, symmetry, switched and
  1046.    non-switched media, connection status, network address negotiation
  1047.    and future extensibility.  However, the XNS SPPP does not meet our
  1048.    requirements for multiple data link layer protocols, fault detection
  1049.    and data compression negotiation.  Although protocol multiplexing is
  1050.    provided, the packet type field has only 8 bits which is too few.
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.  
  1067.  
  1068.  
  1069.  
  1070.  
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  
  1077.  
  1078. Perkins                                                        [Page 19]
  1079.  
  1080.  
  1081. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  1082.  
  1083.  
  1084. References
  1085.  
  1086.    [1]  Postel, J., "Internet Protocol", STD 5, RFC 791, USC/Information
  1087.         Sciences Institute, September 1981.
  1088.  
  1089.    [2]  Postel, J., "User Datagram Protocol", STD 6, RFC768, USC/Information
  1090.         Sciences Institute, August 1980.
  1091.  
  1092.    [3]  Electronic Industries Association, EIA Standard RS-232-C,
  1093.         "Interface Between Data Terminal Equipment and Data
  1094.         Communications Equipment Employing Serial Binary Data
  1095.         Interchange", August 1969.
  1096.  
  1097.    [4]  Mills, D. L., "DCN Local-Network Protocols", STD 44, RFC 891,
  1098.         University of Delaware, December 1983.
  1099.  
  1100.    [5]  Farber, David J., Delp, Gary S., and Conte, Thomas M., "A
  1101.         Thinwire Protocol for Connecting Personal Computers to the
  1102.         Internet", RFC 914, University of Delaware, September 1984.
  1103.  
  1104.    [6]  Finn, G., "Reliable Asynchronous Transfer Protocol (RATP)",
  1105.         RFC 916, USC/Information Sciences Institute, October 1984.
  1106.  
  1107.    [7]  Robinson, J., "Reliable Link Layer Protocols", RFC 935, BBN,
  1108.         January 1985.
  1109.  
  1110.    [8]  Braden, R., and J. Postel, "Requirements for Internet
  1111.         Gateways", STD 4, RFC1009, USC/Information Sciences Institute,
  1112.         June 1987.
  1113.  
  1114.    [9]  Romkey, J., "A Nonstandard for the Transmission of IP Datagrams
  1115.         Over Serial Lines: SLIP", STD 47, RFC 1055, June 1988.  STD
  1116.         4, RFC 1009, June 1987.
  1117.  
  1118.    [10] ISO International Standard (IS) 3309, "Data Communications -
  1119.         High-level Data Link Control Procedures - Frame Structure",
  1120.         1979.
  1121.  
  1122.    [11] CCITT Recommendation X.25, "Interface Between Data Terminal
  1123.         Equipment (DTE) and Data Circuit Terminating Equipment (DCE)
  1124.         for Terminals Operating in the Packet Mode on Public Data
  1125.         Networks", Vol. VIII, Fascicle VIII.2, Rec. X.25.
  1126.  
  1127.    [12] CCITT Recommendation Q.921 "ISDN User-Network Interface Data
  1128.         Link Layer Specification".
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.  
  1135. Perkins                                                        [Page 20]
  1136.  
  1137.  
  1138. RFC 1547          Point-to-Point Protocol Requirements     December 1993
  1139.  
  1140.  
  1141.    [13] Romkey, J.L., "PC/IP Programmer's Manual", Massachussetts
  1142.         Institute of Technology Laboratory for Computer Science,
  1143.         January 1986.
  1144.  
  1145.    [14] Xerox Corporation, "Synchronous Point-to-Point Protocol", Xerox
  1146.         System Integration Standard, Stamford, Connecticut, XSIS
  1147.         158412, December 1984.
  1148.  
  1149.    [15] "Digital Data Communications Message Protocol", Digital
  1150.         Equipment Corporation.
  1151.  
  1152. Security Consideration
  1153.  
  1154.    Security issues are not discussed in this memo.
  1155.  
  1156. Chair's Address
  1157.  
  1158.    The working group can be contacted via the current chair:
  1159.  
  1160.       Fred Baker
  1161.       Advanced Computer Communications
  1162.       315 Bollay Drive
  1163.       Santa Barbara, California  93117
  1164.  
  1165.       EMail: fbaker@acc.com
  1166.  
  1167. Author's Address
  1168.  
  1169.    Questions about this memo can also be directed to:
  1170.  
  1171.       Drew Perkins
  1172.       4015 Holiday Park Drive
  1173.       Murrysville, PA  15668
  1174.  
  1175.       EMail: perkins+@cmu.edu
  1176.  
  1177. Editor's Address
  1178.  
  1179.    Typographic revision and historical notes by:
  1180.  
  1181.       William Allen Simpson
  1182.       1384 Fontaine
  1183.       Madison Heights, Michigan  48071
  1184.  
  1185.       EMail: Bill.Simpson@um.cc.umich.edu
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. Perkins                                                        [Page 21]
  1193.  
  1194.  
  1195.  
  1196.  
  1197.  
  1198.