Diameter Maintanence and
Network Working Group                                       G. Zorn, Ed.
Extensions (DIME)                                                  Cisco
Internet-Draft                                                 P. McCann                                             Cisco Systems
Intended status: Standards Track                               P. McCann
Expires: January 10, 2008                                  Motorola Labs
Expires: August 30, 2007
                                                           H. Tschofenig
                                                  Nokia Siemens Networks GmbH & Co KG
                                                                 T. Tsou
                                                                  Huawei
                                                                A. Doria
                                          Lulea University of Technology
                                                       February 26,
                                                                  D. Sun
                                                Bell Labs/Alcatel-Lucent
                                                            July 9, 2007

                Diameter Quality of Service Application
                  draft-ietf-dime-diameter-qos-00.txt
                  draft-ietf-dime-diameter-qos-01.txt

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   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
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on August 30, 2007. January 10, 2008.

Copyright Notice

   Copyright (C) The IETF Trust (2007).

Abstract

   This document describes a Diameter application that performs
   Authentication, Authorization, and Accounting for Quality of Service
   (QoS) reservations.  This protocol is used by elements along the path
   of a given application flow to authenticate a reservation request,
   ensure that the reservation is authorized, and to account for
   resources consumed during the lifetime of the application flow.
   Clients that implement the Diameter QoS application contact an
   authorizing entity/application server that is located somewhere in
   the network, allowing for a wide variety of flexible deployment
   models.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4  5
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  5  6
   3.  Framework  . . . . . . . . . . . . . . . . . . . . . . . . . .  6  8
     3.1.  Network element functional model . . . . . . . . . . . . .  7  9
     3.2.  Implications of endpoint QoS capabilities  . . . . . . . . 11
       3.2.1.  Category of endpoint QoS capabilities  . . . . . . . . 11
       3.2.2.  Interaction modes between authorizing entity and
               network element  . . . . . . . . . . . . . . . . . . . 11
     3.3.  Authorization schemes  . . . . . . . . . . . . . . . . . . 13
       3.3.1.  Authorization schemes for pull mode  . . . . . . . . . 13
       3.3.2.  Authorization schemes for push mode  . . . . . . . . . 16
     3.4.  QoS Authorization Requirements . . . . . . . . . . . . . .  9 17
   4.  Diameter QoS Authorization Session Establishment and
       Management . . . . . . . . . . . . . . . . . . . . . . . . . . 13 22
     4.1.  Parties involved . . . . . . . . . . . . . . . . . . . . . 13 22
     4.2.  Diameter QoS Authorization Session Establishment . . . . . 13 22
     4.3.  QoS authorization session re-authorization . . . . . . . . 17 26
       4.3.1.  Client-Side Initiated Re-Authorization . . . . . . . . 17 26
       4.3.2.  Server-Side Initiated Re-Authorization . . . . . . . . 19 28
     4.4.  Server-Side Initiated QoS Parameter Provisioning . . . . . 19 28
     4.5.  Session Termination  . . . . . . . . . . . . . . . . . . . 20 29
       4.5.1.  Client-Side Initiated Session Termination  . . . . . . 20 29
       4.5.2.  Server-Side Initiated Session Termination  . . . . . . 21 30
   5.  Accounting . . . . . . . . . . . . . . . . . . . . . . . . . . 23 32
   6.  Diameter QoS Authorization Application Messages  . . . . . . . 24 33
     6.1.  QoS-Authorization Request (QAR)  . . . . . . . . . . . . . 25 34
     6.2.  QoS-Authorization Answer (QAA) . . . . . . . . . . . . . . 25 34
     6.3.  QoS-Install Request (QIR)  . . . . . . . . . . . . . . . . 26 35
     6.4.  QoS-Install Answer (QIA) . . . . . . . . . . . . . . . . . 27 36
     6.5.  Accounting Request (ACR) . . . . . . . . . . . . . . . . . 27 36
     6.6.  Accounting Answer (ACA)  . . . . . . . . . . . . . . . . . 28 37
   7.  Diameter QoS Authorization Application AVPs  . . . . . . . . . 29 38
     7.1.  Diameter Base Protocol AVPs  . . . . . . . . . . . . . . . 29 38
     7.2.  Credit Control Application AVPs  . . . . . . . . . . . . . 29 38
     7.3.  Accounting AVPs  . . . . . . . . . . . . . . . . . . . . . 30 39
     7.4.  Diameter QoS Application Defined AVPs  . . . . . . . . . . 30 39
   8.  Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 41
   9.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 38 44
   10. Security Considerations  . . . . . . . . . . . . . . . . . . . 39 45
   11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 40 46
   12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 41 47
   13. Open Issues  . . . . . . . . . . . . . . . . . . . . . . . . . 42 48
   14. References . . . . . . . . . . . . . . . . . . . . . . . . . . 43 49
     14.1. Normative References . . . . . . . . . . . . . . . . . . . 43 49
     14.2. Informative References . . . . . . . . . . . . . . . . . . 43 49
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 45 51
   Intellectual Property and Copyright Statements . . . . . . . . . . 46 53

1.  Introduction

   To meet the Quality of Service needs of applications such as Voice-
   over-IP in a heavily loaded network, packets belonging to real-time
   application flows must be identified and segregated from other
   traffic to ensure that bandwidth, delay, and loss rate requirements
   are met.  In addition, new flows should not be added to the network
   when it is at or near capacity, which would result in degradation of
   quality for all flows carried by the network.

   In some cases, these goals can be achieved with mechanisms such as
   differentiated services and/or end-to-end congestion and admission
   control.  However, when bandwidth is scarce and must be carefully
   managed, such as in cellular networks, or when applications and
   transport protocols lack the capability to perform end-to-end
   congestion control, explicit reservation techniques are required.  In
   these cases, the endpoints will send reservation requests to edge
   and/or interior nodes along the communication path.  In addition to
   verifying whether resources are available, the recipient of a
   reservation request must also authenticate and authorize the request,
   especially in an environment where the endpoints are not trusted.  In
   addition, these nodes will generate accounting information about the
   resources used and attribute usage to the requesting endpoints.  This
   will enable the owner of the network element to generate usage-
   sensitive billing records and to understand how to allocate new
   network capacity.

   A variety of protocols could be used to make a QoS request, including
   RSVP [RFC2210], NSIS [I-D.ietf-nsis-qos-nslp], link-specific
   signaling or even SIP/SDP [RFC2327]. [RFC4566].  This document aims to be
   agnostic to the QoS signaling protocol used and to the QoS model to
   which the signaling is directed.

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

   The following terms are used in this document:

   Application Server

      An application server is a network entity that exchanges signaling
      messages with an application endpoint.  It may be a source of
      authorization for QoS-enhanced application flows.  For example, a
      SIP server is one kind of application server.

   Application Endpoint

      An application endpoint is an entity in an end user device that
      exchanges signaling messages with application servers or directly
      with other application endpoints.  Based on the result of this
      signaling, the endpoint will may make a request for QoS from the
      network.  For example, a SIP User Agent is one kind of application
      endpoint.

   Authorizing Entity

      The authorizing entity is that entity acts as a Diameter server (and may
      collocate with a subscriber database) responsible for authorizing
      QoS requests for a particular application flow or aggregate.  This  It
      may be a Diameter server (with a subscriber database) standalone entity or integrated with an application server acting as a Diameter
      server.  This entity corresponds to the Policy Decision Point
      (PDP) (see [RFC2753]).

   AAA Cloud

      An infrastructure of AAA entities (clients, agents, servers) based
      on a AAA protocol, which provides trusted secure connections
      between them.  It offers authentication, authorization and
      accounting services to applications in flexible local and roaming
      scenarios.  Diameter [RFC3588] and RADIUS [RFC2865] are both
      widely deployed AAA protocols.

   Network Element (NE)

      QoS aware router that acts as Diameter client that implements the
      Diameter QoS application in the context of this document.  For
      almost all scenarios this entity triggers the protocol interaction
      described in this document.  This entity corresponds to the Policy
      Enforcement Point (PEP) (see [RFC2753]).

3.  Framework

   The Diameter

   Pull Mode

      In this mode, the QoS application runs between a network element receiving authorization process is invoked by the QoS
      reservation request received from the endpoint.  The Network
      Element then requests (acting as a AAA client) and the resource
   authorizing entity (acting as a AAA server).  A high-level picture of QoS authorization decision from the resulting architecture is shown in Figure 1.

               +-----------------+
               |
      Authorizing entity.

   Push Mode

      In this mode, the QoS authorization process is invoked by the
      request from Application Server or local policies in the
      Authorizing Entity.  The Authorizing Entity then installs the QoS
      authorization decision to the Network Element initiatively.

3.  Framework

   The Diameter QoS application runs between a network element (acting
   as a Diameter client) and the resource authorizing entity (acting as
   a Diameter server).  A high-level picture of the resulting
   architecture is shown in Figure 1.

               +-------+---------+
               |   Authorizing   |
               |
               |     Entity      |
               |(Diameter Server)|
               +-------+---------+
                       |
                       |
                /\-----+-----/\
            ////               \\\\
          ||       AAA Cloud       ||
         |   (Diameter application)  |
          ||                       ||
            \\\\               ////
                \-------+-----/
                        |
       +---+--+   +-----+----+   +---+--+
       |      |   |    NE    |   |      | Application    Media
       +  NE  +===+(Diameter +===+  NE  +=============>>
       |      |   |  Client) |   |      |    Flow
       +------+   +----------+   +------+

               Figure 1: An Architecture supporting QoS-AAA

   Figure 1 depicts network elements through which application media flows need to
   pass, a cloud of AAA servers, and an authorizing entity.  Note that
   there may be more than one router that needs to interact with the AAA
   cloud along the path of a given application flow, although the figure
   only depicts one for clarity.

   In some deployment scenarios, QoS aware network elements will may request
   authorization from through the AAA cloud based on an incoming QoS
   reservation request.  The AAA entities network element will route the request to a
   designated AAA authorizing entity, for example in the
   home domain. entity.  The home authorizing entity will return
   the result of the authorization decision.  In more complex other deployment models,
   scenarios, the authorization will be based on initiated upon dynamic
   application state, so that the request must be authenticated and
   authorized based on information from one or more application servers.

   If defined properly, the interface between the routers and AAA cloud
   would be identical in both cases.  Routers are therefore insulated
   from the details of particular applications and need not know that
   application servers are involved at all.  Also, the AAA cloud would
   naturally encompass business relationships such as those between
   network operators and third-party application providers, enabling
   flexible intra- or inter-domain authorization, accounting, and
   settlement.

3.1.  Network element functional model

   Figure 2 depicts a logical operational model of resource management
   in a router.

          +-----------------------------------------------------+
          | DIAMETER Client                                     |
          | Functionality                                       |
          | +---------------++---------------++---------------+ |
          | | User          || Authorization || Accounting    | |
          | | Authentication|| of QoS        || for QoS       | |
          | +---------------+| Requests      || Traffic       | |
          |                  +---------------++---------------+ |
          +-----------------------------------------------------+
                                              ^
                                              v
            +--------------+            +----------+
            |QoS Signaling |            | Resource |
            |Msg Processing|<<<<<>>>>>>>|Management|
            +--------------+            +----------+
                 .  ^   |              *      ^
                 |  v   .            *        ^
            +-------------+        *          ^
            |Signaling msg|       *           ^
            | Processing  |       *           V
            +-------------+       *           V
                 |      |         *           V
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                 .      .         *           V
                 |      |         *     .............................
                 .      .         *     .   Traffic Control         .
                 |      |         *     .                +---------+.
                 .      .         *     .                |Admission|.
                 |      |         *     .                | Control |.
       +----------+    +------------+   .                +---------+.
   <-.-|  Input   |    | Outgoing   |-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.->
       |  Packet  |    | Interface  |   .+----------+    +---------+.
   ===>|Processing|====| Selection  |===.|  Packet  |====| Packet  |.=>
       |          |    |(Forwarding)|   .|Classifier|     Scheduler|.
       +----------+    +------------+   .+----------+    +---------+.
                                        .............................
           <.-.-> = signaling flow
           =====> = data flow (sender --> receiver)
           <<<>>> = control and configuration operations
           ****** = routing table manipulation

                Figure 2: Network element functional model

   Processing of incoming QoS reservation requests includes three
   actions: admission control, authorization and resource reservation.

   The admission control function provides information for available
   resources and determines whether there are enough resources to
   fulfill the request.  Authorization is performed by the Diameter
   client function which involves contacting an authorization entity
   through the AAA cloud shown in Section 3.  If both checks are
   successful, the authorized QoS parameters are set in the packet
   classifier and the packet scheduler.  Note that the parameters passed
   to the Traffic Control function may be different from requested QoS
   (depending on the authorization decision).  Once the requested
   resource is granted, the Resource Management function provides
   accounting information to the Authorizing entity using the Diameter
   client function.

3.2.  Implications of endpoint QoS Authorization Requirements

   A QoS authorization application must meet a number capabilities

