home *** CD-ROM | disk | FTP | other *** search
/ Internet Core Protocols / Oreilly-InternetCoreProtocols.iso / RFCs / rfc2477.txt < prev    next >
Encoding:
Text File  |  1999-10-14  |  23.6 KB  |  676 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                          B. Aboba
  8. Request for Comments: 2477                                      G. Zorn
  9. Category: Informational                           Microsoft Corporation
  10.                                                            January 1999
  11.  
  12.  
  13.                Criteria for Evaluating Roaming Protocols
  14.  
  15. Status of this Memo
  16.  
  17.    This memo provides information for the Internet community.  It does
  18.    not specify an Internet standard of any kind.  Distribution of this
  19.    memo is unlimited.
  20.  
  21. Copyright Notice
  22.  
  23.    Copyright (C) The Internet Society (1999).  All Rights Reserved.
  24.  
  25. 1.  Abstract
  26.  
  27.    This document describes requirements for the provisioning of "roaming
  28.    capability" for dialup Internet users.  "Roaming capability" is
  29.    defined as the ability to use multiple Internet service providers
  30.    (ISPs), while maintaining a formal, customer-vendor relationship with
  31.    only one.
  32.  
  33. 2.  Introduction
  34.  
  35.    Operational roaming services are currently providing worldwide
  36.    roaming capabilities, and these services continue to grow in
  37.    popularity [1].  Interested parties have included:
  38.  
  39.       Regional Internet Service Providers (ISPs) operating within a
  40.       particular state or province, looking to combine their efforts
  41.       with those of other regional providers to offer services over a
  42.       wider area.
  43.  
  44.       National ISPs wishing to combine their operations with those of
  45.       one or more ISPs in another nation to provide greater coverage in
  46.       a group of countries or on a continent.
  47.  
  48.       Businesses desiring to offer their employees a comprehensive
  49.       package of dialup services on a global basis.  Those services can
  50.       include Internet access as well as secure access to corporate
  51.       intranets via a Virtual Private Network (VPN).
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Aboba & Zorn                 Informational                      [Page 1]
  59.  
  60. RFC 2477              Evaluating Roaming Protocols          January 1999
  61.  
  62.  
  63.    This document provides an architectural framework for the
  64.    provisioning of roaming capabilities, as well as describing the
  65.    requirements that must be met by elements of the architecture.
  66.  
  67. 2.1.  Requirements language
  68.  
  69.    In this document, the key words "MAY", "MUST, "MUST NOT", "optional",
  70.    "recommended", "SHOULD", and "SHOULD NOT", are to be interpreted as
  71.    described in [4].
  72.  
  73.    Please note that the requirements specified in this document are to
  74.    be used in evaluating protocol submissions.  As such, the
  75.    requirements language refers to capabilities of these protocols; the
  76.    protocol documents will specify whether these features are required,
  77.    recommended, or optional for use in roaming.  For example, requiring
  78.    that a protocol support confidentiality is NOT the same thing as
  79.    requiring that all protocol traffic be encrypted.
  80.  
  81.    A protocol submission is not compliant if it fails to satisfy one or
  82.    more of the must or must not requirements for the capabilities that
  83.    it implements.  A protocol submission that satisfies all the must,
  84.    must not, should and should not requirements for its capabilities is
  85.    said to be "unconditionally compliant"; one that satisfies all the
  86.    must and must not requirements but not all the should or should not
  87.    requirements for its protocols is said to be "conditionally
  88.    compliant."
  89.  
  90. 2.2.  Terminology
  91.  
  92.    This document frequently uses the following terms:
  93.  
  94.    phone book
  95.       This is a database or document containing data pertaining to
  96.       dialup access, including phone numbers and any associated
  97.       attributes.
  98.  
  99.    phone book server
  100.       This is a server that maintains the latest version of the phone
  101.       book.  Clients communicate with phone book servers in order to
  102.       keep their phone books up to date.
  103.  
  104.    Network Access Server
  105.       The Network Access Server (NAS) is the device that clients dial in
  106.       order to get access to the network.
  107.  
  108.    Authentication server
  109.       This is a server which provides for authentication/authorization
  110.       within the roaming architecture.
  111.  
  112.  
  113.  
  114. Aboba & Zorn                 Informational                      [Page 2]
  115.  
  116. RFC 2477              Evaluating Roaming Protocols          January 1999
  117.  
  118.  
  119.    Accounting server
  120.       This is a server which provides for accounting within the roaming
  121.       architecture.
  122.  
  123.    Authentication proxy
  124.       Authentication proxies may be deployed within the roaming
  125.       architecture for several purposes, including authentication
  126.       forwarding, policy implementation, shared secret management, and
  127.       attribute editing.  To the NAS, the authentication proxy appears
  128.       to act as an authentication server; to the authentication server,
  129.       the proxy appears to act as an authentication client.
  130.  
  131.    Accounting proxy
  132.       Accounting proxies may be deployed within the roaming architecture
  133.       for several purposes, including accounting forwarding, reliability
  134.       improvement, auditing, and "pseudo-transactional" capability.  To
  135.       the NAS, the accounting proxy appears to act as an accounting
  136.       server; to the accounting server, the proxy appears to act as an
  137.       accounting client.
  138.  
  139.    Network Access Identifier
  140.       In order to provide for the routing of authentication and
  141.       accounting packets, user name MAY contain structure.  This
  142.       structure provides a means by which the authentication or
  143.       accounting proxies will locate the authentication or accounting
  144.       server that is to receive the request.
  145.  
  146. 3.  Architectural framework
  147.  
  148.    The roaming architecture consists of three major subsystems:
  149.  
  150.       Phone book Subsystem
  151.       Authentication Subsystem
  152.       Accounting Subsystem
  153.  
  154.    The phone book subsystem is concerned with the maintenance and
  155.    updating of the user phone book.  The phone book provides the user
  156.    with information on the location and phone numbers of Points of
  157.    Presence (POPs) that are roaming enabled.  The function of the
  158.    authentication subsystem is to provide authorized users with access
  159.    to the POPs in the phonebook, and to deny access to unauthorized
  160.    users.  The goal of the accounting subsystem is to provide
  161.    information on the resources utilized during the user's session.
  162.  
  163. 3.1.  Phone Book Subsystem
  164.  
  165.    The phone book subsystem provides for the following:
  166.  
  167.  
  168.  
  169.  
  170. Aboba & Zorn                 Informational                      [Page 3]
  171.  
  172. RFC 2477              Evaluating Roaming Protocols          January 1999
  173.  
  174.  
  175.       Phone number presentation
  176.       Phone number exchange
  177.       Phone book compilation
  178.       Phone book update
  179.  
  180.    Phone number presentation
  181.       Phone number presentation involves the display of available phone
  182.       numbers to the user, and culminates in the choosing of a number.
  183.       Since the user interface and sequence of events involved in phone
  184.       number presentation is a function of the connection management
  185.       software being used, it is likely that individual vendors will
  186.       take different approaches to the problem.  These differences can
  187.       include variances in the format of the client phone books, varying
  188.       approaches to presentation, etc.  There is no inherent problem
  189.       with this. As a result, phone number presentation need not be
  190.       standardized.
  191.  
  192.    Phone number exchange
  193.       Phone number exchange involves propagation of phone number changes
  194.       between providers in a roaming association.  Current roaming
  195.       implementations do not provide for complete automation of the
  196.       phone number exchange process [1].  As a result, phone number
  197.       exchange need not be standardized at this time.
  198.  
  199.    Phone book compilation
  200.       Once an ISP's phone book server has received its updates it needs
  201.       to compile a new phone book and propagate this phone book to all
  202.       the phone book servers operated by that ISP.  Given that the
  203.       compilation process does not affect protocol interoperability, it
  204.       need not be standardized.
  205.  
  206.    Phone book update
  207.       Once the phone book is compiled, it needs to be propagated to
  208.       users.  Standardization of the phone book update process allows
  209.       for providers to update user phone books, independent of their
  210.       client software or operating system.
  211.  
  212. 3.2.  Authentication Subsystem
  213.  
  214.    The authentication subsystem provides for the following:
  215.  
  216.       Connection management
  217.       Authentication
  218.       NAS Configuration/Authorization
  219.       Address Assignment/Routing
  220.       Security
  221.  
  222.  
  223.  
  224.  
  225.  
  226. Aboba & Zorn                 Informational                      [Page 4]
  227.  
  228. RFC 2477              Evaluating Roaming Protocols          January 1999
  229.  
  230.  
  231.    Connection management
  232.       In order to be able to use the POPs of the local provider, it is
  233.       first necessary to bring up a connection.
  234.  
  235.    Identification
  236.       Authentication consists of two parts: the claim of identity (or
  237.       identification) and the proof of the claim (or verification).  As
  238.       part of the authentication process, users identify themselves to
  239.       the Network Access Server (NAS) in a manner that allows the
  240.       authentication request to be routed its home destination.
  241.  
  242.    Authentication
  243.       Authentication is typically required prior to allowing access to
  244.       the network.  CHAP [8] and PAP [9] are the two authentication
  245.       protocols most commonly used within the PPP [10] framework today.
  246.       Some groups of users are requiring different forms of proof of
  247.       identity (e.g., token or smart cards, Kerberos credentials, etc.)
  248.       for special purposes (such as acquiring access to corporate
  249.       intranets).  The Extensible Authentication Protocol (EAP) [7] was
  250.       created in order to provide a general mechanism for support of
  251.       these methods.
  252.  
  253.    NAS configuration/authorization
  254.       In order to set up the session, authorization parameters need to
  255.       be sent to from the home authentication server to the local ISP's
  256.       NAS.
  257.  
  258.    Address assignment/routing
  259.       If it is desired that the user be able to communicate with the
  260.       rest of the Internet, then the session will be assigned a routable
  261.       IP address by the NAS.
  262.  
  263.    Security
  264.       In the process of authenticating and authorizing the user session,
  265.       it may be desirable to provide protection against a variety of
  266.       security threats.
  267.  
  268. 3.3.  Accounting Subsystem
  269.  
  270.    The function of the accounting subsystem is to enable the
  271.    participants in the roaming consortium to keep track of what
  272.    resources are used during a session. Relevant information includes
  273.    how long the user was connected to the service, connection speed,
  274.    port type, etc.
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282. Aboba & Zorn                 Informational                      [Page 5]
  283.  
  284. RFC 2477              Evaluating Roaming Protocols          January 1999
  285.  
  286.  
  287. 4.  Roaming Requirements
  288.  
  289. 4.1.  Phonebook requirements
  290.  
  291. 4.1.1.  Phone book update protocol
  292.  
  293.    Portability
  294.    The update protocol MUST allow for updating of clients on a range of
  295.    platforms and operating systems. Therefore the update mechanism MUST
  296.    NOT impose any operating system-specific requirements.
  297.  
  298.    Authentication
  299.    The client MUST be able to determine the authenticity of the server
  300.    sending the phone book update.  The server MAY also be able to
  301.    authenticate the client.
  302.  
  303.    Versioning
  304.    The update protocol MUST provide for updating of the phone book from
  305.    an arbitrary previous version to the latest available version.
  306.  
  307.    Integrity Checking
  308.    The client MUST be able to determine the integrity of the received
  309.    update before applying it, and MUST be able to determine the
  310.    integrity of the newly produced phone book after updating it.
  311.  
  312.    Light weight transfers
  313.    Since the client may be a low-end machine or internet appliance, the
  314.    update protocol MUST be lightweight.
  315.  
  316.    Language support
  317.    The phone book update mechanism MUST support the ability to request
  318.    that the phone book be transmitted in a particular language and
  319.    character set.  For example, if the customer has a Russian language
  320.    software package, then the propagation and update protocols MUST
  321.    provide a mechanism for the user to request a Russian language phone
  322.    book.
  323.  
  324. 4.1.2.  Phone book format
  325.  
  326.    Phone number attributes
  327.    The phone book format MUST support phone number attributes commonly
  328.    used by Internet service providers.  These attributes are required in
  329.    order to provide users with information on the capabilities of the
  330.    available phone numbers.
  331.  
  332.    Provider attributes
  333.    In addition to providing information relating to a given phone
  334.    number, the phone book MUST provide information on the individual
  335.  
  336.  
  337.  
  338. Aboba & Zorn                 Informational                      [Page 6]
  339.  
  340. RFC 2477              Evaluating Roaming Protocols          January 1999
  341.  
  342.  
  343.    roaming consortium members.  These attributes are required in order
  344.    to provide users with information about the individual providers in
  345.    the roaming consortium.
  346.  
  347.    Service attributes
  348.    In addition to providing information relating to a given phone
  349.    number, and service provider, the phone book MUST provide information
  350.    relevant to configuration of the service.  These attributes are
  351.    necessary to provide the client with information relating to the
  352.    operation of the service.
  353.  
  354.    Extensibility
  355.    Since it will frequently be necessary to add phone book attributes,
  356.    the phone book format MUST support the addition of phone number,
  357.    provider and service attributes without modification to the update
  358.    protocol.  Registration of new phone book attributes will be handled
  359.    by IANA.  The attribute space MUST be sufficiently large to
  360.    accomodate growth.
  361.  
  362.    Compactness
  363.    Since phone book will typically be frequently updated, the phone book
  364.    format MUST be compact so as to minimize the bandwidth used in
  365.    updating it.
  366.  
  367. 4.2.  Authentication requirements
  368.  
  369. 4.2.1.  Connection Management
  370.  
  371.    Given the current popularity and near ubiquity of PPP, a roaming
  372.    standard MUST provide support for PPP and IP. A roaming standard MAY
  373.    provide support for other framing protocols such as SLIP.  However,
  374.    SLIP support is expected to prove difficult since SLIP does not
  375.    support negotiation of connection parameters and lacks support for
  376.    protocols other than IP.
  377.  
  378.    A roaming standard MAY provide support for non-IP protocols (e.g.,
  379.    IPX or AppleTalk) since these may be useful for the provision of
  380.    corporate intranet access via the Internet.  Since it is intended
  381.    that the client will begin PPP negotiation immediately on connection,
  382.    support for scripting SHOULD NOT be part of a roaming standard.
  383.  
  384. 4.2.2.  Identification
  385.  
  386.    A roaming standard MUST provide a standardized format for the userID
  387.    and realm presented to the NAS.
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Aboba & Zorn                 Informational                      [Page 7]
  395.  
  396. RFC 2477              Evaluating Roaming Protocols          January 1999
  397.  
  398.  
  399. 4.2.3.  Verification of Identity
  400.  
  401.    Authentication types
  402.       A roaming standard MUST support CHAP, and SHOULD support EAP.  Due
  403.       to security concerns, PAP authentication SHOULD NOT be supported.
  404.       A possible exception is where PAP is used to support a one time
  405.       password or token.
  406.  
  407.    Scalability
  408.       A roaming standard, once available, is likely to be widely
  409.       deployed on the Internet.  A roaming standard MUST therefore
  410.       provide sufficient scalability to allow for the formation of
  411.       roaming associations with thousands of ISP members.
  412.  
  413.    RADIUS Support
  414.       Given the current popularity and near ubiquity of RADIUS [2,3] as
  415.       an authentication, authorization and accounting solution, a
  416.       roaming standard MUST be able to incorporate RADIUS-enabled
  417.       devices within the roaming architecture. It is expected that this
  418.       will be accomplished by development of gateways between RADIUS and
  419.       the roaming standard authentication, authorization, and accounting
  420.       protocol.
  421.  
  422. 4.2.4.  NAS Configuration/Authorization
  423.  
  424.    In order to ensure compatibility with the NAS or the local network,
  425.    authentication/authorization proxies often will add, delete, or
  426.    modify attributes returned by the home authentication server. In
  427.    addition, an authentication proxy will often carry out resource
  428.    management and policy functions.  As a result, a roaming standard
  429.    MUST support the ability of proxies to perform attribute editing and
  430.    implement policy.
  431.  
  432. 4.2.5.  Address assignment/routing
  433.  
  434.    A roaming standard MUST support dynamic address assignment.  Static
  435.    address assignment MAY be supported, most likely via layer 2 or layer
  436.    3 tunneling.
  437.  
  438.    Layer 2 tunneling protocols
  439.       Layer-2 tunneling protocols, such as PPTP, L2F, or L2TP, hold
  440.       great promise for the implementation of Virtual Private Networks
  441.       as a means for inexpensive access to remote networks.  Therefore
  442.       proxy implementations MUST NOT preclude use of layer 2 tunneling.
  443.  
  444.    Layer 3 tunneling protocols
  445.       Layer-3 tunneling protocols as embodied in Mobile IP [5], hold
  446.       great promise for providing "live", transparent mobility on the
  447.  
  448.  
  449.  
  450. Aboba & Zorn                 Informational                      [Page 8]
  451.  
  452. RFC 2477              Evaluating Roaming Protocols          January 1999
  453.  
  454.  
  455.       part of mobile nodes on the Internet.  Therefore, a roaming
  456.       standard MUST NOT preclude the provisioning of Mobile IP Foreign
  457.       Agents or other Mobile IP functionality on the part of service
  458.       providers.
  459.  
  460. 4.2.6.  Security
  461.  
  462.    Security analysis
  463.       A roaming standard MUST include a thorough security analysis,
  464.       including a description of security threats and countermeasures.
  465.       This includes specification of mechanisms for fraud prevention and
  466.       detection.
  467.  
  468.    Hop by hop security
  469.       A roaming standard MUST provide for hop-by-hop integrity
  470.       protection and confidentiality.  This MAY be accomplished through
  471.       support of network layer security (IPSEC) [6].
  472.  
  473.    End-to-end security
  474.       As policy implementation and attribute editing are common in
  475.       roaming systems, proxies may need to modify packets in transit
  476.       between a local NAS and the home server. In order to permit
  477.       authorized modifications while at the same time guarding against
  478.       attacks by rogue proxies, it is necessary for a roaming standard
  479.       to support data object security.  As a result, a roaming standard
  480.       MUST provide end-to-end confidentiality and integrity protection
  481.       on an attribute-by-attribute basis.  However, non-repudiation is
  482.       NOT a requirement for a roaming standard.
  483.  
  484. 4.3.  Accounting requirements
  485.  
  486.    Real-time accounting
  487.       In today's roaming implementations, real-time accounting is a
  488.       practical necessity in order to support fraud detection and risk
  489.       management.  As a result, a roaming standard MUST provide support
  490.       for real-time accounting.
  491.  
  492.    Accounting record formats
  493.       Today there is no proposed standard for NAS accounting, and there
  494.       is wide variation in the protocols used by providers to
  495.       communicate accounting information within their own organizations.
  496.       Therefore, a roaming standard MUST prescribe a standardized format
  497.       for accounting records.  For the sake of efficiency, the record
  498.       format MUST be compact.
  499.  
  500.    Extensibility
  501.       A standard accounting record format MUST be able to encode metrics
  502.       commonly used to determine the user's bill.  Since these metrics
  503.  
  504.  
  505.  
  506. Aboba & Zorn                 Informational                      [Page 9]
  507.  
  508. RFC 2477              Evaluating Roaming Protocols          January 1999
  509.  
  510.  
  511.       change over time, the accounting record format MUST be extensible
  512.       so as to be able to add future metrics as they come along.  The
  513.       record format MUST support both standard metrics as well as
  514.       vendor-specific metrics.
  515.  
  516. 5.  References
  517.  
  518.    [1] Aboba, B., Lu, J., Alsop, J., Ding, J. and W. Wang, "Review of
  519.        Roaming Implementations", RFC 2194, September 1997.
  520.  
  521.    [2] Rigney, C., Rubens, A., Simpson, W. and S. Willens, "Remote
  522.        Authentication Dial In User Service (RADIUS)", RFC 2138, April
  523.        1997.
  524.  
  525.    [3] Rigney, C., "RADIUS Accounting", RFC 2139, April 1997.
  526.  
  527.    [4] Bradner, S., "Key words for use in RFCs to Indicate Requirement
  528.        Levels", BCP 14, RFC 2119, March 1997.
  529.  
  530.    [5] Perkins, C., "IP Mobility Support", RFC 2002, October 1996.
  531.  
  532.    [6] Kent, S. and R. Atkinson, "Security Architecture for the Internet
  533.        Protocol", RFC 2401, November 1998.
  534.  
  535.    [7] Blunk, L. and J. Vollbrecht, "PPP Extensible Authentication
  536.        Protocol (EAP)", RFC 2284, March 1998.
  537.  
  538.    [8] Simpson, W., "PPP Challenge Handshake Authentication Protocol
  539.        (CHAP)", RFC 1994, August 1996.
  540.  
  541.    [9] Lloyd, B. and Simpson, W., "PPP Authentication Protocols", RFC
  542.        1334, October 1992.
  543.  
  544.    [10] Simpson, W., "The Point-to-Point Protocol (PPP)", STD 51, RFC
  545.         1661, July 1994.
  546.  
  547. 6.  Security Considerations
  548.  
  549.    This document, being a requirements document, does not have any
  550.    security concerns.  The security requirements on protocols to be
  551.    evaluated using this document are mainly described in section 5.2.
  552.  
  553. 7.  Acknowledgements
  554.  
  555.    Thanks to Pat Calhoun (pcalhoun@eng.sun.com), Butch Anton
  556.    (butch@ipass.com) and John Vollbrecht (jrv@merit.edu) for many useful
  557.    discussions of this problem space.
  558.  
  559.  
  560.  
  561.  
  562. Aboba & Zorn                 Informational                     [Page 10]
  563.  
  564. RFC 2477              Evaluating Roaming Protocols          January 1999
  565.  
  566.  
  567. 8.  Authors' Addresses
  568.  
  569.    Bernard Aboba
  570.    Microsoft Corporation
  571.    One Microsoft Way
  572.    Redmond, WA 98052
  573.  
  574.    Phone: 425-936-6605
  575.    EMail: bernarda@microsoft.com
  576.  
  577.  
  578.    Glen Zorn
  579.    Microsoft Corporation
  580.    One Microsoft Way
  581.    Redmond, WA 98052
  582.  
  583.    Phone: 425-703-1559
  584.    EMail: glennz@microsoft.com
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.  
  605.  
  606.  
  607.  
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618. Aboba & Zorn                 Informational                     [Page 11]
  619.  
  620. RFC 2477              Evaluating Roaming Protocols          January 1999
  621.  
  622.  
  623. 9.  Full Copyright Statement
  624.  
  625.    Copyright (C) The Internet Society (1999).  All Rights Reserved.
  626.  
  627.    This document and translations of it may be copied and furnished to
  628.    others, and derivative works that comment on or otherwise explain it
  629.    or assist in its implementation may be prepared, copied, published
  630.    and distributed, in whole or in part, without restriction of any
  631.    kind, provided that the above copyright notice and this paragraph are
  632.    included on all such copies and derivative works.  However, this
  633.    document itself may not be modified in any way, such as by removing
  634.    the copyright notice or references to the Internet Society or other
  635.    Internet organizations, except as needed for the purpose of
  636.    developing Internet standards in which case the procedures for
  637.    copyrights defined in the Internet Standards process must be
  638.    followed, or as required to translate it into languages other than
  639.    English.
  640.  
  641.    The limited permissions granted above are perpetual and will not be
  642.    revoked by the Internet Society or its successors or assigns.
  643.  
  644.    This document and the information contained herein is provided on an
  645.    "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
  646.    TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
  647.    BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
  648.    HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
  649.    MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674. Aboba & Zorn                 Informational                     [Page 12]
  675.  
  676.