INTERNET DRAFT                                            Pat R. Calhoun
Category: Standards Track                          Sun Microsystems, Inc.
Title: draft-calhoun-diameter-authent-02.txt
Date: March 1998



                                       DIAMETER
                            User Authentication Extensions
                       <draft-calhoun-diameter-authent-02.txt>


Status of this Memo

   This  document  is  an  Internet-Draft.  Internet-Drafts  are  working
   documents  of  the  Internet Engineering Task Force (IETF), its areas,
   and its working groups.  Note that other groups  may  also  distribute
   working documents as Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months.
   Internet-Drafts  may  be  updated,  replaced,  or  obsoleted  by other
   documents at any time.  It is not appropriate to  use  Internet-Drafts
   as  reference  material  or  to  cite  them  other than as a ``working
   draft'' or ``work in progress.''

   To learn the current status of any Internet-Draft,  please  check  the
   1id-abstracts.txt  listing  contained  in  the  Internet-Drafts Shadow
   Directories on ds.internic.net,  nic.nordu.net,  ftp.nisc.sri.com,  or
   munnari.oz.au.

Abstract

   DIAMETER is a Policy and AAA protocol which can be used for a  variety
   of services. This document defines DIAMETER messages that are used for
   the authentication, authorization and accounting of users.

   A considerable amount of effort  was  put  into  the  design  of  this
   protocol  to ensure that an implementation could support both DIAMETER
   and RADIUS concurrently.













Calhoun                  expires September 1998                  [Page 1]


INTERNET DRAFT                                                 March 1998


Table of Contents

      1.0  Introduction
      1.1  Specification of Requirements
      2.0  Command Codes
      2.1  Domain-Discovery-Request
      2.2  Domain-Discovery-Response
      2.3  Authentication-Request
      2.4  Authentication-Success
      2.5  Authentication-Failure
      2.6  Authentication-Challenge
      3.0  DIAMETER AVPs
      3.1  User-Name
      3.2  User-Password
      3.3  CHAP-Password
      3.4  NAS-Port
      3.5  Service-Type
      3.6  Framed-Protocol
      3.7  Framed-IP-Address
      3.8  Framed-IP-Netmask
      3.9  Framed-Routing
      3.10  Filter-Id
      3.11  Framed-MTU
      3.12  Framed-Compression
      3.13  Login-IP-Host
      3.14  Login-Service
      3.15  Login-TCP-Port
      3.16  Reply-Message
      3.17  Callback-Number
      3.18  Callback-Id
      3.19  Framed-Route
      3.20  Framed-IPX-Network
      3.21  State
      3.22  Class
      3.23  Vendor-Specific
      3.24  Session-Timeout
      3.25  Idle-Timeout
      3.26  Termination-Action
      3.27  Called-Station-Id
      3.28  Calling-Station-Id
      3.29  Proxy-State
      3.30  Login-LAT-Service
      3.31  Login-LAT-Node
      3.32  Login-LAT-Group
      3.33  Framed-AppleTalk-Link
      3.34  Framed-AppleTalk-Network
      3.35  Framed-AppleTalk-Zone
      3.36  CHAP-Challenge
      3.37  NAS-Port-Type
      3.38  Port-Limit


Calhoun                  expires September 1998                  [Page 2]


INTERNET DRAFT                                                 March 1998


      3.39  Login-LAT-Port
      3.40  Framed-Password-Policy
      3.41. Table of Attributes
      5.0  Protocol Definition
      5.1  RADIUS Proxies
      5.2  DIAMETER Proxies
      5.2  Domain Discovery
      6.0  Acknowledgements
      7.0  References
      8.0  Authors' Addresses


1.0  Introduction

   This document describes the DIAMETER  User  Authentication  Extensions
   that can be used for a variety of services including Dial-up users via
   NAS', Web User Authentication, Firewall User Authentication[5][6].

   This document describes Authentication/Authorization messages as  well
   as a set of messages which allow DIAMETER hosts to bypass proxies.

   Since Most of the AVPs found in this  document  was  copied  from  the
   RADIUS  protocol[1],  it  is possible to have both RADIUS and DIAMETER
   servers read  the  same  dictionary  and  users  files.  The  backward
   compatibility   that   DIAMETER   offers  is  intended  to  facilitate
   deployment.

   The Extension number for this draft is 1. This value is  used  in  the
   Supported-Extension AVP as defined in [2].


1.1  Specification of Requirements

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

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

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

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

    MAY       This word, or the adjective "optional", means that this


Calhoun                  expires September 1998                  [Page 3]


INTERNET DRAFT                                                 March 1998


              item is one of an allowed set of alternatives.  An
              implementation which does not include this option MUST
              be prepared to interoperate with another implementation
              which does include the option.


2.0  Command Codes

   This document defines the following DIAMETER  Commands.  All  DIAMETER
   implementations  supporting  this  extension  MUST  support all of the
   following commands:

      Command Name          Command Code
      -----------------------------------
      Domain-Discovery-Request  261
      Domain-Discovery-Response 262
      Authentication-Request    263
      Authentication-Success    264
      Authentication-Failure    265
      Authentication-Challenge  266


2.1  Domain-Discovery-Request

   Description

      The Domain-Discovery-Request message is used by a  DIAMETER  device
      wishing   to   get   contact  information  about  a  domain's  home
      authentication  server  as  well  as  to  receive  password  policy
      information.  This  message MUST contain the User-Name attribute in
      order to pass along the user's domain information.

      The  X509-Certificate  or  the  X509-Certificate-URL  [2]  MUST  be
      present  in this message in order to inform the home authentication
      server of the issuing host's certificate.

      A summary of the Domain-Discovery-Request packet  format  is  shown
      below. The fields are transmitted from left to right.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                           AVP Code                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          AVP Length           |  AVP Flags  |    Reserved     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Command Type          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Code


Calhoun                  expires September 1998                  [Page 4]


INTERNET DRAFT                                                 March 1998


      256     DIAMETER Command

   AVP Length

      The length of this attribute MUST be 10.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Command Type

      The Command Type  field  MUST  be  set  to  261  (Domain-Discovery-
      Request).


2.2  Domain-Discovery-Response

   Description

      The Domain-Discovery-Response message is sent in  response  to  the
      Domain-Discovery-Request    message    by    the    domain's   Home
      authentication server. The message MUST contain  either  the  Host-
      Name  or  Host-IP-Address  and  either  the X509-Certificate or the
      X509-Certificate-URL attribute and  SHOULD  contain  at  least  one
      Framed-Password-Policy AVP.

      The absence of  any  Framed-Password-Policy  AVPs  means  that  the
      issuer will only accept CHAP and PAP.

      A summary of the Domain-Discovery-Response packet format  is  shown
      below. The fields are transmitted from left to right.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                           AVP Code                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          AVP Length           |  AVP Flags  |    Reserved     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Command Type          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Code

      256     DIAMETER Command

   AVP Length

      The length of this attribute MUST be 10.


Calhoun                  expires September 1998                  [Page 5]


INTERNET DRAFT                                                 March 1998


   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Command Type

      The Command Type  field  MUST  be  set  to  262  (Domain-Discovery-
      Response).


2.3  Authentication-Request

   Description

      The Authentication-Request message is  used  in  order  to  request
      authentication and authorization for a given user.

      If Authentication is requested  the  User-Name  attribute  MUST  be
      present.  If  only  Authorization  is  required  it  is possible to
      authorize based on  DNIS  and  ANI  instead.  However,  it  is  not
      possible to authenticate using a User-Name AVP and later requesting
      authorization based on DNIS using the same Session-Id (although the
      inverse is legal).

      Note that the flag field MAY be used in this command  in  order  to
      indicate  that  either Authentication-Only or Authorization-Only is
      required for the request. If the Authentication-Only bit is set the
      response  MUST  NOT include any authorization information. Both the
      Authenticate and Authorize bits MUST NOT be set at the  same  time.
      To  ensure  that  a  command  is both authenticated and authorized,
      neither flag is set.

      A summary of the  Authentication-Request  packet  format  is  shown
      below. The fields are transmitted from left to right.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                           AVP Code                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          AVP Length           |  AVP Flags  |    Reserved     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Command Type          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Code

      256     DIAMETER Command

   AVP Length