3.2.1.  Category of requirements
   applicable to a diverse set endpoint QoS capabilities

   The QoS capabilities of networking environments and services.
   It should endpoints are varied, which can be compliant with different deployment scenarios with
   specific
   categorized as follows:
   o  Category 1 endpoint: Has no QoS signaling models capability at both application and security issues.  Satisfying the
      network levels.  This type of endpoint may set up a connection
      through application signaling, but it is unable to specify any
      resource/QoS requirements listed below while interworking with QoS either through application signaling
   protocols, a Diameter
      e.g.  SIP or through network signaling e.g.  RSVP or NSIS (or does
      not support network signaling at all).
   o  Category 2 endpoint: Only has QoS application should accommodate capability at the
   capabilities application
      level.  This type of the QoS endpoint is able to set up a connection
      through application signaling protocols rather than introducing
   functional requirements on them.  A list of with certain resource/QoS
      requirements for a QoS
   authorization (e.g. application attributes), but it is provided here:

   Inter-domain support

      In particular, users may roam outside their home network, leading unable to a situation where
      specify any network level resource/QoS requirements (e.g., network
      QoS class) through network signaling e.g., RSVP or NSIS (or does
      not support network layer signaling at all).
   o  Category 3: endpoint: Has QoS capability at the network element level.
      This type of endpoint may set up a connection through application
      signaling and translate service characteristics into network
      resource/QoS requirements (e.g. network QoS class) locally, and
      request the resources through network signaling e.g.  RSVP or
      NSIS.

3.2.2.  Interaction modes between authorizing entity and network element

   Different QoS mechanisms are employed in different administrative domains.

   Identity-based Routing

      The packet networks.  Those QoS AAA protocol MUST route AAA requests
   mechanisms can be categorized into two schemes: IntServ and DiffServ.
   In the IntServ scheme, network signaling e.g RSVP, NSIS, or link
   specific signaling is commonly used to initiate a request from
   endpoint for desired QoS resource of media flow.  In the Authorizing
      Entity, DiffServ
   scheme, the QoS resources are provisioned based on the provided identity some predefined
   QoS service classes instead of the endpoint initiated per flow based QoS requesting
      entity or
   request.

   It is obvious that the identity of eligible QoS scheme is correlated to the Authorizing entity encoded
   endpoint's capability in the
      provided authorization token.

   Flexible Authentication Support

      The QoS AAA protocol MUST support a variety of different
      authentication protocols for verification context of authentication
      information present in QoS signaling messages.  The support for
      these protocols MAY be provided indirectly by tying authorization.  Since
   category 1 and 2 endpoints cannot initiate the signaling
      communication for QoS resource requests
   through the network signaling, the IntServ model is not applicable to
   them in general.  Depending on network technology and operator's
   demand, a previous authentication protocol
      exchange (e.g., using category 3 endpoint may either make use of the network access authentication).

   Making an Authorization Decision
   signaling for requesting the resource or not perform the request.

   The diversity of QoS AAA protocol MUST exchange sufficient information between
      the authorizing entity capabilities of endpoints and the enforcing entity (and vice versa) QoS schemes of
   network technology leads to compute an the distinction on the interaction mode
   between QoS authorization decision system and underlying network elements.
   When the IntServ scheme is employed by category 3 endpoint, the
   authorization process is typically initiated by network element when
   a trigger such as the network signaling is received from the
   endpoint.  In the DiffServ scheme, since the network element is
   unable to execute this decision.

   Triggering an Authorization Process

      The QoS AAA protocol MUST allow periodic and event triggered
      execution of request the resource authorization process, originated at on its own initiative,
   the
      enforcing entity authorization process is typically triggered upon either the
   request of application servers or even at policies defined by the authorizing entity.

   Associating operator.

   As a consequence, two interaction modes are needed in support of
   different combinations of QoS Reservations schemes and Application State endpoint's QoS
   capabilities.  Push mode and Pull mode.

   o  Push mode: The QoS AAA protocol MUST carry information sufficient for an
      application server to identify the appropriate authorization process is triggered by
      application session servers or local network conditions (e.g. time of day
      on resource usage and associate it with a particular QoS reservation.

   Dynamic Authorization

      It MUST be possible for classes), and the QoS AAA protocol authorization
      decisions are installed by the authorzing entity to push updates
      towards the network element(s) from authorizing entities.

   Bearer Gating

      The QoS AAA protocol MUST allow
      element on its own initiative without explicit request.  In order
      to support the push mode, the authorizing entity (i.e.  Diameter
      server) should be able to gate
      (i.e., enable/disable) authorized application flows based on e.g.,
      application state transitions.

   Accounting Records

      The QoS AAA protocol MUST define QoS accounting records containing
      duration, volume (byte count) usage information and description of
      the QoS attributes (e.g., bandwidth, delay, loss rate) that were
      supported for initiate a Diameter authorization
      session to communicate with the flow.

   Sending Accounting Records

      The network element SHOULD send accounting records for a
      particular QoS reservation state to the authorizing entity, which
      plays (i.e.  Diameter
      client) without any pre-established connection from the role of an accounting entity.

   Failure Notification network
      element.
   o  Pull mode: The QoS AAA protocol MUST allow authorization process is triggered by the
      network signaling received from end user equipments or by the
      local event in the network element according to report
      failures, such as loss of connectivity due to movement pre-configured
      policies, and authorization decisions are produced upon the
      request of a mobile
      node or other reasons for packet loss, to the authorizing entity.

   Accounting Correlation

      The QoS AAA protocol MUST network element.  In order to support the exchange of sufficient
      information pull
      mode, the network element (i.e.  Diameter client) will initiate a
      Diameter authorization session to allow for correlation between accounting records
      generated by communicate with authorizing
      entity (i.e.  Diameter server).
   For category 1 and 2 endpoints, the Push mode is required, in
   particular, category 1 endpoint requires network elements initiated push mode
   and accounting records generated category 2 endpoint may use both them.  For category 3 endpoint,
   either push mode or pull mode is doable.

   The Push mode is applicable to certain networks, for example, Cable
   network, DSL, Ethernet, Diffserv enabled IP/MPLS as defined by an application server.

   Interaction with other AAA Applications

      Interaction with other AAA applications
   SDOs e.g.  ETSI TISPAN and ITU-T.  The Pull mode is more appropriate
   to IntServ enabled IP networks or certain wireless networks such as Diameter Network
      Access (NASREQ) application [RFC4005] is required
   GPRS networks as defined by 3GPP/PP2.  Some networks e.g.  WiMAX may
   require both Push and Pull modes.

3.3.  Authorization schemes

3.3.1.  Authorization schemes for exchange of
      authorization, authentication pull mode

   Three basic authorization schemes for pull mode exist: one two-party
   and accounting information.

   In deployment scenarios, where two three-party schemes.  The notation adopted here is in respect
   to the entity that performs the QoS authorization.  The
   authentication of the QoS reservation requesting entity (e.g., the user) is might be done by means outside at the
   network element as part of the
   Diameter QoS application signaling protocol, or by an off-
   path protocol interaction run (on the Authorizing Entity
   is application layer or for network access
   authentication) or the authorizing entity might be contacted only with a
   request for QoS authorization.
   Authentication might have taken place already via authentication and authorization of the interaction
   with QoS requesting
   entity.  From the Diameter NASREQ application or as part of the QoS signaling
   protocol (e.g., Transport Layer Security (TLS) handshake application's point of view these
   schemes differ in the
   General Internet Signaling Transport (GIST) protocol, see
   [I-D.ietf-nsis-ntlp]).

   Authentication type of information that need to be carried.  Here
   we focus on the 'Three party scheme' (Figure 3) and the Token-based
   three party scheme' (Figure 4).  With the 'Two party scheme' the QoS reservation
   resource requesting entity to is authenticated by the
   Authorizing Entity Network Element
   and the authorization decision is necessary if made either locally at the Network
   Element itself or offloaded to a particular trusted entity (most likely within
   the same administrative domain).  In the former case no Diameter QoS
   application
   protocol run cannot be related (or if there interaction is no
   intention to relate it) to a prior authentication.  In this case the
   Authorizing required.

                                        +--------------+
                                        | Entity MUST authenticate the       |
                                        | authorizing  | <......+
                                        | resource     |        .
                                        | request      |        .
                                        +------------+-+        .
                                        --^----------|--   .    .
                                   /////  |          |  \\\\\   .
                                 //       |          |       \\ .
                                |     QoS reservation requesting
   entity in order to authorize the | QoS request as part of the Diameter AAA  | QoS     |.
                                |    authz| protocol interaction.

   The document refers to three types of sessions that need to be
   properly correlated. |authz    |.
                                |     req.|          | res.    |.
                                 \\       |          |       // .
                                   \\\\\  |          |  /////   .
                          QoS signaling session

      The time period during which a           --|----------v--   .    .
       +-------------+    request       +-+------------+        .
       |  Entity     |----------------->| NE           |        .
       |  requesting |                  | performing   |        .
       |  resource   |granted / rejected| QoS signaling protocol establishes,
      maintains and deletes          |  <.....+
       |             |<-----------------| reservation  | financial
       +-------------+                  +--------------+ settlement

                       Figure 3: Three Party Scheme

   With the 'Three party scheme' a QoS reservation state at request that arrives
   at the QoS network
      element Network Element is referred as QoS signaling session.  Different QoS
      signaling protocols use different ways to identify QoS signaling
      sessions.  The same applies forwarded to different usage environments.
      Currently, this document supports three types of QoS session
      identifiers, namely a signaling session id (e.g., the Session
      Identifier used by the NSIS protocol suite), a flow id Authorizing Entity (e.g.,
      identifier assigned by an application to a certain flow as used
   in the 3GPP) and a flow description based on the IP parameters of user's home network), where the
      flow's end points.  The details can be found in Section 7.4.

   Diameter authorization session

      The time period, for which a Diameter server authorizes a
      requested service (i.e., QoS resource reservation) decision is referred to
   made.  A business relationship, such as a Diameter authorization session.  It is identified by a
      Session-Id included in all Diameter messages used for management
      of the authorized service (initial authorization, re-
      authorization, termination), see [RFC3588].

   Application layer session

      The application layer session identifies the duration of an
      application layer service which requires provision of certain QoS.
      An application layer session identifier is provided by the QoS
      requesting entity in the QoS signaling messages, for example as
      part of roaming agreement, between
   the authorization token.  In general, visited network and the application
      session identifier is opaque to home network ensures that the QoS aware visited
   network elements.
      It is included in compensated for the authorization request message sent to resources consumed by the
      Authorizing entity and helps it to correlate user via the
   home network.

                               financial settlement
                                ...........................+
      Authorization             V             -------      .
      Token Request   +--------------+      / QoS authorization
      request to the application session state information.

   Correlating these sessions is done at each of the three involved
   entities: The AAA \    .
      +-------------->|              |     /  protocol \   .
      |               | Authorizing  +--------------+   \  .
      |               | Entity       |   |          |    | .
      |        +------+              |<--+----+     |    | .
      |        |      +--------------+  |QoS  |     |QoS  |.
      |        |                        |authz|     |authz|.
      |        |Authorization           |req.+|     |res. |.
      |        |Token                   |Token|     |     |.
      |        |                         |    |     | .  | .
      |        |                          \   |     | . /  .
      |        |                            \ |     | /    .
      |        |      QoS request             |-----V .    .
    +-------------+ + Authz. Token   +--------+-----+      .
    |  Entity     |----------------->| NE           |      .
    |  requesting entity correlates |                  | performing   |      .
    |  resource   |granted / rejected| QoS          | <....+
    |             |<-----------------| reservation  |
    +-------------+                  +--------------+

                 Figure 4: Token-based Three Party Scheme

   The 'Token-based Three Party scheme' is applicable to environments
   where a previous protocol interaction is used to request
   authorization tokens to assist the application with authorization process at the QoS signaling sessions.  The QoS network element correlates
   Network Element or the Authorizing Entity.

   The QoS signaling session resource requesting entity may be involved in an application
   layer protocol interaction, for example using SIP, with the Diameter authorization sessions.  The
   Authorizing entity SHOULD bind the information about the three
   sessions together.  Note that in certain scenarios not all Entity.  As part of the
   sessions are present.  For example, this interaction, authentication and
   authorization at the application session layer might not
   be visible to QoS signaling protocol directly if there take place.  As a result
   of a successful authorization decision, which might involve the
   user's home AAA server, an authorization token is no binding
   between generated by the application session and
   Authorizing Entity (e.g., the QoS requesting SIP proxy and an entity using trusted by the
   SIP proxy) and returned to the end host for inclusion into the QoS
   signaling protocol.

4.  Diameter QoS Authorization Session Establishment and Management

4.1.  Parties involved

   Authorization models supported  The authorization token will be used by this application include three
   parties:
   o  Resource requesting entity
   o a
   Network Elements (Diameter QoS clients)
   o  Authorizing Entity (Diameter QoS server)
   Note Element that receives the QoS resource requesting entity is only indirectly
   involved in the signaling message exchange.  This entity provides the trigger to initiate authorize
   the Diameter QoS protocol interaction by transmitting QoS
   signaling messages.  The request.  Alternatively, the Diameter QoS application is only executed
   between will be
   used to forward the Network Element (i.e., Diameter QoS client) and authorization token to the
   Authorizing Entity (i.e., Diameter QoS server). user's home network.
   The QoS resource requesting entity may communicate with authorization token allows the authorization decision performed
   at the
   Authorizing Entity using application layer protocol run to be associated with a
   corresponding QoS signaling for negotiation session.  Note that the authorization
   token might either refer to established state concerning the
   authorization decision or the token might itself carry the authorized
   parameters (protected by a digital signature or a keyed message
   digest to prevent tampering).  In the latter case the authorization
   token may contain several pieces of service parameters.  As part information pertaining to the
   authorized application session, but at minimum it should contain:
   o  An identifier of this the Authorizing Entity (for example, of an
      application server) that issued the authorization token,
   o  An identifier referring to a specific application layer protocol
   interaction, session
      for example using SIP, authentication which the token was issued and authorization
   might take place.  This
   o  A keyed message exchange is, however, outside digest or digital signature protecting the
   scope content
      of this document.  The protocol communication between the authorization token.

   A possible structure for the authorization token and the policy
   element carrying it are proposed in context of RSVP [RFC3520].

   In the scenario mentioned above, where the QoS resource requesting
   entity and is involved in an application layer protocol interaction with
   the QoS Network Element might be
   accomplished using the NSIS protocol suite, RSVP or Authorizing entity, it may be worthwhile to consider a link token less
   binding mechanism also.  The application layer
   signaling protocol.  A description of these protocols is also outside protocol interaction
   may have indicated the scope of this document and a tight coupling with transport port numbers at the QoS resource
   requesting entity where it might receive media streams, for example
   in SIP/SDP signalling these protocols
   is not desirable since this applications aims to be generic.

