One document matched: draft-ietf-dime-diameter-qos-15.xml


<?xml version="1.0" encoding="US-ASCII"?>
<?xml-stylesheet type='text/xsl' href='./rfc2629.xslt' ?>
<?rfc toc="yes"?>
<?rfc symrefs="no"?>
<?rfc compact="no" ?>
<?rfc sortrefs="yes" ?>
<?rfc strict="yes" ?>
<?rfc linkmailto="yes" ?>
<!DOCTYPE rfc PUBLIC "-//IETF//DTD RFC 2629//EN"
"http://xml.resource.org/authoring/rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC3588 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3588.xml">
<!ENTITY RFC4005 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4005.xml">
<!ENTITY I-D.ietf-dime-qos-attributes SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-dime-qos-attributes.xml">
<!ENTITY I-D.ietf-nsis-ntlp SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-nsis-ntlp.xml">
<!ENTITY RFC5624 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5624.xml">
<!ENTITY I-D.ietf-nsis-qos-nslp SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-nsis-qos-nslp.xml">
<!ENTITY RFC4566 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4566.xml">
<!ENTITY RFC2211 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2211.xml">
<!ENTITY RFC2212 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2212.xml">
<!ENTITY RFC2205 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2205.xml">
<!ENTITY RFC2753 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2753.xml">
<!ENTITY RFC2865 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2865.xml">
<!ENTITY RFC3521 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3521.xml">
<!ENTITY RFC3313 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3313.xml">
<!ENTITY RFC3520 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3520.xml">
<!ENTITY RFC2474 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2474.xml">
<!ENTITY RFC5246 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5246.xml">
<!ENTITY RFC4282 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4282.xml">
<!ENTITY RFC3261 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3261.xml">
<!ENTITY I-D.ietf-mmusic-media-path-middleboxes SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-mmusic-media-path-middleboxes.xml">
]>
<?xml-stylesheet type='text/xsl' href='./rfc2629.xslt' ?>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc strict="no"?>
<?rfc compact="no" ?>
<?rfc subcompact="yes" ?>
<?rfc sortrefs="yes" ?>
<rfc category="std" docName="draft-ietf-dime-diameter-qos-15.txt" ipr="trust200902">
  <front>
    <title abbrev="Diameter QoS Application">Diameter Quality of Service Application</title>

    <author fullname="Dong Sun" initials="D." role="editor" surname="Sun">
      <organization>Alcatel-Lucent</organization>

      <address>
        <postal>
          <street>600 Mountain Ave</street>

          <street/>

          <city>Murray Hill</city>

          <region>NJ</region>

          <code>07974</code>

          <country>USA</country>
        </postal>

        <phone>+1 908 582 2617</phone>

        <email>d.sun@alcatel-lucent.com</email>
      </address>
    </author>

    <author fullname="Peter J. McCann" initials="P." surname="McCann">
      <organization abbrev="Motorola Labs">Motorola Labs</organization>

      <address>
        <postal>
          <street>1301 E. Algonquin Rd</street>

          <city>Schaumburg</city>

          <region>IL</region>

          <code>60196</code>

          <country>USA</country>
        </postal>

        <phone>+1 847 576 3440</phone>

        <email>pete.mccann@motorola.com</email>
      </address>
    </author>

    <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
      <organization>Nokia Siemens Networks</organization>

      <address>
        <postal>
          <street>Linnoitustie 6</street>

          <city>Espoo</city>

          <code>02600</code>

          <country>Finland</country>
        </postal>

        <phone>+358 (50) 4871445</phone>

        <email>Hannes.Tschofenig@gmx.net</email>

        <uri>http://www.tschofenig.priv.at</uri>
      </address>
    </author>

    <author fullname="Tina Tsou" initials="T." surname="Tsou">
      <organization abbrev="Huawei">Huawei</organization>

      <address>
        <postal>
          <street/>

          <city>Shenzhen</city>

          <region/>

          <code/>

          <country>P.R.C</country>
        </postal>

        <email>tena@huawei.com</email>
      </address>
    </author>

    <author fullname="Avri Doria" initials="A." surname="Doria">
      <organization abbrev="Lulea University of Technology">Lulea University of Technology</organization>

      <address>
        <postal>
          <street>Arbetsvetenskap</street>

          <city>Lulea</city>

          <region/>

          <code>SE-97187</code>

          <country>Sweden</country>
        </postal>

        <email>avri@ltu.se</email>
      </address>
    </author>

    <author fullname="Glen Zorn" initials="G.Z." role="editor" surname="Zorn">
      <organization>Network Zen</organization>

      <address>
        <postal>
          <street>1310 East Thomas Street</street>

          <street>#306</street>

          <city>Seattle</city>

          <region>Washington</region>

          <code>98102</code>

          <country>USA</country>
        </postal>

        <phone>+1 (206) 377-9035</phone>

        <email>gwz@net-zen.net</email>
      </address>
    </author>

    <date year="2010"/>

    <area>Operations and Management</area>

    <workgroup>Diameter Maintenance and Extensions (DIME)</workgroup>

    <keyword>Diameter</keyword>

    <keyword>AAA</keyword>

    <keyword>QoS</keyword>

    <keyword>Policy</keyword>

    <keyword>VoIP</keyword>

    <keyword>SIP</keyword>

    <abstract>
      <t> This document describes the framework, messages and procedures for the Diameter Quality of
        Service (QoS) application. The Diameter QoS application allows network elements to interact
        with Diameter servers when allocating QoS resources in the network. In particular, two modes
        of operation, namely "Pull" and "Push", are defined.</t>
    </abstract>
  </front>

  <middle>
    <!-- ====================================================================== -->

    <section anchor="introduction" title="Introduction">
      <t>This document describes the framework, messages and procedures for the Diameter <xref
          target="RFC3588"> </xref> Quality of Service (QoS) application. The Diameter QoS
        application allows Network Elements (NEs) to interact with Diameter servers when allocating
        QoS resources in the network.</t>

      <t>Two modes of operation are defined. In the first, called "Pull" mode, the network element
        requests QoS authorization from the Diameter server based on some trigger (such as a QoS
        signaling protocol) that arrives along the data path. In the second, called "Push" mode, the
        Diameter server pro-actively sends a command to the network element(s) to install QoS
        authorization state. This could be triggered, for instance, by off-path signaling, such as
        Session Initiation Protocol (SIP) <xref target="RFC3261"/> call control.</t>

      <t>A set of command codes is specified that allows a single Diameter QoS application server to
        support both Pull and Push modes based on the requirements of network technologies,
        deployment scenarios and end-host capabilities. In conjunction with Diameter AVPs defined in
          <xref target="I-D.ietf-dime-qos-attributes"/> and in <xref target="RFC5624"/>, this
        document depicts basic call flow procedures used to establish, modify and terminate a
        Diameter QoS application session.</t>

      <t>This document defines a number of Diameter-encoded Attribute Value Pairs (AVPs), which are
        described using a modified version of the Augmented Backus-Naur Form (ABNF), see <xref
          target="RFC3588"/>.</t>

    </section>

    <!-- ====================================================================== -->

    <section title="Terminology">
      <t>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 <xref target="RFC2119"/>.</t>

      <t>The following terms are used in this document:</t>

      <t>
        <list style="hanging">
          <t hangText="AAA Cloud"><vspace blankLines="0"/> An infrastructure of Authentication,
            Authorization and Accounting (AAA) entities (clients, agents, servers) communicating via
            a AAA protocol over trusted, secure connections. It offers authentication, authorization
            and accounting services to applications in local and roaming scenarios. Diameter and
            RADIUS <xref target="RFC2865"/> are both widely deployed AAA protocols. <vspace
              blankLines="1"/></t>

          <t hangText="Application Endpoint (AppE)"><vspace blankLines="0"/> 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 may make a request for QoS from the network. For example, a SIP
            User Agent is one kind of Application Endpoint. <vspace blankLines="1"/></t>

          <t hangText="Application Server (AppS)"><vspace blankLines="0"/> An Application Server is
            an entity that exchanges signaling messages with an Application Endpoint (see above). It
            may be a source of authorization for QoS-enhanced application flows. For example, a SIP
            server is one kind of Application Server.<vspace blankLines="1"/></t>

          <t hangText="Authorizing Entity (AE)"><vspace blankLines="0"/> The Authorizing Entity is a
            Diameter server that supports the QoS application. It is responsible for authorizing QoS
            requests for a particular application flow or aggregate. The Authorizing Entity may be a
            standalone entity or may be integrated with an Application Server and may be co-located
            with a subscriber database. This entity corresponds to the Policy Decision Point (PDP)
              <xref target="RFC2753"/>.<vspace blankLines="1"/></t>

          <t hangText="Network Element (NE)"><vspace blankLines="0"/> A QoS aware router that acts
            as a Diameter client for the QoS application. This entity triggers the protocol
            interaction for the Pull mode, and it is the recipient of QoS information in the Push
            mode. The Diameter Client at an Network Element corresponds to the Policy Enforcement
            Point (PEP) <xref target="RFC2753"/>.<vspace blankLines="1"/></t>

          <t hangText="Pull Mode"><vspace blankLines="0"/>In this mode, the QoS authorization
            process is invoked by the QoS reservation request received from the Application
            Endpoint. The Network Element then requests the QoS authorization decision from the
            Authorizing Entity.<vspace blankLines="1"/></t>

          <t hangText="Push Mode"><vspace blankLines="0"/>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 directly. <vspace blankLines="1"/></t>

          <t hangText="Resource Requesting Entity (RRE)"><vspace blankLines="0"/> A Resource
            Requesting Entity is a logical entity that supports the protocol interaction for QoS
            resources. The RRE resides in the end-host and is able to communicate with peer logical
            entities in an Authorizing Entity or a Network Element to trigger the QoS authorization
              process.<vspace blankLines="1"/></t>
        </list>
      </t>

    </section>

    <!-- ====================================================================== -->

    <section anchor="architecture" title="Framework">
      <t>The Diameter QoS application runs between a NE (acting as a Diameter client) and the
        resource AE (acting as a Diameter server). A high-level picture of the resulting
        architecture is shown in <xref target="fig-qos-aaa"/>.</t>

      <t>
        <figure anchor="fig-qos-aaa" title="An Architecture Supporting QoS-AAA">
          <artwork><![CDATA[                                    
            +-------+---------+                                     
            |   Authorizing   |                                     
            |     Entity      |                                     
            |(Diameter Server)|                                     
            +-------+---------+                                     
                    |                                               
                    |                                               
             /\-----+-----/\                                        
         ////               \\\\                                    
       ||       AAA Cloud       ||                                  
      |   (Diameter application)  |                                 
       ||                       ||                                  
         \\\\               ////                                    
             \-------+-----/                                        
                     |                                              
    +---+--+   +-----+----+   +---+--+                              
    |      |   |    NE    |   |      |    Media                  
    +  NE  +===+(Diameter +===+  NE  +=============>>               
    |      |   |  Client) |   |      |    Flow                      
    +------+   +----------+   +------+                              
]]></artwork>
        </figure>
      </t>

      <t><xref target="fig-qos-aaa"/> depicts NEs through which media flows need to pass, a cloud of
        AAA servers, and an AE. 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.</t>

      <t>In some deployment scenarios, NEs may request authorization through the AAA cloud based on
        an incoming QoS reservation request. The NE will route the request to a designated AE. The
        AE will return the result of the authorization decision. In other deployment scenarios, the
        authorization will be initiated upon dynamic application state, so that the request must be
        authenticated and authorized based on information from one or more AppSs. After receiving
        the authorization request from the AppS or the NE, the AE decides the appropriate mode
        (i.e., Push or Pull). The usage Push or Pull mode can be determined by the authorizing
        entity either statically or dynamically. Static determination might be based on a
        configurable defined policy in the authorizing entity, while dynamic determination might be
        based on information received from an application server. For Push mode, the authorizing
        entity needs to identify the appropriate NE(s) to which QoS authorization information needs
        to be pushed. It might determine this based on information received from the AppS, such as
        the IP addresses of media flows.</t>

      <t>In some deployment scenarios, there is a mapping between access network type and the
        service logic (e.g., selection of the Push or Pull mode, and other differentiated handling
        of the resource admission and control). The access network type might be derived from the
        authorization request from the AppS or the NE, and in this case, the authorizing entity can
        identify the corresponding service logic based on the mapping.</t>

      <t>If the interface between the NEs and the AAA cloud is identical regardless of whether the
        AE communicates with an AppS or not, routers are insulated from the details of particular
        applications and need not know that Application Servers are involved. Also, the AAA cloud
        may also encompass business relationships such as those between network operators and
        third-party application providers. This enables flexible intra- or inter-domain
        authorization, accounting, and settlement.</t>

      <section anchor="router_model" title="Network Element Functional Model">
        <t><xref target="fig-ne-model"/> depicts a logical operational model of resource management
          in a router.</t>

        <t>
          <figure anchor="fig-ne-model" title="Network Element Functional Model">
            <artwork><![CDATA[
            +-------------------------------------------------------+
            | DIAMETER Client                                       |
            | Functionality                                         |
            | +---------------++-----------------++---------------+ |
            | | User          || QoS Application || Accounting    | |
            | | Authentication|| Client          || Client (e.g., | |
            | | Client        || (Authorization  ||for QoS Traffic| |
            | +---------------+| of QoS Requests)|+---------------+ |
            |                  +-----------------+                  |
            +-------------------------------------------------------+
                                           ^
                                           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
]]></artwork>
          </figure>
        </t>

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

        <t>The admission control function provides information about available resources and
          determines whether there are enough resources to fulfill the request. Authorization is
          performed by the Diameter client, which involves contacting an authorization entity
          through the AAA cloud shown in <xref target="architecture"/>. 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 the ones requested QoS (depending on the authorization decision). Once the
          requested resource is granted, the Resource Management function provides accounting
          information to the AE via the Diameter client.</t>
      </section>

      <!-- ====================================================================== -->

      <section anchor="Implication" title="Implications of Endpoint QoS Capabilities">
        <t/>

        <section anchor="Categories" title="Endpoint Categories">
          <t>The QoS capabilities of Application Endpoints are varied, and can be categorized as
            follows: <vspace blankLines="1"/>
            <list style="hanging">
              <t hangText="Category 1"><vspace blankLines="0"/> A Category 1 Application Endpoint
                has no QoS capability at either the application or the network level. This type of
                AppE may set up a connection through application signaling, but it is incapable of
                specifying resource/QoS requirements through either application or network-level
                signaling. <vspace blankLines="1"/></t>

              <t hangText="Category 2"><vspace blankLines="0"/> A Category 2 Application Endpoint
                only has QoS capability at the application level. This type of AppE is able to set
                up a connection through application signaling with certain resource/QoS requirements
                (e.g., application attributes), but it is unable to signal any resource/QoS
                requirements at the network level. <vspace blankLines="1"/></t>

              <t hangText="Category 3"><vspace blankLines="0"/> A Category 3 Application Endpoint
                has QoS capability at the network level. This type of AppE may set up a connection
                through application signaling, translate service characteristics into network
                resource/QoS requirements (e.g., network QoS class) locally, and request the
                resources through network signaling, e.g., Resource ReSerVation Protocol (RSVP)
                  <xref target="RFC2205"/> or NSIS <xref target="I-D.ietf-nsis-qos-nslp"/>.</t>
            </list></t>
        </section>

        <section title="Interaction Modes Between the Authorizing Entity and Network Element">
          <t>Different QoS mechanisms are employed in packet networks. Those QoS mechanisms can be
            categorized into two schemes: IntServ <xref target="RFC2211"/>, <xref target="RFC2212"/>
            and DiffServ <xref target="RFC2474"/>. In the IntServ scheme, network signaling (e.g.,
            RSVP, NSIS, or link specific signaling) is commonly used to initiate a request from an
            AppE for the desired QoS resource. In the DiffServ scheme, QoS resources are provisioned
            based upon some predefined QoS service classes rather than AppE-initiated, flow-based
            QoS requests.</t>

          <t>It is obvious that the eligible QoS scheme is correlated to the AppE's capability in
            the context of QoS authorization. Since Category 1 and 2 AppEs cannot initiate the QoS
            resource requests by means of network signaling, using the current mechanism of IntServ
            model to signal QoS information across the network is not applicable to them in general.
            Depending on network technology and operator requirements, a Category 3 AppE may either
            make use of network signaling for resource requests or not.</t>

          <t>The diversity of QoS capabilities of endpoints and QoS schemes of network technology
            leads to the distinction on the interaction mode between QoS authorization system and
            underlying NEs. When the IntServ scheme is employed by a Category 3 endpoint, the
            authorization process is typically initiated by a NE when a trigger is received from the
            endpoint such as network QoS signaling. In the DiffServ scheme, since the NE is unable
            to request the resource authorization on its own initiative, the authorization process
            is typically triggered by either the request of AppSs or policies defined by the
            operator.</t>

          <t>As a consequence, two interaction modes are needed in support of different combinations
            of QoS schemes and endpoint’s QoS capabilities: Push mode and Pull mode.</t>

          <t>
            <list style="hanging">
              <t hangText="Push mode"><vspace blankLines="0"/> The QoS authorization process is
                triggered by AppSs or local network conditions (e.g., time of day on resource usage
                and QoS classes), and the authorization decisions are installed by the AE to the
                network element on its own initiative without explicit request. In order to support
                the push mode, the AE (i.e., Diameter server) should be able to initiate a Diameter
                authorization session to communicate with the NE (i.e., Diameter client) without any
                pre-established connection from the network element. <vspace blankLines="1"/></t>

              <t hangText="Pull mode"><vspace blankLines="0"/> The QoS authorization process is
                triggered by the network signaling received from end-user equipment or by a local
                event in the NE according to pre-configured policies, and authorization decisions
                are produced upon the request of the NE. In order to support the pull mode, the NE
                (i.e., Diameter client) will initiate a Diameter authorization session to
                communicate with the authorizing entity (i.e., Diameter server).</t>
            </list>
          </t>

          <t>For Category 1 and 2 Application Endpoints, Push mode is REQUIRED. For a Category 3
            AppE, either Push mode or Pull mode MAY be used.</t>

          <t>Push mode is applicable to certain networks, for example, Cable network, DSL, Ethernet,
            and Diffserv-enabled IP/MPLS. The Pull mode is more appropriate to IntServ-enabled IP
            networks or certain wireless networks such as the GPRS networks defined by 3GPP. Some
            networks (for example, WiMAX) may require both Push and Pull modes.</t>
        </section>
      </section>

      <section title="Authorization Schemes">
        <t/>

        <section anchor="authz_models" title="Pull Mode Schemes">
          <t>Three types of basic authorization schemes for Pull mode exist: one type of two-party
            scheme and two types of three-party schemes. The notation adopted here is in respect to
            the entity that performs the QoS authorization (QoS Authz). The authentication of the
            QoS requesting entity might be done at the NE as part of the QoS signaling protocol, or
            by an off-path protocol (on the application layer or for network access authentication)
            or the AE might be contacted with request for authentication and authorization of the
            QoS requesting entity. From the Diameter QoS application's point of view these schemes
            differ in type of information that need to be carried. Here we focus on the 'Basic Three
            Party Scheme' (see <xref target="fig-three-party-approach"/>) and the 'Token-based Three
            Party Scheme' (see <xref target="fig-three-party-token-approach"/>). In the 'Two Party
            Scheme', the QoS RRE is authenticated by the NE and the authorization decision is made
            either locally at the NE itself or offloaded to a trusted entity (most likely within the
            same administrative domain). In the two-party case no Diameter QoS protocol interaction
            is required.</t>

          <t>
            <figure anchor="fig-three-party-approach" title="Three Party Scheme">
              <artwork><![CDATA[
                                     +--------------+                     
                                     | Authorizing  |
                                     | Entity       |                     
                                     | authorizing  | <......+            
                                     | resource     |        .            
                                     | request      |        .            
                                     +------------+-+        .            
                                     --^----------|--   .    .            
                                /////  |          |  \\\\\   .            
                              //       |          |       \\ .            
                             |     QoS | QoS AAA  | QoS     |.            
                             |    authz| protocol |authz    |.            
                             |     req.|          | res.    |.            
                              \\       |          |       // .            
                                \\\\\  |          |  /////   .            
                       QoS           --|----------v--   .    .            
    +-------------+    request       +-+------------+        .            
    |  Entity     |----------------->| NE           |        .            
    |  requesting |                  | performing   |        .            
    |  resource   |granted / rejected| QoS          |  <.....+            
    |             |<-----------------| reservation  | financial           
    +-------------+                  +--------------+ settlement
]]></artwork>
            </figure>
          </t>

          <t>In the 'Basic Three Party Scheme' a QoS reservation request that arrives at the NE is
            forwarded to the Authorizing Entity (e.g., in the user's home network), where the
            authorization decision is made. As shown, financial settlement - a business
            relationship, such as a roaming agreement, between the visited network and the home
            network ensures that the visited network is compensated for the resources consumed by
            the user via the home network.</t>

          <t>
            <figure anchor="fig-three-party-token-approach" title="Token-based Three Party Scheme">
              <artwork><![CDATA[
                            financial settlement                          
                             ...........................+                 
   Authorization             V             -------      .                 
   Token Request   +--------------+      / QoS AAA \    .                 
   +-------------->|              |     /  protocol \   .                 
   |               | Authorizing  +--------------+   \  .                 
   |               | Entity       |   |          |    | .                 
   |        +------+              |<--+----+     |    | .                 
   |        |      +--------------+  |QoS  |     |QoS  |.                 
   |        |                        |authz|     |authz|.                 
   |        |Authorization           |req.+|     |res. |.                 
   |        |Token                   |Token|     |     |.                 
   |        |                         |    |     | .  | .                 
   |        |                          \   |     | . /  .                 
   |        |                            \ |     | /    .                 
   |        |      QoS request             |-----V .    .                 
 +-------------+ + Authz. Token   +--------+-----+      .                 
 |  Entity     |----------------->| NE           |      .                 
 |  requesting |                  | performing   |      .                 
 |  resource   |granted / rejected| QoS          | <....+                 
 |             |<-----------------| reservation  |                        
 +-------------+                  +--------------+
]]></artwork>
            </figure>
          </t>

          <t>The 'Token-based Three Party Scheme' is applicable to environments where a previous
            protocol interaction is used to request authorization tokens to assist the authorization
            process at the NE or the AE <xref target="RFC3521"/>.</t>

          <t>The QoS RRE may be involved in an application layer protocol interaction, for example
            using SIP <xref target="RFC3313"/>, with the AE. As part of this interaction,
            authentication and authorization at the application layer might take place. As a result
            of a successful authorization decision, which might involve the user's home AAA server,
            an authorization token is generated by the AE (e.g., the SIP proxy and an entity trusted
            by the SIP proxy) and returned to the end host for inclusion into the QoS signaling
            protocol. The authorization token will be used by a NE that receives the QoS signaling
            message to authorize the QoS request. Alternatively, the Diameter QoS application will
            be used to forward the authorization token to the user's home network. The authorization
            token allows that the authorization decision performed at the application layer can be
            associated with a corresponding QoS signaling 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 information pertaining to the authorized application
            session, but at minimum it should contain: <list style="symbols">
              <t>An identifier for the AE (for example, an AppS) that issued the authorization token</t>

              <t>An identifier referring to a specific application protocol session for which the
                token was issued and</t>

              <t>A keyed message digest or digital signature protecting the content of the
                authorization token</t>
            </list></t>

          <t>A possible structure for the authorization token and the policy element carrying it are
            proposed in context of RSVP <xref target="RFC3520"/>.</t>

          <t>In the scenario mentioned above, where the QoS resource requesting entity is involved
            in an application layer protocol interaction with the AE, it may be worthwhile to
            consider a token-less binding mechanism also. The application layer protocol interaction
            may have indicated the transport port numbers at the QoS RRE where it might receive
            media streams (for example in SIP/SDP <xref target="RFC4566"/> signalling, these port
            numbers are advertised). The QoS RRE may also use these port numbers in some IP filter
            indications to the NE performing QoS reservation so that it may properly tunnel the
            inbound packets. The NE performing QoS reservation will forward the QoS resource
            requesting entity's IP address and the IP filter indications to the AE in the QoS
            authorization request. The AE will use the QoS RRE's IP address and the port numbers in
            the IP filter indication, which will match the port numbers advertised in the earlier
            application layer protocol interaction, to identify the right piece of policy
            information to be sent to the NE performing the QoS reservation in the QoS
            Authorization. response.</t>
        </section>

        <section title="Push Mode Schemes">
          <t>The push mode can be further divided into two types: endpoint-initiated and
            network-initiated. In the former case, the authorization process is triggered by AppS in
            response to an explicit QoS request from an endpoint through application signaling,
            e.g., SIP; in the latter case, the authorization process is triggered by the AppS
            without an explicit QoS request from an endpoint.</t>

          <t>In the endpoint-initiated scheme, the QoS RRE (i.e., the AppE) determines the required
            application level QoS and sends a QoS request through an application signaling message.
            The AppS will extract application-level QoS information and trigger the authorization
            process to the AE. In the network-initiated scheme, the AE and/or AppS should derive and
            determine the QoS requirements according to application attribute, subscription and
            endpoint's capability when the endpoint does not explicitly indicate the QoS attributes.
            The AE makes an authorization decision based on application level QoS information,
            network policies, end-user subscription, network resource availability, etc., and
            installs the decision to NE directly.</t>

          <t>A Category 1 AppE requires network-initiated Push mode and a Category 2 AppE may use
            either type of Push Mode.</t>

          <t>
            <figure anchor="fig-three-party-push-approach" title="Scheme for Push Mode">
              <artwork><![CDATA[
                            financial settlement                          
                             ...........................+                 
   Application               V             -------      .                 
   signaling msg   +--------------+      / QoS AAA \    .                 
   +-------------->|              |     /  protocol \   .                 
   |               | Authorizing  +--------------+   \  .                 
   |               | Entity       |   |          |    | .                 
   |               +              |<--+----+     |    | .                 
   |               +--------------+  |QoS  |     |QoS  |.                 
   |                                install|     |install                 
   |                                 |rsp. |     |req. |.                 
   |                                 |     |     |     |.                 
   |                                  |    |     | .  | .                 
   |                                   \   |     | . /  .                 
   |                                     \ |     | /    .                 
   V                                       |-----V .    .                 
 +-------------+                  +--------+-----+      .                 
 |  Entity     |                  | NE           |      .                 
 |  requesting |                  | performing   |      .                 
 |  resource   |QoS rsrc granted  | QoS          | <....+                 
 |             |<-----------------| reservation  |                        
 +-------------+                  +--------------+
]]></artwork>
            </figure>
          </t>
        </section>
      </section>

      <!-- ====================================================================== -->

      <section title="QoS Application Requirements">
        <t>A QoS application must meet a number of requirements applicable to a diverse set of
          networking environments and services. It should be compatible with different deployment
          scenarios having specific QoS signaling models and security issues. Satisfying the
          requirements listed below while interworking with QoS signaling protocols, a Diameter QoS
          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 application is provided here:</t>

        <t>
          <list style="hanging">
            <t hangText="Identity-based Routing"><vspace blankLines="0"/> The Diameter QoS
              application MUST route AAA requests to the Authorizing Entity, based on the provided
              identity of the QoS requesting entity or the identity of the AE encoded in the
              provided authorization token.<vspace blankLines="1"/></t>

            <t hangText="Flexible Authentication Support"><vspace blankLines="0"/> The Diameter QoS
              application 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 indirectly by tying the signaling
              communication for QoS to a previous authentication protocol exchange (e.g., using
              network access authentication).<vspace blankLines="1"/></t>

            <t hangText="Making an Authorization Decision"><vspace blankLines="0"/> The Diameter QoS
              application MUST exchange sufficient information between the AE and the enforcing
              entity (and vice versa) to compute an authorization decision and to execute this
                decision.<vspace blankLines="1"/></t>

            <t hangText="Triggering an Authorization Process"><vspace blankLines="0"/> The Diameter
              QoS application MUST allow periodic and event triggered execution of the authorization
              process, originated at the enforcing entity or even at the AE.<vspace blankLines="1"/></t>

            <t hangText="Associating QoS Reservations and Application State"><vspace blankLines="0"
              /> The Diameter QoS application MUST carry information sufficient for an AppS to
              identify the appropriate application session and associate it with a particular QoS
                reservation.<vspace blankLines="1"/></t>

            <t hangText="Dynamic Authorization"><vspace blankLines="0"/> It MUST be possible for the
              Diameter QoS application to push updates towards the NE(s) from authorizing
                entities.<vspace blankLines="1"/></t>

            <t hangText="Bearer Gating"><vspace blankLines="0"/> The Diameter QoS application MUST
              allow the AE to gate (i.e., enable/disable) authorized application flows based on,
              e.g., application state transitions.<vspace blankLines="1"/></t>

            <t hangText="Accounting Records"><vspace blankLines="0"/> The Diameter QoS application
              MAY 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 the flow.<vspace blankLines="1"/></t>

            <t hangText="Sending Accounting Records"><vspace blankLines="0"/> The NE SHOULD be able
              to send accounting records for a particular QoS reservation state to an accounting
                entity.<vspace blankLines="1"/></t>

            <t hangText="Failure Notification"><vspace blankLines="0"/> The Diameter QoS application
              MUST allow the NE 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.<vspace
                blankLines="1"/></t>

            <t hangText="Accounting Correlation"><vspace blankLines="0"/> The Diameter QoS
              application MAY support the exchange of sufficient information to allow for
              correlation between accounting records generated by the NEs and accounting records
              generated by an AppS.<vspace blankLines="1"/></t>

            <t hangText="Interaction with other AAA Applications"><vspace blankLines="0"/>
              Interaction with other AAA applications, such as the Diameter Network Access (NASREQ)
              application <xref target="RFC4005"/>, may be required for exchange of authorization,
              authentication and accounting information.<vspace blankLines="1"/></t>
          </list>
        </t>

        <t>In deployment scenarios where authentication of the QoS reservation requesting entity
          (e.g., the user) is done by means outside the Diameter QoS application protocol
          interaction, the AE is contacted only with a request for QoS authorization. Authentication
          might have taken place already via the interaction with the Diameter NASREQ application or
          as part of the QoS signaling protocol (e.g., Transport Layer Security (TLS) <xref
            target="RFC5246"/> in the General Internet Signaling Transport (GIST) protocol <xref
            target="I-D.ietf-nsis-ntlp"/>).</t>

        <t>Authentication of the QoS reservation requesting entity to the AE is necessary if a
          particular Diameter QoS application protocol cannot be related (or if there is no
          intention to relate it) to a prior authentication. In this case the AE MUST authenticate
          the QoS reservation requesting entity in order to authorize the QoS request as part of the
          Diameter QoS protocol interaction.</t>

        <t>The document refers to three types of sessions that need to be properly correlated.</t>

        <t>
          <list style="hanging">
            <t hangText="QoS Signaling Session"><vspace blankLines="0"/> The time period during
              which a QoS signaling protocol establishes, maintains and deletes a QoS reservation
              state at the QoS network element is referred to as QoS signaling session. Different
              QoS signaling protocols use different ways to identify QoS signaling sessions. The
              same applies 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 (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 the flow's end points.<vspace blankLines="1"/></t>

            <t hangText="Diameter Authorization Session"><vspace blankLines="0"/> The time period,
              for which a 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 authorized
              service (initial authorization, re-authorization, termination), see <xref
                target="RFC3588"/>.<vspace blankLines="1"/></t>

            <t hangText="Application-layer Session"><vspace blankLines="0"/> 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 the
              authorization token. In general, the application session identifier is opaque to the
              QoS aware NEs. It is included in the authorization request message sent to the AE and
              helps it to correlate the QoS authorization request to the application session state
              information. <vspace blankLines="1"/></t>
          </list>
        </t>

        <t>Correlating these sessions is done at each of the three involved entities: The QoS
          requesting entity correlates the application with the QoS signaling sessions. The QoS NE
          correlates the QoS signaling session with the Diameter authorization sessions. The AE
          SHOULD bind the information about the three sessions together. Note that in certain
          scenarios not all of the sessions are present. For example, the application session might
          not be visible to QoS signaling protocol directly if there is no binding between the
          application session and the QoS requesting entity using the QoS signaling protocol.</t>
      </section>
    </section>

    <!-- ====================================================================== -->

    <section title="QoS Application Session Establishment and Management">
      <section title="Parties Involved">
        <t>Authorization models supported by this application include three parties: <list
            style="symbols">
            <t>Resource Requesting Entity</t>

            <t>Network Elements (Diameter QoS application (DQA) client)</t>

            <t>Authorizing Entity (Diameter QoS application (DQA) server)</t>
          </list></t>

        <t>Note that the QoS RRE is only indirectly involved in the message exchange. This entity
          provides the trigger to initiate the Diameter QoS protocol interaction by transmitting QoS
          signaling messages. The Diameter QoS application is only executed between the Network
          Element (i.e., DQA client) and the Authorizing Entity (i.e., DQA server).</t>

        <t>The QoS RRE may communicate with the AE 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 QoS
          resource requesting entity and the QoS NE 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.</t>
      </section>

      <section title="Session Establishment">
        <t>The Pull and Push modes use a different set of command codes for session establishment.
          For other operations, such as session modification and termination, they use the same set
          of command codes.</t>

        <t>The selection of Pull mode or Push mode operation is based on the trigger of the QoS
          Authorization session. When a QoS-Authorization-Request (QAR, see <xref target="QAR"/>)
          message with a new session ID is received, the AE operates in the Pull mode; when other
          triggers are received, the AE operates in the Push mode. Similarly, when a
          QoS-Install-Request (QIR, see <xref target="QIR"/>} with a new session ID is received, the
          NE operates in the Push mode; when other triggers are received, the NE operation in the
          Pull mode.</t>

        <t>The QoS authorization session is typically established per subscriber base (i.e., all
          requests with the same user ID), but it is also possible to be established on per node or
          per request base. The concurrent sessions between an NE and an AE are identified by
          different Session-ID.</t>

        <section title="Session Establishment for Pull Mode">
          <t>A request for a QoS reservation or local events received by a NE can trigger the
            initiation of a Diameter QoS authorization session. The NE converts the required objects
            from the QoS signaling message to Diameter AVPs and generates a QAR message.</t>

          <t><xref target="fig-initial-qos-request-pull"/> shows the protocol interaction between a
            Resource Requesting Entity, a Network Element and the Authorizing Entity.</t>

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

          <texttable anchor="pull_mapping" title="Mapping Input Data to QoS AVPs--Pull Mode">
            <ttcol align="left">QoS-specific Input Data</ttcol>

            <ttcol align="left">Diameter AVPs</ttcol>

            <c>Authorizing entity ID (e.g., Destination-Host taken from authorization token,
              Destination-Realm or derived from the NAI of the QoS requesting entity)</c>

            <c>Destination-Host Destination-Realm</c>

            <c>Authorization Token Credentials of the QoS requesting entity</c>

            <c>QoS-Authorization-Data User-Name</c>

            <c>QoS-Resources (including QoS parameters)</c>
          </texttable>

          <t/>

          <t>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 QoS-Resources AVP is defined in <xref
              target="I-D.ietf-dime-qos-attributes"/>. The authorization decision is then reflected
            in the response returned to the Diameter client with the QoS-Authorization-Answer
            message (QAA).</t>

          <t>
            <figure anchor="fig-initial-qos-request-pull"
              title="Initial QoS Request Authorization for Pull Mode">
              <artwork><![CDATA[
                                            Authorizing             
  End-Host         Network Element             Entity               
requesting QoS      ( Diameter              ( Diameter              
                     QoS Client)             QoS Server)            
    |                   |                         |                 
    +---QoS-Reserve---->|                         |                 
    |                   +- - - - - QAR - - - - - >|                 
    |                   |(QoS-Resources,          |                 
    |                   |   QoS-Auth-Data,User-ID)|                 
    |                   |                +--------+--------------+  
    |                   |                |  Authorize request    |  
    |                   |                |  Keep session data    |  
    |                   |                |/Authz-time,Session-Id/|  
    |                   |                +--------+--------------+  
    |                   |< - - - - QAA - - - - - -+                 
    |                   |(Result-Code,            |                 
    |                   |QoS-Resources,Authz-time)|                 
    |           +-------+---------+                                 
    |           |Install QoS state|                                 
    |           |       +         |                                 
    |           | Authz. session  |                                 
    |           | /Authz-time/    |                QoS Responder    
    |           |                 |                    Node         
    |           +-------+---------+                      |          
    |                   +----------QoS-Reserve---....--->|          
    |                   |                                |          
    |                   |<---------QoS-Response--....----|          
    |<--QoS-Response----+                                |          
    |                   |                                |          
    |=====================Data Flow==============....===>|
]]></artwork>
            </figure>
          </t>

          <t>The Authorizing Entity keeps authorization session state and SHOULD save additional
            information for management of the session (e.g., Signaling-Session-Id, authentication
            data) as part of the session state information.</t>

          <t>The final result of the authorization request is provided in the Result-Code AVP of the
            QAA message sent by the Authorizing Entity. In case of successful authorization (i.e.,
            Result-Code = DIAMETER_LIMITED_SUCCESS, (see <xref target="diameter-base-avps"/>)),
            information about the authorized QoS resources and the status of the authorized flow
            (enabled/disabled) is provided in the QoS-Resources AVP of the QAA message. The QoS
            information provided via the QAA is installed by the QoS Traffic Control function of the
            NE. The value DIAMETER_LIMITED_SUCCESS indicates that the AE expects confirmation via
            another QAR message for successful QoS resource reservation and for final reserved QoS
            resources (see below).</t>

          <t>One important piece of information returned from the Authorizing Entity is the
            authorization lifetime (carried inside the QAA). The authorization lifetime allows the
            NE to determine how long the authorization decision is valid for this particular QoS
            reservation. A number of factors may influence the authorized session duration, such as
            the user's subscription plan or currently available credits at the user's account (see
              <xref target="accounting"/>). The authorization duration is time-based, as specified
            in <xref target="RFC3588"/>. For an extension 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 <xref target="re-authz"/>,
              <xref target="session-termination"/> and <xref target="accounting"/>.</t>

          <t>The indication of a successful QoS reservation and activation of the data flow is
            provided by the transmission of a QAR message, which reports the parameters of the
            established QoS state: reserved resources, duration of the reservation, and
            identification of the QoS enabled flow/QoS signaling session. The Diameter QoS server
            acknowledges the reserved QoS resources with the QA Answer (QAA) message where the
            Result-Code is set to 'DIAMETER_SUCCESS'. Note that the reserved QoS resources reported
            in this QAR message MAY be different than those authorized with the initial QAA message,
            due to the QoS signaling specific behavior (e.g., receiver-initiated reservations with
            One-Path-With-Advertisements) or specific process of QoS negotiation along the data
            path.</t>
        </section>

        <section anchor="push_setup" title="Session Establishment for Push Mode">
          <t>The Diameter QoS server in the AE initiates a Diameter QoS authorization session upon
            the request for QoS reservation triggered by application layer signaling or by local
            events, and generates a QoS-Install-Request (QIR) message to Diameter QoS client in the
            NE in which it maps required objects to Diameter payload objects.</t>

          <t><xref target="fig-initial-qos-request-push"/> shows the protocol interaction between
            the AE, a Network Element and a RRE.</t>

          <t>The NE'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 from a Diameter QoS
            server in the Authorizing Entity to a Diameter QoS client in the NE. This requires that
            the AE has knowledge of specific information for allocating and identifying the NE that
            should be contacted and the data flow for which the QoS reservation should be
            established. This information can be statically configured or dynamically discovered,
            see <xref target="peer_discovery"/> for details.</t>

          <texttable anchor="push_mapping" title="Mapping Input Data to QoS AVPs--Push Mode">
            <ttcol align="left">QoS-specific Input Data</ttcol>

            <ttcol align="left">Diameter AVPs</ttcol>

            <c>Network Element ID</c>

            <c>Destination-Host Destination-Realm</c>

            <c>Authorization Token Credentials of the QoS requesting entity</c>

            <c>QoS-Authorization-Data User-Name</c>

            <c>QoS-Resources (including QoS parameters)</c>
          </texttable>

          <t/>

          <t>Authorization processing starts at the Diameter QoS server when it receives a request
            from a RRE through an AppS (e.g., SIP Invite) or is triggered by a local event (e.g.,
            pre-configured timer). Based on the received information 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 QoS-Install-Request message (QIR) to the
            Diameter QoS client.</t>

          <t>
            <figure anchor="fig-initial-qos-request-push"
              title="Initial QoS Request Authorization for Push Mode">
              <artwork><![CDATA[
                                            Authorizing             
  End-Host         Network Element             Entity               
requesting QoS      ( Diameter              ( Diameter              
                     QoS Client)             QoS Server)            
    |                   |                          |                 
    |                   |                          |<-- Trigger --                 
    |                   |                 +--------+--------------+  
    |                   |                 |  Authorize request    |  
    |                   |                 |  Keep session data    |  
    |                   |                 |/Authz-time,Session-Id/|  
    |                   |                 +--------+--------------+  
    |                   |                          |                 
    |                   |<-- - -- - QIR - - - - - -+                 
    |                   |(Initial Request,Decision |                 
    |                   |(QoS-Resources,Authz-time)|                 
    |           +-------+---------+                                 
    |           |Install QoS state|                                 
    |           |       +         |                                 
    |           | Authz. session  |                                 
    |           | /Authz-time/    |                 
    |           |                 |                            
    |           +-------+---------+                                
    |                   + - - - - QIA - - - - - ->|                 
    |                   |    (Result-Code,        |                 
    |                   |     QoS-Resources)      |                 
    |                   |                +--------+--------------+  
    |                   |                | Report for successful |  
    |                   |                |   QoS reservation     |  
    |                   |                |Update of reserved QoS |  
    |                   |                |      resources        |  
    |                   |                +--------+--------------+   
    |                   |                         QoS Responder    
    |                   |                               Node         
    |                   |                                |          
    |=====================Data Flow==============....===>| 
]]></artwork>
            </figure>
          </t>

          <t>The AE keeps authorization session state and SHOULD save additional information for
            management of the session (e.g., Signaling-Session-Id, authentication data) as part of
            the session state information.</t>

          <t>The final result of the authorization decision is provided in the QoS-Resources AVP of
            the QIR message sent by the AE. The QoS information provided via the QIR is installed by
            the QoS Traffic Control function of the NE.</t>

          <t>One important piece of information from the AE is the authorization lifetime (carried
            inside the QIR). The authorization lifetime allows the NE to determine how long the
            authorization decision is valid for this particular QoS reservation. A number of factors
            may influence the authorized session duration, such as the user's subscription plan or
            currently available credits at the user's account (see <xref target="accounting"/>). The
            authorization duration is time-based as specified in <xref target="RFC3588"/>. For an
            extension of the authorization period, a new QoS-Install-Request/Answer message or
            QoS-Authorization-Request/Answer message exchange SHOULD be initiated. Further aspects
            of QoS authorization session maintenance are discussed in <xref target="re-authz"/>,
              <xref target="session-termination"/> and <xref target="accounting"/>.</t>

          <t>The indication of QoS reservation and activation of the data flow can be provided by
            the QoS-Install-Answer message immediately. In the case of successful enforcement, the
            Result-Code (= DIAMETER_SUCCESS, (see <xref target="diameter-base-avps"/>)) information
            is provided in the QIA message. Note that the reserved QoS resources reported in the QIA
            message may be different than those initially authorized with the QIR message, due to
            the QoS signaling specific behavior (e.g., receiver-initiated reservations with
            One-Path-With-Advertisements) or specific process of QoS negotiation along the data
            path. In the case Multiple AEs control the same NE, the NE should make the selection on
            the authorization decision to be enforced based on the priority of the request.</t>
        </section>

        <section anchor="peer_discovery"
          title="Discovery and Selection of Peer Diameter QoS Application Node">

          <!-- <t>Discovery of Diameter QoS application nodes</t>
          -->

          <t>The Diameter QoS application node may obtain information of its peer nodes (e.g., FQDN,
            IP address) through static configuration or dynamic discovery as described in Section
            5.2 of <xref target="RFC3588"/>. In particular, the NE shall perform the relevant
            operation for Pull mode; the AE shall perform the relevant operations for Push mode.</t>

          <!-- 
          <t>Selection of peer Diameter QoS application node</t>
          -->

          <t>Upon receipt of a trigger to initiate a new Diameter QoS authorization session, the
            Diameter QoS application node selects and retrieves the location information of the peer
            node that is associated with the affected user based on some index information provided
            by the RRE. For instance, it can be the Authorization Entity's ID stored in the
            authorization token, the end-user's identity (e.g., NAI <xref target="RFC4282"/>) or a
            globally routable IP address.</t>
        </section>
      </section>

      <section anchor="re-authz" title="Session Re-authorization">
        <t>Client and server-side initiated re-authorizations are considered in the design of the
          Diameter QoS application. Whether the re-authorization events are transparent for the
          resource requesting entity or result in specific actions in the QoS signaling protocol is
          outside the scope of the Diameter QoS application. It is directly dependent on the
          capabilities of the QoS signaling protocol.</t>

        <t>There are a number of options for policy rules according to which the NE (AAA client)
          contacts the AE for re-authorization. These rules depend on the semantics and contents of
          the QAA message sent by the AE:</t>

        <t>
          <list style="letters">
            <t>The QAA message contains the authorized parameters of the flow and its QoS and sets
              their limits (presumably upper). With these parameters the AE specifies the services
              that the NE can provide and will be financially compensated for. Therefore, any change
              or request for change of the parameters of the flow and its QoS that do not conform to
              the authorized limits requires contacting the AE for authorization.</t>

            <t>The QAA message contains authorized parameters of the flow and its QoS. The rules
              that determine whether parameters’ changes require re-authorization are
              agreed out of band, based on a Service Level Agreement (SLA) between the domains of
              the NE and the AE.</t>

            <t>The QAA message contains the authorized parameters of the flow and its QoS. Any
              change or request for change of these parameters requires contacting the AE for
              re-authorization.</t>

            <t>In addition to the authorized parameters of the flow and its QoS, the QAA message
              contains policy rules that determine the NEs actions in case of change or request for
              change in authorized parameters.</t>
          </list>
        </t>

        <t>Provided options are not exhaustive. Elaborating on any of the listed approaches is
          deployment /solution specific and is not considered in the current document.</t>

        <t>In addition, the AE may use a RAR (Re-Authorization-Request) to perform re-authorization
          with the authorized parameters directly when the re-authorization is triggered by service
          request or local events/policy rules.</t>

        <section title="Client-Side Initiated Re-Authorization">
          <t>The AE 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 message (QAR) MAY be sent to the AE. The transmission of
            the QAR MAY be triggered when the NE receives a QoS signaling message that requires
            modification of the authorized parameters of an ongoing QoS session, or authorization
            lifetime expires.</t>

          <t>
            <figure anchor="fig-qos-request-re-authz"
              title="Client-side Initiated QoS Re-Authorization">
              <artwork><![CDATA[
                                            Authorizing             
  End-Host         Network Element             Entity               
requesting QoS      ( Diameter              ( Diameter              
                     QoS Client)             QoS Server)            
    |                   |                         |                 
    |=====================Data Flow==========================>      
    |                   |                         |                 
    |           +-------+----------+              |                 
    |           |Authz-time/CC-Time|              |                 
    |           |    expires       |              |                 
    |           +-------+----------+              |                 
    |                   +- - - - - QAR - - - - - >|                 
    |                   |(QoS-Resources,          |                 
    |                   | QoS-Authorization-Data,User-ID) |                 
                        |                +--------+--------------+  
 NOTE:                  |                |  Authorize request    |  
 Re-authorization       |                | Update session data   |  
 is transparent to      |                |/Authz-time,Session-Id/|  
 the End-Host           |                +--------+--------------+  
                        |< - - - - QAA - - - - - -+                 
    |                   |(Result-Code,            |                 
    |                   |QoS-Resources,Authz-time)|                 
    |           +-------+---------+               |                 
    |           |Update QoS state |               |                 
    |           |       +         |               |                 
    |           | Authz. session  |               |                 
    |           | /Authz-time/    |               |                 
    |           |                 |               |                 
    |           +-------+---------+               |                 
    |                   |                         |                 
    |=====================Data Flow==========================>      
    |                   |                                           
]]></artwork>
            </figure>
          </t>
        </section>

        <section title="Server-Side Initiated Re-Authorization">
          <t>The AE MAY initiate a QoS re-authorization by issuing a Re-Auth-Request message (RAR)
            as defined in the Diameter base protocol <xref target="RFC3588"/>, which may include the
            parameters of the re-authorized QoS state: reserved resources, duration of the
            reservation, identification of the QoS enabled flow/QoS signaling session for
            re-installation of the resource state by the QoS Traffic Control function of the NE.</t>

          <t>A NE 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 towards the
            AE.</t>

          <t>If RAR does not include any parameters of the re-authorized QoS state, the NE MUST
            initiate a QoS re-authorization by sending a QoS-Authorization-Request (QAR) message
            towards the AE.</t>

          <t>
            <figure anchor="fig-qos-re-auth-server-side"
              title="Server-side Initiated QoS Re-Authorization">
              <artwork><![CDATA[
                                            Authorizing             
  End-Host         Network Element             Entity               
requesting QoS      ( Diameter              ( Diameter              
                     QoS Client)             QoS Server)            
    |                   |                          |                 
    |                   |                          |<-- Trigger --                 
    |                   |                 +--------+--------------+  
    |                   |                 |  Authorize request    |  
    |                   |                 |  Keep session data    |  
    |                   |                 |/Authz-time,Session-Id/|  
    |                   |                 +--------+--------------+  
    |                   |                          |                 
    |                   |<-- - -- - RAR - - - - - -+                 
    |                   |(Request,Decision         |                 
    |                   |(QoS-Resources,Authz-time)|                 
    |           +-------+---------+                                 
    |           |Install QoS state|                                 
    |           |       +         |                                 
    |           | Authz. session  |                                 
    |           | /Authz-time/    |                 
    |           |                 |                            
    |           +-------+---------+                                
    |                   + - - - - RAA - - - - - ->|                 
    |                   |    (Result-Code,        |                 
    |                   |     QoS-Resources)      |                 
    |                   |                +--------+--------------+  
    |                   |                | Report for successful |  
    |                   |                |   QoS reservation     |  
    |                   |                |Update of reserved QoS |  
    |                   |                |      resources        |  
    |                   |                +--------+--------------+   
    |                   |                         |  
]]></artwork>
            </figure>
          </t>
        </section>
      </section>

      <section anchor="session-termination" title="Session Termination">
        <section title="Client-Side Initiated Session Termination">
          <t>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 with a response Session-Termination-Acknowledgement message (STA). This
            is a Diameter base protocol function and it is defined in <xref target="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.</t>

          <t>
            <figure anchor="fig-client-termination"
              title="Client-Side Initiated Session Termination">
              <artwork><![CDATA[
                                            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  |        
    |                   |                | session state         |        
    |                   |                +--------+--------------+        
    |                   |< - - - - STA - - - - - -+                       
    |           +-------+--------+                |                       
    |           |Delete QoS state|                                        
    |           +-------+--------+                   QoS Responder        
    |                   |                                Node             
    |                   +----------QoS-Reserve-----....--->|              
    |                   |         (Delete QoS              |              
    |                   |          reservation)            |               
    |                   |<---------QoS-Response----....----+              
    |<--QoS-Response----+                                  |                      
]]></artwork>
            </figure>
          </t>
        </section>

        <section title="Server-Side Initiated Session Termination">
          <t>At anytime during a session the AE MAY send an Abort-Session-Request message (ASR) to
            the NE. This is a Diameter base protocol function and it is defined in <xref
              target="RFC3588"/>. Possible reasons for initiating the ASR message to the NE 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 NE and transmission of an appropriate QoS signaling message indicating a
            notification to other Network Elements aware of the signaling session.</t>

          <t>
            <figure anchor="fig-server-termination"
              title="Server-Side Initiated Session Termination">
              <artwork><![CDATA[
                                            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|                |                       
                +-------+--------+                |                       
                        +- - - - - ASA - - - - - >|                       
                        |                +--------+--------------+        
                        |                | Remove authorization  |        
                        |                |     session state     |        
                        |                +--------+--------------+        
                        |                            QoS Responder        
                        |                                Node             
                        |<---------QoS-Response----....----+              
                        |                                  |              
]]></artwork>
            </figure>
          </t>
        </section>
      </section>
    </section>

    <!-- ====================================================================== -->

    <section anchor="qos_messages" title="QoS Application Messages">
      <t>The Diameter QoS application requires the definition of new mandatory AVPs and
        Command-codes (see Section 3 of <xref target="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.</t>

      <texttable anchor="qos_commands" title="Diameter QoS Commands">
        <ttcol align="left">Command Name</ttcol>

        <ttcol align="center">Abbrev.</ttcol>

        <ttcol align="center">Code</ttcol>

        <ttcol align="left">Reference</ttcol>

        <c>QoS-Authorization-Request</c>

        <c>QAR</c>

        <c>[TBD1]</c>

        <c>
          <xref target="QAR"/>
        </c>

        <c>QoS-Authorization-Answer</c>

        <c>QAA</c>

        <c>[TBD2]</c>

        <c>
          <xref target="QAA"/>
        </c>

        <c>QoS-Install-Request</c>

        <c>QIR</c>

        <c>[TBD3]</c>

        <c>
          <xref target="QIR"/>
        </c>

        <c>QoS-Install-Answer</c>

        <c>QIA</c>

        <c>[TBD4]</c>

        <c>
          <xref target="QIA"/>
        </c>
      </texttable>

      <!--
      <t><figure>
          <artwork><![CDATA[
Command-Name                  Abbrev.        Code      Reference
QoS-Authorization-Request              QAR           [TBD1]    Section 5.1
QoS-Authorization-Answer               QAA           [TBD2]    Section 5.2
QoS-Install-Request            QIR           [TBD3]    Section 5.3
QoS-Install-Answer             QIA           [TBD4]    Section 5.4
]]></artwork>
        </figure></t>
-->

      <t>In addition, the following Diameter Base protocol messages are used in the Diameter QoS
        application:</t>

      <!--
      <t><figure>
          <artwork><![CDATA[
Command-Name                  Abbrev.        Code      Reference
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
]]></artwork>
        </figure></t>
-->

      <texttable anchor="base_messages" title="Diameter Base Commands">
        <ttcol align="left">Command-Name</ttcol>

        <ttcol align="center">Abbrev.</ttcol>

        <ttcol align="center">Code</ttcol>

        <ttcol align="left">Reference</ttcol>

        <c>Re-Auth-Request</c>

        <c>RAR</c>

        <c>258</c>

        <c>
          <xref target="RFC3588"/>
        </c>

        <c>Re-Auth-Answer</c>

        <c>RAA</c>

        <c>258</c>

        <c>
          <xref target="RFC3588"/>
        </c>

        <c>Abort-Session-Request</c>

        <c>ASR</c>

        <c>274</c>

        <c>
          <xref target="RFC3588"/>
        </c>

        <c>Abort-Session-Answer</c>

        <c>ASA</c>

        <c>274</c>

        <c>
          <xref target="RFC3588"/>
        </c>

        <c>Session-Term-Request</c>

        <c>STR</c>

        <c>275</c>

        <c>
          <xref target="RFC3588"/>
        </c>

        <c>Session-Term-Answer</c>

        <c>STA</c>

        <c>275</c>

        <c>
          <xref target="RFC3588"/>
        </c>
      </texttable>

      <t>Diameter nodes conforming to this specification MAY advertise support for the Diameter QoS
        application by including the value of [TBD5] in the Auth-Application-Id or the
        Acct-Application-Id AVP of the Capabilities-Exchange-Request and
        Capabilities-Exchange-Answer commands, see <xref target="RFC3588"/>.</t>

      <t>The value of {TBD5] MUST be used as the Application-Id in all QAR/QAA and QIR/QIA commands.</t>

      <t>The value of zero (0) SHOULD be used as the Application-Id in all STR/STA, ASR/ASA, and
        RAR/RAA commands.</t>

      <section anchor="QAR" title="QoS-Authorization Request (QAR)">
        <t>The QoS-Authorization-Request message (QAR) indicated by the Command-Code field (see
          Section 3 of <xref target="RFC3588"/>) set to [TBD1] and 'R' bit set in the Command Flags
          field is used by NEs to request quality of service related resource authorization for a
          given flow.</t>

        <t>The QAR message MUST carry information for signaling session identification, AE
          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.</t>

        <t>The message format is defined as follows:</t>

        <t>
          <figure>
            <artwork><![CDATA[
 <QoS-Request> ::= < Diameter Header: [TBD1], REQ, PXY >               
                      < Session-Id >                                
                      { Auth-Application-Id }                       
                      { Origin-Host }                               
                      { Origin-Realm }                              
                      { Destination-Realm }                         
                      { Auth-Request-Type }                         
                      [ Destination-Host ]                          
                      [ User-Name ]                                 
                   *  [ QoS-Resources ]      
                      [ QoS-Authorization-Data ]                   
                      [ Bound-Auth-Session-Id ]                     
                   *  [ AVP ]                                       
]]></artwork>
          </figure>
        </t>
      </section>

      <section anchor="QAA" title="QoS-Authorization Answer (QAA)">
        <t>The QoS-Authorization-Answer message (QAA), indicated by the Command- Code field set to
          [TBD2] 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
          and transport plane gating information.</t>

        <t>The message format is defined as follows:</t>

        <t>
          <figure>
            <artwork><![CDATA[
 <QoS-Answer> ::= < Diameter Header: [TBD2], PXY >                     
                  < Session-Id >                                    
                  { Auth-Application-Id }                           
                  { Auth-Request-Type }                             
                  { Result-Code }                                   
                  { Origin-Host }                                   
                  { Origin-Realm }                                  
               *  [ QoS-Resources ]                   
                  [ Acct-Multisession-Id ]                           
                  [ Session-Timeout ]                               
                  [ Authorization-Session-Lifetime ]                        
                  [ Authorization-Grace-Period ]                            
               *  [ AVP ]                                           
]]></artwork>
          </figure>
        </t>
      </section>

      <section anchor="QIR" title="QoS-Install Request (QIR)">
        <t>The QoS-Install Request message (QIR), indicated by the Command-Code field set to [TBD3]
          and 'R' bit set in the Command Flags field is used by AE to install or update the QoS
          parameters and the flow state of an authorized flow at the transport plane element.</t>

        <t>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.</t>

        <t>The message format is defined as follows:</t>

        <t>
          <figure>
            <artwork><![CDATA[
 <QoS-Install-Request> ::= < Diameter Header: [TBD3], REQ, PXY >       
                           < Session-Id >                           
                           { Auth-Application-Id }                  
                           { Origin-Host }                          
                           { Origin-Realm }                         
                           { Destination-Realm }                    
                           { Auth-Request-Type }                    
                           [ Destination-Host ]                     
                        *  [ QoS-Resources ] 
                           [ Session-Timeout ]                      
                           [ Authorization-Session-Lifetime ]               
                           [ Authorization-Grace-Period ]                   
                           [ Authorization-Session-Volume ]                 
                        *  [ AVP ]                                  
]]></artwork>
          </figure>
        </t>
      </section>

      <section anchor="QIA" title="QoS-Install Answer (QIA)">
        <t>The QoS-Install Answer message (QIA), indicated by the Command-Code field set to [TBD4]
          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.</t>

        <t>The message format is defined as follows:</t>

        <t>
          <figure>
            <artwork><![CDATA[
  <QoS-Install-Answer> ::= < Diameter Header: [TBD4], PXY >            
                           < Session-Id >                           
                           { Auth-Application-Id }                  
                           { Origin-Host }                          
                           { Origin-Realm }                         
                           { Result-Code }                          
                        *  [ QoS-Resources ]          
                        *  [ AVP ]                                  
]]></artwork>
          </figure>
        </t>
      </section>

      <section anchor="RAR" title="Re-Auth-Request (RAR)">
        <t>The Re-Auth-Request message (RAR), indicated by the Command-Code field set to 258 and the
          'R' bit set in the Command Flags field, is sent by the AE to the NE in order to initiate
          the QoS re-authorization from DQA server side.</t>

        <t>If the RAR command is received by the NE without any parameters of the re-authorized QoS
          state, the NE MUST initiate a QoS re-authorization by sending a QoS-Authorization-Request
          (QAR) message towards the AE.</t>

        <t>The message format is defined as follows:</t>

        <t>
          <figure>
            <artwork><![CDATA[
      <RAR>  ::= < Diameter Header: 258, REQ, PXY >
                 < Session-Id >
                 { Origin-Host }
                 { Origin-Realm }
                 { Destination-Realm }
                 { Destination-Host }
                 { Auth-Application-Id }
                 { Re-Auth-Request-Type }
                 [ User-Name ]
                 [ Origin-State-Id ]
               * [ Proxy-Info ]
               * [ Route-Record ]
               * [ QoS-Resources ]   
                 [ Session-Timeout ]                      
                 [ Authorization-Session-Lifetime ]               
                 [ Authorization-Grace-Period ]                   
                 [ Authorization-Session-Volume ]                 
               * [ AVP ]
]]></artwork>
          </figure>
        </t>
      </section>

      <section anchor="RAA" title="Re-Auth-Answer (RAA)">
        <t>The Re-Auth-Answer message (RAA), indicated by the Command-Code field set to 258 and the
          'R' bit cleared in the Command Flags field, is sent by the NE to the AE in response to the
          RAR command.</t>

        <t>The message format is defined as follows:</t>

        <t>
          <figure>
            <artwork><![CDATA[
      <RAA>  ::= < Diameter Header: 258, PXY >
                 < Session-Id >
                 { Result-Code }
                 { Origin-Host }
                 { Origin-Realm }
                 [ User-Name ]
                 [ Origin-State-Id ]
                 [ Error-Message ]
                 [ Error-Reporting-Host ]
               * [ Failed-AVP ]
               * [ Redirect-Host ]
                 [ Redirect-Host-Usage ]
                 [ Redirect-Host-Cache-Time ]
               * [ Proxy-Info ]
               * [ QoS-Resources ]          
               * [ AVP ]
]]></artwork>
          </figure>
        </t>
      </section>
    </section>

    <!-- ====================================================================== -->

    <section anchor="QoS_state_machine" title="QoS Application State Machine">
      <t>The QoS application defines its own state machine that is based on the authorization state
        machine defined in Section 8.1 of the Base Protocol (<xref target="RFC3588"/>). The Qos
        state machine uses own messages as defined in <xref target="qos_messages"/> and QoS AVPs as
        defined in <xref target="avps"/>.</t>

      <section anchor="state_supplement" title="Supplemented States for Push Mode">
        <t>Using the Base Protocol state machine as a basis, the following states are supplemented
          to first 2 state machines in which the session state is maintained on the Server. These
          MUST be supported in any QoS application implementations in support of server initiated
          push mode (<xref target="push_setup">see</xref>).</t>

        <t>The following states are supplemented to the state machine on the Server when state is
          maintained on the client as defined in Section 8.1 of the Base Protocol <xref
            target="RFC3588"/>:</t>

        <t>
          <figure align="left">
            <artwork><![CDATA[                              SERVER, STATEFUL
      State     Event                          Action     New State
      -------------------------------------------------------------
      Idle      An application or local        Send       Pending
                event triggers an initial      QIR initial
                QoS request to the server      request

      Pending   Received QIA with a failed     Cleanup    Idle
                Result-Code

      Pending   Received QIA with Result-Code  Update     Open
                = SUCCESS                      session 
      Pending   Error in processing received   Send      Discon
                QIA with Result-Code = SUCCESS ASR

]]></artwork>
          </figure>
        </t>

        <t>The following states are supplemented to the state machine on the client when state is
          maintained on the server as defined in Section 8.1 of the Base Protocol <xref
            target="RFC3588"/>:</t>

        <t>
          <figure align="left">
            <artwork><![CDATA[                              CLIENT, STATEFUL
      State     Event                          Action     New State
      -------------------------------------------------------------
      Idle      QIR initial request            Send       Open
                received and successfully      QIA initial
                processed                      answer,
                                               reserve resources

      Idle      QIR initial request            Send       Idle
                received but not               QIA initial
                successfully processed         answer with
                                               Result-Code
                                               != SUCCESS                                       
]]></artwork>
          </figure>
        </t>
      </section>
    </section>

    <!-- ====================================================================== -->

    <section anchor="avps" title="QoS Application AVPs">
      <t>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.</t>

      <section anchor="diameter-base-avps" title="Reused Base Protocol AVPs">
        <t>The QoS application uses a number of session management AVPs, defined in the Base
          Protocol (<xref target="RFC3588"/>).</t>

        <t>
          <figure>
            <artwork><![CDATA[
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
Authorization-Lifetime        291          Section 8.9
Authorization-Grace-Period    276          Section 8.10
Session-Timeout                27          Section 8.13
User-Name                       1          Section 8.14
]]></artwork>
          </figure>
        </t>

        <t>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.</t>
      </section>

      <section anchor="qos-new-avps" title="QoS Application Defined AVPs">
        <t/>

        <t>This document reuses the AVPs defined in Section 4 of <xref
            target="I-D.ietf-dime-qos-attributes"/>.</t>

        <t>This section lists the AVPs that are introduced specifically for the QoS application. The
          following new AVPs are defined: Bound-Auth-Session-Id and the QoS-Authorization-Data AVP.</t>

        <t>The following table describes the Diameter AVPs newly defined in this document for usage
          with the QoS Application, their AVP code values, types, possible flag values, and whether
          the AVP may be encrypted.</t>

        <t>
          <figure>
            <artwork><![CDATA[
                                               +-------------------+
                                               |    AVP Flag rules |
+----------------------------------------------|----+--------+-----+
|                       AVP  Section           |    |    SHLD| MUST|
| Attribute Name        Code Defined Data Type |MUST|     NOT|  NOT|
+----------------------------------------------+----+--------+-----+
|QoS-Authorization-Data TBD    7.2  OctetString| M  |        |  V  |
|Bound-Auth-Session-Id  TBD    7.2  UTF8String | M  |        |  V  |
+----------------------------------------------+----+--------+-----+
|M - Mandatory bit. An 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.              |
|V - Vendor specific bit that indicates whether the AVP belongs to |
|    a address space.                                              |
+------------------------------------------------------------------+
]]></artwork>
          </figure>
        </t>

        <t/>

        <t>
          <list style="hanging">
            <t hangText="QoS-Authorization-Data"><vspace blankLines="0"/> The QoS-Authorization-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 AE as input to the
              computation of the authorization decision. <vspace blankLines="1"/></t>

            <t hangText="Bound-Authentication-Session-Id"><vspace blankLines="0"/> 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. <vspace
                blankLines="1"/></t>
          </list>
        </t>
      </section>
    </section>

    <!-- ====================================================================== -->

    <section anchor="accounting" title="Accounting">
      <t>A NE MAY start an accounting session by sending an Accounting-Request message (ACR) after
        successful QoS reservation and activation of the data flow (see <xref
          target="fig-initial-qos-request-pull"/> and <xref target="fig-initial-qos-request-push"
        />). After every successful re-authorization procedure (see <xref
          target="fig-qos-request-re-authz"/> and <xref target="fig-qos-re-auth-server-side"/>), the
        NE MAY initiate an interim accounting message exchange. After successful session termination
        (see <xref target="fig-client-termination"/> and <xref target="fig-server-termination"/>),
        the NE may 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.
        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.</t>

      <t>The detailed QoS accounting procedures are out of scope in this document.</t>
    </section>

    <!-- ====================================================================== -->

    <section anchor="examples" title="Examples">
      <section anchor="example_pull" title="Example Call Flow for Pull Mode (Success Case)">
        <t>This section presents an example of the interaction between the end host and Diameter QoS
          application entities using Pull mode. 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).<figure anchor="fig-example-pull" title="QoS Authorization Example - Pull Mode">
            <artwork><![CDATA[
  End-Host                                 SIP Proxy  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-Authorization-Data++------------+ |   
      |      >===========>QoS-Resources)        |Authorize    | |   
      |                  |                      |QoS resources| |   
      |                  |                      ++------------+ |   
      |                  | QAA                   |              |   
      |                  <- - - - -<<AAA>>- - - -+              |   
      |                  |(Result-Code,          |              |   
      |                  |QoS-Resources,         |              |   
      |                  |Authorization-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    
]]></artwork>
          </figure></t>

        <t>The communication starts with SIP signaling between the two end points and the SIP proxy
          for negotiation and authorization of the requested service and its parameters (see <xref
            target="fig-example-pull"/>). As a part of the process, the SIP proxy 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.</t>

        <t>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 AE (e.g., the SIP proxy)
          and an identifier of the application service session for which QoS resources are
          requested.</t>

        <t>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 AE (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-Authorization-Data AVP and the
          description of the QoS resources is included into QoS-Resources AVP. These AVPs are
          included into a QoS Authorization Request message, which is sent to the AE.</t>

        <t>A QAR message will be routed through the AAA network to the AE. The AE 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).</t>

        <t>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. Moreover,
          the NE may serve as a signaling proxy and process the QoS signaling (e.g., initiation or
          termination of QoS signaling) based on the QoS decision received from the authorizing
          entity.</t>
      </section>

      <section anchor="example_pull2" title="Example Call Flow for Pull Mode (Failure Case)">
        <t>This section illustrates the example shown <xref target="example_pull2"/> that fails due
          to an authorization failure. Failures can occur in various steps throughout the protocol
          execution and in this example we assume that the Diameter QAR request processed by the
          Diameter server leads to an unsuccessful result. The QAA message reponds, in this example,
          with a permanent error "DIAMETER_AUTHORIZATION_REJECTED" (5003)set in the Result-Code AVP.
          When the NE receives this response it discontinues the QoS reservation signaling
          downstream and provides an error message back to the end host that initiated the QoS
          signaling request. The QoS NSLP RESPONSE signaling message would in this case carry a
          INFO_SPEC object indicating the permanent failure as "Authorization failure" (0x02). </t>
        <t>
          <figure anchor="fig-example-pull2"
            title="QoS Authorization Example - Pull Mode (Failure Case)">
            <artwork><![CDATA[
  End-Host                                 SIP Proxy  Correspondent
requesting QoS                            (DQA Server)        Node  
                                                                    
      |                                          |              |   
    ..|...................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-Authorization-Data++------------+ |   
      |      >===========>QoS-Resources)        |Authorize    | |   
      |                  |                      |QoS resources| |   
      |                  |                      ++------------+ |   
      |                  | QAA                   |              |   
      |                  <- - - - -<<AAA>>- - - -+              |   
      |                  |(Result-Code = 5003)   |              |   
      |                  |                       |              |   
      |QoS NSLP Response |                       |              |  
      |(with error 0x02) |                       |              |   
      <------------------+                       |              |   
      |                  |                       |              |   
      |                  |                       |              |   
                                                                    
                                                                    
      .-.-.-.-.  SIP signaling                                      
      ---------  QoS NSLP signaling                                 
      - - - - -  Diameter QoS Application messages                  
      =========  Mapping of objects between QoS and AAA protocol    
]]></artwork>
          </figure>
        </t>

      </section>



      <section anchor="example_push" title="Example Call Flow for Push Mode">
        <t>This section presents an example of the interaction between the end host and Diameter QoS
          application entities using Push mode. 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).<figure anchor="fig-example-push" title="QoS Authorization Example - Push Mode">
            <artwork><![CDATA[
  End-Host              NE                  SIP Proxy  Correspondent
requesting QoS      (DQA Client)           (DQA Server)        Node  
                                                                  
      |                  |                          |              |   
    ..|..................|...SIP Signaling..........|..............|.. 
    . | Invite(SDP Offer)|                          |              | . 
    . +.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.+-.-.-.-.-.-.->| . 
    . |                  |                          |   180        | . 
    . |<-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.+-.-.-.-.-.-.-.| . 
    ..|.............................................|..............|.. 
      |                  |                +---------+-------------+|  
      |                  |                |  Authorize Request    ||  
      |                  |                |  Keep Session Data    ||  
      |                  |                |/Authz-time,Session-Id/||  
      |                  |                +---------+-------------+|  
      |                  |                          |              |   
      |                  |<-- - -- - QIR - -- - -- -+              |   
      |                  |(Initial Request,Decision |              |   
      |                  |(QoS-Resources,Authz-time)|              |   
      |          +-------+---------+                |              |   
      |          |Install QoS State|                |              |   
      |          |       +         |                |              |   
      |          | Authz. Session  |                |              |   
      |          | /Authz-time/    |                |              |
      |          +-------+---------+                |              |  
      |                  + - - -- - QIA - - - - - ->|              |    
      |                  |     (Result-Code,        |              |   
      |                  |      QoS-Resources)      |              |   
      |                  |               +----------+------------+ | 
      |                  |               |     Successful        | | 
      |                  |               |     QoS Reservation   | | 
      |                  |               +----------+------------+ |
    ..|.............................................|..............|.. 
    . |                  |                          |              | . 
    . |                  |                          |  200 OK (SDP)| . 
    . |                  |                          <-.-.-.....-.-.+ . 
    . |                  |                 +--------+-----------+  | .
    . |                  |                 |   Activate Session |  | .
    . |                  |                 |   Parameters       |  | .
    . |                  |                 +--------+-----------+  | .              
    . | 200 (SDP)        |                          |              | . 
    . <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.+              | . 
    ..|.............................................|..............|.. 
      |                  <- - - - - - RAR - - - - - +              |   
      |        +---------+--------+                 |              |   
      |        |Activate QoS State|                 |              |   
      |        +---------+--------+                 |              |   
      |                  +- - - - - - RAA - - - - - >              |   
      |                  |                                         |   
      /------------------+-----Data Flow---------------------------\   
      \------------------+-----------------------------------------/   
      |                  |                                         |   
                                                                                                     
      .-.-.-.-.  SIP signaling                
      - - - - -  Diameter QoS Application messages                  
]]></artwork>
          </figure></t>

        <t>The communication starts with SIP signaling between the two end points and the SIP proxy
          for negotiation and authorization of the requested service and its parameters (see <xref
            target="fig-example-push"/>). As a part of the process, the SIP proxy 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).</t>

        <t>A few implementation choices exist regarding the decision about when to initiate the QoS
          reservation. <xref target="I-D.ietf-mmusic-media-path-middleboxes"/> discusses this aspect
          with a focus on firewalling. In the example above the DQA server is triggered to authorize
          the QoS request based on session parameters from the SDP payload. It will use a QIR
          message to do so. For this example message flow we assume a two-stage commit, i.e. the SIP
          proxy interacts with the NE twice. First, it only prepares the QoS reservation and then
          with the arrival of the 200 OK the QoS reservation is activated. </t>

        <t>This example does not describe how the DQA server learns which DQA client to contact. We
          assume pre-configuration in this example. In any case, the address of DQA client is put
          into the Destination-Host AVP, the description of the QoS resources is included into
          QoS-Resources AVP, and the duration of the authorization session is carried in the
          Authorization-Lifetime AVP. </t>

        <t>When the DQA client receives the QIR it interacts with the traffic control function and
          reserves the authorized QoS resources accordingly. At this point in time the QoS
          reservation is not yet activated. </t>

        <t>When a 200 OK is returned the DQA server may verify the accepted QoS against the
          pre-authorized QoS resources, and sends a Diameter RAR message to the DQA client in the NE
          for activating the installed policies and commit the resource allocation.</t>

      </section>
    </section>

    <!-- ====================================================================== -->

    <section anchor="iana" title="IANA Considerations">
      <t>This section contains the namespaces that have either been created in this specification or
        had their values assigned to existing namespaces managed by IANA.</t>

      <section title="AVP Codes">
        <t>IANA is requested to allocate two AVP codes to the registry defined in <xref
            target="RFC3588"/>:</t>

        <t>
          <figure>
            <artwork><![CDATA[       
Registry:
AVP Code         AVP Name                      Reference
-----------------------------------------------------------
to be assigned   QoS-Authorization-Data        Section 7.2
to be assigned   Bound-Auth-Session-Id         Section 7.2  
]]></artwork>
          </figure>
        </t>
      </section>

      <section title="Application IDs">
        <t>IANA is requested to allocate the following application ID from the registry defined in
            <xref target="RFC3588"/> (using the next available value from the 7-16777215 range). <figure>
            <artwork><![CDATA[     
Registry:
ID values           Name                         Reference
-----------------------------------------------------------
to be assigned      Diameter QoS application     Section 5
]]></artwork>
          </figure></t>
      </section>

      <section title="Command Codes">
        <t>IANA is requested to allocate command code values from the registry defined in <xref
            target="RFC3588"/>.</t>

        <t>
          <figure>
            <artwork><![CDATA[
Registry:
Code Value  Name                                Reference
-----------------------------------------------------------
TBD         QoS-Authorization-Request (QAR)     Section 5.1
TBD         QoS-Authorization-Answer  (QAA)     Section 5.2
TBD         QoS-Install-Request (QIR)           Section 5.3
TBD         QoS-Install-Answer (QIA)            Section 5.4
]]></artwork>
          </figure>
        </t>
      </section>
    </section>

    <!-- ====================================================================== -->

    <section anchor="security" title="Security Considerations">
      <t>This document describes a mechanism for performing authorization of a QoS reservation at a
        third party entity. The Authorizing Entity needs sufficient information to make such an
        authorization decision and this information may come from various sources, including the
        application layer signaling, the Diameter protocol (with its security mechanisms), from
        policy information stored available with a AAA server and from a QoS signaling protocol.</t>

      <t>Below there is a discussion about considerations for the Diameter QoS interaction between
        an Authorizing Entity and a Network Element. Security between the Authorizing Entity and the
        Network Element has a number of components: authentication, authorization, integrity and
        confidentiality.</t>

      <t>Authentication refers to confirming the identity of an originator for all datagrams
        received from the originator. Lack of authentication of Diameter messages between the
        Authorizing Entity and the Network Element can seriously jeopardize the fundamental service
        rendered by the Network Element. A consequence of not authenticating the message sender by
        the Network Element would be that an attacker could spoof the identity of a "legitimate"
        Authorizing Entity in order to allocate resources, change resource assignments or free
        resources. The adversary can also manipulate the state at the Network Element in such a way
        that it leads to a denial of service attack by, for example, setting the allowed bandwidth
        to zero or allocating the entire bandwidth available to a single flow.</t>

      <t>A consequence of not authenticating the Network Element to an Authorizing Entity is that an
        attacker could impact the policy based admission control procedure operated by the
        Authorizing Entity that provides a wrong view of the resources used in the network. Failing
        to provide the required credentials should be subject to logging.</t>

      <t>Authorization refers to whether a particular Authorizing Entity is authorized to signal a
        Network Element with requests for one or more applications, adhering to a certain policy
        profile. Failing the authorization process might indicate a resource theft attempt or
        failure due to administrative and/or credential deficiencies. In either case, the Network
        Element should take the proper measures to log such attempts.</t>

      <t>Integrity is required to ensure that a Diameter message has not been maliciously altered.
        The result of a lack of data integrity enforcement in an untrusted environment could be that
        an imposter will alter the messages exchanged between a Network Entity and an Authorizing
        Entity potentially causing a denial of service.</t>

      <t>Confidentiality protection of Diameter messages ensures that the signaling data is
        accessible only to the authorized entities. When signaling messages from the Application
        Server, via the Authorizing Entity towards the Network Element traverse untrusted networks,
        lack of confidentiality will allow eavesdropping and traffic analysis. Additionally,
        Diamater QoS messages may carry authorization tokens that require confidentiality
        protection.</t>

      <t>Diameter offers security mechanisms to deal with the functionality demanded in the
        paragraphs above. In particular, Diameter offers communication security between neighboring
        Diameter peers using Transport Layer Security (TLS) or IPsec. Authorization capabilities are
        application specific and part of the overal implementation.</t>
    </section>

    <!-- ====================================================================== -->

    <section title="Acknowledgements">
      <t>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.</t>
      <t>We would also like to thanks Alexey Melnikov, Adrian Farrel, and Robert Sparks for their
        IESG reviews.</t>
    </section>

    <!-- ====================================================================== -->

    <section anchor="contributors" title="Contributors">
      <t>The authors would like to thank Tseno Tsenov and Frank Alfano 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.</t>
    </section>
  </middle>

  <!-- ====================================================================== -->

  <back>
    <references title="Normative References"> &RFC2119; &RFC3588; &RFC4005;
      &I-D.ietf-dime-qos-attributes; &RFC5624; </references>

    <references title="Informative References"> &I-D.ietf-nsis-qos-nslp; &RFC4566;
      &RFC2211; &RFC2212; &RFC2205; &RFC2753; &RFC2865; &RFC3521;
      &RFC3313; &I-D.ietf-nsis-ntlp; &RFC3520; &RFC2474; &RFC5246; &RFC4282;
      &RFC3261; &I-D.ietf-mmusic-media-path-middleboxes; </references>

    <!-- ====================================================================== -->
  </back>
</rfc>

PAFTECH AB 2003-20262026-04-23 05:02:04