Calhoun                  expires September 1998                  [Page 6]


INTERNET DRAFT                                                 March 1998


      The length of this attribute MUST be 7.

   AVP Flagss

      The AVP Flags field MUST have bit 1  (Mandatory  Support)  set.  In
      addition,  the  following  bits  may  be  used (note these bits are
      mutually exclusive):

         Authenticate-Only   32
            The Authentication-Only bit is  set  to  indicate  that  only
            authentication   of   the  user  is  requested  and  that  no
            authorization information should be returned in the response.

         Authorize-Only      64
            The Authorization-Only bit  is  set  to  indicate  that  only
            authorization   of   the   user  is  requested  and  that  no
            authentication is required.

   Command Type

      The Command Type field MUST be set to 263 (Authentication-Request).


2.4  Authentication-Success

   Description

      The Authentication-Success message is used  in  order  to  indicate
      that   Authentication   (or   authorization)   was  successful.  If
      authorization was requested a list of AVPs with  the  authorization
      information MUST be attached to the message (see section 4.40).

      Note that the flag field MUST be set to the  same  value  that  was
      found in the Authentication-Request message.

      A summary of the  Authentication-Success  packet  format  is  shown
      below. The fields are transmitted from left to right.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                           AVP Code                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          AVP Length           |  AVP Flags  |    Reserved     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Command Type          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Code



Calhoun                  expires September 1998                  [Page 7]


INTERNET DRAFT                                                 March 1998


      256     DIAMETER Command

   AVP Length

      The length of this attribute MUST be 10.

   AVP Flagss

      The AVP Flags field MUST have bit 1  (Mandatory  Support)  set.  In
      addition,  the  following  bits  may  be  used (note these bits are
      mutually exclusive):

         Authenticate-Only   32
            The Authentication-Only bit is  set  to  indicate  that  only
            authentication   of   the  user  is  requested  and  that  no
            authorization information should be returned in the response.

         Authorize-Only      64
            The Authorization-Only bit  is  set  to  indicate  that  only
            authorization   of   the   user  is  requested  and  that  no
            authentication is required.

   Command Type

      The Command Type field MUST be set to 264 (Authentication-Success).


2.5  Authentication-Failure

   Description

      The Authentication-Failure message is used  in  order  to  indicate
      that  Authentication  (or authorization) was unsuccessful. The list
      of AVPs that may be attached  to  this  message  can  be  found  in
      section 4.40.

      Note that the flag field MUST be set to the  same  value  that  was
      found in the Authentication-Request message.

      A summary of the  Authentication-Failure  packet  format  is  shown
      below. The fields are transmitted from left to right.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                           AVP Code                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          AVP Length           |  AVP Flags  |    Reserved     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Command Type          |


Calhoun                  expires September 1998                  [Page 8]


INTERNET DRAFT                                                 March 1998


       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Code

      256     DIAMETER Command

   AVP Length

      The length of this attribute MUST be 10.

   AVP Flagss

      The AVP Flags field MUST have bit 1  (Mandatory  Support)  set.  In
      addition,  the  following  bits  may  be  used (note these bits are
      mutually exclusive):

         Authenticate-Only   32
            The Authentication-Only bit is  set  to  indicate  that  only
            authentication   of   the  user  is  requested  and  that  no
            authorization information should be returned in the response.

         Authorize-Only      64
            The Authorization-Only bit  is  set  to  indicate  that  only
            authorization   of   the   user  is  requested  and  that  no
            authentication is required.

   Command Type

      The Command Type field MUST be set to 265 (Authentication-Failure).


2.6  Authentication-Challenge

   Description

      If the DIAMETER  server  desires  to  send  the  user  a  challenge
      requiring  a response, then the DIAMETER server MUST respond to the
      Authentication-Request by transmitting a packet with the Code field
      set to 266 (Authentication-Challenge).

      The message MAY have one or more Reply-Message AVP, and MAY have  a
      single  State  AVP,  or  none.   No  other AVPs are permitted in an
      Authentication-Challenge other than the  Integrity-Check-Vector  or
      Digital-Signature AVP as defined in [2].

      On receipt of an Authentication-Challenge, the Identifier field  is
      matched  with a pending Authentication-Request. Invalid packets are
      silently discarded.

      The receipt of a valid Authentication-Challenge  indicates  that  a


Calhoun                  expires September 1998                  [Page 9]


INTERNET DRAFT                                                 March 1998


      new Authentication-Request SHOULD be sent. The NAS MAY display  the
      text  message,  if any, to the user, and then prompt the user for a
      response.  It then sends its original Authentication-Request with a
      new  request  ID, with the User-Password AVP replaced by the user's
      response  (encrypted),  and  including  the  State  AVP  from   the
      Authentication-Challenge,  if  any.   Only  0 or 1 instances of the
      State Attribute can be present in an Authentication-Request.

      A NAS which supports PAP  MAY  forward  the  Reply-Message  to  the
      dialin  client and accept a PAP response which it can use as though
      the user had entered the response.  If the NAS  cannot  do  so,  it
      should treat the Authentication-Challenge as though it had received
      an Authentication-Failure instead.

      It is preferable to use EAP  [5]  instead  of  the  Authentication-
      Challenge, yet it has been maintained for backward compatibility.

      The Authentication-Failure message is used  in  order  to  indicate
      that  Authentication  (or authorization) was unsuccessful. The list
      of AVPs that may be attached  to  this  message  can  be  found  in
      section 4.40.

      Note that the flag field MUST be set to the  same  value  that  was
      found in the Authentication-Request message.

      A summary of the  Authentication-Failure  packet  format  is  shown
      below. The fields are transmitted from left to right.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                           AVP Code                            |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          AVP Length           |  AVP Flags  |    Reserved     |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Command Type          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Code

      256     DIAMETER Command

   AVP Length

      The length of this attribute MUST be 10.

   AVP Flagss

      The AVP Flags field MUST have bit 1  (Mandatory  Support)  set.  In
      addition,  following bits may be used (note these bits are mutually


Calhoun                 expires September 1998                  [Page 10]


INTERNET DRAFT                                                 March 1998


      exclusive):

         Authenticate-Only   32
            The Authentication-Only bit is  set  to  indicate  that  only
            authentication   of   the  user  is  requested  and  that  no
            authorization information should be returned in the response.

         Authorize-Only      64
            The Authorization-Only bit  is  set  to  indicate  that  only
            authorization   of   the   user  is  requested  and  that  no
            authentication is required.

   Command Type

      The Command Type field MUST be set to 266 (Authentication-Failure).


3.0 DIAMETER AVPs

   This section will define the mandatory AVPs which MUST be supported by
   all  DIAMETER implementations supporting this extension. The following
   AVPs are defined in this document:

      Attribute Name       Attribute Code
      -----------------------------------
      User-Name                   1
      User-Password               2
      CHAP-Password               3
      NAS-IP-Address              4
      NAS-Port                    5
      Service-Type                6
      Framed-Protocol             7
      Framed-IP-Address           8
      Framed-IP-Netmask           9
      Framed-Routing             10
      Filter-Id                  11
      Framed-MTU                 12
      Framed-Compression         13
      Login-IP-Host              14
      Login-Service              15
      Login-TCP-Port             16
      Reply-Message              18
      Callback-Number            19
      Callback-Id                20
      Framed-Route               22
      Framed-IPX-Network         23
      State                      24
      Class                      25
      Vendor-Specific            26
      Session-Timeout            27


Calhoun                 expires September 1998                  [Page 11]


INTERNET DRAFT                                                 March 1998


      Idle-Timeout               28
      Termination-Action         29
      Called-Station-Id          30
      Calling-Station-Id         31
      NAS-Identifier             32
      Proxy-State                33
      Login-LAT-Service          34
      Login-LAT-Node             35
      Login-LAT-Group            36
      Framed-AppleTalk-Link      37
      Framed-AppleTalk-Network   38
      Framed-AppleTalk-Zone      39
      CHAP-Challenge             60
      NAS-Port-Type              61
      Port-Limit                 62
      Login-LAT-Port             63
      Framed-Password-Policy    268