4.2.  Diameter port numbers are advertised.  The QoS Authorization Session Establishment

   Figure 4 shows the protocol interaction between a
   resource requesting
   entity, a Network Element and entity may also use these port numbers in some IP
   filter indications to the Authorizing Entity.

   A request for a NE performing QoS reservation received by a Network Element
   initiates a Diameter QoS authorization session.  The Network Element
   generates a QoS-Authorization-Request (QAR) message in which so that it maps
   required objects from
   may properly tunnel the inbound packets.  The NE performing QoS signaling message to Diameter payload
   objects.

   +----------------------------------+-------------------------------+
   | QoS specific Input Data          | Diameter QoS AVPs             |
   +----------------------------------+-------------------------------+
   | Authorizing entity ID (e.g.,     | Destination-Host              |
   |taken from authorization token or | Destination-Realm             |
   |from Network Access ID (NAI),     |                               |
   |[RFC2486] of
   reservation will forward the QoS resource requesting   |                               |
   |entity)                           |                               |
   +----------------------------------+-------------------------------+
   | Authorization Token              | QoS-Authz-Data                |
   | Credentials of                   | User-Name                     |
   | entity's IP
   address and the QoS requesting IP filter indications to the Authorizing entity        |                               |
   +----------------------------------+-------------------------------+
   | in
   the QoS parameters                   | QoS-Resources                 |
   +----------------------------------+-------------------------------+
   | Flow Identifiers                 | ExtendedQoSFilterRule         |
   +----------------------------------+-------------------------------+ authz. request.  The Authorizing Entity's identity, information about the application
   session and/or identity and credentials of entity will use the QoS
   resource requesting entity, requested QoS parameters, signaling session
   identifier and/or QoS enabled data flows identifiers MAY be
   encapsulated into respective Diameter AVPs entity's IP address and included into the
   Diameter message sent port numbers in the
   IP filter indication, which will match the port numbers advertised in
   the earlier application layer protocol interaction, to identify the Authorizing Entity.  The QAR is sent
   right piece of policy information to
   a Diameter server that can either be sent to the home server of NE performing the
   QoS
   requesting entity or an application server.

   Authorization processing starts at reservation in the Diameter QoS server when it
   receives authz. response.

3.3.2.  Authorization schemes for push mode

   The push mode can be further divided into two types: endpoint
   initiated and network initiated.  In the QAR.  Based on former case, the information
   authorization process is triggered by application server upon
   explicit QoS request from endpoints through application signaling,
   e.g.  SIP; in the QoS-
   Authentication-Data, User-Name and QoS-Resources AVPs latter case, the authorization process is triggered
   by application server without explicit QoS request from endpoint.

   In the endpoint initiated scheme, the QoS resource requesting entity
   (i.e. endpoint) determines the authorized required application level QoS resources and flow state (enabled/
   disabled) from locally available information (e.g., policy
   information that may be previously established as part of an
   sends the QoS request through application layer signaling exchange, or message, the user's subscription
   profile).  The authorization decision is then reflected in
   Application Server will extract application level QoS information and
   trigger the
   response returned authorization process to Authorizing entity.  In the Diameter client with
   network initiated scheme, the QoS-Authorization-
   Answer message (QAA). Authorizing
     End-Host         Network Element             Entity
   requesting entity and/or Application
   sever should derive and determine the QoS      ( Diameter              ( Diameter requirement according to
   application attribute, subscription and endpoint's capability when
   the endpoint does not explicitly indicate the QoS Client) attributes.  The
   authorizing entity makes authorization decision based on application
   level QoS Server)
       |                   |                         |
       +---QoS-Reserve---->|                         |
       |                   +- - - - - QAR - - - - - >|
       |                   |(QoS-Resources,Cost,     |
       |                   |   QoS-Auth-Data,User-ID)|
       |                   |                +--------+--------------+
       |                   |                |  Authorize request    |
       |                   |                |  Keep session data    |
       | information, network policies, end user subscription and
   network resource availability etc., and installs the decision to
   network element directly.

                               financial settlement
                                ...........................+
      Application               V             -------      .
      signaling msg   +--------------+      / QoS AAA \    .
      +-------------->|              |                |/Authz-time,Session-Id/|     /  protocol \   .
      |               |                +--------+--------------+ Authorizing  +--------------+   \  .
      |                   |< - - - - QAA - - - - - -+               |                   |(Result-Code,CC-Time,Cost| Entity       |                   |QoS-Resources,Authz-time)|   |           +-------+---------+          |           |Install QoS state|    | .
      |               +              |<--+----+     |    | .
      | Authz. session  |
       |           | /Authz-time,    |                QoS Responder
       |           |  CC-Time,Cost/               +--------------+  |QoS  |                    Node     |QoS  |.
      |           +-------+---------+                                install|     |install
      |                                 |rsp. |                   +----------QoS-Reserve---....--->|     |req. |.
      |                                 |     |     |                   |<---------QoS-Response--....----|
       |<--QoS-Response----+     |.
      |                                  |    |     |
       |=====================Data Flow==============....===>| .  | .
      |                                   \   |                   +- - - - - ACR - - - - - >|     |                   |(START,QoS-Resources,Cost| . /  .
      |                   |CC-Time,Acc-Multisess-id)|                                     \ |     |                +--------+--------------+ /    .
      V                                       |-----V .    .
    +-------------+                  +--------+-----+      .
    |  Entity     |                  | Report for successful NE           |      .
    |  requesting |                  |   QoS reservation performing   |      .
    |  resource   |QoS rsrc granted  |                |Update of reserved QoS          | <....+
    |             |<-----------------| reservation  |                |      resources        |
       |                   |                +--------+--------------+
       |                   |< - - - - ACA - - - - - -+
       |                   |                         |
    +-------------+                  +--------------+

               Figure 4: Initial 5: Authorization Scheme for Push Mode

3.4.  QoS Request Authorization

   The Authorizing Entity keeps Requirements

   A QoS authorization session state and SHOULD
   save additional information for management application must meet a number of the session (e.g., Acc-
   Multi-Session-Id, Signaling-Session-Id, authentication data) as part requirements
   applicable to a diverse set of the session state information.  A Signaling-session-Id (if
   present) SHOULD networking environments and services.
   It should be used together compliant with the generated Acc-Multi-
   Session-Id AVP (see Section 7.3) for binding the authorization different deployment scenarios with
   specific QoS signaling models and security issues.  Satisfying the accounting session information in case of end host mobility
   (i.e., to correlate the Diameter sessions that are initiated for the
   same
   requirements listed below while interworking with QoS signaling session from different
   protocols, a Diameter QoS NE).

   The final result application should accommodate the
   capabilities of the QoS signaling protocols rather than introducing
   functional requirements on them.  A list of requirements for a QoS
   authorization request application is provided in the
   Result-Code AVP of here:

   Inter-domain support

      In particular, users may roam outside their home network, leading
      to a situation where the QAA message sent by network element and authorizing entity
      are in different administrative domains.

   Identity-based Routing

      The QoS AAA protocol MUST route AAA requests to the Authorizing Entity.
   In case
      Entity, based on the provided identity of successful authorization (i.e., Result-Code =
   DIAMETER_LIMITED_SUCCESS, (see Section 7.1)), information about the
   authorized QoS resources and requesting
      entity or the status identity of the authorized flow
   (enabled/disabled) is provided Authorizing entity encoded in the QoS-Resources AVP of the QAA
   message.
      provided authorization token.

   Flexible Authentication Support

      The QoS AAA protocol MUST support a variety of different
      authentication protocols for verification of authentication
      information present in QoS signaling messages.  The support for
      these protocols MAY be provided via the QAA is installed indirectly by tying the signaling
      communication for QoS Traffic Control function of the Network Element (see
   Figure 2). to a previous authentication protocol
      exchange (e.g., using network access authentication).

   Making an Authorization Decision

      The value DIAMETER_LIMITED_SUCCESS indicates that QoS AAA protocol MUST exchange sufficient information between
      the
   Authorizing authorizing entity expects confirmation via and the enforcing entity (and vice versa)
      to compute an accounting message for
   successful QoS resource reservation authorization decision and for final reserved to execute this decision.

   Triggering an Authorization Process

      The QoS
   resources (see bellow).

   One important piece AAA protocol MUST allow periodic and event triggered
      execution of information returned from the Authorizing
   Entity is the authorization lifetime (carried inside process, originated at the QAA).  The
   authorization lifetime allows
      enforcing entity or even at the Network Element authorizing entity.

   Associating QoS Reservations and Application State

      The QoS AAA protocol MUST carry information sufficient for an
      application server to determine how
   long identify the authorization decision is valid for this appropriate application session
      and associate it with a particular QoS reservation.  A number of factors may influence

   Dynamic Authorization

      It MUST be possible for the authorized
   session duration, such as QoS AAA protocol to push updates
      towards the user's subscription plan or currently
   available credits at network element(s) from authorizing entities.

   Bearer Gating

      The QoS AAA protocol MUST allow the user's account (see Section 5). authorizing entity to gate
      (i.e., enable/disable) authorized application flows based on e.g.,
      application state transitions.

   Accounting Records

      The
   authorization duration is time-based as specified in [RFC3588].  For
   an extension QoS AAA protocol MUST define QoS accounting records containing
      duration, volume (byte count) usage information and description of
      the authorization period, a new QoS-Authorization-
   Request/Answer message exchange SHOULD be initiated.  Further aspects
   of QoS authorization session maintenance is discussed in Section 4.3,
   Section 4.5 and Section 5. attributes (e.g., bandwidth, delay, loss rate) that were
      supported for the flow.

   Sending Accounting Records

      The indication of network element SHOULD send accounting records for a successful
      particular QoS reservation and activation of the
   data flow, is provided by state to the transmission of an Accounting Request
   (ACR) message, authorizing entity, which reports
      plays the parameters of the established QoS
   state: reserved resources, duration role of an accounting entity.

   Failure Notification

      The QoS AAA protocol MUST allow the reservation,
   identification network element to report
      failures, such as loss of connectivity due to movement of a mobile
      node or other reasons for packet loss, to the authorizing entity.

   Accounting Correlation

      The QoS enabled flow/QoS signaling session AAA protocol MUST support the exchange of sufficient
      information to allow for correlation between accounting records
      generated by the network elements and accounting parameters.  The records generated
      by an application server.

   Interaction with other AAA Applications

      Interaction with other AAA applications such as Diameter QoS server acknowledges Network
      Access (NASREQ) application [RFC4005] is required for exchange of
      authorization, authentication and accounting information.

   In deployment scenarios, where authentication of the
   reserved QoS resources with the Accounting Answer (ACA) message where reservation
   requesting entity (e.g., the Result-Code user) is set to 'DIAMETER_SUCCESS'.  Note that done by means outside the reserved
   Diameter QoS resources reported in application protocol interaction the ACR message MAY be different than those
   initially authorized Authorizing Entity
   is contacted only with the QAA message, due to the a request for QoS signaling
   specific behavior (e.g., receiver-initiated reservations authorization.
   Authentication might have taken place already via the interaction
   with One-
   Path-With-Advertisements) the Diameter NASREQ application or specific process as part of QoS negotiation
   along the data path.

