home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_q_t / draft-ietf-roamops-roamreq-02.txt < prev    next >
Text File  |  1997-01-13  |  36KB  |  987 lines

  1.  
  2.  
  3.      ROAMOPS Working Group                                    Bernard Aboba
  4.      INTERNET-DRAFT                                   Microsoft Corporation
  5.      <draft-ietf-roamops-roamreq-02.txt>                          Glen Zorn
  6.      11 January 1997                                  Microsoft Corporation
  7.  
  8.  
  9.  
  10.                           Dialup Roaming Requirements
  11.  
  12.  
  13.  
  14.      1.  Status of this Memo
  15.  
  16.      This document is an Internet-Draft.  Internet-Drafts are working docu-
  17.      ments of the Internet Engineering Task Force (IETF),  its  areas,  and
  18.      its  working groups.  Note that other groups MAY also distribute work-
  19.      ing documents as Internet-Drafts.
  20.  
  21.      Internet-Drafts are draft documents valid for a maximum of six  months
  22.      and  MAY  be updated, replaced, or obsoleted by other documents at any
  23.      time.  It is inappropriate to use Internet-Drafts as  reference  mate-
  24.      rial or to cite them other than as ``work in progress.''
  25.  
  26.      To  learn  the  current status of any Internet-Draft, please check the
  27.      ``1id-abstracts.txt'' listing contained in the Internet-Drafts  Shadow
  28.      Directories   on   ds.internic.net   (US  East  Coast),  nic.nordu.net
  29.      (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim).
  30.  
  31.      The  distribution  of  this memo is unlimited.  It is filed as <draft-
  32.      ietf-roamops-roamreq-02.txt>, and  expires  August  1,  1997.   Please
  33.      send comments to the authors.
  34.  
  35.  
  36.      2.  Abstract
  37.  
  38.      This  document  describes  the  features required for the provision of
  39.      "roaming capability" for dialup Internet users, as  well  as  offering
  40.      some  suggestions  for future protocol standardization work.  "Roaming
  41.      capability" is defined as the ability  to  use  any  one  of  multiple
  42.      Internet  service  providers  (ISPs), while maintaining a formal, cus-
  43.      tomer-vendor relationship with only  one.   Examples  of  cases  where
  44.      roaming  capability might be required include ISP "confederations" and
  45.      ISP-provided corporate network access support.
  46.  
  47.  
  48.      3.  Introduction
  49.  
  50.      Considerable interest has arisen recently in a set  of  features  that
  51.      fit  within  the  general  category of "roaming capability" for dialup
  52.      Internet users.  Interested parties have included:
  53.  
  54.           Regional Internet Service Providers  (ISPs)  operating  within  a
  55.           particular  state  or  province, looking to combine their efforts
  56.           with those of other regional providers to  offer  dialup  service
  57.  
  58.  
  59.  
  60.      Aboba & Zorn                                                  [Page 1]
  61.  
  62.  
  63.  
  64.  
  65.  
  66.      INTERNET-DRAFT                                         11 January 1997
  67.  
  68.  
  69.           over a wider area.
  70.  
  71.           National  ISPs  wishing to combine their operations with those of
  72.           one or more ISPs in another nation to  offer  more  comprehensive
  73.           dialup service in a group of countries or on a continent.
  74.  
  75.           Businesses  desiring  to  offer  their  employees a comprehensive
  76.           package of dialup services on a global basis.  Those services can
  77.           include  Internet  access  as  well as secure access to corporate
  78.           intranets via a Virtual Private Network (VPN), enabled by tunnel-
  79.           ing protocols such as PPTP, L2F, or L2TP.
  80.  
  81.      What are the elements of a dialup roaming architecture?  The following
  82.      list is a first cut at defining the elements  for  successful  roaming
  83.      among an arbitrary set of ISPs:
  84.  
  85.           Phone number presentation
  86.           Phone number exchange
  87.           Phone book compilation
  88.           Phone book update
  89.           Connection management
  90.           Authentication
  91.           NAS Configuration/Authorization
  92.           Address Assignment/Routing
  93.           Security
  94.           Accounting
  95.  
  96.      These topics are discussed further in following sections.
  97.  
  98.  
  99.      3.1.  Terminology
  100.  
  101.      This document frequently uses the following terms:
  102.  
  103.      phone book
  104.                This is a database or document containing data pertaining to
  105.                dialup access, including phone numbers  and  any  associated
  106.                attributes.
  107.  
  108.      phone book server
  109.                This  is  a  server that maintains the latest version of the
  110.                phone book.  Clients communicate with phone book servers  in
  111.                order to keep their phone books up to date.
  112.  
  113.      Network Access Server
  114.                The  Network  Access Server (NAS) is the device that clients
  115.                dial in order to get access to the network.
  116.  
  117.      RADIUS server
  118.                This is a server which  provides  for  authentication/autho-
  119.                rization via the protocol described in [3], and for account-
  120.                ing as described in [4].
  121.  
  122.  
  123.  
  124.  
  125.  
  126.      Aboba & Zorn                                                  [Page 2]
  127.  
  128.  
  129.  
  130.  
  131.  
  132.      INTERNET-DRAFT                                         11 January 1997
  133.  
  134.  
  135.      RADIUS proxy
  136.                In order to provide for the routing of RADIUS authentication
  137.                and  accounting requests, a RADIUS proxy can be employed. To
  138.                the NAS, the RADIUS proxy appears to act as a RADIUS server,
  139.                and  to  the  RADIUS  server,  the proxy appears to act as a
  140.                RADIUS client.
  141.  
  142.      Network Access Identifier
  143.                In order to provide for the routing of RADIUS authentication
  144.                and accounting requests, the userID field used in PPP (known
  145.                as the Network Access Identifier or NAI) and in  the  subse-
  146.                quent  RADIUS  authentication  and  accounting requests, can
  147.                contain structure. This structure provides a means by  which
  148.                the  RADIUS  proxy  will locate the RADIUS server that is to
  149.                receive the request.
  150.  
  151.  
  152.      3.2.  Requirements language
  153.  
  154.      This specification uses the same words as [4] for defining the signif-
  155.      icance of each particular requirement.  These words are:
  156.  
  157.  
  158.      MUST      This  word,  or  the adjectives "REQUIRED" or "SHALL", means
  159.                that the definition is an absolute requirement of the speci-
  160.                fication.
  161.  
  162.      MUST NOT  This phrase, or the phrase "SHALL NOT", means that the defi-
  163.                nition is an absolute prohibition of the specification.
  164.  
  165.      SHOULD    This word, or the adjective "RECOMMENDED", means that  there
  166.                may  exist  valid  reasons  in  particular  circumstances to
  167.                ignore a particular item, but the full implications must  be
  168.                understood and carefully weighed before choosing a different
  169.                course.
  170.  
  171.      SHOULD NOT
  172.                This phrase means that there may exist valid reasons in par-
  173.                ticular   circumstances  when  the  particular  behavior  is
  174.                acceptable or even useful, but the full implications  should
  175.                be  understood  and the case carefully weighed before imple-
  176.                menting any behavior described with this label.
  177.  
  178.      MAY       This word, or the adjective "OPTIONAL", means that  an  item
  179.                is  truly  optional.   One  vendor may choose to include the
  180.                item because a particular marketplace requires it or because
  181.                the  vendor feels that it enhances the product while another
  182.                vendor may omit the same item.  An implementation which does
  183.                not include a particular option MUST be prepared to interop-
  184.                erate with another implementation  which  does  include  the
  185.                option,  though  perhaps  with reduced functionality. In the
  186.                same vein an implementation which does include a  particular
  187.                option  MUST be prepared to interoperate with another imple-
  188.                mentation which does  not  include  the  option.(except,  of
  189.  
  190.  
  191.  
  192.      Aboba & Zorn                                                  [Page 3]
  193.  
  194.  
  195.  
  196.  
  197.  
  198.      INTERNET-DRAFT                                         11 January 1997
  199.  
  200.  
  201.                course, for the feature the option provides)
  202.  
  203.      An  implementation is not compliant if it fails to satisfy one or more
  204.      of the must or must not requirements for the protocols it  implements.
  205.      An  implementation  that  satisfies all the must, must not, should and
  206.      should not requirements for its protocols is said to be  "uncondition-
  207.      ally compliant"; one that satisfies all the must and must not require-
  208.      ments but not all the should or should not requirements for its proto-
  209.      cols is said to be "conditionally compliant."
  210.  
  211.  
  212.  
  213.      4.  Requirements for Dialup Roaming
  214.  
  215.      Suppose  we  have  a  customer,  Fred,  who has signed up for Internet
  216.      access with ISP A in his local area, through his company, BIGCO.   ISP
  217.      A  has  joined  an  association of other ISPs (which we will call ISP-
  218.      GROUP) in order to offer service outside the  local  area.   Now  Fred
  219.      travels  to another part of the world, and wishes to dial into a phone
  220.      number offered by ISP B (also a member of ISPGROUP).  What is involved
  221.      in allowing this to occur?
  222.  
  223.  
  224.      Phone number presentation
  225.           Fred  MUST be able to find and select the phone number offered by
  226.           ISP B.
  227.  
  228.      Phone number exchange
  229.           When there is a change in the status of phone numbers  (additions
  230.           or  deletions)  from  individual providers, providers in ISPGROUP
  231.           will typically notify each other and propagate the changes.
  232.  
  233.      Phone book compilation
  234.           When these updates occur, a new  phone  book  will  be  compiled,
  235.           based  on  the  changes  submitted by the individual ISPs in ISP-
  236.           GROUP.
  237.  
  238.      Phone book update
  239.           Once a new phone book is compiled, there MUST be a way to  update
  240.           the  phone  books  of customers such as Fred, so that the changes
  241.           are reflected in the user phone books.
  242.  
  243.      Connection management
  244.           Fred's machine MUST be able to dial the  phone  number,  success-
  245.           fully  connect,  and  interoperate with the Network Access Server
  246.           (NAS) on the other end of the line.
  247.  
  248.      Authentication
  249.           Fred MUST be able to secure access to the network.
  250.  
  251.      NAS configuration/authorization
  252.           The Network Access Server (NAS) MUST receive configuration param-
  253.           eters in order to set up Fred's session.
  254.  
  255.  
  256.  
  257.  
  258.      Aboba & Zorn                                                  [Page 4]
  259.  
  260.  
  261.  
  262.  
  263.  
  264.      INTERNET-DRAFT                                         11 January 1997
  265.  
  266.  
  267.      Security
  268.           If  desired by BIGCO, additional security measures SHOULD be sup-
  269.           ported for Fred's session.  These could include supporting use of
  270.           token cards, or setting up Fred's account so that he is automati-
  271.           cally tunneled to the corporate PPTP,  L2F  or  L2TP  server  for
  272.           access to the corporate intranet.
  273.  
  274.      Address assignment/routing
  275.           Fred MUST be assigned a routable IP address by the NAS.
  276.  
  277.      Accounting
  278.           ISP B MUST keep track of what resources Fred used during the ses-
  279.           sion.  Relevant information includes how long Fred used the  ser-
  280.           vice,  what  speed he connected at, whether he connected via ISDN
  281.           or modem, etc.
  282.  
  283.      Note that some of these requirements may not  require  standardization
  284.      or  lie  outside  the  scope of the IETF; they are all listed for com-
  285.      pleteness' sake.
  286.  
  287.  
  288.      4.1.  Phone Number Presentation
  289.  
  290.      Phone number presentation involves the display of available phone num-
  291.      bers  to  the user, and culminates in the choosing of a number.  Since
  292.      the user interface and sequence of events  involved  in  phone  number
  293.      presentation  is a function of the connection management software that
  294.      Fred is using, it is likely that individual vendors will take  differ-
  295.      ent  approaches  to  the problem.  These differences can include vari-
  296.      ances in the format of the client phone books, varying  approaches  to
  297.      presentation,  etc.   There  is  no  inherent  problem with this. As a
  298.      result, phone number presentation need not be standardized.
  299.  
  300.  
  301.      4.2.  Phone Number Exchange
  302.  
  303.      Phone number exchange involves propagation  of  phone  number  changes
  304.      between  providers  in  a roaming association. As described in [2], no
  305.      current roaming implementations provide for complete automation of the
  306.      phone number exchange process. As a result, phone number exchange need
  307.      not be standardized at this time.
  308.  
  309.  
  310.      4.3.  Phone Book Compilation
  311.  
  312.      Once an ISP's phone book server has received its updates it  needs  to
  313.      compile  a  new  phone  book  and propagate this phone book to all the
  314.      phone book servers operated by that ISP. Given  that  the  compilation
  315.      process  does  not  affect  protocol  interoperability, it need not be
  316.      standardized.
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.      Aboba & Zorn                                                  [Page 5]
  325.  
  326.  
  327.  
  328.  
  329.  
  330.      INTERNET-DRAFT                                         11 January 1997
  331.  
  332.  
  333.      4.4.  Phone Book Update
  334.  
  335.      Once the phone book is compiled, it needs to  be  propagated  to  cus-
  336.      tomers.  Standardization  of  the phone book update process allows for
  337.      providers to update the phone books of  users,  independent  of  their
  338.      client and operating system. As a result, roaming implementations pro-
  339.      viding for phone book update MUST implement the standard update proto-
  340.      col.
  341.  
  342.  
  343.      4.4.1.  Phone book update protocol requirements
  344.  
  345.      What are the requirements for a phone book update protocol?
  346.  
  347.  
  348.      Portability
  349.           The update protocol MUST allow for updating of clients on a range
  350.           of platforms and operating systems. Therefore the  update  mecha-
  351.           nism  MUST not impose any operating system-specific requirements.
  352.  
  353.  
  354.      Authentication
  355.           The client MUST be able to  determine  the  authenticity  of  the
  356.           server sending the phone book update. The server MAY also be able
  357.           to authenticate the client.
  358.  
  359.  
  360.      Versioning
  361.           The update protocol MUST provide for updating of the  phone  book
  362.           from  an  arbitrary previous version to the latest available ver-
  363.           sion.
  364.  
  365.  
  366.      Integrity Checking
  367.           The client MUST  be  able  to  determine  the  integrity  of  the
  368.           received  update  before applying it, as well as the integrity of
  369.           the newly produced phone book after updating it.
  370.  
  371.  
  372.      Light weight transfers
  373.           Since the client machine can be a low-end PC, the update protocol
  374.           MUST be lightweight.
  375.  
  376.  
  377.      Language support
  378.           The  phone  book  update  mechanism  MUST  support the ability to
  379.           request that the phone book be transmitted in a  particular  lan-
  380.           guage  and character set. For example, if the customer has a Rus-
  381.           sian language software package, then the propagation  and  update
  382.           protocols MUST provide a mechanism for the user to request a Rus-
  383.           sian language phone book. Similarly, the phone book standard
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.      Aboba & Zorn                                                  [Page 6]
  391.  
  392.  
  393.  
  394.  
  395.  
  396.      INTERNET-DRAFT                                         11 January 1997
  397.  
  398.  
  399.      4.4.2.  Phone book format requirements
  400.  
  401.      What are the requirements for a phone book format?
  402.  
  403.  
  404.      Phone number attributes
  405.           The phone book format MUST support phone number  attributes  com-
  406.           monly  used  by  Internet service providers. These attributes are
  407.           required in order to provide users with information on the  capa-
  408.           bilities  of  the  available  phone numbers. Since it is intended
  409.           that the client will begin PPP negotiation immediately on connec-
  410.           tion,  support  for scripting will not be part of a roaming stan-
  411.           dard.
  412.  
  413.  
  414.      Provider attributes
  415.           In addition to providing information relating to  a  given  phone
  416.           number, the phone book MUST provide information on the individual
  417.           roaming consortium members.  These  attributes  are  required  in
  418.           order  to  provide  users  with  information about the individual
  419.           providers in the roaming consortium.
  420.  
  421.  
  422.      Service attributes
  423.           In addition to providing information relating to  a  given  phone
  424.           number,  and service provider, the phone book MUST provide infor-
  425.           mation relevant to configuration of the service. These attributes
  426.           are  necessary to provide the client with information relating to
  427.           the operation of the service.
  428.  
  429.  
  430.      Extensibility
  431.           Since  it  will  frequently  be  necessary  to  add  phone   book
  432.           attributes,  the  phone  book format MUST support the addition of
  433.           phone number, provider and service attributes  without  modifica-
  434.           tion  to  the  update  protocol.  Registration  of new phone book
  435.           attributes will be handled by IANA. The attribute space  MUST  be
  436.           sufficiently large to accomodate growth.
  437.  
  438.  
  439.      Compactness
  440.           Since  phone book will typically be frequently updated, the phone
  441.           book format MUST be compact so as to minimize the bandwidth  used
  442.           in updating it.
  443.  
  444.  
  445.  
  446.      4.4.2.1.  Phone number attributes
  447.  
  448.      Examples of phone number attributes include:
  449.  
  450.           Unique identifier for the phone number
  451.           City
  452.           State or Region
  453.  
  454.  
  455.  
  456.      Aboba & Zorn                                                  [Page 7]
  457.  
  458.  
  459.  
  460.  
  461.  
  462.      INTERNET-DRAFT                                         11 January 1997
  463.  
  464.  
  465.           Country
  466.           Area code
  467.           Local phone number
  468.           Minimum speed
  469.           Maximum speed
  470.           Modem protocols supported (V.32bis, V.34, etc.)
  471.           ISDN protocols supported (V.110, V.120, etc.)
  472.           Multicast capability
  473.           Dialout capability
  474.           Times of operation
  475.           Priority level (for control of presentation order)
  476.           External/internal flag (denoting whether the number has been imported)
  477.  
  478.  
  479.      4.4.2.2.  Provider attributes
  480.  
  481.      Examples of provider attributes include:
  482.  
  483.           Provider name
  484.           Provider address
  485.           Provider voice phone number
  486.           Provider fax phone number
  487.           Customer support phone number
  488.           Provider icon
  489.           Provider domain name
  490.           Primary Domain Name Server
  491.           Secondary Domain Name Server
  492.           Dial-up IP Address
  493.           News server
  494.           Mail server
  495.           Web page
  496.           Maximum length of the user name for the provider
  497.           Maximum length of the password for the provider
  498.  
  499.  
  500.      4.4.2.3.  Service attributes
  501.  
  502.      Examples of service attributes include:
  503.  
  504.           The name of the service
  505.           A description of the service
  506.           The URL of the service phone book server
  507.           The service phone book filename
  508.           The service phone book version number
  509.  
  510.  
  511.      4.5.  Connection Management
  512.  
  513.      Once  Fred  has  chosen  a number from his phone book, he will need to
  514.      connect to ISP B via ISDN or modem, and bring up a dialup network con-
  515.      nection.   In the case of a PPP session, this will include CHAP or PAP
  516.      authentication.
  517.  
  518.  
  519.  
  520.  
  521.  
  522.      Aboba & Zorn                                                  [Page 8]
  523.  
  524.  
  525.  
  526.  
  527.  
  528.      INTERNET-DRAFT                                         11 January 1997
  529.  
  530.  
  531.      4.5.1.  Requirements
  532.  
  533.      What are the requirements for connection management?
  534.  
  535.  
  536.       PPP Support
  537.           Given the current popularity and near ubiquity of PPP, a  roaming
  538.           standard  MUST  provide support for PPP.  While an implementation
  539.           MAY choose to support other framing protocols such as SLIP,  SLIP
  540.           support  is  expected to prove difficult since SLIP does not sup-
  541.           port negotiation of connection parameters and lacks  support  for
  542.           protocols other than IP. Support for non-IP protocols (e.g., IPX)
  543.           MAY be necessary for the provision of corporate  intranet  access
  544.           via  the  Internet.   Since  it  is intended that the client will
  545.           begin PPP negotiation  immediately  on  connection,  support  for
  546.           scripting will not be part of a roaming standard.
  547.  
  548.  
  549.      4.6.  Authentication
  550.  
  551.      Authentication  consists of two parts: the claim of identity (or iden-
  552.      tification) and the proof of the claim (or verification).
  553.  
  554.      In order for Fred to obtain network access from ISP B,  he  MUST  have
  555.      been assigned a user ID which identifies him as a customer of a member
  556.      of ISPGROUP (in this case, ISP A).  For example, if a user  ID  suffix
  557.      is  used,  Fred  might identify himself as "fred@ispa.com".  Note that
  558.      some NAS vendors will need to modify their devices so  as  to  support
  559.      the longer user IDs resulting from addition of prefixes or suffixes.
  560.  
  561.      After  obtaining Fred's user ID and other authentication data, the NAS
  562.      device will then send a RADIUS request packet to  a  RADIUS  proxy  or
  563.      server.  If  a proxy is being used, it MUST examine the user ID prefix
  564.      or suffix, check whether it represents  an  authorized  authentication
  565.      realm,   and  then  pass  the  request either to an appropriate RADIUS
  566.      server, or to another proxy for further routing.
  567.  
  568.  
  569.      4.6.1.  Identification
  570.  
  571.      As part of the authentication process, users  identify  themselves  to
  572.      the  Network  Access  Server  (NAS) in a manner that allows the NAS to
  573.      route the authentication request to its home destination.
  574.  
  575.  
  576.      4.6.1.1.  Naming requirements
  577.  
  578.      What are the requirements for an identification scheme?
  579.  
  580.  
  581.       Authentication routing
  582.           A roaming standard MUST provide a mechanism for the remote ISP to
  583.           efficiently  route the authentication request to the home authen-
  584.           tication server. As part of this, there MUST be  a  way  for  the
  585.  
  586.  
  587.  
  588.      Aboba & Zorn                                                  [Page 9]
  589.  
  590.  
  591.  
  592.  
  593.  
  594.      INTERNET-DRAFT                                         11 January 1997
  595.  
  596.  
  597.           remote  ISP  to  determine  the  IP address of the authentication
  598.           server that is to be contacted.
  599.  
  600.  
  601.       Robustness
  602.           Authentication routing MUST be  carried  out  in  a  manner  that
  603.           allows  the  authentication request to reach its the destination,
  604.           and for the response to be returned  to  the  querying  NAS,  all
  605.           within  a time period compatible with typical timeout parameters.
  606.  
  607.  
  608.      4.6.2.  Verification of Identity
  609.  
  610.      CHAP and PAP are the two authentication protocols used within the  PPP
  611.      framework today. Some groups of users are requiring different forms of
  612.      proof of identity (e.g., token or smart cards,  Kerberos  credentials,
  613.      etc.)  for  special  purposes(such  as  acquiring  access to corporate
  614.      intranets).
  615.  
  616.  
  617.      4.6.3.  Requirements
  618.  
  619.      What are the requirements for authentication?
  620.  
  621.  
  622.      Authentication types
  623.           A successful roaming implementation MUST support CHAP, and SHOULD
  624.           support EAP. PAP authentication MAY be supported.
  625.  
  626.  
  627.      RADIUS Support
  628.           Given the current popularity and near ubiquity of RADIUS, a roam-
  629.           ing standard MUST support RADIUS, as  defined  in  [2]  and  [3].
  630.           Other protocols MAY be supported. However, it is the responsibil-
  631.           ity of participating ISPs  and/or  software  vendors  to  produce
  632.           gateways between those protocols and RADIUS.
  633.  
  634.  
  635.      Business relationships
  636.           A roaming standard MUST provide a mechanism for the remote ISP to
  637.           determine whether the home  authentication  server  has  a  valid
  638.           business  relationship  with  the remote ISP. This implies either
  639.           that the authenticating party is a member of the roaming associa-
  640.           tion, or that the authenticating party has a valid business rela-
  641.           tionship with a member of the roaming association.
  642.  
  643.  
  644.      Scalability
  645.           A roaming standard,  once  available,  is  likely  to  be  widely
  646.           deployed  on the Internet. A roaming standard MUST therefore pro-
  647.           vide sufficient scalability to allow for the formation of roaming
  648.           associations  with hundreds of ISP members, and hundreds of "sub-
  649.           domains" per ISP.  Thus, a roaming standard MUST be able to  deal
  650.           with a hundred thousand RADIUS servers operating within a roaming
  651.  
  652.  
  653.  
  654.      Aboba & Zorn                                                 [Page 10]
  655.  
  656.  
  657.  
  658.  
  659.  
  660.      INTERNET-DRAFT                                         11 January 1997
  661.  
  662.  
  663.           association.
  664.  
  665.  
  666.      Non-repudiation
  667.           In a RADIUS proxy system, access responses are  verified  hop-by-
  668.           hop,  rather than on an end-to-end basis. This means that without
  669.           additional security measures, it is possible  for  a  compromised
  670.           RADIUS  proxy  to modify security attributes returned by the home
  671.           ISP, or even to change a NAK to an ACK. While non-repudiation  of
  672.           Access-Replies is not a requirement for a roaming standard, it is
  673.           considered  desirable,  and  therefore  MAY  be  provided  as  an
  674.           optional capability.
  675.  
  676.  
  677.      4.7.  NAS Configuration/Authorization
  678.  
  679.      In  order  for Fred to be able to log in to ISP B, it is necessary for
  680.      ISP A's RADIUS server to return the proper  configuration  information
  681.      to ISP B's NAS.
  682.  
  683.  
  684.      4.7.1.  Configuration/Authorization requirements
  685.  
  686.      What are the requirements for configuration/authorization?
  687.  
  688.  
  689.       Masking of heterogeneity
  690.           ISP A and ISP B's NAS devices can be from different vendors; even
  691.           if they are from the same vendor, ISP A and ISP B can use differ-
  692.           ent  NAS  configurations.  As a result, the NASs can each require
  693.           different parameters in order to properly configure them.  In the
  694.           case  of  RADIUS, this problem can be solved through the use of a
  695.           proxy which adds ISP and NAS-specific attributes to the  response
  696.           returned by ISP A's RADIUS server, with the result being that ISP
  697.           B's RADIUS proxy will provide the attributes necessary to config-
  698.           ure  ISP B's NAS device, while ISP A's RADIUS server will perform
  699.           the actual user authentication.  In order to support  heterogene-
  700.           ity  among providers within the roaming association, RADIUS prox-
  701.           ies MUST support attribute editing.
  702.  
  703.  
  704.      4.8.  Address assignment/routing
  705.  
  706.      A roaming standard MUST support dynamic  address  assignment.   Static
  707.      address  assignment MAY be supported. Static address assignment, if it
  708.      is to be supported, will most likely be accomplished via  one  of  two
  709.      mechanisms:
  710.  
  711.  
  712.      Layer 2 tunneling protocols
  713.           Layer-2  tunneling  protocols,  such  as PPTP, L2F, or L2TP, hold
  714.           great promise for the implementation of Virtual Private  Networks
  715.           as a means for inexpensive access to remote networks.  Therefore,
  716.           proxy implementations MUST NOT preclude mandatory tunneling.
  717.  
  718.  
  719.  
  720.      Aboba & Zorn                                                 [Page 11]
  721.  
  722.  
  723.  
  724.  
  725.  
  726.      INTERNET-DRAFT                                         11 January 1997
  727.  
  728.  
  729.      Layer 3 tunneling protocols
  730.           Layer-3 tunneling protocols as embodied in  Mobile  IP  [RFC2002]
  731.           hold  great promise for providing "live", transparent mobility on
  732.           the part of mobile  nodes  on  the  Internet.   Therefore,  proxy
  733.           implementations MUST NOT preclude the provision of Mobile IP For-
  734.           eign Agents or other Mobile IP functionality on the part of  ser-
  735.           vice providers.
  736.  
  737.  
  738.      4.9.  Security
  739.  
  740.      Although  network  security  is a very broad subject, in this paper we
  741.      will limit our attention to the problems of secure proxying and shared
  742.      secret management.
  743.  
  744.  
  745.      4.9.1.  Requirements
  746.  
  747.      What are the security requirements?
  748.  
  749.  
  750.       Secure proxying
  751.           One of the problems which arises from the dependency on a proxied
  752.           system of authorization is how to guarantee that the  proxy  will
  753.           properly  forward the security-related parameters returned by the
  754.           remote server and that the NAS will enforce them. RADIUS  proxies
  755.           MUST  not  remove security-related parameters from responses. For
  756.           example, the user MUST not be allowed to authenticate using  CHAP
  757.           or PAP if the remote authorization server had returned attributes
  758.           indicating a requirement for token card use.  Similarly,  a  user
  759.           MUST  not  be allowed access to the Internet if the remote autho-
  760.           rization server had returned attributes indicating a  requirement
  761.           for a mandatory tunnel.
  762.  
  763.  
  764.       Shared secret management
  765.           A roaming standard MUST provide for efficient management of share
  766.           secrets. This is required since the RADIUS  protocol  requires  a
  767.           shared  secret  between the NAS and the RADIUS server. This along
  768.           with authentication  routing  and  timeout  constraints  are  the
  769.           issues  most  limiting  the  scalability  of  roaming. In a proxy
  770.           implementation, this translates to shared secrets between the NAS
  771.           devices  and  the  ISP  proxy,  and another set of shared secrets
  772.           between the ISP  proxies  and  second  level  proxies  or  RADIUS
  773.           servers. Note that the issue of shared secret management is inti-
  774.           mately connected with authentication routing, since  the  routing
  775.           scheme  determines  the number of hops that MUST be traversed for
  776.           the authentication request to reach its destination. This in turn
  777.           influences  the  number  of  shared secrets that need to be main-
  778.           tained on each proxy or server.
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.      Aboba & Zorn                                                 [Page 12]
  787.  
  788.  
  789.  
  790.  
  791.  
  792.      INTERNET-DRAFT                                         11 January 1997
  793.  
  794.  
  795.      4.10.  Accounting
  796.  
  797.      Today there is no proposed standard for NAS accounting, and  there  is
  798.      wide  variation  in  the  protocols  used  by providers to communicate
  799.      accounting information within their own organizations.  As  a  result,
  800.      rather  than  requiring   the  use of a particular accounting protocol
  801.      (RADIUS, TACACS+, SNMP, SYSLOG, etc.),  a roaming standard  MUST  pre-
  802.      scribe  a  standardized  format and transmission method for accounting
  803.      records.
  804.  
  805.  
  806.      4.10.1.  Accounting requirements
  807.  
  808.      What are the accounting requirements for roaming?
  809.  
  810.  
  811.      Identification of the accounting agent
  812.           Prior to setting up the accounting record transfer,  the  roaming
  813.           implementation  MUST  be  able  to determine the endpoint for the
  814.           accounting record transfer.
  815.  
  816.  
  817.      Tagging and bagging
  818.           The transfer protocol MUST be able to tag and bag the transferred
  819.           records  so  as  to identify the version and type of record being
  820.           transferred.
  821.  
  822.  
  823.      Accounting metrics
  824.           The account record format MUST be able to encode metrics commonly
  825.           used  by Internet Service Providers to determine the user's bill.
  826.  
  827.  
  828.      Extensibility
  829.           Since these metrics change over time, the accounting record  for-
  830.           mat  MUST be extensible so as to be able to add future metrics as
  831.           they come along. The record format  MUST  support  both  standard
  832.           metrics as well as vendor-specific metrics.
  833.  
  834.  
  835.      Encryption
  836.           For  the sake of security, the record transfer protocol MUST pro-
  837.           vide for encrypted transfer of records via an  encryption  mecha-
  838.           nism  that  can  be legally deployed in at least a minimal set of
  839.           countries.
  840.  
  841.  
  842.      Authentication
  843.           Also for the sake of security, the record MUST provide for  sign-
  844.           ing  of  the  accounting records, so as to assure their integrity
  845.           and authenticity. In addition, during the  transfer  process  the
  846.           sender and receiver MUST mutually authenticate.
  847.  
  848.  
  849.  
  850.  
  851.  
  852.      Aboba & Zorn                                                 [Page 13]
  853.  
  854.  
  855.  
  856.  
  857.  
  858.      INTERNET-DRAFT                                         11 January 1997
  859.  
  860.  
  861.      Compactness
  862.           For the sake of efficiency, the record format MUST be compact.
  863.  
  864.  
  865.      Robustness
  866.           The  accounting  transfer  protocol MUST be capable of recovering
  867.           from a variety of faults, including partially completed transfers
  868.           and non-supported metrics.
  869.  
  870.  
  871.      Non-repudiation
  872.           Once  an  accounting record file has been transferred, the sender
  873.           MUST be able to secure a receipt from the receiver. Similarly,  a
  874.           receipt  MUST  be  sent  once the accounting record file has been
  875.           processed. Along with the receipt, the  receiver  SHOULD  include
  876.           error messages associated with processing the accounting records.
  877.  
  878.  
  879.      4.10.1.1.  Example accounting metrics
  880.  
  881.      Examples of accounting metrics include:
  882.  
  883.           User Name (String; the user's ID, including prefix or suffix)
  884.           NAS IP address (Integer; the IP address of the user's NAS)
  885.           NAS Port (Integer; identifies the physical port on the NAS)
  886.           Service Type (Integer; identifies the service provided to the user)
  887.           NAS Identifier (Integer; unique identifier for the NAS)
  888.           Delay Time (Integer; time client has been trying to send)
  889.           Input Octets (Integer; in stop record, octets received from port)
  890.           Output Octets (Integer; in stop record, octets sent to port)
  891.           Session ID (Integer; unique ID identifying the session)
  892.           Authentication (Integer; indicates how user was authenticated)
  893.           Session Time (Integer; in stop record, seconds of received service)
  894.           Input Packets (Integer; in stop record, packets received from port)
  895.           Output Packets (Integer; in stop record, packets sent to port)
  896.           Termination Cause (Integer; in stop record, indicates termination cause)
  897.           Multi-Session ID (String; for linking of multiple related sessions)
  898.           Link Count (Integer; number of links up when record was generated)
  899.           NAS Port Type (Integer; indicates async vs. sync ISDN, V.120, etc.)
  900.  
  901.  
  902.  
  903.      5.  Acknowledgements
  904.  
  905.      Thanks to Dr. Thomas Pfenning and Don Dumitru of  Microsoft  for  many
  906.      useful discussions of this problem space.
  907.  
  908.  
  909.      6.  References
  910.  
  911.      [1]   B.  Aboba, L. Liu, J. Alsop, J. Ding.  "Review of Roaming Imple-
  912.      mentations." draft-ietf-roamops-imprev-01.txt, Microsoft,  Aimnet,  i-
  913.      Pass Alliance, Asiainfo, January, 1997.
  914.  
  915.  
  916.  
  917.  
  918.      Aboba & Zorn                                                 [Page 14]
  919.  
  920.  
  921.  
  922.  
  923.  
  924.      INTERNET-DRAFT                                         11 January 1997
  925.  
  926.  
  927.      [2]  C. Rigney, A. Rubens, W. A. Simpson, S. Willens.  "Remote Authen-
  928.      tication  Dial   In   User   Service   (RADIUS)."   draft-ietf-radius-
  929.      radius-05.txt, Livingston, Merit, Daydreamer, July 1996.
  930.  
  931.      [3]    C.  Rigney.   "RADIUS  Accounting."  draft-ietf-radius-account-
  932.      ing-05.txt, Livingston, July 1996.
  933.  
  934.      [4] S. Bradner.  "Key words for use in RFCs  to  Indicate  Requirement
  935.      Levels."  draft-bradner-key-words-02.txt,  Harvard University, August,
  936.      1996.
  937.  
  938.      [5] G. Zorn.  "RADIUS Attributes for Tunnel Protocol Support."  draft-
  939.      ietf-radius-tunnel-auth-00.txt, Microsoft Corporation, November, 1996.
  940.  
  941.      [6] B. Aboba.  "Implementation of  Mandatory  Tunneling  via  RADIUS."
  942.      draft-aboba-radius-tunnel-imp-01.txt, Microsoft Corporation, November,
  943.      1996.
  944.  
  945.  
  946.      7.  Authors' Addresses
  947.  
  948.      Bernard Aboba
  949.      Microsoft Corporation
  950.      One Microsoft Way
  951.      Redmond, WA 98052
  952.  
  953.      Phone: 206-936-6605
  954.      EMail: bernarda@microsoft.com
  955.  
  956.  
  957.      Glen Zorn
  958.      Microsoft Corporation
  959.      One Microsoft Way
  960.      Redmond, WA 98052
  961.  
  962.      Phone: 206-703-1559
  963.      EMail: glennz@microsoft.com
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.      Aboba & Zorn                                                 [Page 15]
  985.  
  986.  
  987.