3.1. User-Name

   Description

      This Attribute indicates the name of the user to be  authenticated.
      It  is  normally used in Authentication-Request packets, but MAY be
      present in the Authentication-Success message.

      A summary of the User-Name Attribute format  is  shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      1 for User-Name.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss



Calhoun                 expires September 1998                  [Page 12]


INTERNET DRAFT                                                 March 1998


      The AVP Flags field MUST have bit 1 (Mandatory  Support)  set.  The
      SS-Encrypted-Data bit SHOULD be set if a shared secret exists.  The
      PK-Encrypted-data bit SHOULD NOT be set since intermediate DIAMETER
      servers  will  require  this  information in order to determine the
      home DIAMETER server.

   String

      The String field is one or more octets. All DIAMETER systems SHOULD
      support  User-Name lengths of at least 63 octets. The format of the
      User-Name SHOULD follow the format defined in [7].


3.2. User-Password

   Description

      This  Attribute  indicates  the  password  of  the   user   to   be
      authenticated,  or  the  user's  input following an Authentication-
      Challenge.  It is only used in Authentication-Request packets.

      This AVP MUST be encrypted using one of the  methods  described  in
      [2].  The use of this AVP with shared secret encryption is strongly
      discouraged by the author due to the  security  implications  in  a
      proxy  environment,  yet  the  support  of  this attribute has been
      retained for RADIUS backward compability.

      A summary of the User-Password Attribute format is shown below. The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      2 for User-Password.

   AVP Length

      The length of this attribute MUST be at least 24 and no larger than
      136.

   AVP Flagss


Calhoun                 expires September 1998                  [Page 13]


INTERNET DRAFT                                                 March 1998


      The AVP Flags field MUST have bit 1 (Mandatory Support) set. One of
      the AVP Encryption bits MUST be set.

   Data

      The Data field is between 16 and 128 octets long, inclusive.


3.3. CHAP-Password

   Description

      This Attribute indicates the  response  value  provided  by  a  PPP
      Challenge-Handshake Authentication Protocol (CHAP) user in response
      to the challenge. It is only used in Authenticate-Request packets.

      If the CHAP-Password Attribute is found in  a  message,  the  CHAP-
      Challenge Attribute (60) MUST be present as well.

      A summary of the CHAP-Password Attribute format is shown below. The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |  CHAP Ident   |    Data ...
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      3 for CHAP-Password.

   AVP Length

      The length of this attribute MUST be 25.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   CHAP Ident

      This field is one octet, and contains the CHAP Identifier from  the
      user's CHAP Response.

   Data


Calhoun                 expires September 1998                  [Page 14]


INTERNET DRAFT                                                 March 1998


      The Data field is 16 octets, and contains the  CHAP  Response  from
      the user.


3.4. NAS-Port

   Description

      This Attribute indicates the physical port number of the NAS  which
      is  authenticating  the  user.  It  is  only used in Authetication-
      Request messages. Note that this is using "port" in its sense of  a
      physical  connection  on  the NAS, not in the sense of a TCP or UDP
      port number. Either NAS-Port or NAS-Port-Type (61) or  both  SHOULD
      be   present  in  an  Authentication-Request  packet,  if  the  NAS
      differentiates among its ports.

      A summary of the NAS-Port Attribute  format  is  shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      5 for NAS-Port.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets.


3.5. Service-Type

   Description



Calhoun                 expires September 1998                  [Page 15]


INTERNET DRAFT                                                 March 1998


      This  Attribute  indicates  the  type  of  service  the  user   has
      requested, or the type of service to be provided. It MAY be used in
      both Authentication-Request and Authentication-Success messages.  A
      NAS  is  not  required to implement all of these service types, and
      MUST treat  unknown  or  unsupported  Service-Types  as  though  an
      Authentication-Failure had been received instead.

      A summary of the Service-Type Attribute format is shown below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      6 for Service-Type.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   AVP Length

      The length of this attribute MUST be 12.

   Integer32

      The Integer32 field is four octets.

          1      Login
          2      Framed
          3      Callback Login
          4      Callback Framed
          5      Outbound
          6      Administrative
          7      NAS Prompt
          8      Authenticate Only
          9      Callback NAS Prompt

   The  service  types  are  defined  as  follows   when   used   in   an
   Authetication-Success.  When  used  in an Authentication-Request, they
   should be considered to be a hint to the DIAMETER server that the  NAS
   has  reason  to  believe  the  user  would  prefer the kind of service


Calhoun                 expires September 1998                  [Page 16]


INTERNET DRAFT                                                 March 1998


   indicated, but the server is not required to honor the hint.

   Login               The user should be connected to a host.

   Framed              A Framed Protocol should be started for the
                       User, such as PPP or SLIP.

   Callback Login      The user should be disconnected and called
                       back, then connected to a host.

   Callback Framed     The user should be disconnected and called
                       back, then a Framed Protocol should be started
                       for the User, such as PPP or SLIP.

   Outbound            The user should be granted access to outgoing
                       devices.

   Administrative      The user should be granted access to the
                       administrative interface to the NAS from which
                       privileged commands can be executed.

   NAS Prompt          The user should be provided a command prompt
                       on the NAS from which non-privileged commands
                       can be executed.

   Authenticate Only   Only Authentication is requested, and no
                       authorization information needs to be returned
                       in the Authentication-Success (typically used by
                       proxy servers rather than the NAS itself). This
                       SHOULD NOT be used in DIAMETER, yet it is
                       maintained for backward compatibility.

   Callback NAS Prompt The user should be disconnected and called
                       back, then provided a command prompt on the
                       NAS from which non-privileged commands can be
                       executed.


3.6. Framed-Protocol

   Description

      This Attribute indicates the framing to be used for framed  access.
      It  MAY  be used in both Authentication-Request and Authentication-
      Success messages.

      A summary of the Framed-Protocol Attribute format is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3


Calhoun                 expires September 1998                  [Page 17]


INTERNET DRAFT                                                 March 1998


      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      7 for Framed-Protocol.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets.

          1      PPP
          2      SLIP
          3      AppleTalk Remote Access Protocol (ARAP)
          4      Gandalf proprietary SingleLink/MultiLink protocol
          5      Xylogics proprietary IPX/SLIP


3.7. Framed-IP-Address

   Description

      This Attribute indicates the address to be configured for the user.
      It  MAY be used in Authentication-Request messages as a hint by the
      NAS to the server that it would prefer that address, but the server
      is not required to honor the hint.

      A summary of the Framed-IP-Address Attribute format is shown below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |


Calhoun                 expires September 1998                  [Page 18]


INTERNET DRAFT                                                 March 1998


      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            Address                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      8 for Framed-IP-Address.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Address

      The Address field is four octets. The  value  0xFFFFFFFF  indicates
      that  the  NAS  should  allow  the  user to select an address (e.g.
      Negotiated). The value 0xFFFFFFFE indicates  that  the  NAS  should
      select  an  address  for  the  user  (e.g.  Assigned from a pool of
      addresses kept by the NAS). Other valid values  indicate  that  the
      NAS should use that value as the user's IP address.


3.8. Framed-IP-Netmask

   Description

      This Attribute indicates the IP netmask to be  configured  for  the
      user  when  the  user  is a router to a network. It MUST be used in
      Authentication-Success messages if the  Framed-IP-Address  AVP  was
      returned  with  a value other than 0xFFFFFFFF. It MAY be used in an
      Authentication-Request message as a hint by the NAS to  the  server
      that  it  would prefer that netmask, but the server is not required
      to honor the hint.

      A summary of the Framed-IP-Netmask Attribute format is shown below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            Address                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


Calhoun                 expires September 1998                  [Page 19]


INTERNET DRAFT                                                 March 1998


   Type

      9 for Framed-IP-Netmask.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Address

      The Address field is four octets specifying the IP netmask  of  the
      user.