4.3. QoS authorization session re-authorization

   Client and server-side initiated re-authorizations are considered signaling
   protocol (e.g., Transport Layer Security (TLS) handshake in the design
   General Internet Signaling Transport (GIST) protocol, see
   [I-D.ietf-nsis-ntlp]).

   Authentication of the Diameter QoS application.  Whether the re-
   authorization events are transparent for the resource reservation requesting entity or result in specific actions in to the
   Authorizing Entity is necessary if a particular Diameter QoS signaling
   application protocol run cannot be related (or if there is
   outside no
   intention to relate it) to a prior authentication.  In this case the scope of
   Authorizing Entity MUST authenticate the Diameter QoS application.  It is directly
   dependent on reservation requesting
   entity in order to authorize the capabilities QoS request as part of the Diameter
   QoS signaling protocol.

   In addition, there are a number protocol interaction.

   The document refers to three types of options for policy rules according sessions that need to be
   properly correlated.

   QoS signaling session

      The time period during which the NE (AAA client) contacts the Authorizing Entity for re-
   authorization.  These rules depend on the semantics a QoS signaling protocol establishes,
      maintains and contents of
   the QAA message sent by deletes a QoS reservation state at the Authorizing Entity:

   a. QoS network
      element is referred as QoS signaling session.  Different QoS
      signaling protocols use different ways to identify QoS signaling
      sessions.  The QAA message contains the authorized parameters same applies to different usage environments.
      Currently, this document supports three types of the flow
       and its QoS and sets their limits (presumably upper).  With these
       parameters the Authorizing Entity specifies the services that the
       NE can provide and will be financially compensated for.
       Therefore, any change or request for change of session
      identifiers, namely a signaling session id (e.g., the parameters of Session
      Identifier used by the NSIS protocol suite), a flow and its QoS that do not conform id (e.g.,
      identifier assigned by an application to a certain flow as used in
      the authorized limits
       requires contacting 3GPP) and a flow description based on the Authorizing Entity for authorization.
   b.  The QAA message contains authorized IP parameters of the flow and
       its QoS.
      flow's end points.  The rules that determine whether parameters' changes
       require re-authorization are agreed out of band, based on details can be found in Section 7.4.

   Diameter authorization session

      The time period, for which a
       Service Level Agreement (SLA) between the domains Diameter server authorizes a
      requested service (i.e., QoS resource reservation) is referred to
      as a Diameter authorization session.  It is identified by a
      Session-Id included in all Diameter messages used for management
      of the NE and
       the Authorizing Entity.
   c.  The QAA message contains the authorized parameters of service (initial authorization, re-
      authorization, termination), see [RFC3588].

   Application layer session

      The application layer session identifies the flow
       and its QoS.  Any change or request for change duration of these
       parameters an
      application layer service which requires contacting the Authorizing entity for re-
       authorization.
   d.  In addition to the authorized parameters provision of certain QoS.
      An application layer session identifier is provided by the flow and its QoS,
       the QAA message contains policy rules that determine the NEs
       actions QoS
      requesting entity in case of change or request the QoS signaling messages, for change in authorized
       parameters.

   Provided options are not exhaustive.  Elaborating on any example as
      part of the
   listed approaches authorization token.  In general, the application
      session identifier is deployment /solution specific and opaque to the QoS aware network elements.
      It is not
   considered included in the current document.

4.3.1.  Client-Side Initiated Re-Authorization

   The Authorizing Entity provides the duration of the authorization
   session as part of the QoS-Authorization-Answer message (QAA).  At
   any time before expiration of this period, a new QoS-Authorization-
   Request request message (QAR) MAY be sent to the
      Authorizing Entity.  The
   transmission entity and helps it to correlate the QoS authorization
      request to the application session state information.

   Correlating these sessions is done at each of the QAR MAY be triggered when three involved
   entities: The QoS requesting entity correlates the application with
   the Network Element
   receives a QoS signaling message sessions.  The QoS network element correlates the
   QoS signaling session with the Diameter authorization sessions.  The
   Authorizing entity SHOULD bind the information about the three
   sessions together.  Note that requires modification in certain scenarios not all of the
   authorized parameters of an ongoing
   sessions are present.  For example, the application session might not
   be visible to QoS session, when authorization
   lifetime expires or by an accounting event, see Section 5 signaling protocol directly if there is no binding
   between the application session and
   Figure 5).

                                               Authorizing
     End-Host         Network Element             Entity the QoS requesting entity using
   the QoS      ( Diameter              ( signaling protocol.

4.  Diameter QoS Client) Authorization Session Establishment and Management

4.1.  Parties involved

   Authorization models supported by this application include three
   parties:
   o  Resource requesting entity
   o  Network Elements (Diameter QoS Server)
       |                   |                         |
       |=====================Data Flow==========================>
       |                   |                         |
       |           +-------+----------+              |
       |           |Authz-time/CC-Time|              |
       |           |    expires       |              |
       |           +-------+----------+              |
       |                   +- - - - - QAR - - - - - >|
       |                   |(QoS-Resources,Cost,     |
       |                   | QoS-Authz-Data,User-ID)|
                           |                +--------+--------------+
    NOTE:                  |                |  Authorize request    |
    Re-authorization       |                | Update session data   | clients)
   o  Authorizing Entity (Diameter QoS server)
   Note that the QoS resource requesting entity is transparent only indirectly
   involved in the message exchange.  This entity provides the trigger
   to      |                |/Authz-time,Session-Id/| initiate the End-Host           |                +--------+--------------+
                           |< - - - - QAA - - - - - -+ Diameter QoS protocol interaction by transmitting QoS
   signaling messages.  The Diameter QoS application is only executed
   between the Network Element (i.e., Diameter QoS client) and the
   Authorizing Entity (i.e., Diameter QoS server).

   The QoS resource requesting entity may communicate with the
   Authorizing Entity using application layer signaling for negotiation
   of service parameters.  As part of this application layer protocol
   interaction, for example using SIP, authentication and authorization
   might take place.  This message exchange is, however, outside the
   scope of this document.  The protocol communication between the the
   QoS resource requesting entity and the QoS Network Element might be
   accomplished using the NSIS protocol suite, RSVP or a link layer
   signaling protocol.  A description of these protocols is also outside
   the scope of this document and a tight coupling with these protocols
   is not desirable since this applications aims to be generic.

4.2.  Diameter QoS Authorization Session Establishment

   Figure 7 shows the protocol interaction between a resource requesting
   entity, a Network Element and the Authorizing Entity.

   A request for a QoS reservation received by a Network Element
   initiates a Diameter QoS authorization session.  The Network Element
   generates a QoS-Authorization-Request (QAR) message in which it maps
   required objects from the QoS signaling message to Diameter payload
   objects.

   +----------------------------------+-------------------------------+
   |                   |(Result-Code,CC-Time,Cost| QoS specific Input Data          |                   |QoS-Resources,Authz-time)| Diameter QoS AVPs             |           +-------+---------+
   +----------------------------------+-------------------------------+
   | Authorizing entity ID (e.g.,     |           |Update QoS state Destination-Host              |
   | taken from authorization token   | Destination-Realm             |       +
   | or from Network Access ID (NAI)  |                               |
   | Authz. session [RFC2486] of the QoS requesting  |                               |
   | entity)                          | /Authz-time,                               |
   +----------------------------------+-------------------------------+
   | Authorization Token              | QoS-Authz-Data                |
   |  CC-Time,Cost/ Credentials of                   | User-Name                     |
   |           +-------+---------+ the QoS requesting entity        |                               |
   +----------------------------------+-------------------------------+
   | QoS parameters                   | QoS-Resources                 |
   +----------------------------------+-------------------------------+

   The Authorizing Entity's identity, information about the application
   session and/or identity and credentials of the QoS resource
   requesting entity, requested QoS parameters, signaling session
   identifier and/or QoS enabled data flows identifiers MAY be
   encapsulated into respective Diameter AVPs and included into the
   Diameter message sent to the Authorizing Entity.  The QAR is sent to
   a Diameter server that can either be the home server of the QoS
   requesting entity or an application server.

   Authorization processing starts at the Diameter QoS server when it
   receives the QAR.  Based on the information in the QoS-
   Authentication-Data, User-Name and QoS-Resources AVPs the server
   determines the authorized QoS resources and flow state (enabled/
   disabled) from locally available information (e.g., policy
   information that may be previously established as part of an
   application layer signaling exchange, or the user's subscription
   profile).  The authorization decision is then reflected in the
   response returned to the Diameter client with the QoS-Authorization-
   Answer message (QAA).

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server)
       |                   |                         |
       +---QoS-Reserve---->|                         |
       |                   +- - - - - ACR QAR - - - - - >|
       |                   |(INTRM,QoS-Resources,Cost|                   |(QoS-Resources,Cost,     |                   |CC-Time,Acc-Multisess-id)|
       |                   |   QoS-Auth-Data,User-ID)|
       |                   |                +--------+--------------+
       |                   |                |Update of QoS resources|                |  Authorize request    |
       |                |/CC-Time,Cost/ used                   |                |  Keep session data    |
       |                   |                |/Authz-time,Session-Id/|
       |                   |                +--------+--------------+
       |                   |< - - - - ACA QAA - - - - - -+
       |                   |(Result-Code,CC-Time,Cost|
       |                   |QoS-Resources,Authz-time)|
       |           +-------+---------+
       |
       |=====================Data Flow==========================>           |Install QoS state|
       |           |

                  Figure 5:       +         |
       |           | Authz. session  |
       |           | /Authz-time,    |                QoS request re-authorization

4.3.2.  Server-Side Initiated Re-Authorization

   The Authorizing Entity MAY optionally initiate a QoS re-authorization
   by issuing a Re-Auth-Request message (RAR) as defined in the Diameter
   base protocol [RFC3588].  A Network Element client that receives such
   a RAR message with Session-Id matching a currently active QoS session
   acknowledges the request by sending the Re-Auth-Answer (RAA) message
   and MUST initiate a QoS reservation re-authorization by sending a
   QoS-Authorization-Request (QAR) message towards the Authorizing
   entity.

4.4.  Server-Side Initiated QoS Parameter Provisioning

   In certain deployment scenarios (mostly applicable for local QoS
   provision) an active control over the QoS resource and QoS enabled
   data flows from the network side is required.  Therefore, the
   Authorizing Entity is enabled to update installed QoS parameters and
   flow state at the Network Element by sending a QoS-Install Request
   message (QIR).  Network Elements MUST apply the updates and respond
   with an QoS-Install Answer message (QIA).  This functionality, for
   example, allows the update of already authorized flow status of an
   established QoS reservation due to a change at the application layer
   session (see Figure 6).

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server) Responder
       |           |  CC-Time,Cost/  |
       +===================+=Data Flow==========================>                    Node
       |           +-------+---------+                      |                +--------+--------------+
       |                   +----------QoS-Reserve---....--->|
       |                |Data flow preemption                   |                                |
       |                +--------+--------------+                   |<---------QoS-Response--....----|
       |<--QoS-Response----+                                |                   |<
       |                   |                                |
       |=====================Data Flow==============....===>|
       |                   |
       |                   +- - - - - QIR ACR - - - - - -+
       |                   |(QoS-Resources[QoS-Flow- |
       |                   | -State=CLOSE])          |
       |           +-------+---------+               | >|
       |           |Update QoS state                   |(START,QoS-Resources,Cost|
       |                   |CC-Time,Acc-Multisess-id)|
       |                   |                +--------+--------------+
       |       +                   |                | Report for successful |
       | Authz. session                   |                |   QoS reservation     |           |/QoS-Flow-State=
       |                   |                |Update of reserved QoS |
       |     CLOSE/                   |                |      resources        |           +-------+---------+
       |
       +====Data Flow=====>X                   |                +--------+--------------+
       |                   +-                   |< - - - - QIA ACA - - - - - >| -+
       |                   |     (Result-Code)                         |

                Figure 6: Server-Side Initiated 7: Initial QoS Parameter Provisioning Request Authorization

   The Authorizing Entity MAY initiate a QoS keeps authorization session
   establishment and QoS reservation state installation (prior to a
   request from a Network Element).  This function requires that and SHOULD
   save additional information for management of the
   Authorizing Entity has knowledge session (e.g., Acc-
   Multi-Session-Id, Signaling-Session-Id, authentication data) as part
   of specific information identifying the Network Element that should session state information.  A Signaling-session-Id (if
   present) SHOULD be contacted and used together with the data flow generated Acc-Multi-
   Session-Id AVP (see Section 7.3) for
   which binding the QoS reservation should be established.(mostly applicable
   for local scenarios)

4.5.  Session Termination

4.5.1.  Client-Side Initiated Session Termination

   The authorization session for an installed QoS reservation state MAY
   be terminated by and
   the Diameter client by sending a Session-
   Termination-Request message (STR) accounting session information in case of end host mobility
   (i.e., to correlate the Diameter server.  This is a
   Diameter base protocol function and it is defined in [RFC3588].
   Session termination can be caused by a QoS signaling messaging
   requesting deletion of sessions that are initiated for the existing
   same signaling session from different QoS reservation state or it can
   be caused as a NE).

   The final result of a soft-state expiration of the QoS
   reservation state.  After a successful termination authorization request is provided in the
   Result-Code AVP of the QAA message sent by the Authorizing Entity.
   In case of successful authorization session, final accounting messages MUST be exchanged (i.e., Result-Code =
   DIAMETER_LIMITED_SUCCESS, (see Figure 7).  It should be noted that Section 7.1)), information about the two sessions
   (authorization
   authorized QoS resources and accounting) have independent management by the
   Diameter base protocol, which allows for finalizing the accounting
   session after the end status of the authorization session.

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server)
       |                   |                         |
       |==Data Flow==>X /Stop authorized flow
   (enabled/disabled) is provided in the QoS-Resources AVP of the data flow/      |
       |                   |                         |
       +---QoS-Reserve---->|                         |
       |  (Delete QAA
   message.  The QoS      +- - - - - STR - - - - - >|
       |   reservation)    |                +--------+--------------+
       |                   |                | Remove authorization  |
       |<--QoS-Response----+                | session state         |
       |                   |                +--------+--------------+
                           |< - - - - STA - - - - - -+
                   +-------+--------+                |
                   |Delete information provided via the QAA is installed by
   the QoS state|
                   |  Report final  |
                   | Traffic Control function of the Network Element (see
   Figure 2).  The value DIAMETER_LIMITED_SUCCESS indicates that the
   Authorizing entity expects confirmation via an accounting data|                   QoS Responder
                   +-------+--------+                       Node
                           +----------QoS-Reserve-----....--->|
                           |         (Delete QoS              |
                           |          reservation)
                           |
                           +- - - - - ACR - - - - - >|
                           |(FINAL,QoS-Resources,Cost|
                           |CC-Time,Acc-Multisess-id)|
                           |                +--------+--------------+
                           |                | Report message for
   successful |
                           |                |  end of QoS session   |
                           |                +--------+--------------+
                           |< - - - - ACA - - - - - -+
                           |
                           | resource reservation and for final reserved QoS Responder
                           |                                Node
                           |<---------QoS-Response----....----+
                           |                                  |

            Figure 7: Client-Side Initiated Session Termination

