Network Working Group G. Zorn, Ed.
Internet-Draft
Intended status: Standards Track P. McCann
Expires: May 22, 2008 Motorola Labs
H. Tschofenig
Nokia Siemens Networks
T. Tsou
Huawei
A. Doria
Lulea University of Technology
D. Sun
Bell Labs/Alcatel-Lucent
November 19, 2007
Protocol for Diameter Quality of Service Application
draft-ietf-dime-diameter-qos-02.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on May 22, 2008.
Copyright Notice
Copyright (C) The IETF Trust (2007).
Zorn, et al. Expires May 22, 2008 [Page 1]
Internet-Draft Protocol for Diameter QoS Application November 2007
Abstract
This document describes the messages and procedures for the Diameter
QoS application. The QoS application allows network elements to
interact with Diameter servers when allocating QoS resources in the
network. In particular, two modes of operation - Pull and Push are
defined.
Zorn, et al. Expires May 22, 2008 [Page 2]
Internet-Draft Protocol for Diameter QoS Application November 2007
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Diameter QoS Authorization Session Establishment and
Management . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1. Parties involved . . . . . . . . . . . . . . . . . . . . . 6
3.2. Diameter QoS Authorization Session Establishment . . . . . 6
3.2.1. QoS authorization session establishment for pull
mode . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.2. QoS authorization session establishment for push
mode . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2.3. Discovery and selection of peer Diameter QoS
application node . . . . . . . . . . . . . . . . . . . 13
3.3. QoS authorization session re-authorization . . . . . . . . 13
3.3.1. Client-Side Initiated Re-Authorization . . . . . . . . 14
3.3.2. Server-Side Initiated Re-Authorization . . . . . . . . 16
3.4. Session Termination . . . . . . . . . . . . . . . . . . . 18
3.4.1. Client-Side Initiated Session Termination . . . . . . 18
3.4.2. Server-Side Initiated Session Termination . . . . . . 19
4. Accounting . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5. Diameter QoS Authorization Application Messages . . . . . . . 22
5.1. QoS-Authorization Request (QAR) . . . . . . . . . . . . . 23
5.2. QoS-Authorization Answer (QAA) . . . . . . . . . . . . . . 23
5.3. QoS-Install Request (QIR) . . . . . . . . . . . . . . . . 24
5.4. QoS-Install Answer (QIA) . . . . . . . . . . . . . . . . . 25
5.5. Re-Auth-Request (RAR) . . . . . . . . . . . . . . . . . . 25
5.6. Re-Auth-Answer (RAA) . . . . . . . . . . . . . . . . . . . 26
5.7. Accounting Request (ACR) . . . . . . . . . . . . . . . . . 26
5.8. Accounting Answer (ACA) . . . . . . . . . . . . . . . . . 27
6. Diameter QoS Authorization Application AVPs . . . . . . . . . 28
6.1. Diameter Base Protocol AVPs . . . . . . . . . . . . . . . 28
6.2. Credit Control Application AVPs . . . . . . . . . . . . . 28
6.3. Accounting AVPs . . . . . . . . . . . . . . . . . . . . . 29
6.4. Diameter QoS Application Defined AVPs . . . . . . . . . . 29
7. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
7.1. Example call flow for pull mode . . . . . . . . . . . . . 31
7.2. Example call flow for push mode . . . . . . . . . . . . . 33
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37
9. Security Considerations . . . . . . . . . . . . . . . . . . . 38
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 39
11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 40
12. Open Issues . . . . . . . . . . . . . . . . . . . . . . . . . 41
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 42
13.1. Normative References . . . . . . . . . . . . . . . . . . . 42
13.2. Informative References . . . . . . . . . . . . . . . . . . 42
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 44
Intellectual Property and Copyright Statements . . . . . . . . . . 46
Zorn, et al. Expires May 22, 2008 [Page 3]
Internet-Draft Protocol for Diameter QoS Application November 2007
1. Introduction
This document describes the messages and procedures for the Diameter
QoS Application. The QoS Application allows network elements to
interact with Diameter servers when allocating QoS resources in the
network.
In particular, two modes of operation are defined. In the first,
called "Pull Mode", the network element queries the Diameter
infrastructure for authorization based on some trigger (such as a QoS
signaling protocol) that arrives along the data path to be used for
the session. In the second, called "Push Mode", a 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 SIP-based call control.
A set of command codes pertinent to this QoS application are
specified that allows a single Diameter application to support both
Pull and Push modes based on the requirements of network
technologies, deployment scenarios and end-host's capabilities. In
conjunction with parameters defined in other Diameter QoS documents,
this document depicts basic call flow procedures to establish, modify
and terminate a Diameter QoS application session.
Zorn, et al. Expires May 22, 2008 [Page 4]
Internet-Draft Protocol for Diameter QoS Application November 2007
2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
In addition to the terms defined in other relevant Diameter QoS
documents (e.g., diameter-qos-framework), the following terms are
used in this document:
Diameter QoS Application Server
A Diameter QoS application server is a logical Diameter node that
supports the protocol interaction for QoS authorization. The
Diameter QoS server resides in the authorizing entity and is able
to respond to a Diameter session received from a Diameter QoS
client, or initiate a Diameter session to a Diameter QoS client
triggered by application signaling or local events.
Diameter QoS Application Client
A Diameter QoS application client is a logical Diameter node that
supports the protocol interaction for QoS enforcement. The
Diameter QoS client resides in the network element and is able to
initiate a Diameter session triggered by a QoS signaling or other
events, or respond to a Diameter session initiated by a Diameter
QoS server.
Resource Requesting Entity
A resource requesting entity is a logical entity that supports the
protocol interaction for QoS resources. The resource requesting
entity resides in the end-host and is able to communicate with
peer logicial entities in Authorizing Entity or Network element to
trigger the QoS authorization process.
Zorn, et al. Expires May 22, 2008 [Page 5]
Internet-Draft Protocol for Diameter QoS Application November 2007
3. Diameter QoS Authorization Session Establishment and Management
3.1. Parties involved
Authorization models supported by this application include three
parties:
o Resource requesting entity
o Network Elements (Diameter QoS application (DQA) client)
o Authorizing Entity (Diameter QoS application (DQA) server)
Note that the QoS resource requesting entity 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).
The QoS resource requesting entity may communicate with the
Authorizing Entity using application layer signaling for negotiation
of service parameters. As part of this application layer protocol
interaction, for example using SIP, authentication and authorization
might take place. This message exchange is, however, outside the
scope of this document. The protocol communication between the QoS
resource requesting entity and the QoS Network Element might be
accomplished using the NSIS protocol suite, RSVP or a link layer
signaling protocol. A description of these protocols is also outside
the scope of this document and a tight coupling with these protocols
is not desirable since this applications aims to be generic.
3.2. Diameter QoS Authorization Session Establishment
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.
The Pull mode or Push mode operation is invoked based on the trigger
of QoS Authorization session. When a QAR with a new session ID is
received, the Authorizing Entity operates in the pull mode; when
other triggers are received, the Authorizing Entity operates in the
push mode. Similarly, when a QIR with new session ID is received,
the Network Element operates in the push mode; when other triggers
are recevied, the Network Element operation in the pull mode.
3.2.1. QoS authorization session establishment for pull mode
A request for a QoS reservation or local events received by a Network
Element can trigger the initiation of a Diameter QoS authorization
session. The Network Element generates a QoS-Authorization-Request
Zorn, et al. Expires May 22, 2008 [Page 6]
Internet-Draft Protocol for Diameter QoS Application November 2007
(QAR) message in which it maps required objects from the QoS
signaling message to Diameter payload objects.
Figure 2 shows the protocol interaction between a resource requesting
entity, a Network Element and the Authorizing Entity.
The Authorizing Entity's identity, information about the application
session and/or identity and credentials of the QoS resource
requesting entity, requested QoS parameters, signaling session
identifier and/or QoS enabled data flows identifiers MAY be
encapsulated into respective Diameter AVPs and included into the
Diameter message sent to the Authorizing Entity. The QAR is sent to
a Diameter server that can either be the home server of the QoS
requesting entity or an application server.
+----------------------------------+-------------------------------+
| QoS specific Input Data | Diameter QoS AVPs |
+----------------------------------+-------------------------------+
| Authorizing entity ID (e.g., | Destination-Host |
| taken from authorization token | Destination-Realm |
| or derived based on Network | |
| Access ID (NAI) [RFC2486] | |
| of the QoS requesting entity) | |
+----------------------------------+-------------------------------+
| Authorization Token | QoS-Authz-Data |
| Credentials of | User-Name |
| the QoS requesting entity | |
+----------------------------------+-------------------------------+
| QoS parameters | QoS-Resources |
+----------------------------------+-------------------------------+
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
[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).
Zorn, et al. Expires May 22, 2008 [Page 7]
Internet-Draft Protocol for Diameter QoS Application November 2007
Authorizing
End-Host Network Element Entity
requesting QoS ( Diameter ( Diameter
QoS Client) QoS Server)
| | |
+---QoS-Reserve---->| |
| +- - - - - QAR - - - - - >|
| |(QoS-Resources,Cost, |
| | QoS-Auth-Data,User-ID)|
| | +--------+--------------+
| | | Authorize request |
| | | Keep session data |
| | |/Authz-time,Session-Id/|
| | +--------+--------------+
| |< - - - - QAA - - - - - -+
| |(Result-Code,CC-Time,Cost|
| |QoS-Resources,Authz-time)|
| +-------+---------+
| |Install QoS state|
| | + |
| | Authz. session |
| | /Authz-time, | QoS Responder
| | CC-Time,Cost/ | Node
| +-------+---------+ |
| +----------QoS-Reserve---....--->|
| | |
| |<---------QoS-Response--....----|
|<--QoS-Response----+ |
| | |
|=====================Data Flow==============....===>|
| |
| +- - - - - ACR - - - - - >|
| |(START,QoS-Resources,Cost|
| |CC-Time,Acc-Multisess-id)|
| | +--------+--------------+
| | | Report for successful |
| | | QoS reservation |
| | |Update of reserved QoS |
| | | resources |
| | +--------+--------------+
| |< - - - - ACA - - - - - -+
| | |
Figure 2: Initial QoS Request Authorization for pull
The Authorizing Entity keeps authorization session state and SHOULD
save additional information for management of the session (e.g., Acc-
Multi-Session-Id, Signaling-Session-Id, authentication data) as part
Zorn, et al. Expires May 22, 2008 [Page 8]
Internet-Draft Protocol for Diameter QoS Application November 2007
of the session state information. A Signaling-session-Id (if
present) SHOULD be used together with the generated Acc-Multi-
Session-Id AVP (see Section 6.3) for binding the authorization and
the accounting session information in case of end host mobility
(i.e., to correlate the Diameter sessions that are initiated for the
same signaling session from different QoS NE).
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 Section 6.1)), 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 Network Element. The value
DIAMETER_LIMITED_SUCCESS indicates that the Authorizing entity
expects confirmation via an accounting message for successful QoS
resource reservation and for final reserved QoS resources (see
below).
One important piece of information returned from the Authorizing
Entity is the authorization lifetime (carried inside the QAA). The
authorization lifetime allows the Network Element 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 Section 4). The
authorization duration is time-based as specified in [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 Section 3.3,
Section 3.4 and Section 4.
The indication of a successful QoS reservation and activation of the
data flow is provided by the transmission of an Accounting Request
(ACR) message, which reports the parameters of the established QoS
state: reserved resources, duration of the reservation,
identification of the QoS enabled flow/QoS signaling session and
accounting parameters. The Diameter QoS server acknowledges the
reserved QoS resources with the Accounting Answer (ACA) message where
the Result-Code is set to 'DIAMETER_SUCCESS'. Note that the reserved
QoS resources reported in the ACR message MAY be different than those
initially authorized with the QAA message, due to the QoS signaling
specific behavior (e.g., receiver-initiated reservations with One-
Path-With-Advertisements) or specific process of QoS negotiation
along the data path.
Zorn, et al. Expires May 22, 2008 [Page 9]
Internet-Draft Protocol for Diameter QoS Application November 2007
3.2.2. QoS authorization session establishment for push mode
The Diameter QoS server in the Authorizing Entity 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.
Figure 4 shows the protocol interaction between the Authorizing
Entity, a Network Element and a resource requesting entity.
The Network Element'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
Authorizing Entity has knowledge of specific information for
allocating and identifying the Network Element 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 section 3.2.3 for details.
+----------------------------------+-------------------------------+
| QoS specific Input Data | Diameter QoS AVPs |
+----------------------------------+-------------------------------+
| Network Element ID (e.g., from | Destination-Host |
| static configuration | Destination-Realm |
| or dynamically discovered, see | |
| section 3.2.3 for details) | |
+----------------------------------+-------------------------------+
| Authorization Token | QoS-Authz-Data |
| Credentials of | User-Name |
| the QoS requesting entity | |
+----------------------------------+-------------------------------+
| QoS parameters | QoS-Resources |
+----------------------------------+-------------------------------+
Authorization processing starts at the Diameter QoS server when it
receives the request from a resource requesting entity through
application server (e.g. SIP Invite) or the trigger by local events
(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
Zorn, et al. Expires May 22, 2008 [Page 10]
Internet-Draft Protocol for Diameter QoS Application November 2007
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.
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, |
| | CC-Time,Cost/ |
| +-------+---------+
| + - - - - QIA - - - - - ->|
| | (Result-Code, |
| | QoS-Resources) |
| | +--------+--------------+
| | | Report for successful |
| | | QoS reservation |
| | |Update of reserved QoS |
| | | resources |
| | +--------+--------------+
| | QoS Responder
| | Node
| | |
|=====================Data Flow==============....===>|
| |
| +- - - - - ACR - - - - - >|
| |(START,QoS-Resources,Cost|
| |CC-Time,Acc-Multisess-id)|
| |< - - - - ACA - - - - - -+
| | |
Figure 4: Initial QoS Request Authorization for push
Zorn, et al. Expires May 22, 2008 [Page 11]
Internet-Draft Protocol for Diameter QoS Application November 2007
The Authorizing Entity keeps authorization session state and SHOULD
save additional information for management of the session (e.g., Acc-
Multi-Session-Id, Signaling-Session-Id, authentication data) as part
of the session state information. A Signaling-session-Id (if
present) SHOULD be used together with the generated Acc-Multi-
Session-Id AVP (see Section 6.3) for binding the authorization and
the accounting session information in case of end host mobility
(i.e., to correlate the Diameter sessions that are initiated for the
same signaling session from different QoS NE).
The final result of the authorization decision is provided in the
QoS-Resources AVP of the QIR message sent by the Authorizing Entity.
The QoS information provided via the QIR is installed by the QoS
Traffic Control function of the Network Element. In the case of
successful enforcement, the Result-Code (= DIAMETER_SUCCESS, (see
Section 6.1)) information is provided in the QIA message.
One important piece of information from the Authorizing Entity is the
authorization lifetime (carried inside the QIR). The authorization
lifetime allows the Network Element 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 Section 4). The authorization duration is
time-based as specified in [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
is discussed in Section 3.3, Section 3.4 and Section 4.
The indication of a successful QoS reservation and activation of the
data flow, is provided by the QoS-Install-Answer 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 case of xxx = Acounting_Info in the QIR, it indicates the
confirmation to an accounting server for successful QoS resource
reservation and for final reserved QoS resources (see below). An ACR
message reports the parameters of the established QoS state: reserved
resources, duration of the reservation, identification of the QoS
enabled flow/QoS signaling session and accounting parameters to
accounting server. The accounting server acknowledges the reserved
QoS resources with the Accounting Answer (ACA) message where the
Result-Code is set to 'DIAMETER_SUCCESS'.
Zorn, et al. Expires May 22, 2008 [Page 12]
Internet-Draft Protocol for Diameter QoS Application November 2007
3.2.3. Discovery and selection of peer Diameter QoS application node
The Diameter QoS application node may obtain the location information
of its peer nodes (i.e. FQDN or IP address) through static
configuration or dynamic discovery as described in [RFC3588]. In
particular, the Network Element shall perform the relevant operation
for Pull mode; the Authorizing Entity shall perform the relevant
operations for Push mode.
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 and based on some
index information provided by the resource requesting entity. For
instance, it can be the Authorization Entity's ID stored in the
authorization token, the end-host's identity (e.g. NAI [RFC2486]) or
globally routable IP address.
3.3. QoS authorization session re-authorization
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.
There are a number of options for policy rules according to which the
NE (AAA client) contacts the Authorizing Entity for re-authorization.
These rules depend on the semantics and contents of the QAA message
sent by the Authorizing Entity:
a. The QAA message contains the authorized parameters of the flow
and its QoS and sets their limits (presumably upper). With these
parameters the Authorizing Entity specifies the services that the
NE can provide and will be financially compensated for.
Therefore, any change or request for change of the parameters of
the flow and its QoS that do not conform to the authorized limits
requires contacting the Authorizing Entity for authorization.
b. 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 Authorizing Entity.
c. 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 Authorizing entity for re-
authorization.
Zorn, et al. Expires May 22, 2008 [Page 13]
Internet-Draft Protocol for Diameter QoS Application November 2007
d. 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.
Provided options are not exhaustive. Elaborating on any of the
listed approaches is deployment /solution specific and is not
considered in the current document.
In addition, the Authorizing Entity may use RAR to perform re-
authorization with the authorized parameters directly when the re-
authorization is triggered by service request or local events/policy
rules.
3.3.1. Client-Side Initiated Re-Authorization
The Authorizing Entity provides the duration of the authorization
session as part of the QoS-Authorization-Answer message (QAA). At
any time before expiration of this period, a new QoS-Authorization-
Request message (QAR) MAY be sent to the Authorizing Entity. The
transmission of the QAR MAY be triggered when the Network Element
receives a QoS signaling message that requires modification of the
authorized parameters of an ongoing QoS session, when authorization
lifetime expires or by an accounting event, see Section 4 and
Figure 5).
Zorn, et al. Expires May 22, 2008 [Page 14]
Internet-Draft Protocol for Diameter QoS Application November 2007
Authorizing
End-Host Network Element Entity
requesting QoS ( Diameter ( Diameter
QoS Client) QoS Server)
| | |
|=====================Data Flow==========================>
| | |
| +-------+----------+ |
| |Authz-time/CC-Time| |
| | expires | |
| +-------+----------+ |
| +- - - - - QAR - - - - - >|
| |(QoS-Resources,Cost, |
| | QoS-Authz-Data,User-ID)|
| +--------+--------------+
NOTE: | | Authorize request |
Re-authorization | | Update session data |
is transparent to | |/Authz-time,Session-Id/|
the End-Host | +--------+--------------+
|< - - - - QAA - - - - - -+
| |(Result-Code,CC-Time,Cost|
| |QoS-Resources,Authz-time)|
| +-------+---------+ |
| |Update QoS state | |
| | + | |
| | Authz. session | |
| | /Authz-time, | |
| | CC-Time,Cost/ | |
| +-------+---------+ |
| | |
| +- - - - - ACR - - - - - >|
| |(INTRM,QoS-Resources,Cost|
| |CC-Time,Acc-Multisess-id)|
| | +--------+--------------+
| | |Update of QoS resources|
| | |/CC-Time,Cost/ used |
| | +--------+--------------+
| |< - - - - ACA - - - - - -+
| | |
|=====================Data Flow==========================>
| |
Figure 5: Client-side initiated QoS re-authorization
Zorn, et al. Expires May 22, 2008 [Page 15]
Internet-Draft Protocol for Diameter QoS Application November 2007
3.3.2. Server-Side Initiated Re-Authorization
The Authorizing Entity MAY initiate a QoS re-authorization by issuing
a Re-Auth-Request message (RAR) as defined in the Diameter base
protocol [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 Network Element.
A Network Element 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 Authorizing
entity.
If RAR does not include any parameters of the re-authorized QoS
state, the Network Element MUST initiate a QoS re-authorization by
sending a QoS-Authorization-Request (QAR) message towards the
Authorizing entity.
Zorn, et al. Expires May 22, 2008 [Page 16]
Internet-Draft Protocol for Diameter QoS Application November 2007
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, |
| | CC-Time,Cost/ |
| +-------+---------+
| + - - - - RAA - - - - - ->|
| | (Result-Code, |
| | QoS-Resources) |
| | +--------+--------------+
| | | Report for successful |
| | | QoS reservation |
| | |Update of reserved QoS |
| | | resources |
| | +--------+--------------+
| | |
| +- - - - - ACR - - - - - >|
| |(INTRM,QoS-Resources,Cost|
| |CC-Time,Acc-Multisess-id)|
| | +--------+--------------+
| | |Update of QoS resources|
| | |/CC-Time,Cost/ used |
| | +--------+--------------+
| |< - - - - ACA - - - - - -+
| | |
Figure 6: Server-side Initiated QoS re-authorization
Zorn, et al. Expires May 22, 2008 [Page 17]
Internet-Draft Protocol for Diameter QoS Application November 2007
3.4. Session Termination
3.4.1. Client-Side Initiated Session Termination
The authorization session for an installed QoS reservation state MAY
be terminated by the Diameter client by sending a Session-
Termination-Request message (STR) to the Diameter server. This is a
Diameter base protocol function and it is defined in [RFC3588].
Session termination can be caused by a QoS signaling messaging
requesting deletion of the existing QoS reservation state or it can
be caused as a result of a soft-state expiration of the QoS
reservation state. After a successful termination of the
authorization session, final accounting messages MUST be exchanged
(see Figure 7). 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.
Zorn, et al. Expires May 22, 2008 [Page 18]
Internet-Draft Protocol for Diameter QoS Application November 2007
Authorizing
End-Host Network Element Entity
requesting QoS ( Diameter ( Diameter
QoS Client) QoS Server)
| | |
|==Data Flow==>X /Stop of the data flow/ |
| | |
+---QoS-Reserve---->| |
| (Delete QoS +- - - - - STR - - - - - >|
| reservation) | +--------+--------------+
| | | Remove authorization |
|<--QoS-Response----+ | session state |
| | +--------+--------------+
|< - - - - STA - - - - - -+
+-------+--------+ |
|Delete QoS state|
| Report final |
| accounting data| QoS Responder
+-------+--------+ Node
+----------QoS-Reserve-----....--->|
| (Delete QoS |
| reservation)
|
+- - - - - ACR - - - - - >|
|(FINAL,QoS-Resources,Cost|
|CC-Time,Acc-Multisess-id)|
| +--------+--------------+
| | Report for successful |
| | end of QoS session |
| +--------+--------------+
|< - - - - ACA - - - - - -+
|
| QoS Responder
| Node
|<---------QoS-Response----....----+
| |
Figure 7: Client-Side Initiated Session Termination
3.4.2. Server-Side Initiated Session Termination
At anytime during a session the Authorizing Entity MAY send an Abort-
Session-Request message (ASR) to the Network Element. This is a
Diameter base protocol function and it is defined in [RFC3588].
Possible reasons for initiating the ASR message to the Network
Element are insufficient credits or session termination at the
application layer. The ASR message results in termination of the
authorized session, release of the reserved resources at the Network
Zorn, et al. Expires May 22, 2008 [Page 19]
Internet-Draft Protocol for Diameter QoS Application November 2007
Element and transmission of an appropriate QoS signaling message
indicating a notification to other Network Elements aware of the
signaling session. A final accounting message exchange MUST be
triggered as a result of this ASR message exchange (see Figure 8).
Authorizing
End-Host Network Element Entity
requesting QoS ( Diameter ( Diameter
QoS Client) QoS Server)
| | |
|=====================Data Flow==========================>
| |
| |< - - - - ASR - - - - - -+
| | |
|====Data Flow=====>X | QoS Responder
| | | Node
|<--QoS-Notify------+----------QoS-Reserve-----....--->|
| | (Delete QoS | |
| reservation) |
+-------+--------+ |
|Delete QoS state| |
| Report final | |
| accounting data| |
+-------+--------+ |
+- - - - - ASA - - - - - >|
| +--------+--------------+
| | Remove authorization |
| | session state |
| +--------+--------------+
+- - - - - ACR - - - - - >|
|(FINAL,QoS-Resources,Cost|
|CC-Time,Acc-Multisess-id)|
| +--------+--------------+
| | Report for successful |
| | end of QoS session |
| +--------+--------------+
|< - - - - ACA - - - - - -+
| QoS Responder
| Node
|<---------QoS-Response----....----+
| |
Figure 8: Server-Side Initiated Session Termination
Zorn, et al. Expires May 22, 2008 [Page 20]
Internet-Draft Protocol for Diameter QoS Application November 2007
4. Accounting
The Diameter QoS application provides accounting for usage of
reserved QoS resources. Diameter QoS accounting has built-in support
for online, duration based accounting. This accounting is based on
the notion that the Diameter QoS clients are in the best position to
determine the cost of those resources.
In the Diameter QoS application, the router MAY send a Cost-
Information AVP (see [RFC4006]) in the QAR. If the Cost-Information
AVP includes a Cost-Unit AVP (see [RFC4006]) then the Cost-Unit
SHOULD be "minute". The Cost-Information AVPs represent the cost to
allocate the resources requested in the QoS-Resources AVP included in
the same QAR message. The QAR MAY optionally contain a Tariff-Time-
Change AVP (see [RFC4006]) which is the time at which the cost will
change, a second Cost-Information AVP, which is the cost of the
reserved resources after the tariff time change, and a second Tariff-
Time-Change, which is the time at which the tariff would change
again. Either all three or none of these AVPs MUST be present in the
QAR.
The Resource Authorizing Entity returns a CC-Time AVP (see [RFC4006])
in the QAA message which is the total authorized gate-on time for the
service. If the QAR included two Tariff-Time-Change AVPs, the
current time plus the CC-Time AVP returned in the QAA MUST NOT exceed
the second Tariff-Time-Change AVP from the QAR. Based on information
in the Cost-Information AVPs, the Resource Authorizing Entity can use
the CC-Time AVP to guarantee that the total cost of the session will
not exceed a certain threshold, which allows, for example, support of
prepaid users.
Each ACR message contains a triplet of QoS-Resources AVP, Cost-
Information AVP, and CC-Time AVP. This represents the total time
consumed at the given cost for the given resources. Note that an ACR
message MUST be sent separately for each interval defined by the
Tariff-Time-Change AVPs and the expiration of the CC-Time returned in
the QAA (see Figure 5).
The Network Element starts an accounting session by sending an
Accounting-Request message (ACR) after successful QoS reservation and
activation of the data flow (see Figure 2). After every successful
re-authorization procedure the Network element MUST initiate an
interim accounting message exchange (see Figure 5). After successful
session termination the Network element MUST initiate a final
exchange of accounting messages for terminating of the accounting
session and reporting final records for the usage of the QoS
resources reserved (see Figure 7).
Zorn, et al. Expires May 22, 2008 [Page 21]
Internet-Draft Protocol for Diameter QoS Application November 2007
5. Diameter QoS Authorization Application Messages
The Diameter QoS Application requires the definition of new mandatory
AVPs and Command-codes (see Section 3 of [RFC3588]). Four new
Diameter messages are defined along with Command-Codes whose values
MUST be supported by all Diameter implementations that conform to
this specification.
Command-Name Abbrev. Code Reference
QoS-Authz-Request QAR [TBD] Section 5.1
QoS-Authz-Answer QAA [TBD] Section 5.2
QoS-Install-Request QIR [TBD] Section 5.3
QoS-Install-Answer QIA [TBD] Section 5.4
In addition, the following Diameter Base protocol messages are used
in the Diameter QoS application:
Command-Name Abbrev. Code Reference
Accounting-Request ACR 271 RFC 3588
Accounting-Request ACR 271 RFC 3588
Accounting-Answer ACA 271 RFC 3588
Re-Auth-Request RAR 258 RFC 3588
Re-Auth-Answer RAA 258 RFC 3588
Abort-Session-Request ASR 274 RFC 3588
Abort-Session-Answer ASA 274 RFC 3588
Session-Term-Request STR 275 RFC 3588
Session-Term-Answer STA 275 RFC 3588
Diameter nodes conforming to this specification MAY advertise support
by including the value of TBD in the Auth-Application-Id or the Acct-
Application-Id AVP of the Capabilities-Exchange-Request and
Capabilities-Exchange-Answer commands, see [RFC3588].
The value of TBD MUST be used as the Application-Id in all QAR/QAA
and QIR/QIA commands.
The value of TBD MUST be used as the Application-Id in all ACR/ACA
commands, because this application defines new, mandatory AVPs for
accounting.
The value of zero (0) SHOULD be used as the Application-Id in all
STR/STA, ASR/ASA, and RAR/RAA commands, because these commands are
defined in the Diameter base protocol and no additional mandatory
AVPs for those commands are defined in this document.
Zorn, et al. Expires May 22, 2008 [Page 22]
Internet-Draft Protocol for Diameter QoS Application November 2007
5.1. QoS-Authorization Request (QAR)
The QoS-Authorization-Request message (QAR) indicated by the Command-
Code field (see Section 3 of [RFC3588]) set to TBD and 'R' bit set in
the Command Flags field is used by Network elements to request
quality of service related resource authorization for a given flow.
The QAR message MUST carry information for signaling session
identification, Authorizing Entity identification, information about
the requested QoS, and the identity of the QoS requesting entity. In
addition, depending on the deployment scenario, an authorization
token and credentials of the QoS requesting entity SHOULD be
included.
The message format, presented in ABNF form [RFC2234], is defined as
follows:
<QoS-Request> ::= < Diameter Header: XXX, REQ, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Origin-Host }
{ Origin-Realm }
{ Destination-Realm }
{ Auth-Request-Type }
[ Destination-Host ]
[ User-Name ]
* [ QoS-Resources ]
[ QoS-Authz-Data ]
[ Cost-Information ]
[ Acc-Multisession-Id ]
[ Bound-Auth-Session-Id ]
* [ AVP ]
5.2. QoS-Authorization Answer (QAA)
The QoS-Authorization-Answer message (QAA), indicated by the Command-
Code field set to TBD and 'R' bit cleared in the Command Flags field
is sent in response to the QoS-Authorization-Request message (QAR).
If the QoS authorization request is successfully authorized, the
response will include the AVPs to allow authorization of the QoS
resources as well as accounting and transport plane gating
information.
The message format is defined as follows:
Zorn, et al. Expires May 22, 2008 [Page 23]
Internet-Draft Protocol for Diameter QoS Application November 2007
<QoS-Answer> ::= < Diameter Header: XXX, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Auth-Request-Type }
{ Result-Code }
{ Origin-Host }
{ Origin-Realm }
* [ QoS-Resources ]
[ CC-Time ]
[ Acc-Multisession-Id ]
[ Session-Timeout ]
[ Authz-Session-Lifetime ]
[ Authz-Grace-Period ]
* [ AVP ]
5.3. QoS-Install Request (QIR)
The QoS-Install Request message (QIR), indicated by the Command-Code
field set to TDB and 'R' bit set in the Command Flags field is used
by Authorizing entity to install or update the QoS parameters and the
flow state of an authorized flow at the transport plane element.
The message MUST carry information for signaling session
identification or identification of the flow to which the provided
QoS rules apply, identity of the transport plane element, description
of provided QoS parameters, flow state and duration of the provided
authorization.
The message format is defined as follows:
<QoS-Install-Request> ::= < Diameter Header: XXX, REQ, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Origin-Host }
{ Origin-Realm }
{ Destination-Realm }
{ Auth-Request-Type }
[ Destination-Host ]
* [ QoS-Resources ]
[ Session-Timeout ]
[ Authz-Session-Lifetime ]
[ Authz-Grace-Period ]
[ Authz-Session-Volume ]
* [ AVP ]
Zorn, et al. Expires May 22, 2008 [Page 24]
Internet-Draft Protocol for Diameter QoS Application November 2007
5.4. QoS-Install Answer (QIA)
The QoS-Install Answer message (QIA), indicated by the Command-Code
field set to TBD and 'R' bit cleared in the Command Flags field is
sent in response to the QoS-Install Request message (QIR) for
confirmation of the result of the installation of the provided QoS
reservation instructions.
The message format is defined as follows:
<QoS-Install-Answer> ::= < Diameter Header: XXX, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Origin-Host }
{ Origin-Realm }
{ Result-Code }
* [ QoS-Resources ]
* [ AVP ]
5.5. Re-Auth-Request (RAR)
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 Authorizing Entity to the Network Element in order to
initiate the QoS re-authorization from DQA server side.
If the RAR command is received by the Network Element without any
parameters of the re-authorized QoS state, the Network Element MUST
initiate a QoS re-authorization by sending a QoS-Authorization-
Request (QAR) message towards the Authorizing entity.
The message format is defined as follows:
<Re-Auth-Request> ::= < Diameter Header: 258, REQ, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Origin-Host }
{ Origin-Realm }
{ Destination-Realm }
{ Auth-Request-Type }
[ Destination-Host ]
* [ QoS-Resources ]
[ Session-Timeout ]
[ Authz-Session-Lifetime ]
[ Authz-Grace-Period ]
[ Authz-Session-Volume ]
Zorn, et al. Expires May 22, 2008 [Page 25]
Internet-Draft Protocol for Diameter QoS Application November 2007
* [ AVP ]
5.6. Re-Auth-Answer (RAA)
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 Network Element to the Authorizing Entity in response to
the RAR command..
The message format is defined as follows:
<Re-Auth-Answer> ::= < Diameter Header: 258, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Origin-Host }
{ Origin-Realm }
{ Result-Code }
* [ QoS-Resources ]
* [ AVP ]
5.7. Accounting Request (ACR)
The Accounting Request message (ACR), indicated by the Command-Code
field set to 271 and 'R' bit set in the Command Flags field is used
by Network Element to report parameters of the authorized and
established QoS reservation.
The message MUST carry accounting information authorized QoS
resources and its usage, e.g., QoS-Resources, CC-Time, CC-Cost, Acc-
Multi-Session-Id.
The message format is defined as follows:
<Accounting-Request> ::= < Diameter Header: XXX, REQ, PXY >
< Session-Id >
{ Acct-Application-Id }
{ Destination-Realm }
[ Destination-Host ]
[ Accounting-Record-Type ]
[ Accounting-Record-Number ]
* [ QoS-Resources ]
[ Cost-Information ]
[ CC-Time ]
[ Acc-Multi-Session-Id ]
* [ AVP ]
Zorn, et al. Expires May 22, 2008 [Page 26]
Internet-Draft Protocol for Diameter QoS Application November 2007
5.8. Accounting Answer (ACA)
The Accounting Answer message (ACA), indicated by the Command-Code
field set to 271 and 'R' bit cleared in the Command Flags field is
sent in response to the Accounting Request message (ACR) as an
acknowledgment of the ACR message and MAY carry additional management
information for the accounting session, e.g. Acc-Interim-Interval
AVP.
The message format is defined as follows:
<Accounting-Answer> ::= < Diameter Header: XXX, PXY >
< Session-Id >
{ Acct-Application-Id }
[ Result-Code ]
[ Accounting-Record-Type ]
[ Accounting-Record-Number ]
[ Acc-Multi-Session-Id ]
* [ AVP ]
Zorn, et al. Expires May 22, 2008 [Page 27]
Internet-Draft Protocol for Diameter QoS Application November 2007
6. Diameter QoS Authorization Application AVPs
Each of the AVPs identified in the QoS-Authorization-Request/Answer
and QoS-Install-Request/Answer messages and the assignment of their
value(s) is given in this section.
6.1. Diameter Base Protocol AVPs
The Diameter QoS application uses a number of session management
AVPs, defined in the Base Protocol ([RFC3588]).
Attribute Name AVP Code Reference [RFC3588]
Origin-Host 264 Section 6.3
Origin-Realm 296 Section 6.4
Destination-Host 293 Section 6.5
Destination-Realm 283 Section 6.6
Auth-Application-Id 258 Section 6.8
Result-Code 268 Section 7.1
Auth-Request-Type 274 Section 8.7
Session-Id 263 Section 8.8
Authz-Lifetime 291 Section 8.9
Authz-Grace-Period 276 Section 8.10
Session-Timeout 27 Section 8.13
User-Name 1 Section 8.14
The Auth-Application-Id AVP (AVP Code 258) is assigned by IANA to
Diameter applications. The value of the Auth-Application-Id for the
Diameter QoS application is TBD.
6.2. Credit Control Application AVPs
The Diameter QoS application provides accounting for usage of
reserved QoS resources. Diameter QoS accounting has built-in support
for online, duration based accounting. For this purpose it re-uses a
number of AVPs defined in Diameter Credit Control application.
[RFC4006].
Attribute Name AVP Code Reference [RFC4006]
Cost-Information AVP 423 Section 8.7
Unit-Value AVP 445 Section 8.8
Currency-Code AVP 425 Section 8.11
Cost-Unit AVP 424 Section 8.12
CC-Time AVP 420 Section 8.21
Tariff-Time-Change AVP 451 Section 6.20
Usage of the listed AVPs is described in Section 4
Zorn, et al. Expires May 22, 2008 [Page 28]
Internet-Draft Protocol for Diameter QoS Application November 2007
Diameter QoS application is designed to independently provide credit
control over the controlled QoS resources. However, deployment
scenarios, where Diameter QoS application is collocated with Diameter
Credit Control application, are not excluded. In such scenarios the
credit control over the QoS resources might be managed by the Credit
control application. Possible interworking approach might be a usage
of Credit-Control AVP (AVP Code 426) with a newly defined value. It
will indicate to the Diameter QoS entities that the credit control
over the QoS resources would be handled in separate session by Credit
Control application. An active cooperation of both applications
would be required but it is not elaborated further in this document.
6.3. Accounting AVPs
The Diameter QoS application uses Diameter Accounting and accounting
AVPs as defined in Section 9 of [RFC3588]. Additional description of
the usage of some of them in the QoS authorization context is
provided:
Attribute Name AVP Code Reference [RFC3588]
Acct-Application-Id 259 Section 6.9
Accounting-Record-Type 480 Section 9.8.1
Accounting-Interim-Interval 85 Section 9.8.2
Accounting-Record-Number 485 Section 9.8.3
Accounting-Realtime-Required 483 Section 9.8.7
Acc-Multi-Session-ID 50 Section 9.8.5
The following AVPs need further explanation:
Acct-Application-Id AVP
The Acct-Application-Id AVP (AVP Code 259)is assigned by IANA to
Diameter applications. The value of the Acct-Application-Id for
the Diameter QoS application is TBD (TBD).
Acc-Multisession-ID
Acc-Multi-Session-ID AVP (AVP Code 50) SHOULD be used to link
multiple accounting sessions together, allowing the correlation of
accounting information. This AVP MAY be returned by the Diameter
server in a QoS-Authorization-Answer message (QAA), and MUST be
used in all accounting messages for the given session.
6.4. Diameter QoS Application Defined AVPs
This document reuses the AVPs defined in Section 4 of
[I-D.ietf-dime-qos-attributes].
Zorn, et al. Expires May 22, 2008 [Page 29]
Internet-Draft Protocol for Diameter QoS Application November 2007
This section lists the AVPs that are introduced specifically for the
Diameter QoS application. The followig new AVPs are defined: Bound-
Auth-Session-Id and the QoS-Authz-Data AVP.
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.
+-------------------+
| AVP Flag rules |
+----------------------------------------------|----+---+----+-----+
| AVP Section | | |SHLD| MUST|
| Attribute Name Code Defined Data Type |MUST|MAY| NOT| NOT|
+----------------------------------------------+----+---+----+-----+
|QoS-Authz-Data TBD 6.4 Grouped | M | P | | V |
|Bound-Auth-Session-Id TBD 6.4 UTF8String | M | P | | 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. |
|P - Indicates the need for encryption for end-to-end security. |
|V - Vendor specific bit that indicates whether the AVP belongs to |
| a address space. |
+------------------------------------------------------------------+
QoS-Authz-Data
The QoS-Authz-Data AVP (AVP Code TBD) is of type OctetString. It
is a container that carries application session or user specific
data that has to be supplied to the Authorizing entity as input to
the computation of the authorization decision.
Bound-Authentication-Session-Id
The Bound-Authentication-Session AVP (AVP Code TBD) is of type
UTF8String. It carries the id of the Diameter authentication
session that is used for the network access authentication (NASREQ
authentication session). It is used to tie the QoS authorization
request to a prior authentication of the end host done by a co-
located application for network access authentication (Diameter
NASREQ) at the QoS NE.
Zorn, et al. Expires May 22, 2008 [Page 30]
Internet-Draft Protocol for Diameter QoS Application November 2007
7. Examples
7.1. Example call flow for pull mode
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).
End-Host SIP Server Correspondent
requesting QoS (DQA Server) Node
| | |
..|....Application layer SIP signaling.......|..............|..
. | Invite (SDP) | | .
. +.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-> | .
. | 100 Trying | | .
. <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-+ Invite (SDP)| .
. | +-.-.-.....-.-.> .
. | | 180 SDP' | .
. | <-.-.-.....-.-.+ .
. | +--------+--------+ | .
. | |Authorize session| | .
. | | parameters | | .
. | 180 (Session parameters) +--------+--------+ | .
. <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-+ | .
..|..........................................|... ..........|..
| | |
| +------------+ | |
| | NE | | |
| |(DQA Client)| | |
| +------+-----+ | |
| | | |
|QoS NSLP Reserve | | |
+------------------> QAR | |
| (POLICY_DATA>v +- - - - -<<AAA>>- - - -> |
| QSPEC) v >===>(Destination-Host, | |
| v >=======>QoS-Authz-Data ++------------+ |
| >===========>QoS-Resources, |Authorize | |
| |Cost-Info) |QoS resources| |
| | ++------------+ |
| | QAA | |
| <- - - - -<<AAA>>- - - -+ |
| |(Result-Code, | |
| |QoS-Resources, | |
| |CC-Time, | |
Zorn, et al. Expires May 22, 2008 [Page 31]
Internet-Draft Protocol for Diameter QoS Application November 2007
| |Authz-Lifetime) | |
| +---------+--------+ | |
| |Install QoS state1| | |
| |+ Authz. session | | |
| +---------+--------+ | |
| |QoS NSLP Reserve |
| +---------------..............--------->
| | |
| | QoS NSLP Response|
|QoS NSLP Response <---------------..............---------+
<------------------+ |
| | QoS NSLP Query|
|QoS NSLP Query <---------------..............---------+
<------------------+ |
|QoS NSLP Reserve | |
+------------------> QAR | |
| +- - - - -<<AAA>>- - - -> |
| | +---+---------+ |
| | |Authorize | |
| | |QoS resources| |
| | QAA +---+---------+ |
| <- - - - -<<AAA>>- - - -+ |
| +---------+--------+ | |
| |Install QoS state2| |
| |+ Authz. session | |
| +---------+--------+ |
| | QoS NSLP Reserve |
| +---------------..............--------->
| | QoS NSLP Response|
|QoS NSLP Response <---------------..............---------+
<------------------+ |
| | |
/------------------+--Data Flow---------------------------\
\------------------+--------------------------------------/
| | |
.-.-.-.-. SIP signaling
--------- QoS NSLP signaling
- - - - - Diameter QoS Application messages
========= Mapping of objects between QoS and AAA protocol
Figure 23: QoS Authorization Example - Pull Mode
The communication starts with SIP signaling between the two end
points and the SIP server for negotiation and authorization of the
requested service and its parameters (see Figure 23). As a part of
the process, the SIP server verifies whether the user at Host A is
Zorn, et al. Expires May 22, 2008 [Page 32]
Internet-Draft Protocol for Diameter QoS Application November 2007
authorized to use the requested service (and potentially the ability
to be charged for the service usage). Negotiated session parameters
are provided to the end host.
Subsequently, Host A initiates a QoS signaling message towards Host
B. It sends a QoS NSLP Reserve message, in which it includes
description of the required QoS (QSPEC object) and authorization data
for negotiated service session (part of the POLICY_DATA object).
Authorization data includes, as a minimum, the identity of the
authorizing entity (e.g., the SIP server) and an identifier of the
application service session for which QoS resources are requested.
A QoS NSLP Reserve message is intercepted and processed by the first
QoS aware Network Element. The NE uses the Diameter QoS application
to request authorization for the received QoS reservation request.
The identity of the Authorizing Entity (in this case the SIP server
that is co-located with a Diameter server) is put into the
Destination-Host AVP, any additional session authorization data is
encapsulated into the QoS-Authz-Data AVP and the description of the
QoS resources is included into QoS-Resources AVP. In addition, the
NE rates the requested QoS resources and announces the charging rate
into the Cost-Information AVP. These AVPs are included into a QoS
Authorization Request message, which is sent to the Authorizing
entity.
A Diameter QAR message will be routed through the AAA network to the
Authorizing Entity. The Authorizing Entity verifies the requested
QoS against the QoS resources negotiated for the service session and
replies with QoS-Authorization answer (QAA) message. It carries the
authorization result (Result-Code AVP) and the description of the
authorized QoS parameters (QoS-Resources AVP), as well as duration of
the authorization session (Authorization-Lifetime AVP) and duration
of the time (CC-Time) for which the end-user should be charged with
the rate announced in the QAR message. The NE interacts with the
traffic control function and installs the authorized QoS resources
and forwards the QoS NSLP Reserve message further along the data
path.
7.2. Example call flow for push mode
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).
End-Host NE SIP Server Correspondent
Zorn, et al. Expires May 22, 2008 [Page 33]
Internet-Draft Protocol for Diameter QoS Application November 2007
requesting QoS (DQA Client) (DQA Server) Node
| | | |
..|....Application layer SIP signaling..........|..............|..
. | Invite(SDP offer)| | | .
. +.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.> | .
. | 100 Trying | | | .
. <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.+ | .
. |.............................................|..............| .
| | +---------+-------------+|
| | | Authorize request ||
| | | Keep session data ||
| | |/Authz-time,Session-Id/||
| | +---------+-------------+|
| | | |
| |<-- - -- - QIR - -- - -- -+ |
| |(Initial Request,Decision | |
| |(QoS-Resources,Authz-time)| |
| +-------+---------+ | |
| |Install QoS state| | |
| | + | | |
| | Authz. session | | |
| | /Authz-time, | | |
| | CC-Time,Cost/ | | |
| +-------+---------+ | |
| + - - -- - QIA - - - - - ->| |
| | (Result-Code, | |
| | QoS-Resources) | |
| | +----------+------------+ |
| | | Report for successful | |
| | | QoS reservation | |
| | |Update of reserved QoS | |
| | | resources | |
| | +----------+------------+ |
. | | | Invite (SDP) | .
. | | +-.-.-.....-.-.> .
. | 180 (Ringing) | | .
. <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.<.-.-.-.-.-.-.-+ .
. | | | 200 OK (SDP)| .
. | | <-.-.-.....-.-.+ .
| | +--------+-----------+ |
| | |re-Authorize session| |
| | | parameters | |
| | +--------+-----------+ |
| <- - - - - - RAR - - - - - + |
| +---------+--------+ | |
| |Activate QoS state| | |
| +---------+--------+ | |
Zorn, et al. Expires May 22, 2008 [Page 34]
Internet-Draft Protocol for Diameter QoS Application November 2007
| +- - - - - - RAA - - - - - > |
. | 200 (SDP answer) | | | .
. <.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.+ | .
| | |
/------------------+-----Data Flow---------------------------\
\------------------+-----------------------------------------/
| | |
.-.-.-.-. SIP signaling
- - - - - Diameter QoS Application messages
Figure 24: QoS Authorization Example - Push Mode
The communication starts with SIP signaling between the two end
points and the SIP server for negotiation and authorization of the
requested service and its parameters (see Figure 24). As a part of
the process, the SIP server verifies whether the user at Host A is
authorized to use the requested service (and potentially the ability
to be charged for the service usage). The DQA server is triggered to
authorize the QoS request based on session parameters (i.e. SDP
offer), initiate a Diameter QoS authorization session and install
authorized QoS state to the Network Element via QIR message.
The DQA server may obtain the info of peer DQA client from pre-
configured information or query the DNS based on Host A's identity or
IP address (In this case a DQA server is co-located with a SIP server
and a DQA client is co-located with a Network element). The identity
of Network Element is put into the Destination-Host AVP, the
description of the QoS resources is included into QoS-Resources AVP,
as well as duration of the authorization session (Authorization-
Lifetime AVP) and duration of the time (CC-Time) for which the end-
user should be charged with the rate announced in the QIR message.
The NE interacts with the traffic control function and reserves the
authorized QoS resources accordingly.
With successful QoS authorization, the SDP offer in SIP Invite is
forwared to Host B. Host B sends back a 18x (ringing) message towards
Host A and processes the SDP. Once Host B accepts the call, it sends
back a 200 OK, in which it includes description of the accepted
session parameters (i.e. SDP answer).
The DQA server may verifies the accepted QoS against the pre-
authorized QoS resources, and sends a Diameter RAR message to the DQA
client in the network element for activating the installed policies
and commit the resource allocation. With successful QoS enforcement,
the 200 OK is forwarded towards Host A.
Note that the examples above show a sender-initiated reservation from
Zorn, et al. Expires May 22, 2008 [Page 35]
Internet-Draft Protocol for Diameter QoS Application November 2007
the End-Host towards the corresponding node and a receiver-initiated
reservation from the correspondent node towards the End-Host.
Zorn, et al. Expires May 22, 2008 [Page 36]
Internet-Draft Protocol for Diameter QoS Application November 2007
8. IANA Considerations
TBD
Zorn, et al. Expires May 22, 2008 [Page 37]
Internet-Draft Protocol for Diameter QoS Application November 2007
9. Security Considerations
TBD
Zorn, et al. Expires May 22, 2008 [Page 38]
Internet-Draft Protocol for Diameter QoS Application November 2007
10. Acknowledgements
The authors would like to thank John Loughney and Allison Mankin for
their input to this document. In September 2005 Robert Hancock,
Jukka Manner, Cornelia Kappler, Xiaoming Fu, Georgios Karagiannis and
Elwyn Davies provided a detailed review. Robert also provided us
with good feedback earlier in 2005. Jerry Ash provided us review
comments late 2005/early 2006. Rajith R provided some inputs to the
document early 2007
[Editor's Note: Acknowledgements need to be updated.]
Zorn, et al. Expires May 22, 2008 [Page 39]
Internet-Draft Protocol for Diameter QoS Application November 2007
11. Contributors
The authors would like to thank Tseno Tsenov (tseno.tsenov@gmail.com)
and Frank Alfano (falfano@lucent.com) for starting the Diameter
Quality of Service work within the IETF, for your significant draft
contributions and for being the driving force for the first few draft
versions.
[Editor's Note: A bit of history needs to be included here.]
Zorn, et al. Expires May 22, 2008 [Page 40]
Internet-Draft Protocol for Diameter QoS Application November 2007
12. Open Issues
Open issues related to this draft are listed at the issue tracker
available at: http://www.tschofenig.com:8080/diameter-qos/
Zorn, et al. Expires May 22, 2008 [Page 41]
Internet-Draft Protocol for Diameter QoS Application November 2007
13. References
13.1. Normative References
[I-D.ietf-dime-qos-attributes]
Korhonen, J., Tschofenig, H., Arumaithurai, M., and M.
Jones, "Quality of Service Attributes for Diameter",
draft-ietf-dime-qos-attributes-03 (work in progress),
November 2007.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", RFC 2234, November 1997.
[RFC3588] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J.
Arkko, "Diameter Base Protocol", RFC 3588, September 2003.
[RFC4005] Calhoun, P., Zorn, G., Spence, D., and D. Mitton,
"Diameter Network Access Server Application", RFC 4005,
August 2005.
[RFC4006] Hakala, H., Mattila, L., Koskinen, J-P., Stura, M., and J.
Loughney, "Diameter Credit-Control Application", RFC 4006,
August 2005.
13.2. Informative References
[I-D.ietf-nsis-ntlp]
Schulzrinne, H. and R. Hancock, "GIST: General Internet
Signalling Transport", draft-ietf-nsis-ntlp-14 (work in
progress), July 2007.
[I-D.ietf-nsis-qos-nslp]
Manner, J., "NSLP for Quality-of-Service Signaling",
draft-ietf-nsis-qos-nslp-15 (work in progress), July 2007.
[RFC2210] Wroclawski, J., "The Use of RSVP with IETF Integrated
Services", RFC 2210, September 1997.
[RFC2486] Aboba, B. and M. Beadles, "The Network Access Identifier",
RFC 2486, January 1999.
[RFC2749] Herzog, S., Boyle, J., Cohen, R., Durham, D., Rajan, R.,
and A. Sastry, "COPS usage for RSVP", RFC 2749,
January 2000.
Zorn, et al. Expires May 22, 2008 [Page 42]
Internet-Draft Protocol for Diameter QoS Application November 2007
[RFC2753] Yavatkar, R., Pendarakis, D., and R. Guerin, "A Framework
for Policy-based Admission Control", RFC 2753,
January 2000.
[RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson,
"Remote Authentication Dial In User Service (RADIUS)",
RFC 2865, June 2000.
[RFC3313] Marshall, W., "Private Session Initiation Protocol (SIP)
Extensions for Media Authorization", RFC 3313,
January 2003.
[RFC3520] Hamer, L-N., Gage, B., Kosinski, B., and H. Shieh,
"Session Authorization Policy Element", RFC 3520,
April 2003.
[RFC3521] Hamer, L-N., Gage, B., and H. Shieh, "Framework for
Session Set-up with Media Authorization", RFC 3521,
April 2003.
[RFC4027] Josefsson, S., "Domain Name System Media Types", RFC 4027,
April 2005.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, July 2006.
Zorn, et al. Expires May 22, 2008 [Page 43]
Internet-Draft Protocol for Diameter QoS Application November 2007
Authors' Addresses
Glen Zorn (editor)
Phone:
Email: glenzorn@comcast.net
Peter J. McCann
Motorola Labs
1301 E. Algonquin Rd
Schaumburg, IL 60196
USA
Phone: +1 847 576 3440
Email: pete.mccann@motorola.com
Hannes Tschofenig
Nokia Siemens Networks
Otto-Hahn-Ring 6
Munich, Bavaria 81739
Germany
Email: Hannes.Tschofenig@nsn.com
URI: http://www.tschofenig.com
Tina Tsou
Huawei
Shenzhen,
P.R.C
Email: tena@huawei.com
Avri Doria
Lulea University of Technology
Arbetsvetenskap
Lulea, SE-97187
Sweden
Email: avri@ltu.se
Zorn, et al. Expires May 22, 2008 [Page 44]
Internet-Draft Protocol for Diameter QoS Application November 2007
Dong Sun
Bell Labs/Alcatel-Lucent
101 Crawfords Corner Rd
Holmdel, NJ 07733
USA
Email: dongsun@alcatel-lucent.com
Zorn, et al. Expires May 22, 2008 [Page 45]
Internet-Draft Protocol for Diameter QoS Application November 2007
Full Copyright Statement
Copyright (C) The IETF Trust (2007).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Acknowledgment
Funding for the RFC Editor function is provided by the IETF
Administrative Support Activity (IASA).
Zorn, et al. Expires May 22, 2008 [Page 46]