3.9. Framed-Routing

   Description

      This Attribute indicates the routing method for the user, when  the
      user  is  a router to a network. It is only used in Authentication-
      Success messages.

      A summary of the Framed-Routing Attribute format  is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            Integer32                          |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      10 for Framed-Routing.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.


Calhoun                 expires September 1998                  [Page 20]


INTERNET DRAFT                                                 March 1998


   Integer32

   The Integer32 field is four octets.

          0      None
          1      Send routing packets
          2      Listen for routing packets
          3      Send and Listen


3.10. Filter-Id

   Description

      This Attribute indicates the name of the filter list for this user.
      Zero or more Filter-Id attributes MAY be sent in an Authentication-
      Success message.

      Identifying a filter list by name allows the filter to be  used  on
      different   NASes  without  regard  to  filter-list  implementation
      details. However, this AVP is not  roaming  friendly  since  filter
      naming differ from one service provider to another.

      It is strongly encouraged to support the Filter-Rule AVP instead.

      A summary of the Filter-Id Attribute format  is  shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      11 for Filter-Id.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.



Calhoun                 expires September 1998                  [Page 21]


INTERNET DRAFT                                                 March 1998


   String

      The String field is one  or  more  octets,  and  its  contents  are
      implementation  dependent.  It is intended to be human readable and
      MUST NOT affect operation of the protocol. It is  recommended  that
      the  message contain displayable ASCII characters from the range 32
      through 126 decimal.


3.11. Framed-MTU

   Description

      This Attribute  indicates  the  Maximum  Transmission  Unit  to  be
      configured  for  the  user, when it is not negotiated by some other
      means (such as PPP). It  is  only  used  in  Authentication-Success
      messages.

      A summary of the Framed-MTU Attribute format is  shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      12 for Framed-MTU.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets. Despite the size of the  field,
      values range from 64 to 65535.


3.12. Framed-Compression


Calhoun                 expires September 1998                  [Page 22]


INTERNET DRAFT                                                 March 1998


   Description

      This Attribute indicates a compression protocol to be used for  the
      link.  It  MAY be used in Authentication-Success packets. It MAY be
      used in an Authentication-Request packet as a hint  to  the  server
      that  the  NAS would prefer to use that compression, but the server
      is not required to honor the hint.

      More than one compression protocol Attribute MAY be sent. It is the
      responsibility  of the NAS to apply the proper compression protocol
      to appropriate link traffic.

      A summary of  the  Framed-Compression  Attribute  format  is  shown
      below.  The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      13 for Framed-Compression.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets.

          0      None
          1      VJ TCP/IP header compression [5]
          2      IPX header compression


3.13. Login-IP-Host

   Description



Calhoun                 expires September 1998                  [Page 23]


INTERNET DRAFT                                                 March 1998


      This Attribute indicates the system with which to connect the user,
      when  the  Login-Service  Attribute  is included. It MAY be used in
      Authentication-Success   messages.   It   MAY   be   used   in   an
      Authentication-Request message as a hint to the server that the NAS
      would prefer to use that host, but the server is  not  required  to
      honor the hint.

      A summary of the Login-IP-Host Attribute format is shown below. The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            Address                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      14 for Login-IP-Host.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Address

      The Address field is four octets. The  value  0xFFFFFFFF  indicates
      that  the NAS SHOULD allow the user to select an address. The value
      0 indicates that the NAS SHOULD select a host to connect  the  user
      to.  Other  values  indicate the address the NAS SHOULD connect the
      user to.


3.14. Login-Service

   Description

      This Attribute indicates  the  service  which  should  be  used  to
      connect   the   user  to  the  login  host.  It  is  only  used  in
      Authentication-Success messages.

      A summary of the Login-Service Attribute format is shown below. The


Calhoun                 expires September 1998                  [Page 24]


INTERNET DRAFT                                                 March 1998


      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      15 for Login-Service.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets.

          0      Telnet
          1      Rlogin
          2      TCP Clear
          3      PortMaster (proprietary)
          4      LAT


3.15. Login-TCP-Port

   Description

      This Attribute indicates the TCP port with which the user is to  be
      connected,  when the Login-Service Attribute is also present. It is
      only used in Authentication-Success packets.

      A summary of the Login-TCP-Port Attribute format  is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |


Calhoun                 expires September 1998                  [Page 25]


INTERNET DRAFT                                                 March 1998


      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      16 for Login-TCP-Port.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets. Despite the size of the  field,
      values range from 0 to 65535.


3.16. Reply-Message

   Description

      This Attribute indicates text which MAY be displayed to the user.

      When used in an Authentication-Success, it is the success message.

      When used in an Authentication-Failure, it is the failure  message.
      It  MAY indicate a dialog message to prompt the user before another
      Authentication-Request attempt.

      When used in an Authentication-Challenge, it MAY indicate a  dialog
      message to prompt the user for a response.

      Multiple Reply-Message's MAY be included and if any are  displayed,
      they  MUST  be  displayed  in  the same order as they appear in the
      packet.

      A summary of the Reply-Message Attribute format is shown below. The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |


Calhoun                 expires September 1998                  [Page 26]


INTERNET DRAFT                                                 March 1998


      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      18 for Reply-Message.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one  or  more  octets,  and  its  contents  are
      implementation  dependent. It is intended to be human readable, and
      MUST NOT affect operation of the protocol. It is  recommended  that
      the message contain displayable ASCII characters from the range 10,
      13, and 32 through 126 decimal. Mechanisms for extension  to  other
      character sets are beyond the scope of this specification.


3.17. Callback-Number

   Description

      This Attribute indicates a dialing string to be used for  callback.
      It MAY be used in Authentication-Success packets. It MAY be used in
      an Authentication-Request packet as a hint to  the  server  that  a
      Callback  service  is  desired,  but  the server is not required to
      honor the hint.

      A summary of the Callback-Number Attribute format is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+


Calhoun                 expires September 1998                  [Page 27]


INTERNET DRAFT                                                 March 1998


   Type

      19 for Callback-Number.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets. The actual  format  of  the
      information   is   site  or  application  specific,  and  a  robust
      implementation SHOULD support the field as undistinguished octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


3.18. Callback-Id

   Description

      This Attribute indicates the name of a place to be  called,  to  be
      interpreted  by  the  NAS. It MAY be used in Authentication-Success
      messages.

      A summary of the Callback-Id Attribute format is shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      20 for Callback-Id.

   AVP Length

      The length of this attribute MUST be at least 9.


Calhoun                 expires September 1998                  [Page 28]


INTERNET DRAFT                                                 March 1998


   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets. The actual  format  of  the
      information   is   site  or  application  specific,  and  a  robust
      implementation SHOULD support the field as undistinguished  octets.
      The  codification  of  the  range of allowed usage of this field is
      outside the scope of this specification.


3.19. Framed-Route


   Description

      This Attribute provides routing information to  be  configured  for
      the  user  on  the  NAS.  It  is used in the Authentication-Success
      message and can appear multiple times.

      A summary of the Framed-Route Attribute format is shown below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      22 for Framed-Route.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one  or  more  octets,  and  its  contents  are
      implementation  dependent.  It is intended to be human readable and


Calhoun                 expires September 1998                  [Page 29]


INTERNET DRAFT                                                 March 1998


      MUST NOT affect operation of the protocol. It is  recommended  that
      the  message contain displayable ASCII characters from the range 32
      through 126 decimal.

      For IP routes, it SHOULD contain a  destination  prefix  in  dotted
      quad  form  optionally  followed  by  a  slash and a decimal length
      specifier stating how many high order bits of the prefix should  be
      used. That is followed by a space, a gateway address in dotted quad
      form, a space, and one or more metrics separated  by  spaces.   For
      example,  "192.168.1.0/24  192.168.1.1  1  2  -1 3 400". The length
      specifier may be omitted in which case it should default to 8  bits
      for class A prefixes, 16 bits for class B prefixes, and 24 bits for
      class C prefixes. For example, "192.168.1.0 192.168.1.1 1".

      Whenever the gateway address  is  specified  as  "0.0.0.0"  the  IP
      address of the user SHOULD be used as the gateway address.