4.5.2.  Server-Side Initiated Session Termination

   At anytime during a session
   resources (see bellow).

   One important piece of information returned from the Authorizing
   Entity MAY send an Abort-
   Session-Request message (ASR) to the Network Element.  This is a
   Diameter base protocol function and it is defined in [RFC3588].
   Possible reasons for initiating the ASR message to authorization lifetime (carried inside the QAA).  The
   authorization lifetime allows the Network Element are insufficient credits or to determine how
   long the authorization decision is valid for this particular QoS
   reservation.  A number of factors may influence the authorized
   session termination duration, such as the user's subscription plan or currently
   available credits at the
   application layer. user's account (see Section 5).  The ASR message results
   authorization duration is time-based as specified in termination [RFC3588].  For
   an extension of the
   authorized session, release authorization period, a new QoS-Authorization-
   Request/Answer message exchange SHOULD be initiated.  Further aspects
   of QoS authorization session maintenance is discussed in Section 4.3,
   Section 4.5 and Section 5.

   The indication of a successful QoS reservation and activation of the reserved resources at
   data flow, is provided by the Network
   Element and transmission of an appropriate Accounting Request
   (ACR) message, which reports the parameters of the established QoS signaling message
   indicating a notification to other Network Elements aware
   state: reserved resources, duration of the reservation,
   identification of the QoS enabled flow/QoS signaling session.  A final session and
   accounting parameters.  The Diameter QoS server acknowledges the
   reserved QoS resources with the Accounting Answer (ACA) message exchange MUST where
   the Result-Code is set to 'DIAMETER_SUCCESS'.  Note that the reserved
   QoS resources reported in the ACR message MAY be
   triggered as a result different than those
   initially authorized with the QAA message, due to the QoS signaling
   specific behavior (e.g., receiver-initiated reservations with One-
   Path-With-Advertisements) or specific process of this ASR message exchange (see Figure 8).

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter negotiation
   along the data path.

4.3.  QoS Client) authorization session re-authorization

   Client and server-side initiated re-authorizations are considered in
   the design of the Diameter QoS Server)
       |                   |                         |
       |=====================Data Flow==========================>
       |                   |
       |                   |< - - - - ASR - - - - - -+
       |                   |                         |
       |====Data Flow=====>X                         |  QoS Responder
       |                   |                         |      Node
       |<--QoS-Notify------+----------QoS-Reserve-----....--->|
       |                   |         (Delete QoS     |        |
                           |          reservation)   |
                   +-------+--------+                |
                   |Delete QoS state|                |
                   |  Report final  |                |
                   | accounting data|                |
                   +-------+--------+                |
                           +- - - - - ASA - - - - - >|
                           |                +--------+--------------+
                           |                | Remove application.  Whether the re-
   authorization  |
                           |                |     session state     |
                           |                +--------+--------------+
                           +- - - - - ACR - - - - - >|
                           |(FINAL,QoS-Resources,Cost|
                           |CC-Time,Acc-Multisess-id)|
                           |                +--------+--------------+
                           |                | Report events are transparent for successful |
                           |                |  end of QoS session   |
                           |                +--------+--------------+
                           |< - - - - ACA - - - - - -+
                           |                            QoS Responder
                           |                                Node
                           |<---------QoS-Response----....----+
                           |                                  |

            Figure 8: Server-Side Initiated Session Termination

5.  Accounting

   The Diameter the resource requesting
   entity or result in specific actions in the QoS application provides accounting for usage signaling protocol is
   outside the scope of
   reserved QoS resources. the Diameter QoS accounting has built-in support
   for online, duration based accounting.  This accounting application.  It is based directly
   dependent on the notion that capabilities of the Diameter QoS clients signaling protocol.

   In addition, there are in the best position a number of options for policy rules according
   to
   determine which the cost of those resources.

   In NE (AAA client) contacts the Diameter QoS application, Authorizing Entity for re-
   authorization.  These rules depend on the router MAY send a Cost-
   Information AVP (see [RFC4006]) in semantics and contents of
   the QAR.  If QAA message sent by the Cost-Information
   AVP includes a Cost-Unit AVP (see [RFC4006]) then the Cost-Unit
   SHOULD be "minute". Authorizing Entity:

   a.  The Cost-Information AVPs represent the cost to
   allocate QAA message contains the resources requested in authorized parameters of the QoS-Resources AVP included in flow
       and its QoS and sets their limits (presumably upper).  With these
       parameters the same QAR message.  The QAR MAY optionally contain a Tariff-Time-
   Change AVP (see [RFC4006]) which is Authorizing Entity specifies the time at which services that the cost
       NE can provide and will
   change, a second Cost-Information AVP, which is the cost be financially compensated for.
       Therefore, any change or request for change of the
   reserved resources after parameters of
       the tariff time change, flow and a second Tariff-
   Time-Change, which is its QoS that do not conform to the time at which authorized limits
       requires contacting the tariff would change
   again.  Either all three or none Authorizing Entity for authorization.
   b.  The QAA message contains authorized parameters of these AVPs MUST be present in the
   QAR. flow and
       its QoS.  The Resource Authorizing Entity returns rules that determine whether parameters' changes
       require re-authorization are agreed out of band, based on a CC-Time AVP (see [RFC4006])
   in
       Service Level Agreement (SLA) between the domains of the NE and
       the Authorizing Entity.
   c.  The QAA message which is contains the total authorized gate-on time for parameters of the
   service.  If flow
       and its QoS.  Any change or request for change of these
       parameters requires contacting the QAR included two Tariff-Time-Change AVPs, Authorizing entity for re-
       authorization.
   d.  In addition to the
   current time plus authorized parameters of the CC-Time AVP returned in flow and its QoS,
       the QAA MUST NOT exceed
   the second Tariff-Time-Change AVP from message contains policy rules that determine the QAR.  Based on information NEs
       actions in case of change or request for change in authorized
       parameters.

   Provided options are not exhaustive.  Elaborating on any of the Cost-Information AVPs,
   listed approaches is deployment /solution specific and is not
   considered in the Resource current document.

4.3.1.  Client-Side Initiated Re-Authorization

   The Authorizing Entity can use
   the CC-Time AVP to guarantee that provides the total cost duration of the authorization
   session will
   not exceed a certain threshold, which allows, for example, support of
   prepaid users.

   Each ACR message contains a triplet as part of QoS-Resources AVP, Cost-
   Information AVP, and CC-Time AVP.  This represents the total QoS-Authorization-Answer message (QAA).  At
   any time
   consumed at the given cost for the given resources.  Note that an ACR before expiration of this period, a new QoS-Authorization-
   Request message MUST (QAR) MAY be sent separately for each interval defined by the
   Tariff-Time-Change AVPs and to the expiration Authorizing Entity.  The
   transmission of the CC-Time returned in QAR MAY be triggered when the QAA (see Figure 5).

   The Network Element starts an accounting session by sending an
   Accounting-Request message (ACR) after successful
   receives a QoS reservation and
   activation signaling message that requires modification of the data flow (see Figure 4).  After every successful
   re-authorization procedure the Network element MUST initiate
   authorized parameters of an ongoing QoS session, when authorization
   lifetime expires or by an
   interim accounting message exchange (see event, see Section 5 and
   Figure 5).  After successful
   session termination the 8).

                                               Authorizing
     End-Host         Network element MUST initiate a final
   exchange of accounting messages for terminating of the accounting
   session and reporting final records for the usage of the Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server)
       |                   |                         |
       |=====================Data Flow==========================>
       |                   |                         |
       |           +-------+----------+              |
       |           |Authz-time/CC-Time|              |
       |           |    expires       |              |
       |           +-------+----------+              |
       |                   +- - - - - QAR - - - - - >|
       |                   |(QoS-Resources,Cost,     |
       |                   | QoS-Authz-Data,User-ID)|
                           |                +--------+--------------+
    NOTE:                  |                |  Authorize request    |
    Re-authorization       |                | Update session data   |
    is transparent to      |                |/Authz-time,Session-Id/|
    the End-Host           |                +--------+--------------+
                           |< - - - - QAA - - - - - -+
       |                   |(Result-Code,CC-Time,Cost|
       |                   |QoS-Resources,Authz-time)|
       |           +-------+---------+               |
       |           |Update QoS state |               |
       |           |       +         |               |
       |           | Authz. session  |               |
       |           | /Authz-time,    |               |
       |           |  CC-Time,Cost/  |               |
       |           +-------+---------+               |
       |                   |                         |
       |                   +- - - - - ACR - - - - - >|
       |                   |(INTRM,QoS-Resources,Cost|
       |                   |CC-Time,Acc-Multisess-id)|
       |                   |                +--------+--------------+
       |                   |                |Update of QoS resources|
       |                   |                |/CC-Time,Cost/ used    |
       |                   |                +--------+--------------+
       |                   |< - - - - ACA - - - - - -+
       |                   |                         |
       |=====================Data Flow==========================>
       |                   |

                  Figure 8: QoS request re-authorization

4.3.2.  Server-Side Initiated Re-Authorization

   The Authorizing Entity MAY optionally initiate a QoS re-authorization
   by issuing a Re-Auth-Request message (RAR) as defined in the Diameter
   base protocol [RFC3588].  A Network Element client that receives such
   a RAR message with Session-Id matching a currently active QoS session
   acknowledges the request by sending the Re-Auth-Answer (RAA) message
   and MUST initiate a QoS reservation re-authorization by sending a
   QoS-Authorization-Request (QAR) message towards the Authorizing
   entity.

4.4.  Server-Side Initiated QoS Parameter Provisioning

   In certain deployment scenarios (mostly applicable for local QoS
   provision) an active control over the QoS resource and QoS enabled
   data flows from the network side is required.  Therefore, the
   Authorizing Entity is enabled to update installed QoS parameters and
   flow state at the Network Element by sending a QoS-Install Request
   message (QIR).  Network Elements MUST apply the updates and respond
   with an QoS-Install Answer message (QIA).  This functionality, for
   example, allows the update of already authorized flow status of an
   established QoS reservation due to a change at the application layer
   session (see Figure 9).

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server)
       |                   |                         |
       +===================+=Data Flow==========================>
       |                   |                +--------+--------------+
       |                   |                |Data flow preemption   |
       |                   |                +--------+--------------+
       |                   |< - - - - QIR - - - - - -+
       |                   |(QoS-Resources[QoS-Flow- |
       |                   | -State=CLOSE])          |
       |           +-------+---------+               |
       |           |Update QoS state |               |
       |           |       +         |               |
       |           | Authz. session  |               |
       |           |/QoS-Flow-State= |               |
       |           |     CLOSE/      |               |
       |           +-------+---------+               |
       +====Data Flow=====>X                         |
       |                   +- - - - - QIA - - - - - >|
       |                   |     (Result-Code)       |
        Figure 9: Server-Side Initiated QoS Parameter Provisioning

   The Authorizing Entity MAY initiate a QoS authorization session
   establishment and QoS reservation state installation (prior to a
   request from a Network Element).  This function requires that the
   Authorizing Entity has knowledge of specific information identifying
   the Network Element that should be contacted and the data flow for
   which the QoS reservation should be established.(mostly applicable
   for local scenarios)

4.5.  Session Termination

4.5.1.  Client-Side Initiated Session Termination

   The authorization session for an installed QoS reservation state MAY
   be terminated by the Diameter client by sending a Session-
   Termination-Request message (STR) to the Diameter server.  This is a
   Diameter base protocol function and it is defined in [RFC3588].
   Session termination can be caused by a QoS signaling messaging
   requesting deletion of the existing QoS reservation state or it can
   be caused as a result of a soft-state expiration of the QoS
   reservation state.  After a successful termination of the
   authorization session, final accounting messages MUST be exchanged
   (see Figure 10).  It should be noted that the two sessions
   (authorization and accounting) have independent management by the
   Diameter base protocol, which allows for finalizing the accounting
   session after the end of the authorization session.

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server)
       |                   |                         |
       |==Data Flow==>X /Stop of the data flow/      |
       |                   |                         |
       +---QoS-Reserve---->|                         |
       |  (Delete QoS      +- - - - - STR - - - - - >|
       |   reservation)    |                +--------+--------------+
       |                   |                | Remove authorization  |
       |<--QoS-Response----+                | session state         |
       |                   |                +--------+--------------+
                           |< - - - - STA - - - - - -+
                   +-------+--------+                |
                   |Delete QoS state|
                   |  Report final  |
                   | accounting data|                   QoS Responder
                   +-------+--------+                       Node
                           +----------QoS-Reserve-----....--->|
                           |         (Delete QoS              |
                           |          reservation)
                           |
                           +- - - - - ACR - - - - - >|
                           |(FINAL,QoS-Resources,Cost|
                           |CC-Time,Acc-Multisess-id)|
                           |                +--------+--------------+
                           |                | Report for successful |
                           |                |  end of QoS session   |
                           |                +--------+--------------+
                           |< - - - - ACA - - - - - -+
                           |
                           |                            QoS Responder
                           |                                Node
                           |<---------QoS-Response----....----+
                           |                                  |

           Figure 10: Client-Side Initiated Session Termination