3.20. Framed-IPX-Network

   Description

      This Attribute indicates the IPX Network number  to  be  configured
      for the user. It is used in Authentication-Success messages.

      A summary of  the  Framed-IPX-Network  Attribute  format  is  shown
      below.  The fields are transmitted from left to right.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      23 for Framed-IPX-Network.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.


Calhoun                 expires September 1998                  [Page 30]


INTERNET DRAFT                                                 March 1998


   Integer32

      The Integer32 field is four octets. The value 0xFFFFFFFF  indicates
      that  the  NAS  should  allow  the  user to select an address (e.g.
      Negotiated). The value 0xFFFFFFFE indicates  that  the  NAS  should
      select an address for the user (e.g. assigned from a pool of one or
      more IPX networks kept by the NAS) Other values should be  used  as
      the IPX network for the link to the user.

3.21. State

   Description

      This Attribute is available to be sent by the server to the  client
      in an Authentication-Challenge and MUST be sent unmodified from the
      client to the server in the  new  Authentication-Request  reply  to
      that challenge, if any.

      In either usage, no interpretation by the client should be made.  A
      packet  may  have  only  one  State  Attribute.  Usage of the State
      Attribute is implementation dependent.

      A summary of the State Attribute format is shown below. The  fields
      are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      24 for State.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets. The actual  format  of  the


Calhoun                 expires September 1998                  [Page 31]


INTERNET DRAFT                                                 March 1998


      information  is  site  or  application  specific,  and   a   robust
      implementation SHOULD support the field as undistinguished octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


3.22. Class

   Description

      This Attribute is available to be sent by the server to the  client
      in  an  Authentication-Success and should be sent unmodified by the
      client to the accounting server as part of  the  Accounting-Request
      message if accounting is supported. No interpretation by the client
      should be made.

      A summary of the Class Attribute format is shown below. The  fields
      are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      25 for Class.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets. The actual  format  of  the
      information   is   site  or  application  specific,  and  a  robust
      implementation SHOULD support the field as undistinguished octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


Calhoun                 expires September 1998                  [Page 32]


INTERNET DRAFT                                                 March 1998


3.23. Vendor-Specific

   Description

      This AVP is not supported in DIAMETER. Vendor  Specific  Attributes
      are used by enabling the Vendor-Specific bit in the AVP header.


3.24. Session-Timeout

   Description

      This Attribute sets the maximum number of seconds of service to  be
      provided  to  the user before termination of the session or prompt.
      This Attribute is available to be sent by the server to the  client
      in an Authentication-Success or Authentication-Challenge.

      A summary of the Session-Timeout Attribute format is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      27 for Session-Timeout.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is  4  octets,  containing  a  32-bit  unsigned
      integer  with  the  maximum  number  of seconds this user should be
      allowed to remain connected by the NAS.


3.25. Idle-Timeout


Calhoun                 expires September 1998                  [Page 33]


INTERNET DRAFT                                                 March 1998


   Description

      This Attribute sets the maximum number of  consecutive  seconds  of
      idle  connection  allowed  to  the  user  before termination of the
      session or prompt. This Attribute is available to be  sent  by  the
      server    to   the   client   in   an   Authentication-Success   or
      Authentication-Challenge.

      A summary of the Idle-Timeout Attribute format is shown below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      28 for Idle-Timeout.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is  4  octets,  containing  a  32-bit  unsigned
      integer with the maximum number of consecutive seconds of idle time
      this user should be permitted before being disconnected by the NAS.


3.26. Termination-Action

   Description

      This Attribute is not supported in DIAMETER.


3.27. Called-Station-Id

   Description


Calhoun                 expires September 1998                  [Page 34]


INTERNET DRAFT                                                 March 1998


      This Attribute allows the NAS to send in the Authentication-Request
      message  the phone number that the user called, using Dialed Number
      Identification (DNIS) or similar technology. Note that this may  be
      different  from  the  phone number the call comes in on. It is only
      used in Authentication-Request packets.

      If the Authorization-Only flag is set in the message and the  User-
      Name  AVP is absent, the DIAMETER Server MUST perform authorization
      based on this field. This can be used by a NAS to request whether a
      call should be answered based on the DNIS.

      A summary of the Called-Station-Id Attribute format is shown below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      30 for Called-Station-Id.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets, containing the phone number
      that the user's call came in on.

      The actual  format  of  the  information  is  site  or  application
      specific.   Printable   ASCII   is   recommended,   but   a  robust
      implementation SHOULD support the field as undistinguished octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


3.28. Calling-Station-Id


Calhoun                 expires September 1998                  [Page 35]


INTERNET DRAFT                                                 March 1998


   Description

      This Attribute allows the NAS to send in the Authentication-Request
      packet  the  phone  number that the call came from, using Automatic
      Number Identification (ANI) or similar technology. It is only  used
      in Authentication-Request packets.

      If the Authorization-Only flag is set in the message and the  User-
      Name  AVP is absent, the DIAMETER Server must perform authorization
      based on this field. This can be used by a NAS to request whether a
      call should be answered based on the ANI.

      A summary of  the  Calling-Station-Id  Attribute  format  is  shown
      below.  The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      31 for Calling-Station-Id.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets, containing the phone number
      that the user placed the call from.

      The actual  format  of  the  information  is  site  or  application
      specific.   Printable   ASCII   is   recommended,   but   a  robust
      implementation SHOULD support the field as undistinguished octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.




Calhoun                 expires September 1998                  [Page 36]


INTERNET DRAFT                                                 March 1998


3.29. Proxy-State

   Description

      This Attribute is available to be sent by a proxy server to another
      server  when  forwarding  an  Authentication-Request  and  MUST  be
      returned unmodified in the Authentication-Success,  Authentication-
      Failure  or  Authentication-Challenge.  This  attribute  should  be
      removed by the proxy server before the response is forwarded to the
      NAS.

      A summary of the Proxy-State Attribute format is shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      33 for Proxy-State.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets. The actual  format  of  the
      information   is   site  or  application  specific,  and  a  robust
      implementation SHOULD support the field as undistinguished octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


3.30. Login-LAT-Service

   Description



Calhoun                 expires September 1998                  [Page 37]


INTERNET DRAFT                                                 March 1998


      This Attribute indicates the system with which the user  is  to  be
      connected by LAT. It MAY be used in Authentication-Success packets,
      but only when LAT is specified as the Login-Service. It MAY be used
      in  an  Authentication-Request  packet as a hint to the server, but
      the server is not required to honor the hint.

      Administrators  use  the  service  attribute  when   dealing   with
      clustered  systems,  such  as  a  VAX  or Alpha cluster. In such an
      environment several different time sharing  hosts  share  the  same
      resources   (disks,   printers,  etc.),  and  administrators  often
      configure each to offer access (service)  to  each  of  the  shared
      resources.  In  this  case, each host in the cluster advertises its
      services through LAT broadcasts.

      Sophisticated users often know which service  providers  (machines)
      are  faster  and  tend  to  use  a  node name when initiating a LAT
      connection. Alternately, some administrators want particular  users
      to  use  certain  machines  as  a  primitive form of load balancing
      (although LAT knows how to do load balancing itself).

      A summary of the Login-LAT-Service Attribute format is shown below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      34 for Login-LAT-Service.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets, and contains  the  identity
      of  the LAT service to use. The LAT Architecture allows this string
      to contain $ (dollar), -  (hyphen),  .  (period),  _  (underscore),


Calhoun                 expires September 1998                  [Page 38]


INTERNET DRAFT                                                 March 1998


      numerics, upper and lower case alphabetics,  and  the  ISO  Latin-1
      character  set  extension  [6]. All LAT string comparisons are case
      insensitive.