4.5.2.  Server-Side Initiated Session Termination

   At anytime during a session the Authorizing Entity MAY send an Abort-
   Session-Request message (ASR) to the Network Element.  This is a
   Diameter base protocol function and it is defined in [RFC3588].
   Possible reasons for initiating the ASR message to the Network
   Element are insufficient credits or session termination at the
   application layer.  The ASR message results in termination of the
   authorized session, release of the reserved resources at the Network
   Element and transmission of an appropriate QoS signaling message
   indicating a notification to other Network Elements aware of the
   signaling session.  A final accounting message exchange MUST be
   triggered as a result of this ASR message exchange (see Figure 11).

                                               Authorizing
     End-Host         Network Element             Entity
   requesting QoS      ( Diameter              ( Diameter
                        QoS Client)             QoS Server)
       |                   |                         |
       |=====================Data Flow==========================>
       |                   |
       |                   |< - - - - ASR - - - - - -+
       |                   |                         |
       |====Data Flow=====>X                         |  QoS Responder
       |                   |                         |      Node
       |<--QoS-Notify------+----------QoS-Reserve-----....--->|
       |                   |         (Delete QoS     |        |
                           |          reservation)   |
                   +-------+--------+                |
                   |Delete QoS state|                |
                   |  Report final  |                |
                   | accounting data|                |
                   +-------+--------+                |
                           +- - - - - ASA - - - - - >|
                           |                +--------+--------------+
                           |                | Remove authorization  |
                           |                |     session state     |
                           |                +--------+--------------+
                           +- - - - - ACR - - - - - >|
                           |(FINAL,QoS-Resources,Cost|
                           |CC-Time,Acc-Multisess-id)|
                           |                +--------+--------------+
                           |                | Report for successful |
                           |                |  end of QoS session   |
                           |                +--------+--------------+
                           |< - - - - ACA - - - - - -+
                           |                            QoS Responder
                           |                                Node
                           |<---------QoS-Response----....----+
                           |                                  |

           Figure 11: Server-Side Initiated Session Termination

5.  Accounting

   The Diameter QoS application provides accounting for usage of
   reserved QoS resources.  Diameter QoS accounting has built-in support
   for online, duration based accounting.  This accounting is based on
   the notion that the Diameter QoS clients are in the best position to
   determine the cost of those resources.

   In the Diameter QoS application, the router MAY send a Cost-
   Information AVP (see [RFC4006]) in the QAR.  If the Cost-Information
   AVP includes a Cost-Unit AVP (see [RFC4006]) then the Cost-Unit
   SHOULD be "minute".  The Cost-Information AVPs represent the cost to
   allocate the resources requested in the QoS-Resources AVP included in
   the same QAR message.  The QAR MAY optionally contain a Tariff-Time-
   Change AVP (see [RFC4006]) which is the time at which the cost will
   change, a second Cost-Information AVP, which is the cost of the
   reserved resources after the tariff time change, and a second Tariff-
   Time-Change, which is the time at which the tariff would change
   again.  Either all three or none of these AVPs MUST be present in the
   QAR.

   The Resource Authorizing Entity returns a CC-Time AVP (see [RFC4006])
   in the QAA message which is the total authorized gate-on time for the
   service.  If the QAR included two Tariff-Time-Change AVPs, the
   current time plus the CC-Time AVP returned in the QAA MUST NOT exceed
   the second Tariff-Time-Change AVP from the QAR.  Based on information
   in the Cost-Information AVPs, the Resource Authorizing Entity can use
   the CC-Time AVP to guarantee that the total cost of the session will
   not exceed a certain threshold, which allows, for example, support of
   prepaid users.

   Each ACR message contains a triplet of QoS-Resources AVP, Cost-
   Information AVP, and CC-Time AVP.  This represents the total time
   consumed at the given cost for the given resources.  Note that an ACR
   message MUST be sent separately for each interval defined by the
   Tariff-Time-Change AVPs and the expiration of the CC-Time returned in
   the QAA (see Figure 8).

   The Network Element starts an accounting session by sending an
   Accounting-Request message (ACR) after successful QoS reservation and
   activation of the data flow (see Figure 7).  After every successful
   re-authorization procedure the Network element MUST initiate an
   interim accounting message exchange (see Figure 8).  After successful
   session termination the Network element MUST initiate a final
   exchange of accounting messages for terminating of the accounting
   session and reporting final records for the usage of the QoS
   resources reserved (see Figure 7). 10).

6.  Diameter QoS Authorization Application Messages

   The Diameter QoS Application requires the definition of new mandatory
   AVPs and Command-codes (see Section 3 of [RFC3588]).  Four new
   Diameter messages are defined along with Command-Codes whose values
   MUST be supported by all Diameter implementations that conform to
   this specification.

   Command-Name                  Abbrev.        Code      Reference
   QoS-Authz-Request              QAR           [TBD]     Section 6.1
   QoS-Authz-Answer               QAA           [TBD]     Section 6.2
   QoS-Install-Request            QIR           [TBD]     Section 6.3
   QoS-Install-Answer             QIA           [TBD]     Section 6.4

   In addition, the following Diameter Base protocol messages are used
   in the Diameter QoS application:

   Command-Name                  Abbrev.        Code      Reference
   Accounting-Request             ACR            271       RFC 3588
   Accounting-Request             ACR            271       RFC 3588
   Accounting-Answer              ACA            271       RFC 3588
   Re-Auth-Request                RAR            258       RFC 3588
   Re-Auth-Answer                 RAA            258       RFC 3588
   Abort-Session-Request          ASR            274       RFC 3588
   Abort-Session-Answer           ASA            274       RFC 3588
   Session-Term-Request           STR            275       RFC 3588
   Session-Term-Answer            STA            275       RFC 3588

   Diameter nodes conforming to this specification MAY advertise support
   by including the value of TBD in the Auth-Application-Id or the Acct-
   Application-Id AVP of the Capabilities-Exchange-Request and
   Capabilities-Exchange-Answer commands, see [RFC3588].

   The value of TBD MUST be used as the Application-Id in all QAR/QAA
   and QIR/QIA commands.

   The value of TBD MUST be used as the Application-Id in all ACR/ACA
   commands, because this application defines new, mandatory AVPs for
   accounting.

   The value of zero (0) SHOULD be used as the Application-Id in all
   STR/STA, ASR/ASA, and RAR/RAA commands, because these commands are
   defined in the Diameter base protocol and no additional mandatory
   AVPs for those commands are defined in this document.

6.1.  QoS-Authorization Request (QAR)

   The QoS-Authorization-Request message (QAR) indicated by the Command-
   Code field (see Section 3 of [RFC3588]) set to TBD and 'R' bit set in
   the Command Flags field is used by Network elements to request
   quality of service related resource authorization for a given flow.

   The QAR message MUST carry information for signaling session
   identification, Authorizing Entity identification, information about
   the requested QoS, and the identity of the QoS requesting entity.  In
   addition, depending on the deployment scenario, an authorization
   token and credentials of the QoS requesting entity SHOULD be
   included.

   The message format, presented in ABNF form [RFC2234], is defined as
   follows:

    <QoS-Request> ::= < Diameter Header: XXX, REQ, PXY >
                         < Session-Id >
                         { Auth-Application-Id }
                         { Origin-Host }
                         { Origin-Realm }
                         { Destination-Realm }
                         { Auth-Request-Type }
                         [ Destination-Host ]
                         [ User-Name ]
                      *  [ QoS-Resources ]
                         [ QoS-Authz-Data ]
                         [ Cost-Information ]
                         [ Acc-Multisession-Id ]
                         [ Bound-Auth-Session-Id ]
                      *  [ AVP ]

6.2.  QoS-Authorization Answer (QAA)

   The QoS-Authorization-Answer message (QAA), indicated by the Command-
   Code field set to TBD and 'R' bit cleared in the Command Flags field
   is sent in response to the QoS-Authorization-Request message (QAR).
   If the QoS authorization request is successfully authorized, the
   response will include the AVPs to allow authorization of the QoS
   resources as well as accounting and transport plane gating
   information.

   The message format is defined as follows:

    <QoS-Answer> ::= < Diameter Header: XXX, PXY >
                     < Session-Id >
                     { Auth-Application-Id }
                     { Auth-Request-Type }
                     { Result-Code }
                     { Origin-Host }
                     { Origin-Realm }
                  *  [ QoS-Resources ]
                     [ CC-Time ]
                     [ Acc-Multisession-Id ]
                     [ Session-Timeout ]
                     [ Authz-Session-Lifetime ]
                     [ Authz-Grace-Period ]
                  *  [ AVP ]

6.3.  QoS-Install Request (QIR)

   The QoS-Install Request message (QIR), indicated by the Command-Code
   field set to TDB and 'R' bit set in the Command Flags field is used
   by Authorizing entity to install or update the QoS parameters and the
   flow state of an authorized flow at the transport plane element.

   The message MUST carry information for signaling session
   identification or identification of the flow to which the provided
   QoS rules apply, identity of the transport plane element, description
   of provided QoS parameters, flow state and duration of the provided
   authorization.

   The message format is defined as follows:

    <QoS-Install-Request> ::= < Diameter Header: XXX, REQ, PXY >
                              < Session-Id >
                              { Auth-Application-Id }
                              { Origin-Host }
                              { Origin-Realm }
                              { Destination-Realm }
                              { Auth-Request-Type }
                              [ Destination-Host ]
                           *  [ QoS-Resources ]
                              [ Session-Timeout ]
                              [ Authz-Session-Lifetime ]
                              [ Authz-Grace-Period ]
                              [ Authz-Session-Volume ]
                           *  [ AVP ]

6.4.  QoS-Install Answer (QIA)

   The QoS-Install Answer message (QIA), indicated by the Command-Code
   field set to TBD and 'R' bit cleared in the Command Flags field is
   sent in response to the QoS-Install Request message (QIR) for
   confirmation of the result of the installation of the provided QoS
   reservation instructions.

   The message format is defined as follows:

     <QoS-Install-Answer> ::= < Diameter Header: XXX, PXY >
                              < Session-Id >
                              { Auth-Application-Id }
                              { Origin-Host }
                              { Origin-Realm }
                              { Result-Code }
                           *  [ QoS-Resources ]
                           *  [ AVP ]

6.5.  Accounting Request (ACR)

   The Accounting Request message (ACR), indicated by the Command-Code
   field set to 271 and 'R' bit set in the Command Flags field is used
   by Network Element to report parameters of the authorized and
   established QoS reservation.

   The message MUST carry accounting information authorized QoS
   resources and its usage, e.g., QoS-Resources, CC-Time, CC-Cost, Acc-
   Multi-Session-Id.

   The message format is defined as follows:

     <Accounting-Request> ::= < Diameter Header: XXX, REQ, PXY >
                              < Session-Id >
                              { Acct-Application-Id }
                              { Destination-Realm }
                              [ Destination-Host ]
                              [ Accounting-Record-Type ]
                              [ Accounting-Record-Number ]
                            * [ QoS-Resources ]
                              [ Cost-Information ]
                              [ CC-Time ]
                              [ Acc-Multi-Session-Id ]
                            * [ AVP ]

6.6.  Accounting Answer (ACA)

   The Accounting Answer message (ACA), indicated by the Command-Code
   field set to 271 and 'R' bit cleared in the Command Flags field is
   sent in response to the Accounting Request message (ACR) as an
   acknowledgment of to the ACR QoS-Install Request message and MAY carry additional management
   information (QIR) for
   confirmation of the accounting session, e.g.  Acc-Interim-Interval
   AVP. result of the installation of the provided QoS
   reservation instructions.

   The message format is defined as follows:

      <Accounting-Answer>

     <QoS-Install-Answer> ::= < Diameter Header: XXX, PXY >
                              < Session-Id >
                              { Acct-Application-Id Auth-Application-Id }
                              [ Result-Code ]
                              [ Accounting-Record-Type ]
                              [ Accounting-Record-Number ]
                              [ Acc-Multi-Session-Id ]
                            * [ AVP ]

7.  Diameter QoS Authorization Application AVPs

   Each of the AVPs identified in the QoS-Authorization-Request/Answer
   and QoS-Install-Request/Answer messages and the assignment of their
   value(s) is given in this section.

7.1.  Diameter Base Protocol AVPs

   The Diameter QoS application uses a number of session management
   AVPs, defined in the Base Protocol ([RFC3588]).

   Attribute Name                AVP Code     Reference [RFC3588]
                              { Origin-Host                   264             Section 6.3 }
                              { Origin-Realm                  296             Section 6.4
   Destination-Host              293             Section 6.5
   Destination-Realm             283             Section 6.6
   Auth-Application-Id           258             Section 6.8 }
                              { Result-Code                   268             Section 7.1
   Auth-Request-Type             274             Section 8.7
   Session-Id                    263             Section 8.8
   Authz-Lifetime                291             Section 8.9
   Authz-Grace-Period            276             Section 8.10
   Session-Timeout                27             Section 8.13
   User-Name                       1             Section 8.14

   The Auth-Application-Id AVP (AVP Code 258) is assigned by IANA to
   Diameter applications.  The value of the Auth-Application-Id for the
   Diameter QoS application is TBD.

7.2.  Credit Control Application AVPs

   The Diameter QoS application provides accounting for usage of
   reserved QoS resources.  Diameter QoS accounting has built-in support
   for online, duration based accounting.  For this purpose it re-uses a
   number of AVPs defined in Diameter Credit Control application.
   [RFC4006].

   Attribute Name                AVP Code     Reference [RFC4006]
   Cost-Information AVP          423             Section 8.7
   Unit-Value AVP                445             Section 8.8
   Currency-Code AVP             425             Section 8.11
   Cost-Unit AVP                 424             Section 8.12
   CC-Time AVP                   420             Section 8.21
   Tariff-Time-Change }
                           *  [ QoS-Resources ]
                           *  [ AVP        451             Section 6.20

   Usage of ]