3.31. Login-LAT-Node

   Description

      This Attribute indicates the Node with which  the  user  is  to  be
      automatically  connected  by LAT. It MAY be used in Authentication-
      Success packets, but only when  LAT  is  specified  as  the  Login-
      Service.  It  MAY  be used in an Authentication-Request packet as a
      hint to the server, but the server is not  required  to  honor  the
      hint.

      A summary of the Login-LAT-Node Attribute format  is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      35 for Login-LAT-Node.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets, and contains  the  identity
      of the LAT Node to connect the user to. The LAT Architecture allows
      this string to contain  $  (dollar),  -  (hyphen),  .  (period),  _
      (underscore),  numerics,  upper and lower case alphabetics, and the
      ISO Latin-1 character set extension. All LAT string comparisons are
      case insensitive.



Calhoun                 expires September 1998                  [Page 39]


INTERNET DRAFT                                                 March 1998


3.32. Login-LAT-Group

   Description

      This Attribute contains a string identifying the  LAT  group  codes
      which   this  user  is  authorized  to  use.  It  MAY  be  used  in
      Authentication-Success packets, but only when LAT is  specified  as
      the  Login-Service.  It  MAY  be  used in an Authentication-Request
      packet as a hint to the server, but the server is not  required  to
      honor the hint.

      LAT supports 256 different group codes, which LAT uses as a form of
      access rights. LAT encodes the group codes as a 256 bit bitmap.

      Administrators can assign one or more of the group code bits at the
      LAT service provider; it will only accept LAT connections that have
      these group codes set in the bit map. The administrators  assign  a
      bitmap  of authorized group codes to each user; LAT gets these from
      the operating system, and uses these in its requests to the service
      providers.

      A summary of the Login-LAT-Group Attribute format is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      36 for Login-LAT-Group.

   AVP Length

      The length of this attribute MUST be 40.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Data

      The Data field is a 32 octet bit map, most significant octet first.
      A robust implementation SHOULD support the field as undistinguished


Calhoun                 expires September 1998                  [Page 40]


INTERNET DRAFT                                                 March 1998


      octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


3.33. Framed-AppleTalk-Link

   Description

      This Attribute indicates the AppleTalk network number which  should
      be used for the serial link to the user, which is another AppleTalk
      router. It is only used in Authentication-Success  packets.  It  is
      never used when the user is not another router.

      A summary of the Framed-AppleTalk-Link Attribute  format  is  shown
      below. The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      37 for Framed-AppleTalk-Link.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets. Despite the size of the  field,
      values range from 0 to 65535. The special value of 0 indicates that
      this is an unnumbered serial link. A value of  1-65535  means  that
      the  serial  line  between  the NAS and the user should be assigned
      that value as an AppleTalk network number.


3.34. Framed-AppleTalk-Network


Calhoun                 expires September 1998                  [Page 41]


INTERNET DRAFT                                                 March 1998


   Description

      This Attribute indicates the AppleTalk Network number which the NAS
      should probe to allocate an AppleTalk node for the user. It is only
      used in Authentication-Success packets. It is never used  when  the
      user  is  another  router.  Multiple  instances  of  this Attribute
      indicate that the NAS may probe using any of  the  network  numbers
      specified.

      A summary of the Framed-AppleTalk-Network Attribute format is shown
      below. The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      38 for Framed-AppleTalk-Network.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is four octets. Despite the size of the  field,
      values  range  from  0 to 65535. The special value 0 indicates that
      the NAS should assign a network for the  user,  using  its  default
      cable  range. A value between 1 and 65535 (inclusive) indicates the
      AppleTalk Network the NAS should probe to find an address  for  the
      user.


3.35. Framed-AppleTalk-Zone

   Description

      This Attribute indicates the AppleTalk Default Zone to be used  for
      this  user.  It  is  only  used  in Authentication-Success packets.


Calhoun                 expires September 1998                  [Page 42]


INTERNET DRAFT                                                 March 1998


      Multiple instances of this attribute in the  same  packet  are  not
      allowed.

      A summary of the Framed-AppleTalk-Zone Attribute  format  is  shown
      below. The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      39 for Framed-AppleTalk-Zone.

   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The name of the Default AppleTalk Zone to be used for this user.  A
      robust  implementation  SHOULD support the field as undistinguished
      octets.

      The codification of the range of allowed usage  of  this  field  is
      outside the scope of this specification.


3.36. CHAP-Challenge

   Description

      This Attribute contains the CHAP Challenge sent by the NAS to a PPP
      Challenge-Handshake Authentication Protocol (CHAP) user. It is only
      used in Authentication-Request packets.

      A summary of the CHAP-Challenge Attribute format  is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3


Calhoun                 expires September 1998                  [Page 43]


INTERNET DRAFT                                                 March 1998


      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Data ...
      +-+-+-+-+-+-+-+-+

   Type

      60 for CHAP-Challenge.

   AVP Length

      The length of this attribute MUST be at least 24.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Data

      The Data field contains the CHAP Challenge.


3.37. NAS-Port-Type

   Description

      This Attribute indicates the type of the physical port of  the  NAS
      which  is  authenticating the user. It can be used instead of or in
      addition to  the  NAS-Port  (5)  attribute.  It  is  only  used  in
      Authentication-Request  packets.  Either  NAS-Port (5) or NAS-Port-
      Type or both SHOULD be present in an Authentication-Request packet,
      if the NAS differentiates among its ports.

      A summary of the NAS-Port-Type Attribute format is shown below. The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



Calhoun                 expires September 1998                  [Page 44]


INTERNET DRAFT                                                 March 1998


   Type

      61 for NAS-Port-Type.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The  Integer32  field  is  four  octets.  "Virtual"  refers  to   a
      connection  to  the  NAS  via  some  transport protocol, instead of
      through a physical port. For example, if a user  telnetted  into  a
      NAS    to   authenticate   himself   as   an   Outbound-User,   the
      Authentication-Request might include NAS-Port-Type = Virtual  as  a
      hint to the RADIUS server that the user was not on a physical port.

          0       Async
          1       Sync
          2       ISDN Sync
          3       ISDN Async V.120
          4       ISDN Async V.110
          5       Virtual


3.38. Port-Limit

   Description

      This Attribute sets the maximum number of ports to be  provided  to
      the  user  by  the NAS. This Attribute MAY be sent by the server to
      the client in an Authentication-Success packet. It is intended  for
      use  in  conjunction with Multilink PPP [7] or similar uses. It MAY
      also be sent by the NAS to the server as  a  hint  that  that  many
      ports  are desired for use, but the server is not required to honor
      the hint.

      A summary of the Port-Limit Attribute format is  shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |


Calhoun                 expires September 1998                  [Page 45]


INTERNET DRAFT                                                 March 1998


      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      62 for Port-Limit.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field is  4  octets,  containing  a  32-bit  unsigned
      integer  with  the  maximum  number  of  ports  this user should be
      allowed to connect to on the NAS.


3.39. Login-LAT-Port

   Description

      This Attribute indicates the Port with which  the  user  is  to  be
      connected by LAT. It MAY be used in Authentication-Success packets,
      but only when LAT is specified as the Login-Service. It MAY be used
      in  an  Authentication-Request  packet as a hint to the server, but
      the server is not required to honor the hint.

      A summary of the Login-LAT-Port Attribute format  is  shown  below.
      The fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   String ...
      +-+-+-+-+-+-+-+-+

   Type

      63 for Login-LAT-Port.



Calhoun                 expires September 1998                  [Page 46]


INTERNET DRAFT                                                 March 1998


   AVP Length

      The length of this attribute MUST be at least 9.

   AVP Flagss

      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   String

      The String field is one or more octets, and contains  the  identity
      of  the LAT port to use. The LAT Architecture allows this string to
      contain  $  (dollar),  -  (hyphen),  .  (period),  _  (underscore),
      numerics,  upper  and  lower  case alphabetics, and the ISO Latin-1
      character set  extension.  All  LAT  string  comparisons  are  case
      insensitive.


3.40. Framed-Password-Policy

   Description

      This Attribute is  used  to  indicate  to  a  peer  what  types  of
      authentication  are  supported  by  the issuing DIAMETER peer. More
      than one Framed-Password-Policy AVP MAY be present in  the  Domain-
      Discovery-Response message.

      A summary of the User-Name Attribute format  is  shown  below.  The
      fields are transmitted from left to right.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           AVP Code                            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |          AVP Length           |  AVP Flags  |    Reserved     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Integer32                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Type

      268 for Framed-Password-Policy.

   AVP Length

      The length of this attribute MUST be 12.

   AVP Flagss



Calhoun                 expires September 1998                  [Page 47]


INTERNET DRAFT                                                 March 1998


      The AVP Flags field MUST have bit 1 (Mandatory Support) set.

   Integer32

      The Integer32 field contains the supported  authentication  schemes
      supported. The following values are supported:

         PAP         1
         CHAP        2
         MS-CHAP     3
         EAP         4
         SPAP        5


3.41. Table of Attributes

   The following table provides a guide to which attributes may be  found
   in which kinds of packets, and in what quantity.

      Req  Succ  Fail  Chal  Disc-Req Disc-Rsp #    Attribute
      0-1  0-1   0     0     1        0-1       1   User-Name
      0-1  0     0     0     0        0         2   User-Password [*1]
      0-1  0     0     0     0        0         3   CHAP-Password [*1]
      0-1  0     0     0     0        0         4   NAS-IP-Address
      0-1  0     0     0     0        0         5   NAS-Port
      0-1  0-1   0     0     0        0         6   Service-Type
      0-1  0-1   0     0     0        0         7   Framed-Protocol
      0-1  0-1   0     0     0        0         8   Framed-IP-Address
      0-1  0-1   0     0     0        0         9   Framed-IP-Netmask
      0    0-1   0     0     0        0        10   Framed-Routing
      0    0+    0     0     0        0        11   Filter-Id
      0    0-1   0     0     0        0        12   Framed-MTU
      0+   0+    0     0     0        0        13   Framed-Compression
      0+   0+    0     0     0        0        14   Login-IP-Host
      0    0-1   0     0     0        0        15   Login-Service
      0    0-1   0     0     0        0        16   Login-TCP-Port
      0    0+    0+    0+    0        0        18   Reply-Message
      0-1  0-1   0     0     0        0        19   Callback-Number
      0    0-1   0     0     0        0        20   Callback-Id
      0    0+    0     0     0        0        22   Framed-Route
      0    0-1   0     0     0        0        23   Framed-IPX-Network
      0-1  0-1   0     0-1   0        0        24   State
      0    0+    0     0     0        0        25   Class
      0+   0+    0     0+    0+       0+       26   Vendor-Specific
      0    0-1   0     0-1   0-1      0-1      27   Session-Timeout
      0    0-1   0     0-1   0-1      0-1      28   Idle-Timeout
      0    0-1   0     0     0        0        29   Termination-Action
      0-1  0     0     0     0        0        30   Called-Station-Id
      0-1  0     0     0     0        0        31   Calling-Station-Id
      0-1  0     0     0     0        0        32   NAS-Identifier


Calhoun                 expires September 1998                  [Page 48]


INTERNET DRAFT                                                 March 1998


      0+   0+    0+    0+    0+       0+       33   Proxy-State
      0-1  0-1   0     0     0        0        34   Login-LAT-Service
      0-1  0-1   0     0     0        0        35   Login-LAT-Node
      0-1  0-1   0     0     0        0        36   Login-LAT-Group
      0    0-1   0     0     0        0        37   Framed-AppleTalk-Link
      0    0+    0     0     0        0        38   Framed-AppleTalk-Net.
      0    0-1   0     0     0        0        39   Framed-AppleTalk-Zone
      0-1  0     0     0     0        0        60   CHAP-Challenge
      0-1  0     0     0     0        0        61   NAS-Port-Type
      0-1  0-1   0     0     0        0        62   Port-Limit
      0-1  0-1   0     0     0        0        63   Login-LAT-Port
      0-1  0-1   0     0     0        0+       268  Framed-Password-Pol.
      Req  Succ  Fail  Chal  Disc-Req Disc-Rsp #    Attribute

      [*1] An  Authentication-Request  MUST  NOT  contain  both  a  User-
      Password and a CHAP-Password AVP.

      The following table defines the meaning of the above table entries.

          0     This attribute MUST NOT be present in packet.
          0+    Zero or more instances of this attribute MAY be present
                in packet.
          0-1   Zero or one instance of this attribute MAY be present
                in packet.
          1     Exactly one instance of this attribute MUST be present in
                packet.


4.0  Protocol Definition

   This section will outline how the  DIAMETER  Authentication  Extension
   can be used.

4.1  RADIUS Proxies

   In  today's  dial  up  networks  the  RADIUS  protocol  is   used   to
   authentication,  authorize  and  perform accounting for dial-up users.
   However, it has become common practice to make use of  RADIUS  Servers
   known as proxies.

   The  use  of  proxies  has  become  widespread  especially  with   the
   popularity of Internet Roaming[4]. In this example a user has a single
   user account with a local  service  provider.  When  this  user  roams
   outside  of  his  ISPs  service  area,  it is possible for the user to
   connect to another service provider (see [4] for more details).

   In this scenario, the new service provider  (ISPB)  provides  internet
   access  for the user through a NAS (NASB). ISPB owns an authentication
   server (RADB), which proxies the authentication request to the  user's
   original provider's authentication server (RADA).


Calhoun                 expires September 1998                  [Page 49]


INTERNET DRAFT                                                 March 1998


                (Access-Request)           (Access-Request)
      +------+       ----->       +------+      ------>       +------+
      |      |                    |      |                    |      |
      | NASB +--------------------+ RADB +--------------------+ RADA +
      |      |                    |      |                    |      |
      +------+       <-----       +------+      <------       +------+
                 (Access-Accept)            (Access-Accept)

   The example shown above NASB generates an  authentication  request  on
   behalf  of the dial-in user to the RADB Authentication server. In this
   case, the user's identity would include a domain identifier  [3]  that
   would   enable  RADB  to  identify  the  authentication  server  (i.e.
   user@ISPA.com).

   The RADB server then forwards the request to RADA which  authenticates
   the   user   based   on  information  found  within  the  request.  If
   successfully authentication  the  RADA  server  returns  a  successful
   response   along   with   authorization   information.   If  the  user
   authentication fails RADA replies with a failed response.

   In the past this model has caused  much  concern  over  it's  security
   implication.   The model is much worse in the model where there exists
   an intermediate  provider  between  ISPB  and  ISPA  (say  ISPC).  The
   following  diagram depicts such an example where RADB must forward any
   requests for RADA through RADC.

              (Accounting-Request)        (Accounting-Request)
      +------+       ----->       +------+      ------>       +------+
      |      |                    |      |                    |      |
      | RADB +--------------------+ RADC +--------------------+ RADA +
      |      |                    |      |                    |      |
      +------+       <-----       +------+      <------       +------+
              (Accounting-Response)       (Accounting-Response)

   The problem with the above scenario is that complete trust  is  placed
   in  RADC  (and  hence  ISPC)  since  it  is  very simple to modify any
   attributes found within the request or the response. The example shows
   an  accounting  request  sent  from  RADB  to  RADA  through RADC. The
   following is a list of a few attacks  which  can  be  generated  by  a
   malicious proxy:

      -    Generating    Accounting    Records    by    replaying     old
      authentication/accounting  records.  In  this  example  it  is very
      simple for RADC to simple retain old packets and replay then  at  a
      later  date.  This will cause RADA to "pay" for services which were
      never rendered.

      - Modify Attributes within the request or response.  In  this  case
      RADC  can  modify  attributes, such as the length of the call, that
      would fool RADA into believing the call was longer than in reality.


Calhoun                 expires September 1998                  [Page 50]


INTERNET DRAFT                                                 March 1998


      - Stealing PAP Passwords is another problem with  today's  proxies.
      In  the  current  model  PAP passwords are encrypted using a shared
      secret which is shared between each hop in the proxy chain. In this
      case each hop has the opportunity to decrypt, and possibly save for
      future use, the user's password.

   Given the problems identified above with the current proxy model it is
   necessary to create a mechanism which allows for non-repudiation, end-
   to-end data integrity as well  as  end-to-end  encryption.  Given  the
   current  encryption  technology this can only be achieved with the use
   of asymetric encryption and digital signatures.