6.5.  Accounting Request (ACR)

   The Accounting Request message (ACR), indicated by the listed AVPs is described Command-Code
   field set to 271 and 'R' bit set in Section 5
   Diameter QoS application the Command Flags field is designed used
   by Network Element to independently provide credit
   control over report parameters of the controlled authorized and
   established QoS resources.  However, deployment
   scenarios, where Diameter reservation.

   The message MUST carry accounting information authorized QoS application
   resources and its usage, e.g., QoS-Resources, CC-Time, CC-Cost, Acc-
   Multi-Session-Id.

   The message format is collocated with defined as follows:

     <Accounting-Request> ::= < Diameter
   Credit Control application, are not excluded.  In such scenarios Header: XXX, REQ, PXY >
                              < Session-Id >
                              { Acct-Application-Id }
                              { Destination-Realm }
                              [ Destination-Host ]
                              [ Accounting-Record-Type ]
                              [ Accounting-Record-Number ]
                            * [ QoS-Resources ]
                              [ Cost-Information ]
                              [ CC-Time ]
                              [ Acc-Multi-Session-Id ]
                            * [ AVP ]

6.6.  Accounting Answer (ACA)

   The Accounting Answer message (ACA), indicated by the
   credit control over Command-Code
   field set to 271 and 'R' bit cleared in the QoS resources might be managed by Command Flags field is
   sent in response to the Credit
   control application.  Possible interworking approach might be a usage Accounting Request message (ACR) as an
   acknowledgment of Credit-Control AVP (AVP Code 426) with a newly defined value.  It
   will indicate to the ACR message and MAY carry additional management
   information for the accounting session, e.g.  Acc-Interim-Interval
   AVP.

   The message format is defined as follows:

      <Accounting-Answer> ::= < Diameter Header: XXX, PXY >
                              < Session-Id >
                              { Acct-Application-Id }
                              [ Result-Code ]
                              [ Accounting-Record-Type ]
                              [ Accounting-Record-Number ]
                              [ Acc-Multi-Session-Id ]
                            * [ AVP ]

7.  Diameter QoS entities that the credit control
   over Authorization Application AVPs

   Each of the QoS resources would be handled AVPs identified in separate session by Credit
   Control application.  An active cooperation the QoS-Authorization-Request/Answer
   and QoS-Install-Request/Answer messages and the assignment of both applications
   would be required but it their
   value(s) is not elaborated further given in this document.

7.3.  Accounting section.

7.1.  Diameter Base Protocol AVPs

   The Diameter QoS application uses Diameter Accounting and accounting
   AVPs as defined in Section 9 of [RFC3588].  Additional description of
   the usage of some a number of them session management
   AVPs, defined in the QoS authorization context is
   provided: Base Protocol ([RFC3588]).

   Attribute Name                AVP Code     Reference [RFC3588]
   Acct-Application-Id           259
   Origin-Host                   264             Section 6.9
   Accounting-Record-Type        480 6.3
   Origin-Realm                  296             Section 9.8.1
   Accounting-Interim-Interval    85 6.4
   Destination-Host              293             Section 9.8.2
   Accounting-Record-Number      485 6.5
   Destination-Realm             283             Section 9.8.3
   Accounting-Realtime-Required  483 6.6
   Auth-Application-Id           258             Section 9.8.7
   Acc-Multi-Session-ID           50 6.8
   Result-Code                   268             Section 9.8.5

   The following AVP needs further explanation:

   Acct-Application-Id AVP 7.1
   Auth-Request-Type             274             Section 8.7
   Session-Id                    263             Section 8.8
   Authz-Lifetime                291             Section 8.9
   Authz-Grace-Period            276             Section 8.10
   Session-Timeout                27             Section 8.13
   User-Name                       1             Section 8.14

   The Acct-Application-Id Auth-Application-Id AVP (AVP Code 259)is 258) is assigned by IANA to
   Diameter applications.  The value of the Acct-Application-Id Auth-Application-Id for the
   Diameter QoS application is TBD (TBD).

   Acc-Multisession-ID

      Acc-Multi-Session-ID AVP (AVP Code 50) SHOULD be used to link
      multiple accounting sessions together, allowing the correlation of
      accounting information.  This AVP MAY be returned by the TBD.

7.2.  Credit Control Application AVPs

   The Diameter
      server in a QoS-Authorization-Answer message (QAA), and MUST be
      used in all QoS application provides accounting messages for the given session.

7.4.  Diameter QoS Application Defined AVPs

   This section defines the Quality usage of Service AVPs that are specific to
   the
   reserved QoS resources.  Diameter QoS application.

   The following table describes the Diameter accounting has built-in support
   for online, duration based accounting.  For this purpose it re-uses a
   number of AVPs used defined in the QoS
   Application, their Diameter Credit Control application.
   [RFC4006].

   Attribute Name                AVP code values, types, possible flag values, and
   whether the Code     Reference [RFC4006]
   Cost-Information AVP may be encrypted.

                                                  |          423             Section 8.7
   Unit-Value AVP Flag rules |
   +----------------------------------------------|----+---+----+-----+
   |                445             Section 8.8
   Currency-Code AVP             425             Section           |    |   |SHLD| MUST|
   | Attribute Name        Code Defined Data Type |MUST|MAY| NOT|  NOT|
   +----------------------------------------------+----+---+----+-----+
   |QoS-Flow-State         TBD    7.4  Enumerated | M  | P |    |  V  |
   |QSPEC                  TBD    7.4  OctetSTring| M  | P |    |  V  |
   |ExtendedQoSFilterRule  TBD    7.4  OctetString| M  | P |    |  V  |
   |QoS-Authz-Data         TBD    7.4  Grouped    | M  | P |    |  V  |
   |QoS-Resources          TBD    7.4  Grouped    | M  | P |    |  V  |
   |Bound-Auth-Session-Id  TBD    7.4  UTF8String | M  | P |    |  V  |
   +----------------------------------------------+----+---+----+-----+
   |M - Mandatory bit. An 8.11
   Cost-Unit AVP with "M" bit set and its value MUST be  |
   |    supported and recognized by a Diameter entity in order the    |
   |    message, which carries this AVP, to be accepted.              |
   |P - Indicates the need for encryption for end-to-end security.    |
   |V - Vendor specific bit that indicates whether the                 424             Section 8.12
   CC-Time AVP belongs to |
   |    a address space.                                              |
   +------------------------------------------------------------------+

   ExtendedQoSFilterRule

      The ExtendedQoSFilterRule format is derived from the OctetString                   420             Section 8.21
   Tariff-Time-Change AVP Base Format.  It uses        451             Section 6.20

   Usage of the ASCII charset.

      The ExtendedQoSFilterRule MUST follow listed AVPs is described in Section 5
   Diameter QoS application is designed to independently provide credit
   control over the format:

 action dir proto from src to dst [options]

 Labels            Description

 action            Action associated controlled QoS resources.  However, deployment
   scenarios, where Diameter QoS application is collocated with the packet treatment.
                   Basic actions Diameter
   Credit Control application, are described in the IPFilterRule
                   and extended for usage with QoS treatment.

 dir               Direction of not excluded.  In such scenarios the packet follow
   credit control over the filter applies to.
                   A basic description can QoS resources might be found with managed by the
                   IPFilterRule. Examples are in, out and both.

 proto             Protocol
                   A description can Credit
   control application.  Possible interworking approach might be found a usage
   of Credit-Control AVP (AVP Code 426) with a newly defined value.  It
   will indicate to the IPFilterRule.

 src and dst       <address/mask> [ports]
                   A description can be found with Diameter QoS entities that the IPFilterRule.

 flow-label        IPv6 Flow Label
                   A description can be found in TBD.

 dscp              Diffserv Codepoints
                   A description can credit control
   over the QoS resources would be found handled in TBD.

 ipsec-spi         IPsec Security Parameter Index (SPI)
                   A description can separate session by Credit
   Control application.  An active cooperation of both applications
   would be found required but it is not elaborated further in TBD.

 qos-id            A unique id referencing the applicable this document.

7.3.  Accounting AVPs

   The Diameter QoS parameters
                   that need to be applied to the specified packets.

      Rules for the appropriate direction are evaluated application uses Diameter Accounting and accounting
   AVPs as defined in order, with
      the first matched rule terminating Section 9 of [RFC3588].  Additional description of
   the evaluation.  Each packet is
      evaluated once.  If no rule matches, usage of some of them in the packet is treated as best
      effort.  An access device that is unable to interpret or apply a QoS rule SHOULD NOT terminate the session.

   QoS-ID authorization context is
   provided:

   Attribute Name                AVP Code     Reference [RFC3588]
   Acct-Application-Id           259             Section 6.9
   Accounting-Record-Type        480             Section 9.8.1
   Accounting-Interim-Interval    85             Section 9.8.2
   Accounting-Record-Number      485             Section 9.8.3
   Accounting-Realtime-Required  483             Section 9.8.7
   Acc-Multi-Session-ID           50             Section 9.8.5

   The following AVPs need further explanation:

   Acct-Application-Id AVP

      The QoS-ID Acct-Application-Id AVP (AVP Code TBD) is 259)is assigned by IANA to
      Diameter applications.  The value of type Unsigned32 and references the QSPEC.

   QoS-Flow-State

      The QoS-Flow-State Acct-Application-Id for
      the Diameter QoS application is TBD (TBD).

   Acc-Multisession-ID

      Acc-Multi-Session-ID AVP (AVP Code TBD) is of type Enumerated.  It
      gives an indication by the Authorizing entity as to how the flow
      MUST 50) SHOULD be treated.  When included in a QAA message, it contains an
      action used to be performed on link
      multiple accounting sessions together, allowing the state correlation of
      accounting information.  This AVP MAY be returned by the flow to which the Diameter
      server in a QoS-Authorization-Answer message applies.  The values supported are:

   0  Open     - Enable the transport plane service, (QAA), and MUST be
      used in all accounting messages for which
                 the signaling has been performed.
   1  Close    - Disable the transport plane service
   2  Maintain - Do not alter the current state (enabled/disabled)
                 of given session.

7.4.  Diameter QoS Application Defined AVPs

   This document reuses the transport plane service.

      The QoS-Flow-State is an optional AVP.  When not included AVPs defined in a QAA
      response, the default behavior is to immediately allow the flow of
      packets (Open).

      The behavior Section 4 of Close (0) for
   [I-D.ietf-dime-qos-attributes].

   This section lists the QoS-Flow-State refers AVPs that are used by this specifispecific to
   the
      case where a Diameter QoS reservation exists but it is not activated application.

   Additionally, the followig new AVPs are defined:
   Bound-Auth-Session-Id and
      therefore not charged.  For time-based charging the time interval
      where QoS-Authz-Data AVP

   The following table describes the gate is closed will not be included of Diameter AVPs newly defined in this
   document for usage with the chargeable
      time interval.  The QoS model might give some indication whether
      an established QoS reservation needs to be freed or needs to be
      removed only if not enough resources are available.

   QSPEC

      The QSPEC Application, their AVP (AVP Code TBD) is of type OctetString code values,
   types, possible flag values, and contains
      QoS parameter information.  The Quality of Service parameters are
      defined in [I-D.korhonen-dime-qos-parameters].

   QoS-Resources

      The QoS-Resources whether the AVP (AVP may be encrypted.

                                                  +-------------------+
                                                  |    AVP Flag rules |
   +----------------------------------------------|----+---+----+-----+
   |                       AVP  Section           |    |   |SHLD| MUST|
   | Attribute Name        Code TBD) is of type Defined Data Type |MUST|MAY| NOT|  NOT|
   +----------------------------------------------+----+---+----+-----+
   |QoS-Authz-Data         TBD    7.4  Grouped    | M  | P |    |  V  |
   |Bound-Auth-Session-Id  TBD    7.4  UTF8String | M  | P |    |  V  |
   +----------------------------------------------+----+---+----+-----+
   |M - Mandatory bit. An AVP with "M" bit set and
      includes description of the resources that have been requested its value MUST be  |
   |    supported and recognized by
      the user or authorized for a particular QoS request.  More than
      one MAY Diameter entity in order the    |
   |    message, which carries this AVP, to be included into a message.

   QoS-Resources ::= < AVP Header: XXX >
                          * [ ExtendedQoSFilterRule ]
                          * [ QoS-Parameter ]
                            [ QoS-Flow-State ]
                          * [ accepted.              |
   |P - Indicates the need for encryption for end-to-end security.    |
   |V - Vendor specific bit that indicates whether the AVP ] belongs to |
   |    a address space.                                              |
   +------------------------------------------------------------------+

   QoS-Authz-Data

      The QoS-Authz-Data AVP (AVP Code TBD) is of type OctetString.  It
      is a container that carries application session or user specific
      data that has to be supplied to the Authorizing entity as input to
      the computation of the authorization decision.

   Bound-Authentication-Session-Id

      The Bound-Authentication-Session AVP (AVP Code TBD) is of type
      UTF8String.  It carries the id of the Diameter authentication
      session that is used for the network access authentication (NASREQ
      authentication session).  It is used to tie the QoS authorization
      request to a prior authentication of the end host done by a co-
      located application for network access authentication (Diameter
      NASREQ) at the QoS NE.

   QoS-Parameter

      The QoS-Parameter AVP (AVP Code TBD) is of type Grouped and ties
      the QoS-ID AVP together to the QSPEC AVP.

   QoS-Parameter ::= < AVP Header: XXX >
                          * [ QoS-ID ]
                          * [ QSPEC ]
                          * [ AVP ]