4.2  DIAMETER Proxies

   The DIAMETER protocol also makes use of proxies in order to  keep  the
   existing arrangements while migrating from RADIUS to DIAMETER. However
   since  DIAMETER  makes  use  of  asymetric  encryption   and   digital
   signatures it solves many of the problems shown above.

            (Authentication-Request)    (Authentication-Request)
      +------+       ----->       +------+      ------>       +------+
      |      |                    |      |                    |      |
      | NASB +--------------------+ DIA2 +--------------------+ DIA1 +
      |      |                    |      |                    |      |
      +------+       <-----       +------+      <------       +------+
            (Authentication-Response)   (Authentication-Response)

   In this example  NASB  generates  an  Authentication-Request  that  is
   forwarded  to  DIA2.  The  Authentication-Request  contains  a digital
   signature AVP which "protects" all mandatory  (or  non-editable)  AVPs
   within  the request. All AVPs which may be modified, or removed appear
   after the digital signature AVP. Once DIA2 receives  the  request,  it
   MAY  authenticate the request to ensure that it was originated by NASB
   (verifying the signature is not necessary if the link between NASB and
   DIA2 is secured using IPSEC).

   The DIA2 Server may then  add  new  attributes  to  the  request.  All
   mandatory  AVPs  MUST  be  present prior to the non mandatory AVPs and
   MUST be preceeded by a Digital Signature  AVP  (using  DIA2's  private
   key).  Note  that  all  non-mandatory AVPs added to the packet by NASB
   must appear after DIA2's digital signature AVP. The  message  is  then
   forwarded towards the DIA1 server.

   Since all packets between NASB and DIA1 must flow through DIA2, it  is
   not  possible  to  use  IPSEC  between both hosts. Therefore DIA1 MUST
   validate NASB's digital signature AVP. However it is not necessary  to
   validate DIA2's digital signature if the link between DIA2 and DIA1 is
   secured using IPSEC.



Calhoun                 expires September 1998                  [Page 51]


INTERNET DRAFT                                                 March 1998


   This mechanism now provides a method for DIA1 to prove that  NASB  was
   the  initiator  of  the  request  (note  that DIAMETER also includes a
   timestap to prevent replay attacks). It  also  provides  a  method  of
   ensuring  that  DIA2 cannot modify any "non-editable" attributes (such
   as length of call, etc).

   In addition, this same mechanism can be used for end to end encryption
   of  AVPs.  In  the  case where NASB needs to encrypt an AVP it is done
   using asymetric encryption using DIA1's public key. This ensures  that
   only DIA1 can decrypt the AVP.

   An attack has been identified in this proposal which allows a malicous
   man in the middle attack as shown in the following diagram.

            (Auth-Request)    (Auth-Request)    (Auth-Request)
      +------+  ----->  +------+  ----->  +------+  ----->  +------+
      |      |          |      |          |      |          |      |
      | NASB +----------+ DIA2 +----------+ DIA3 +----------+ DIA1 +
      |      |          |      |          |      |          |      |
      +------+  <-----  +------+  <-----  +------+  <-----  +------+
           (Auth-Response)   (Auth-Response)    (Auth-Response)

   In this example, DIA3 traps packets generated from DIA2 towards  DIA1,
   removes  the  AVPs  added by DIA2 and inserts its own AVPs (posibly by
   trying to convince DIA1 to pay DIA3 for the services). This attack can
   be  prevented by supporting a new Next-Hop AVP. In this case when NASB
   prepares a request  it  inserts  a  non-editable  Next-Hop  AVP  which
   contains DIA2's identitity. DIA2 also adds a Next-Hop AVP with DIA1 as
   the next hop.

   This mechanism ensures that a man  in  the  middle  cannot  alter  the
   packet  by overriding the previous hop's additions and signature. DIA1
   could easily validate the packet's path with the use of  the  Next-Hop
   AVPs.


4.3  Domain Discovery

   The Domain Discovery message set is very  useful  in  determining  the
   Home authentication server, the password policies for the domain, as a
   mechanism to retrieve a certificate (or a pointer to a certificate).

   The following example shows a case where  DIA1  needs  to  communicate
   with  DIA3.  In this example it is necessary to use DIA2 as a proxy in
   order for both ISPs to communicate. Although this MAY be desireable in
   some business models, there are cases where it is beneficial to remove
   the proxy altogether and allow both DIA3 and DIA1 to communicate in  a
   secure fashion.

                  (DD-Request)               (DD-Request)


Calhoun                 expires September 1998                  [Page 52]


INTERNET DRAFT                                                 March 1998


      +------+       ----->       +------+      ------>       +------+
      |      |                    |      |                    |      |
      | DIA1 +--------------------+ DIA2 +--------------------+ DIA3 +
      |      |                    |      |                    |      |
      +------+       <-----       +------+      <------       +------+
                  (DD-Response)              (DD-Response)

   The way the Domain Discovery works is that prior  to  sending  out  an
   authentication  request  DIA1  would  issue a Domain Discovery message
   towards DIA2. This message is protected with the digital signature  as
   well  as the Next-Hop AVP. DIA2 would then forward the request to DIA3
   including the Next-Hop and the digital signature AVP.

   When DIA3 receives the request, it MUST save the certificate  (or  the
   pointer  to  the  certificate)  and  respond  back including the local
   password policy, DIA3's certificate, it's contact information (i.e. IP
   address) and protect the response with the digital signature.

   Note that in all cases the TimeStamp AVP is also present to ensure  no
   reply packets are accepted.

   When DIA2 receives the packet, it must add the Next-Hop AVP as well as
   the digital signature AVP. When DIA1 receives the packet it then knows
   a direct route to communicate with DIA3 since the contact  information
   is  present  in the response. The fact that both DIA1 and DIA3 can now
   communicate directly allows both peers to use  IPSEC  to  protect  the
   message  exchange  (note  that  it  MAY  be  desirable to also use the
   digital signature in order to keep the  information  in  the  DIAMETER
   logs).

                                 (Authentication-Request)
                        +------+       ----->       +------+
                        |      |                    |      |
                        | DIA1 +--------------------+ DIA3 +
                        |      |                    |      |
                        +------+       <-----       +------+
                                (Authentication-Response)

     In addition, the password policy is also present which can  indicate
     whether DIA3 is willing to accept CHAP, PAP or EAP authentication.

     Note that the Domain-Request/Response  MAY  include  the  Supported-
     Extension AVPs [2].


5.0 Acknowledgements

   The Author wishes to thank Carl Rigney since much of the text  in  the
   document  was  shamefully  copied  from  [1]  as well as the following
   people for their help in the development of this protocol:


Calhoun                 expires September 1998                  [Page 53]


INTERNET DRAFT                                                 March 1998


   Nancy Greene, Ryan Moats

6.0  References

    [1] Rigney, et alia, "RADIUS", RFC-2138, Livingston, April 1997
    [2] P. R. Calhoun, A. Rubens, "DIAMETER Base Protocol",
        draft-calhoun-diameter-00.txt, February 1998.
    [3] B. Aboba. "The Network Access Identifier." Internet-Draft,
        August 1997.
    [4] Aboba, Zorn, "Dialup Roaming Requirements", Internet-Draft,
        July 1997.
    [5] P. Calhoun, A. Rubens, B. Aboba, "DIAMETER Extensible
        Authentication Protocol Extensions",
        draft-calhoun-diameter-eap-01.txt, March 1998.
    [6] P. Calhoun, J. Haag, G. Zorn, "EAP Authentication for SOCKS
        Version 5", draft-ietf-aft-socks-eap-00.txt, March 1998.
    [7] B. Aboba, M. Beadles, "Network Address Identifier",
        draft-ietf-roamops-nai-10.txt, February 1998.


7.0  Authors' Addresses

   Questions about this memo can be directed to:

      Pat R. Calhoun
      Technology Development
      Sun Microsystems, Inc.
      15 Network Circle
      Menlo Park, California, 94025
      USA

       Phone:  1-847-548-9587
         Fax:  1-650-786-6445
      E-mail:  pcalhoun@toast.net


















Calhoun                 expires September 1998                  [Page 54]