8.  Examples

   This section presents an example of the interaction between the
   application layer signaling and the QoS signaling along the data
   path.  The application layer signaling is, in this example, provided
   using SIP.  Signaling for a QoS resource reservation is done using
   the QoS NSLP.  The authorization of the QoS reservation request is
   done by the Diameter QoS application (DQA).

     End-Host                                 SIP Server  Correspondent
   requesting QoS                            (DQA Server)        Node

         |                                          |              |
       ..|....Application layer SIP signaling.......|..............|..
       . |  Invite (SDP)                            |              | .
       . +.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.->              | .
       . |  100 Trying                              |              | .
       . <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-+  Invite (SDP)| .
       . |                                          +-.-.-.....-.-.> .
       . |                                          |  180 SDP'    | .
       . |                                          <-.-.-.....-.-.+ .
       . |                                 +--------+--------+     | .
       . |                                 |Authorize session|     | .
       . |                                 |   parameters    |     | .
       . | 180 (Session parameters)        +--------+--------+     | .
       . <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-+              | .
       ..|..........................................|... ..........|..
         |                                          |              |
         |           +------------+                 |              |
         |           |     NE     |                 |              |
         |           |(DQA Client)|                 |              |
         |           +------+-----+                 |              |
         |                  |                       |              |
         |QoS NSLP Reserve  |                       |              |
         +------------------> QAR                   |              |
         | (POLICY_DATA>v   +- - - - -<<AAA>>- - - ->              |
         |  QSPEC)  v   >===>(Destination-Host,     |              |
         |      v   >=======>QoS-Authz-Data        ++------------+ |
         |      >===========>QoS-Resources,        |Authorize    | |
         |                  |Cost-Info)            |QoS resources| |
         |                  |                      ++------------+ |
         |                  | QAA                   |              |
         |                  <- - - - -<<AAA>>- - - -+              |
         |                  |(Result-Code,          |              |
         |                  |QoS-Resources,         |              |
         |                  |CC-Time,               |              |
         |                  |Authz-Lifetime)        |              |
         |        +---------+--------+              |              |
         |        |Install QoS state1|              |              |
         |        |+ Authz. session  |              |              |
         |        +---------+--------+              |              |
         |                  |QoS NSLP Reserve                      |
         |                  +---------------..............--------->
         |                  |                                      |
         |                  |                     QoS NSLP Response|
         |QoS NSLP Response <---------------..............---------+
         <------------------+                                      |
         |                  |                        QoS NSLP Query|
         |QoS NSLP Query    <---------------..............---------+
         <------------------+                                      |
         |QoS NSLP Reserve  |                                      |
         +------------------> QAR                   |              |
         |                  +- - - - -<<AAA>>- - - ->              |
         |                  |                   +---+---------+    |
         |                  |                   |Authorize    |    |
         |                  |                   |QoS resources|    |
         |                  | QAA               +---+---------+    |
         |                  <- - - - -<<AAA>>- - - -+              |
         |        +---------+--------+              |              |
         |        |Install QoS state2|                             |
         |        |+ Authz. session  |                             |
         |        +---------+--------+                             |
         |                  |  QoS NSLP Reserve                    |
         |                  +---------------..............--------->
         |                  |                     QoS NSLP Response|
         |QoS NSLP Response <---------------..............---------+
         <------------------+                                      |
         |                  |                                      |
         /------------------+--Data Flow---------------------------\
         \------------------+--------------------------------------/
         |                  |                                      |

         .-.-.-.-.  SIP signaling
         ---------  QoS NSLP signaling
         - - - - -  Diameter QoS Application messages
         =========  Mapping of objects between QoS and AAA protocol

             Figure 25: 24: Token-based QoS Authorization Example

   The communication starts with SIP signaling between the two end
   points and the SIP server for negotiation and authorization of the
   requested service and its parameters (see Figure 25). 24).  As a part of
   the process, the SIP server verifies whether the user at Host A is
   authorized to use the requested service (and potentially the ability
   to be charged for the service usage).  Negotiated session parameters
   are provided to the end host.

   Subsequently, Host A initiates a QoS signaling message towards Host
   B. It sends a QoS NSLP Reserve message, in which it includes
   description of the required QoS (QSPEC object) and authorization data
   for negotiated service session (part of the POLICY_DATA object).
   Authorization data includes, as a minimum, the identity of the
   authorizing entity (e.g., the SIP server) and an identifier of the
   application service session for which QoS resources are requested.

   A QoS NSLP Reserve message is intercepted and processed by the first
   QoS aware Network Element.  The NE uses the Diameter QoS application
   to request authorization for the received QoS reservation request.
   The identity of the Authorizing Entity (in this case the SIP server
   that is co-located with a Diameter server) is put into the
   Destination-Host AVP, any additional session authorization data is
   encapsulated into the QoS-Authz-Data AVP and the description of the
   QoS resources is included into QoS-Resources AVP.  In addition, the
   NE rates the requested QoS resources and announces the charging rate
   into the Cost-Information AVP.  These AVPs are included into a QoS
   Authorization Request message, which is sent to the Authorizing
   entity.

   A Diameter QAR message will be routed through the AAA network to the
   Authorizing Entity.  The Authorizing Entity verifies the requested
   QoS against the QoS resources negotiated for the service session and
   replies with QoS-Authorization answer (QAA) message.  It carries the
   authorization result (Result-Code AVP) and the description of the
   authorized QoS parameters (QoS-Resources AVP), as well as duration of
   the authorization session (Authorization-Lifetime AVP) and duration
   of the time (CC-Time) for which the end-user should be charged with
   the rate announced in the QAR message.  The NE interacts with the
   traffic control function and installs the authorized QoS resources
   and forwards the QoS NSLP Reserve message further along the data
   path.

   Note that the example above shows a sender-initiated reservation from
   the End-Host towards the corresponding node and a receiver-initiated
   reservation from the correspondent node towards the End-Host.

9.  IANA Considerations

   TBD

10.  Security Considerations

   This document describes a mechanism for performing authorization of a
   QoS reservation at a third party entity.  Therefore, it is necessary
   that the QoS signaling application to carry sufficient information
   that should be forwarded to the backend AAA server.  This
   functionality is particularly useful in roaming environments where
   the authorization decision is most likely provided at an entity where
   the user can be authorized, such as in the home realm.

   QoS signaling application MAY re-use the authenticated identities
   used for the establishment of the secured transport channel for the
   signaling messages, e.g., TLS or IPsec between the end host and the
   policy aware QoS NE.  In addition, a collocation of the QoS NE with,
   for example, the Diameter NASREQ application (see [RFC4005]) may
   allow the QoS authorization to be based on the authenticated identity
   used during the network access authentication protocol run.  If a co-
   located deployment is not desired then special security protection is
   required to ensure that arbitrary nodes cannot reuse a previous
   authentication exchange to perform an authorization decision.

   Additionally, QoS authorization might be based on the usage of
   authorization tokens that are generated by the Authorizing Entity and
   provided to the end host via application layer signaling.

   The impact of the existence of different authorization models is
   (with respect to this Diameter QoS application) the ability to carry
   different authentication and authorization information.

11.  Acknowledgements

   The authors would like to thank John Loughney and Allison Mankin for
   their input to this document.  In September 2005 Robert Hancock,
   Jukka Manner, Cornelia Kappler, Xiaoming Fu, Georgios Karagiannis and
   Elwyn Davies provided a detailed review.  Robert also provided us
   with good feedback earlier in 2005.  Jerry Ash provided us review
   comments late 2005/early 2006.  Rajith R provided some inputs to the
   document early 2007

   [Editor's Note: Acknowledgements need to be updated.]

12.  Contributors

   The authors would like to thank Tseno Tsenov (tseno.tsenov@gmail.com)
   and Frank Alfano (falfano@lucent.com) for starting the Diameter
   Quality of Service work within the IETF, for your significant draft
   contributions and for being the driving force for the first few draft
   versions.

   [Editor's Note: A bit of history needs to be included here.]

13.  Open Issues

   Open issues related to this draft are listed at the issue tracker
   available at: http://www.tschofenig.com:8080/diameter-qos/

14.  References

14.1.  Normative References

   [I-D.korhonen-dime-qos-parameters]

   [I-D.ietf-dime-qos-attributes]
              Korhonen, J. and H. Tschofenig, J., "Quality of Service
              Parameters Attributes for RADIUS Diameter
              and Diameter",
              draft-korhonen-dime-qos-parameters-00.txt RADIUS", draft-ietf-dime-qos-attributes-00 (work in
              progress), February 2006. July 2007.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", RFC 2234, November 1997.

   [RFC3588]  Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J.
              Arkko, "Diameter Base Protocol", RFC 3588, September 2003.

   [RFC4005]  Calhoun, P., Zorn, G., Spence, D., and D. Mitton,
              "Diameter Network Access Server Application", RFC 4005,
              August 2005.

   [RFC4006]  Hakala, H., Mattila, L., Koskinen, J-P., Stura, M., and J.
              Loughney, "Diameter Credit-Control Application", RFC 4006,
              August 2005.

14.2.  Informative References

   [I-D.ietf-nsis-ntlp]
              Schulzrinne, H. and R. Hancock, "GIST: General Internet
              Signaling
              Signalling Transport", draft-ietf-nsis-ntlp-11 draft-ietf-nsis-ntlp-13 (work in
              progress), August 2006. April 2007.

   [I-D.ietf-nsis-qos-nslp]
              Manner, J., "NSLP for Quality-of-Service Signaling",
              draft-ietf-nsis-qos-nslp-12
              draft-ietf-nsis-qos-nslp-14 (work in progress),
              October 2006. June 2007.

   [RFC2210]  Wroclawski, J., "The Use of RSVP with IETF Integrated
              Services", RFC 2210, September 1997.

   [RFC2327]  Handley, M. and V. Jacobson, "SDP: Session Description
              Protocol", RFC 2327, April 1998.

   [RFC2486]  Aboba, B. and M. Beadles, "The Network Access Identifier",
              RFC 2486, January 1999.

   [RFC2749]  Herzog, S., Boyle, J., Cohen, R., Durham, D., Rajan, R.,
              and A. Sastry, "COPS usage for RSVP", RFC 2749,
              January 2000.

   [RFC2753]  Yavatkar, R., Pendarakis, D., and R. Guerin, "A Framework
              for Policy-based Admission Control", RFC 2753,
              January 2000.

   [RFC2865]  Rigney, C., Willens, S., Rubens, A., and W. Simpson,
              "Remote Authentication Dial In User Service (RADIUS)",
              RFC 2865, June 2000.

   [RFC3313]  Marshall, W., "Private Session Initiation Protocol (SIP)
              Extensions for Media Authorization", RFC 3313,
              January 2003.

   [RFC3520]  Hamer, L-N., Gage, B., Kosinski, B., and H. Shieh,
              "Session Authorization Policy Element", RFC 3520,
              April 2003.

   [RFC3521]  Hamer, L-N., Gage, B., and H. Shieh, "Framework for
              Session Set-up with Media Authorization", RFC 3521,
              April 2003.

   [RFC4027]  Josefsson, S., "Domain Name System Media Types", RFC 4027,
              April 2005.

   [RFC4566]  Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
              Description Protocol", RFC 4566, July 2006.

Authors' Addresses

   Glen Zorn (editor)
   Cisco Systems
   2901 Third Avenue, Suite 600
   SEA1/5/
   Seattle, WA  98121
   USA

   Phone: +1 (425) 344 8113
   Email: gwz@cisco.com

   Peter J. McCann
   Motorola Labs
   1301 E. Algonquin Rd
   Schaumburg, IL  60196
   USA

   Phone: +1 847 576 3440
   Email: pete.mccann@motorola.com

   Hannes Tschofenig
   Nokia Siemens Networks GmbH & Co KG
   Otto-Hahn-Ring 6
   Munich, Bavaria  81739
   Germany

   Email: Hannes.Tschofenig@siemens.com Hannes.Tschofenig@nsn.com
   URI:   http://www.tschofenig.com

   Tina Tsou
   Huawei
   Shenzhen,
   P.R.C

   Email: tena@huawei.com
   Avri Doria
   Lulea University of Technology
   Arbetsvetenskap
   Lulea,   SE-97187
   Sweden

   Email: avri@ltu.se

   Dong Sun
   Bell Labs/Alcatel-Lucent
   101 Crawfords Corner Rd
   Holmdel, NJ  07733
   USA

   Email: dongsun@alcatel-lucent.com

Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

Acknowledgment

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).