< draft-lior-radius-prepaid-extensions-02.txt   draft-lior-radius-prepaid-extensions-03.txt >
Network Working Group A. Lior Network Working Group A. Lior
INTERNET-DRAFT Bridgewater Systems INTERNET-DRAFT Bridgewater Systems
Category: Informational P. Yegani Category: Informational P. Yegani
draft-lior-radius-prepaid-extensions-02.txt Cisco draft-lior-radius-prepaid-extensions-03.txt Cisco
Expires: 27 March, 2004 K. Chowdhury Expires: 16 July, 2004 K. Chowdhury
Nortel Nortel
L. Madour L. Madour
Ericsson Canada Ericsson Canada
Y. Li Y. Li
Bridgewater Systems Bridgewater Systems
October 27, 2003 February 16, 2003
PrePaid Extensions to Remote Authentication Dial-In User Service PrePaid Extensions to Remote Authentication Dial-In User Service
(RADIUS) (RADIUS)
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of [RFC2026]. all provisions of Section 10 of [RFC2026].
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
skipping to change at page 2, line 5 skipping to change at page 2, line 5
Copyright (C) The Internet Society (2003). All Rights Reserved. Copyright (C) The Internet Society (2003). All Rights Reserved.
Abstract Abstract
The draft presents an extension to the Remote Authentication Dial-In The draft presents an extension to the Remote Authentication Dial-In
User Service (RADIUS) protocol to support PrePaid data services for User Service (RADIUS) protocol to support PrePaid data services for
a wide range of deployments such as Dial, Wireless, WLAN. a wide range of deployments such as Dial, Wireless, WLAN.
Consideration for roaming using mobile-ip is also given. Consideration for roaming using mobile-ip is also given.
RADIUS Extensions for PrePaid February 2004
Table of Contents Table of Contents
1. Introduction...................................................4 1. Introduction...................................................4
1.1 Terminology................................................6 1.1 Terminology................................................6
1.2 Requirements language......................................6 1.2 Requirements language......................................6
2. Architectural Model............................................6 2. Architectural Model............................................6
3. Use-cases.....................................................14 2.1 Why not existing RADIUS attributes?.......................14
3.1 Simple pre-paid access use-case...........................15 3. Use-cases.....................................................16
3.2 Simple Service Device use-case............................17 3.1 Simple pre-paid access use-case...........................17
3.3 Support for concurrent PrePaid sessions...................18 3.2 Simple Service Device use-case............................20
3.4 Support for Roaming.......................................19 3.3 Support for concurrent PrePaid sessions...................20
3.5 PrePaid termination.......................................19 3.4 Support for Roaming.......................................21
4. Operations....................................................20 3.5 PrePaid termination.......................................22
4.1 General Requirements......................................20 4. Operations....................................................22
4.1.1 Broker AAA Requirements..............................20 4.1 General Requirements......................................22
4.1.1 Broker AAA Requirements..............................22
4.2 Authentication and Authorization for Prepaid Enabled Access 4.2 Authentication and Authorization for Prepaid Enabled Access
Devices.......................................................20 Devices.......................................................23
4.2.1 Single Service Pre-paid..............................22 4.2.1 Single Service Pre-paid..............................24
4.2.2 Multiple-Session Pre-paid............................23 4.2.2 Multiple-Session Pre-paid............................25
4.3 Session Start Operation...................................24 4.3 Session Start Operation...................................27
4.4 Mid-Session Operation.....................................25 4.4 Mid-Session Operation.....................................28
4.5 Dynamic Operations........................................27 4.5 Dynamic Operations........................................30
4.5.1 Unsolicited Session Termination Operation............27 4.5.1 Unsolicited Session Termination Operation............30
4.5.2 Unsolicited Change of Authorization Operation........28 4.5.2 Unsolicited Change of Authorization Operation........31
4.6 Termination Operation.....................................29 4.6 Termination Operation.....................................32
4.7 Mobile IP Operations......................................30 4.7 Mobile IP Operations......................................32
4.8 Accounting Considerations.................................30 4.8 Accounting Considerations.................................33
4.9 Service Device Operation..................................31 4.9 Service Device Operation..................................33
4.10 Interoperability with Diameter Credit Control Application31 4.10 Interoperability with Diameter Credit Control Application34
5. Attributes....................................................31 5. Attributes....................................................34
5.1 PPCC attribute............................................32 5.1 PPAC Attribute............................................34
5.2 Dynamic-Capabilities attribute............................33 5.2 Session Termination Capability............................36
5.3 PPAQ Attribute............................................33 5.3 PPAQ Attribute............................................36
5.4 Tarrif Switch.............................................36 5.4 Table of Attributes.......................................40
5.5 Table of Attributes.......................................36 6. Security Considerations.......................................41
6. Security Considerations.......................................36 6.1 Authentication and Authorization..........................41
6.1 Authentication and Authorization..........................37 6.2 Replenishing Procedure....................................41
6.2 Replenishing Procedure....................................37 7. IANA Considerations...........................................41
7. IANA Considerations...........................................37 8. Normative References..........................................41
8. Normative References..........................................37 Acknowledgments..................................................42
Acknowledgments..................................................38 Author's Addresses...............................................42
Author's Addresses...............................................38 Intellectual Property Statement..................................43
Intellectual Property Statement..................................39
Full Copyright Statement.........................................39 RADIUS Extensions for PrePaid February 2004
Expiration Date..................................................40
Full Copyright Statement.........................................43
Expiration Date..................................................44
RADIUS Extensions for PrePaid February 2004
1. Introduction 1. Introduction
This draft describes RADIUS protocol extensions supporting PrePaid This draft describes RADIUS protocol extensions supporting PrePaid
Data Services. Data Services.
PrePaid data services are cropping up in many wireless and wireline PrePaid data services are cropping up in many wireless and wireline
based networks. A PrePaid Data Service subscriber is one that based networks. A PrePaid Data Service subscriber is one that
purchases a contract to deliver a data service for either a period purchases a contract to deliver a data service for either a period
of time, or a quantity of data. Before providing a prepaid data of time, or a quantity of data. Before providing a prepaid data
skipping to change at page 4, line 28 skipping to change at page 4, line 30
The subscriber purchases the Data Service using various means such The subscriber purchases the Data Service using various means such
as buying a PrePaid Card, or online. How the subscriber purchases as buying a PrePaid Card, or online. How the subscriber purchases
their PrePaid Data Service depends on the deployment and is not in their PrePaid Data Service depends on the deployment and is not in
scope for this document. scope for this document.
In some deployments, the PrePaid data service will be combined with In some deployments, the PrePaid data service will be combined with
other Prepaid services such as PrePaid voice service. This is not other Prepaid services such as PrePaid voice service. This is not
an issue for this document other than the fact that the PrePaid Data an issue for this document other than the fact that the PrePaid Data
Services described in this paper should work with other PrePaid data Services described in this paper should work with other PrePaid data
services. and or voice services.
The fundamental business driver for a carrier to provide PrePaid The fundamental business driver for a carrier to provide PrePaid
data services is to increase participation (subscriber base) and data services is to increase participation (subscriber base) and
thus to increase revenues. Therefore, it makes sense that PrePaid thus to increase revenues. Therefore, it makes sense that PrePaid
services meet the following goals: services meet the following goals:
- Leverage existing infrastructure, hence reducing capital - Leverage existing infrastructure, hence reducing capital
expenditures typically required when rolling a new service; expenditures typically required when rolling a new service;
- Ability to rate service requests in real-time; - Ability to rate service requests in real-time;
- Ability to check that the end users account for coverage for the - Ability to check that the end userÆs account for coverage for the
requested service charge prior to execution of that service; requested service charge prior to execution of that service;
- Protect against revenue loss, i.e., prevent an end user from - Protect against revenue loss, i.e., prevent an end user from
generating chargeable events when the credit of that account is generating chargeable events when the credit of that account is
exhausted or expired; exhausted or expired;
- Protect against fraud; - Protect against fraud;
- Be as widely deployable over Dialup, Wireless and WLAN networks. - Be as widely deployable over Dialup, Wireless and WLAN networks.
RADIUS Extensions for PrePaid February 2004
The protocol described in this document maximizes existing The protocol described in this document maximizes existing
infrastructure as much as possible hence the use of the RADIUS infrastructure as much as possible ¡ hence the use of the RADIUS
protocol. The protocol is used in ways to protect against revenue protocol. The protocol is used in ways to protect against revenue
loss or revenue leakage. This is achieved by defining procedures loss or revenue leakage. This is achieved by defining procedures
for the real-time delivery of service information to a pre-paid for the real-time delivery of service information to a pre-paid
enabled AAA server, to minimize the financial risk, for the pre-paid enabled AAA server, to minimize the financial risk, for the pre-paid
enabled AAA server to be able to allocate small quotas to each data enabled AAA server to be able to allocate small quotas to each data
session and having the ability to update the quotas from a central session and having the ability to update the quotas from a central
quota server dynamically during the lifetime of the PrePaid data quota server dynamically during the lifetime of the PrePaid data
session. As well, mechanisms have been designed to be able to session. As well, mechanisms have been designed to be able to
recover from errors that occur from time to time. recover from errors that occur from time to time.
skipping to change at page 6, line 5 skipping to change at page 6, line 5
available which, through co-ordination with the rating entity and available which, through co-ordination with the rating entity and
centralized balance manager is able to provide a quota response in centralized balance manager is able to provide a quota response in
response for prepaid data service. This quota server functionality response for prepaid data service. This quota server functionality
could be performed in the prepaid enabled AAA server or may exist in could be performed in the prepaid enabled AAA server or may exist in
an entity behind this AAA server. Finally, the details of the an entity behind this AAA server. Finally, the details of the
PrePaid System, such as its persistent store, how it maintains its PrePaid System, such as its persistent store, how it maintains its
accounts are not covered at all. However, in order to define the accounts are not covered at all. However, in order to define the
RADIUS protocol extensions it is necessary to discuss the functional RADIUS protocol extensions it is necessary to discuss the functional
behavior of the PrePaid System. behavior of the PrePaid System.
RADIUS Extensions for PrePaid February 2004
1.1 Terminology 1.1 Terminology
Access Device Access Device
PrePaid Client PrePaid Client
PrePaid Server PrePaid Server
Home agent (HA) Home agent (HA)
Home network Home network
Home AAA (HAAA) Home AAA (HAAA)
Broker AAA (BAAA) Broker AAA (BAAA)
Visited AAA (VAAA) Visited AAA (VAAA)
skipping to change at page 7, line 4 skipping to change at page 7, line 4
When pre-paid service is used the access or service device collects When pre-paid service is used the access or service device collects
service event information and reports it while and/or after services service event information and reports it while and/or after services
are provided to the prepaid user. This event information is sent to are provided to the prepaid user. This event information is sent to
a prepaid server by using the prepaid RADIUS extensions. a prepaid server by using the prepaid RADIUS extensions.
If real-time credit control is required, the access or service If real-time credit control is required, the access or service
device (prepaid client) contacts the prepaid server with service device (prepaid client) contacts the prepaid server with service
event information included before the service is provided. The event information included before the service is provided. The
prepaid server, depending on the service event information, performs prepaid server, depending on the service event information, performs
credit check and allocates a portion of available credit to the credit check and allocates a portion of available credit to the
RADIUS Extensions for PrePaid February 2004
service event. The rating entity converts this credit value into a service event. The rating entity converts this credit value into a
time and/or volume amount, which is then returned to the requesting time and/or volume amount, which is then returned to the requesting
device. The rating entity may determine that during the allocated device. The rating entity may determine that during the allocated
quota, a tariff switch will occur in which case the rating entity quota, a tariff switch will occur in which case the rating entity
will include details of the quota allocated prior to the tariff will include details of the quota allocated prior to the tariff
switch, details of the quota allocated after the tariff switch switch, details of the quota allocated after the tariff switch
together with details of when the tariff switch will occur. together with details of when the tariff switch will occur.
The requesting device (either access or service device) then The requesting device (either access or service device) then
monitors service execution according to the instructions returned by monitors service execution according to the instructions returned by
the prepaid server. After service completion or on a subsequent the prepaid server. After service completion or on a subsequent
request for service, the prepaid server deducts the reserved request for service, the prepaid server deducts the reserved
allocation of credit from the prepaid users account. allocation of credit from the prepaid userÆs account.
Similarly, when a user terminates an on-going prepaid service, the Similarly, when a user terminates an on-going prepaid service, the
prepaid client signals the prepaid server with the a value prepaid client signals the prepaid server with the a value
corresponding to the unused portion of the allocated quota. The corresponding to the unused portion of the allocated quota. The
prepaid server is then able to refund unused allocated funds into a prepaid server is then able to refund unused allocated funds into a
users prepaid account. userÆs prepaid account.
There MAY be multiple prepaid servers in the system for reasons of There MAY be multiple prepaid servers in the system for reasons of
redundancy and load balancing. The system MAY also contain separate redundancy and load balancing. The system MAY also contain separate
rating server(s) and accounts MAY locate in a centralized database. rating server(s) and accounts MAY locate in a centralized database.
System internal interfaces can exist to relay messages between System internal interfaces can exist to relay messages between
servers and an account manager. However the detailed architecture servers and an account manager. However the detailed architecture
of prepaid system and its interfaces are implementation specific and of prepaid system and its interfaces are implementation specific and
are out of scope of this specification. are out of scope of this specification.
accounting accounting
skipping to change at page 8, line 4 skipping to change at page 8, line 4
| Device | +-->| Device |<-----+ | Server | | Device | +-->| Device |<-----+ | Server |
+------------+ | +-----------+ | +--------------+ +------------+ | +-----------+ | +--------------+
| | | |
+------------+ | | +------------+ | |
| Access |<--+ | +--------------+ | Access |<--+ | +--------------+
| Device | +------>| PrePaid | | Device | +------>| PrePaid |
+------------+ prepaid | Server | +------------+ prepaid | Server |
protocol +--------------+ protocol +--------------+
Figure 1 Basic Prepaid Architecture Figure 1 Basic Prepaid Architecture
RADIUS Extensions for PrePaid February 2004
The prepaid server and accounting server in this architecture model The prepaid server and accounting server in this architecture model
are logical entities. The real configuration MAY combine them into a are logical entities. The real configuration MAY combine them into a
single host. single host.
There MAY exist protocol transparent RADIUS Proxies between prepaid There MAY exist protocol transparent RADIUS Proxies between prepaid
client and prepaid server. These proxies transparently support the client and prepaid server. These proxies transparently support the
prepaid RADIUS extensions. prepaid RADIUS extensions.
In order to generalize the solution, in this paper we generalize the In order to generalize the solution, in this paper we generalize the
Access Devices, which in reality may be a NAS from in Dialup Access Devices, which in reality may be a NAS from in Dialup
skipping to change at page 9, line 4 skipping to change at page 9, line 4
kinds or categories of AAA servers. The AAA server in the home kinds or categories of AAA servers. The AAA server in the home
network, the HAAA, is responsible for authentication of the network, the HAAA, is responsible for authentication of the
subscriber and also authorization of the service. In addition, the subscriber and also authorization of the service. In addition, the
HAAA communicates with the Prepaid servers using the RADIUS protocol HAAA communicates with the Prepaid servers using the RADIUS protocol
to authorize prepaid subscribers. In AAA based roaming deployments to authorize prepaid subscribers. In AAA based roaming deployments
the AAA server in the visited network, the VAAA, is responsible for the AAA server in the visited network, the VAAA, is responsible for
forwarding the RADIUS messages to the HAAA. The VAAA may also forwarding the RADIUS messages to the HAAA. The VAAA may also
modify the messages. In roaming deployments, the visited network modify the messages. In roaming deployments, the visited network
may be separated from the home network by one or more broker may be separated from the home network by one or more broker
networks. The AAA servers in the broker networks, BAAA are networks. The AAA servers in the broker networks, BAAA are
responsible to route the RADIUS packets and hence don’t play an
RADIUS Extensions for PrePaid February 2004
responsible to route the RADIUS packets and hence donÆt play an
active roll in the Prepaid Data Service delivery. active roll in the Prepaid Data Service delivery.
In this document the Prepaid Server is described in functional terms In this document the Prepaid Server is described in functional terms
related to their interface with the HAAA. The Prepaid Server related to their interface with the HAAA. The Prepaid Server
interfaces to entities which: interfaces to entities which:
i) Keep the accounting state of the prepaid subscribers (balance i) Keep the accounting state of the prepaid subscribers (balance
manager); manager);
ii) Allow service requests to be rated in real-time (Rating Engine); ii) Allow service requests to be rated in real-time (Rating Engine);
and and
skipping to change at page 10, line 5 skipping to change at page 10, line 5
then one HAAA is available to use by an Access Device. then one HAAA is available to use by an Access Device.
The network will have one or more Prepaid Servers. Multiple Prepaid The network will have one or more Prepaid Servers. Multiple Prepaid
Servers will be used to provide redundancy and load sharing. The Servers will be used to provide redundancy and load sharing. The
interface between the HAAA and the PPS is the RADIUS protocol in interface between the HAAA and the PPS is the RADIUS protocol in
this specification. However, in cases where the PPS does not this specification. However, in cases where the PPS does not
implement the RADIUS protocol, the implementation would have to map implement the RADIUS protocol, the implementation would have to map
the requirements defined in this document to whatever protocol is the requirements defined in this document to whatever protocol is
used between the HAAA and the PPS. used between the HAAA and the PPS.
RADIUS Extensions for PrePaid February 2004
+------+ +-----+ +------+ +-----+
| | | | | | | |
+--------+ +--------+ +--| HAAA |--+--| PPS | +--------+ +--------+ +--| HAAA |--+--| PPS |
| | | | | | | | | | | | | | | | | | | |
| Sub | | Access | | +------+ | +-----+ | Sub | | Access | | +------+ | +-----+
| |---| |--+ | | |---| |--+ |
| Device | | Device | | +------+ | +-----+ | Device | | Device | | +------+ | +-----+
| | | | | | | | | | | | | | | | | | | |
+--------+ +--------+ +--| HAAA |--+--| PPS | +--------+ +--------+ +--| HAAA |--+--| PPS |
| | | | | | | |
skipping to change at page 11, line 5 skipping to change at page 11, line 5
Device which then appends prepaid extensions on to the requests. The Device which then appends prepaid extensions on to the requests. The
Service Device communicates with one or more HAAA servers in the Service Device communicates with one or more HAAA servers in the
network. The Service Device is responsible for removing prepaid network. The Service Device is responsible for removing prepaid
extensions from messages received from the HAAA before proxying them extensions from messages received from the HAAA before proxying them
on to the Access Device. To provide redundancy more then one on to the Access Device. To provide redundancy more then one
Service Devices are available to use by an Access Device and more Service Devices are available to use by an Access Device and more
than one HAAA is available for use by the Service Device. The than one HAAA is available for use by the Service Device. The
Service Device is configured to be default gateway to the Access Service Device is configured to be default gateway to the Access
Device, enabling all traffic to be correctly metered. Device, enabling all traffic to be correctly metered.
RADIUS Extensions for PrePaid February 2004
(AAA) +---------+ +------+ +-----+ (AAA) +---------+ +------+ +-----+
+------------| Service | | | | | +------------| Service | | | | |
+--------+ | | |--+--| HAAA |--+--| PPS | +--------+ | | |--+--| HAAA |--+--| PPS |
| | +--------+ +--| Device | | | | | | | | | +--------+ +--| Device | | | | | | |
| Sub | | Access | (IP)| +---------+ | +------+ | +-----+ | Sub | | Access | (IP)| +---------+ | +------+ | +-----+
| |---| |-----+ | | | |---| |-----+ | |
| Device | | Device | | +---------+ | +------+ | +-----+ | Device | | Device | | +---------+ | +------+ | +-----+
| | +--------+ +--| Service | | | | | | | | | +--------+ +--| Service | | | | | | |
+--------+ | | |--+--| HAAA |--+--| PPS | +--------+ | | |--+--| HAAA |--+--| PPS |
+------------| Device | | | | | +------------| Device | | | | |
skipping to change at page 11, line 40 skipping to change at page 11, line 42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
+------+ +------+ +-|VAAA|-+-|BAAA|-+-|HAAA|-+-| PPS | +------+ +------+ +-|VAAA|-+-|BAAA|-+-|HAAA|-+-| PPS |
| | | | | | | | | | | | | | | |
+----+ +----+ +----+ +-----+ +----+ +----+ +----+ +-----+
| Visited | |Broker | | Home | | Visited | |Broker | | Home |
| Network | |Network| | Network | | Network | |Network| | Network |
Figure 4 Static Roaming Prepaid Architecture Figure 4 Static Roaming Prepaid Architecture
As in the basic prepaid architecture the subscribers device As in the basic prepaid architecture the subscriberÆs device
establishes a connection with the Access Device (NAS, WLAN Access establishes a connection with the Access Device (NAS, WLAN Access
Point). The Access Device communicates with the Visiting AAA server Point). The Access Device communicates with the Visiting AAA server
(VAAA) using the RADIUS protocol. Again for redundancy there maybe (VAAA) using the RADIUS protocol. Again for redundancy there maybe
more then one VAAA. The VAAA communicate using the RADIUS protocol more then one VAAA. The VAAA communicate using the RADIUS protocol
with AAA servers in the broker network (BAAA). There maybe more with AAA servers in the broker network (BAAA). There maybe more
then one Broker Network between the Visited Network and the Home then one Broker Network between the Visited Network and the Home
RADIUS Extensions for PrePaid February 2004
Network. The Home Network is the same as in the simple Network. The Home Network is the same as in the simple
architecture. architecture.
To support dynamic roaming the network will utilize mobile-ip. To support dynamic roaming the network will utilize mobile-ip.
Figure 5 illustrates a typical mobile-ip deployment. Note that Figure 5 illustrates a typical mobile-ip deployment. Note that
typically the mobile device would be moving between networks that typically the mobile device would be moving between networks that
use the same technology such as Wireless or WLAN. Increasingly, use the same technology such as Wireless or WLAN. Increasingly,
device will be able to roam between networks that use different device will be able to roam between networks that use different
technology such as between WLAN and Wireless and Broadband. technology such as between WLAN and Wireless and Broadband.
Fortunately, mobile-ip can address this type of roaming and Fortunately, mobile-ip can address this type of roaming and
skipping to change at page 13, line 4 skipping to change at page 13, line 4
+------+ +------+ +------+ +------+
Figure 5 Roaming using mobile-ip and pre-paid enabled Access Figure 5 Roaming using mobile-ip and pre-paid enabled Access
Devices Devices
In figure 5, the Subscriber device establishes a prepaid session In figure 5, the Subscriber device establishes a prepaid session
between the Access Device in the foreign network, which has prepaid between the Access Device in the foreign network, which has prepaid
capabilities and the Home Agent (HA). The setup for this service is capabilities and the Home Agent (HA). The setup for this service is
identical to the cases covered above. Notice that the Access Device identical to the cases covered above. Notice that the Access Device
is known as the Foreign Agent (FA). As the subscriber device moves is known as the Foreign Agent (FA). As the subscriber device moves
RADIUS Extensions for PrePaid February 2004
to another network it establishes a connection with another Access to another network it establishes a connection with another Access
Device in another foreign network. The prepaid data service should Device in another foreign network. The prepaid data service should
continue to be available. When a device associates to another continue to be available. When a device associates to another
Access Device it MUST re-authenticate at the new Access Device and Access Device it MUST re-authenticate at the new Access Device and
de-associate or logoff the old Access Device. Furthermore, any de-associate or logoff the old Access Device. Furthermore, any
unused quota at the old Access Device MUST be promptly credited back unused quota at the old Access Device MUST be promptly credited back
to the subscribers account. The reason we say promptly, is because to the subscribers account. The reason we say promptly, is because
if the subscriber is very low on resources to start with, the if the subscriber is very low on resources to start with, the
subscriber may not have enough resources to log on to the new Access subscriber may not have enough resources to log on to the new Access
Device. The speed at which resources can be returned depend on the Device. The speed at which resources can be returned depend on the
skipping to change at page 14, line 5 skipping to change at page 14, line 5
Unfortunately, standards are evolving with each network technology Unfortunately, standards are evolving with each network technology
creating their own scheme to make the handoff procedures more creating their own scheme to make the handoff procedures more
efficient. efficient.
Finally, pre-paid service may be provided in a roaming scenario Finally, pre-paid service may be provided in a roaming scenario
where the Access Devices do not support the prepaid client where the Access Devices do not support the prepaid client
capabilities. In such a scenario, a Service Device is configured as capabilities. In such a scenario, a Service Device is configured as
AAA proxy to the Home Agent and also as default gateway for the home AAA proxy to the Home Agent and also as default gateway for the home
agent, see Figure 6. agent, see Figure 6.
RADIUS Extensions for PrePaid February 2004
+------+ +------+ +----+ +----+ +----+ +------+ +------+ +----+ +----+ +----+
| | | | | | | | | | | | | | | | | | | |
|Sub | |Access+---|VAAA|-|BAAA|----------------| | |Sub | |Access+---|VAAA|-|BAAA|----------------| |
| |-|Device| | | | | | | | |-|Device| | | | | | |
|Device| | (FA) +-+ +----+ +-+--+ (AAA) | | |Device| | (FA) +-+ +----+ +-+--+ (AAA) | |
| | | | | | +---------+ |HAAA| | | | | | | +---------+ |HAAA|
+------+ +------+ | | | | | | +------+ +------+ | | | | | |
| | | +----+ +---+ | | +-----+ | | | +----+ +---+ | | +-----+
| | (IP) | | |(IP)|Ser| | | | | | | (IP) | | |(IP)|Ser| | | | |
|ROAMS +-------------+ HA |----| |--| |--| PPS | |ROAMS +-------------+ HA |----| |--| |--| PPS |
skipping to change at page 14, line 28 skipping to change at page 14, line 30
| | | | +-|VAAA+---+ | | | | | +-|VAAA+---+ |
|Sub | |Access| | | | | |Sub | |Access| | | | |
| |-|Device+-+ +----+ | | |-|Device+-+ +----+ |
|Device| | (FA) | (IP) | |Device| | (FA) | (IP) |
| | | +-----------------+ | | | +-----------------+
+------+ +------+ +------+ +------+
Figure 6 Roaming using mobile-ip and prepaid enabled Service Figure 6 Roaming using mobile-ip and prepaid enabled Service
Device behind the Home Agent. Device behind the Home Agent.
2.1 Why not existing RADIUS attributes?
It has been asked ôWhy not use existing RADIUS attributes to build a
prepaid solution? This will allow us to have a solution with
existing devices without code modification.ö
It is possible to build a prepaid solution using existing RADIUS
attributes. The RADIUS server can simply send an Access-Accept
message containing Session-Timeout(27) and set Termination-
Action(29) to RADIUS-request. Upon receiving the Access-Accept
message, the NAS will time the session and upon termination of the
session the NAS generate an Access-Request message again. The
RADIUS server would re-authenticate the session and reply with an
Access-Accept message with additional time in Session-Timeout(27) or
an Access-Reject message if there were no more resources in the
userÆs account.
If the user terminates the session before the time expressed in
Session-Timeout(27). The NAS will recover any unused time from the
accounting stream.
RADIUS Extensions for PrePaid February 2004
There are several problems with such a solution:
-It only allows for time-based prepaid. The solution presented in
this document allows for both time and volume based prepaid. As
well as extensibility for other features such as tarified based
solutions.
-This solution only allows for prepaid based on Access. The
solution presented in this document allows the use of this protocol
to support prepaid solutions for other services not just Access.
-Using accounting messages to recoup unused time may be problematic
because RADIUS accounting messages are not real-time. A RADIUS
server may store-and-forward accounting messages in batches. The
solution presented in this paper does not rely on Accounting Packets
at all. It uses Access-Request, messages which do flow through any
network in real-time. Delaying accounting messages may cause
revenue leakage.
-Session-Timeout(27) is not a mandatory attribute. If a prepaid
subscriber is being serviced by a NAS that does not adhere to
Session-Timeout then that subscriber will obtain unlimited service.
-Termination-Action(29) presents its own issues. First the
behaviour of Termination-Action(29) is not mandatory. Second,
according to RFC2865 Termination-Action fires when the Service is
complete. But we should not be terminating the service we really
should only be terminating a session when we are negotiating
additional quota. The refreshing of the time quota should be
transparent to the user. Because Termination-Action occurs when the
Service is complete it is unclear whether or not the user experience
would be transparent. For example, will the RADIUS server allocate
the subscriber a new IP address? Furthermore, the RADIUS server has
no way of telling why the Access-Request message was generated. The
RADIUS server will have to wait for the corresponding accounting
packet to determine the reason for this Access-Request message.
Lastly re-authenticating the subscriber may take far too long. The
solution presented in this document allows quota replenishing to
occur in an undisruptive manner from the perspective of the user.
No re-authentication is required and quotas can be negotiated prior
to the quotas running out.
RADIUS Extensions for PrePaid February 2004
-Prepaid ambiguity. Implementing prepaid using existing RADIUS
attributes presents another problem. Due to the fact that the
standard RADIUS attributes are not mandatory, then the correct
prepaid operation is really an act of faith on the part of the
RADIUS server. If Session-Timeout(27) and/or Termination-Action(29)
are not supported, the prepaid subscriber will get free access. The
solution described in this document, requires that a prepaid capable
NAS inform the RADIUS server whether or not it supports prepaid
capabilities. The RADIUS server can now determine whether service
should be granted or not. For example, if a prepaid subscriber is
connected to a NAS that does not support prepaid, the RADIUS server
can either instruct the NAS to tunnel the traffic to a gateway that
does support prepaid metering, or it may allow the subscriber on but
restrict their traffic.
The prepaid solution we present is a robust carrier grade prepaid
solution. It only requires the support of 2 mandatory attributes
and one optional attribute. Furthermore, it does not really
require much code support at the NAS. NASes already support
measurement of time and volume. This solution requires that they
advertise their prepaid capabilities in an Access-Request; that they
generate an Access-Request Authorize-Only packet to obtain more
quota at or before the quota is used up. It also requires that the
NAS send an Access-Request with Authorize-Only when the session
terminates to return any unused quota to the prepaid system.
Lastly the solution provided in this document is extensible. This
document defines the basic exchanges between a prepaid capable NAS
and a RADIUS server. The protocol can easily be extended to support
tariff switching and other prepaid business models.
3. Use-cases 3. Use-cases
In this section we present a set of use cases that will help In this section we present a set of use cases that will help
establish the requirements needed to deliver PrePaid data services. establish the requirements needed to deliver PrePaid data services.
These use cases dont address how the PrePaid account is established These use cases donÆt address how the PrePaid account is established
or maintained. It is assumed that the PrePaid subscriber has or maintained. It is assumed that the PrePaid subscriber has
obtained a valid account from a service provider such as a wireless obtained a valid account from a service provider such as a wireless
operator or a WLAN operator. operator or a WLAN operator.
To make the document as general as possible, the use cases cover the To make the document as general as possible, the use cases cover the
experience from the Access Device and not from the User’s Device. experience from the Access Device and not from the UserÆs Device.
The connection between the User’s Device, which typically involves The connection between the UserÆs Device, which typically involves
RADIUS Extensions for PrePaid February 2004
setting up a layer 2 session, e.g., PPP session or GPRS PDP Context, setting up a layer 2 session, e.g., PPP session or GPRS PDP Context,
is specific to a given network technology and the details are not is specific to a given network technology and the details are not
required to deliver a PrePaid service. required to deliver a PrePaid service.
3.1 Simple pre-paid access use-case 3.1 Simple pre-paid access use-case
A PrePaid subscriber connects to his home network. As usual, the A PrePaid subscriber connects to his home network. As usual, the
Access Device that is servicing the subscriber will use the AAA Access Device that is servicing the subscriber will use the AAA
infrastructure to authenticate and authorize the subscriber. infrastructure to authenticate and authorize the subscriber.
The Access Device sends a RADIUS Access-Request to the AAA system to The Access Device sends a RADIUS Access-Request to the AAA system to
authenticate the subscriber, and identify and authorize the service. authenticate the subscriber, and identify and authorize the service.
The Access-Request includes the subscribers credentials and may The Access-Request includes the subscriberÆs credentials and may
include the PrePaid capabilities of the Access Device. PrePaid include the PrePaid capabilities of the Access Device. PrePaid
capabilities will be included if the Access Device supports PrePaid capabilities MUST be included if the Access Device supports PrePaid
functionality. functionality.
The AAA System proceeds with the authentication procedure. This may The AAA System proceeds with the authentication procedure. This may
involve several transactions such as in EAP. Once the subscriber involve several transactions such as in EAP. Once the subscriber
has been validated, the AAA system determines that the subscriber is has been validated, the AAA system determines that the subscriber is
a PrePaid subscriber and requests that the PrePaid System authorize a PrePaid subscriber and requests that the PrePaid System authorize
the PrePaid subscriber. The request may include the PrePaid the PrePaid subscriber. The request MUST include the PrePaid
Capabilities of the serving Access Device. These capabilities will Capabilities of the serving Access Device. These capabilities will
include whether the Access Device support optional granular prepaid include whether the Access Device support optional granular prepaid
service. Granular prepaid service allows an Access Device to offer service. Granular prepaid service allows an Access Device to offer
service differentiation above plain network access, for example service differentiation above plain network access, for example
discriminating between a prepaid service request for access to the discriminating between a prepaid service request for access to the
public Internet from access to a particular application server public Internet from access to a particular application server
hosted in the private domain of the home provider network. In the hosted in the private domain of the home provider network. In the
simple prepaid access scenario, such capabilities are not required simple prepaid access scenario, such capabilities are not required
to be supported by the Access Device. to be supported by the Access Device.
The PrePaid System will validate that the subscriber has a PrePaid The PrePaid System will validate that the subscriber has a PrePaid
Account; it will validate that the Account is Active; and will Account; it will validate that the account is active; and will
validate that the Access Device has the appropriate PrePaid validate that the Access Device has the appropriate PrePaid
capabilities. If all is in order, the PrePaid System will authorize capabilities. If all is in order, the PrePaid System will authorize
the subscriber to use the network. Otherwise it will reject the the subscriber to use the network. Otherwise it will reject the
request. The response is sent back to the AAA System. The response request. The response is sent back to the AAA System. The response
includes attributes such as, definition of what services are includes attributes such as, definition of what services are
RADIUS Extensions for PrePaid February 2004
authorized. The exact definition of the service may define vanilla authorized. The exact definition of the service may define vanilla
network access or more granular service definition. The exact network access or more granular service definition. The exact
definition of these services is not the focus of this draft. This definition of these services is not the focus of this draft. This
definition MAY include a “service key” which can be used to definition MAY include a ôservice keyö which can be used to
correlate prepaid requests for access to a service with the service correlate prepaid requests for access to a service with the service
definition in the prepaid system. Such service key information MUST definition in the prepaid system. Such service key information MUST
be included when the prepaid user has subscribed to more than one be included when the prepaid user has subscribed to more than one
prepaid service. If a user has subscribed to only a single service, prepaid service. If a user has subscribed to only a single service,
the response MAY also include an allocation of a portion of the the response MAY also include an allocation of a portion of the
subscriber’s account called the initial quota (in units of time or subscriberÆs account called the initial quota (in units of time or
volume) and optionally a threshold value. When the rating engine volume) and optionally a threshold value.
has determined that a tariff switch will shortly occur, the initial
quota may be segmented into that which SHOULD be used before the [Editor comments: we should leave tariff switch issues to another
tariff switch, that which SHOULD be used after the tariff switch document. One way to deal with a tariff switch is to set the
together with details describing the tariff switching instant. threshold or quota such that a new allocation is requested just
before or at the tariff switch period.]
When the rating engine has determined that a tariff switch will
shortly occur, the initial quota may be segmented into that which
SHOULD be used before the tariff switch, that which SHOULD be used
after the tariff switch together with details describing the tariff
switching instant.
The Access Device is responsible for requesting quota to be allocate The Access Device is responsible for requesting quota to be allocate
for a particular prepaid user. for a particular prepaid user.
In order to support concurrent PrePaid sessions, at any time, the In order to support concurrent PrePaid sessions, at any time, the
PrePaid System allocates a portion of the subscribers account to a PrePaid System allocates a portion of the subscribers account to a
given PrePaid session. For example, in a multi-service environment given PrePaid session. For example, in a multi-service environment
it might happen that an end user with an already ongoing service it might happen that an end user with an already ongoing service
(e.g., browsing the Internet) issues a new service request (e.g., (e.g., browsing the Internet) issues a new service request (e.g.,
for downloading a ring-tone) towards the same account. Throughout for downloading a ring-tone) towards the same account. Throughout
the lifetime of a session the Access Device will monitor usage the lifetime of a session the Access Device will monitor usage
according to the quota(s) returned from the prepaid server and will according to the quota(s) returned from the prepaid server and will
request further quota updates from the PrePaid System as previously request further quota updates from the PrePaid System as previously
allocated quotas are consumed. Conditions may be included with allocated quotas are consumed. Conditions may be included with
quotas, which indicate when an allocated quota should be returned to quotas, which indicate when an allocated quota should be returned to
the prepaid system. These conditions can include an idle timeout the prepaid system. These conditions can include an Idle-Timeout(28)
associated with the provided quota. In this case, the Access device associated with the provided quota. In this case, the Access device
monitors the service for activity. When a single inactivity period monitors the service for activity. When a single inactivity period
exceeds that provided in the quota conditions, the unused quota is exceeds that provided in the quota conditions, the unused quota is
returned to the prepaid server. returned to the prepaid server.
RADIUS Extensions for PrePaid February 2004
The AAA system incorporates the PrePaid attributes received from the The AAA system incorporates the PrePaid attributes received from the
PrePaid System with the service attributes into an Access Response PrePaid System with the service attributes into an Access-Accept
message that it sends back to the Access Device. Note the AAA message that it sends back to the Access Device. Note the AAA
System is responsible for authorizing the service whereas the System is responsible for authorizing the service whereas the
PrePaid System is responsible for PrePaid authorization. PrePaid System is responsible for PrePaid authorization.
Upon receiving the Access Response, the Access Device allows the Upon receiving the Access-Response, the Access Device allows the
PrePaid data session to start and it starts to meter the session PrePaid data session to start and it starts to meter the session
based on time or volume, as indicated in the returned Quota based on time or volume, as indicated in the returned Quota
Once the usage for the session approaches the allotted quota (as Once the usage for the session approaches the allotted quota (as
expressed by the threshold), the Access Device will request an expressed by the threshold), the Access Device will request an
additional quota. The re-authorization for additional quota flows additional quota. The re-authorization for additional quota flows
through the AAA system to the PrePaid System. The PrePaid System through the AAA system to the PrePaid System. The PrePaid System
revalidates the subscriber’s account; it will subtract the previous revalidates the subscriberÆs account; it will subtract the previous
quota allocation from the user’s balance and if there is a balance quota allocation from the userÆs balance and if there is a balance
remaining it will reauthorize the request with an additional quota remaining it will reauthorize the request with an additional quota
allotment. Otherwise, the PrePaid System will reject the request. allotment. Otherwise, the PrePaid System will reject the request.
Note the replenishing of the quotas is a re-authorization procedure Note the replenishing of the quotas is a re-authorization procedure
and does not involve re-authentication of the subscriber. and does not involve re-authentication of the subscriber.
It is important to note that the PrePaid System is maintaining It is important to note that the PrePaid System is maintaining
session state for the subscriber. This state includes how much was session state for the subscriber. This state includes how much was
allocated during the last quota allocation for a particular session allocated during the last quota allocation for a particular session
and how much is left in the account. Therefore, it is required that and how much is left in the account. Therefore, it is required that
all subsequent messages about the PrePaid session reach the correct all subsequent messages about the PrePaid session reach the correct
PrePaid System. PrePaid System.
Upon receiving a re-allotment of the quota, the Access Device will, Upon receiving a re-allotment of the quota, the Access Device will,
continue the data service session until the new threshold is continue the data service session until the new threshold is
reached. If the Access Device receives a rejection, then it will reached. If the request for additional quota cannot be fulfilled
let the subscriber use up the remaining quota and then terminate the then the Access Device will let the subscriber use up the remaining
session. quota and terminate the session.
Alternatively, instead of terminating the session, the Access Device Alternatively, instead of terminating the session, the Access Device
may restrict the data session such that the subscriber can only may restrict the data session such that the subscriber can only
reach a particular web server. This web server maybe used to allow reach a particular web server. This web server maybe used to allow
the subscriber to replenish their account. This restriction can the subscriber to replenish their account. This restriction can
also be used to allow new subscribers to purchase their initial also be used to allow new subscribers to purchase their initial
PrePaid Service. PrePaid Service.
RADIUS Extensions for PrePaid February 2004
Should the subscriber terminate the session before the session the Should the subscriber terminate the session before the session the
quota is used up, the remaining balance allotted to the session must quota is used up, the remaining balance allotted to the session must
be credited back to the subscribers account. be credited back to the subscriberÆs account.
As well, while the Access Device is waiting for the initial quota, As well, while the Access Device is waiting for the initial quota,
the subscriber may have dropped the session. The initial quota must the subscriber may have dropped the session. The initial quota must
be credited back to the subscribers account. be credited back to the subscribers account.
3.2 Simple Service Device use-case 3.2 Simple Service Device use-case
When the Access Device does not support the prepaid extensions, an When the Access Device does not support the prepaid extensions, an
operator may still offer prepaid services to subscribers by using a operator may still offer prepaid services to subscribers by using a
service device configured as default IP gateway to the Access service device configured as default IP gateway to the Access
skipping to change at page 18, line 18 skipping to change at page 20, line 38
The Access Device sends an Access Request to the Service Device The Access Device sends an Access Request to the Service Device
acting as AAA proxy to authenticate the subscriber, and identify and acting as AAA proxy to authenticate the subscriber, and identify and
authorize the service. The Service Device will proxy the Access authorize the service. The Service Device will proxy the Access
Request and append its own Prepaid capabilities to the Access Request and append its own Prepaid capabilities to the Access
Request message. These prepaid capabilities are defined identically Request message. These prepaid capabilities are defined identically
to the simple access device user-case. to the simple access device user-case.
The prepaid system performs functions as with prepaid support in the The prepaid system performs functions as with prepaid support in the
Access Device, e.g., the AAA system incorporates the prepaid Access Device, e.g., the AAA system incorporates the prepaid
attributes received from the Prepaid System with the service attributes received from the Prepaid System with the service
attributes into an Access Response message that it sends back to the attributes into an Access-Accept message that it sends back to the
Service Device. The Service device removes these attributes before Service Device. The Service device removes these attributes before
forwarding the Access Response message to the Access Device. forwarding the Access-Accept message to the Access Device.
Upon receiving the Access Response with allocated quota, the Service Upon receiving the Access-Accept with allocated quota, the Service
Device allows the prepaid data service session to start and since it Device allows the prepaid data service session to start and since it
is configured as default gateway to the access device, it starts to is configured as default gateway to the access device, it starts to
meter the session based on time and/or volume. meter the session based on time and/or volume.
3.3 Support for concurrent PrePaid sessions 3.3 Support for concurrent PrePaid sessions
RADIUS Extensions for PrePaid February 2004
Both prepaid support using Access Devices and prepaid support using Both prepaid support using Access Devices and prepaid support using
Service Devices can be configured to support a prepaid multi-service Service Devices can be configured to support a prepaid multi-service
environment. In such circumstances, the prepaid client capabilities environment. In such circumstances, the prepaid client capabilities
will indicate that the Access or Service Device supports a multi- will indicate that the Access or Service Device supports a multi-
service environment. In such circumstances, instead of returning a service environment [Editor: need to add this to the PPAC]. [Editor:
quota, the prepaid service provides a list of authorized services This needs to be reworked. DonÆt believe that this step is required.
corresponding to a list of service keys to the prepaid client. The The Service Ids should be known a priori ¡ the Access Request should
Access/Service device then uses these service keys to request include the Service Key being requested.] In such circumstances,
prepaid authorization to the corresponding services. The prepaid instead of returning a quota, the prepaid service provides a list of
server responds with an individual quota for the requested service authorized services corresponding to a list of service keys to the
key. The Access/Service Device may in parallel request prepaid prepaid client. The Access/Service device then uses these service
authorization to a second service key. In which case a separate keys to request prepaid authorization to the corresponding services.
authorization exchange is used to provide an independent quota for The prepaid server responds with an individual quota for the
this second service. requested service key [Editor: add service key to PPAQ]. The
Access/Service Device may in parallel request prepaid authorization
to a second service key. In which case a separate authorization
exchange is used to provide an independent quota for this second
service.
Each session is treated independently. Each session is treated independently.
The method by which a prepaid user activates a service and the The method by which a prepaid user activates a service and the
method for signaling this information to the Access/Service Device method for signaling this information to the Access/Service Device
is out of scope of this draft. is out of scope of this draft.
The method by which a granular service is defined is out of scope of The method by which a granular service is defined is out of scope of
this draft. Only service key correlation information is required to this draft. Only service key correlation information is required to
enable the prepaid server to authorize and rate a particular enable the prepaid server to authorize and rate a particular
skipping to change at page 19, line 27 skipping to change at page 22, line 4
offered to roaming subscribers. Support for static and dynamic offered to roaming subscribers. Support for static and dynamic
roaming models are needed. Static roaming is where the subscriber roaming models are needed. Static roaming is where the subscriber
logs onto a foreign network. The foreign network has a roaming logs onto a foreign network. The foreign network has a roaming
agreement directly with the home network or through a broker network agreement directly with the home network or through a broker network
or networks. The subscriber remains logged into the network until or networks. The subscriber remains logged into the network until
the subscriber changes location. When changing location a new the subscriber changes location. When changing location a new
connection and a new login procedure is required. connection and a new login procedure is required.
Dynamic roaming allows to subscriber to move between foreign Dynamic roaming allows to subscriber to move between foreign
networks while maintaining a connection with the home network networks while maintaining a connection with the home network
RADIUS Extensions for PrePaid February 2004
seamlessly. As the subscriber moves between networks, the data seamlessly. As the subscriber moves between networks, the data
session is handed off between the networks. session is handed off between the networks.
In both roaming scenarios, the subscriber always authenticates with In both roaming scenarios, the subscriber always authenticates with
the home network. PrePaid authorization and quota replenishing for the home network. PrePaid authorization and quota replenishing for
the session need to be received at the home network and more the session need to be received at the home network and more
specifically at the PrePaid System where state is being maintained. specifically at the PrePaid System where state is being maintained.
Dynamic roaming is particularly challenging. A subscriber that Dynamic roaming is particularly challenging. A subscriber that
established a PrePaid Data Session may roam to another Access Device established a PrePaid Data Session may roam to another Access Device
that doesnt not support PrePaid functionality. The system should that doesnÆt not support PrePaid functionality. The system should
be capable to continue the PrePaid session. be capable to continue the PrePaid session.
3.5 PrePaid termination 3.5 PrePaid termination
When fraud is detected by the PrePaid System, or when an error is When fraud is detected by the PrePaid System, or when an error is
detected, it may be beneficial for the PrePaid system to terminate a detected, it may be beneficial for the PrePaid system to terminate a
specific session for the subscriber or all the sessions of a specific session for the subscriber or all the sessions of a
subscriber. subscriber.
Some errors can occur such that the PrePaid System is in a state Some errors can occur such that the PrePaid System is in a state
where it is not sure whether the session is in progress or not. where it is not sure whether the session is in progress or not.
Under conditions such as this, the PrePaid system may wish to Under conditions such as this, the PrePaid system may wish to
terminate the PrePaid data session to make sure that resources are terminate the PrePaid data session to make sure that resources are
not being utilized for which it cant charge for reliably. not being utilized for which it canÆt charge for reliably.
Some handoff procedure used during dynamic roaming may require that Some handoff procedure used during dynamic roaming may require that
the PrePaid system explicitly terminate the subscribers PrePaid data the PrePaid system explicitly terminate the subscribers PrePaid data
session at an Access Device. For example, if time based PrePaid session at an Access Device. For example, if time based PrePaid
service is being used and the mobile subscriber performs a dormant service is being used and the mobile subscriber performs a dormant
handoff, the PrePaid System needs to explicitly terminate the handoff, the PrePaid System needs to explicitly terminate the
PrePaid session at the old Access Device. PrePaid session at the old Access Device.
4. Operations 4. Operations
4.1 General Requirements 4.1 General Requirements
4.1.1 Broker AAA Requirements 4.1.1 Broker AAA Requirements
Broker AAA servers MUST support the Message-Authenticator(80) Broker AAA servers MUST support the Message-Authenticator(80)
attribute as defined in [RFC2869]. If BAAA servers are used, the attribute as defined in [RFC2869]. If BAAA servers are used, the
RADIUS Extensions for PrePaid February 2004
BAAA servers function is to forward the RADIUS packets as usual to BAAA servers function is to forward the RADIUS packets as usual to
the appropriate RADIUS servers. the appropriate RADIUS servers.
Accounting messages are not needed to deliver a PrePaid service. Accounting messages are not needed to deliver a PrePaid service.
However, accounting messages can be used to keep the PrePaid Server However, accounting messages can be used to keep the PrePaid Server
current as to what is happening with the PrePaid data session. current as to what is happening with the PrePaid data session.
Therefore, BAAA SHOULD deliver RADIUS Accounting messages using the Therefore, BAAA SHOULD deliver RADIUS Accounting messages using the
pass through mode described in [RFC2866]. pass through mode described in [RFC2866].
4.2 Authentication and Authorization for Prepaid Enabled Access Devices 4.2 Authentication and Authorization for Prepaid Enabled Access Devices
The Access Device initiates the authentication and authorization The Access Device initiates the authentication and authorization
procedure by sending a RADIUS Access-Request as usual. procedure by sending a RADIUS Access-Request as usual.
If the Access Device has PrePaid Client capabilities, it MUST If the Access Device has PrePaid Client capabilities, it MUST
include the PPCC attribute in the RADIUS Access-Request. The PPCC include the PPAC(TBD) attribute in the RADIUS Access-Request. The
attribute indicates to the PrePaid server the PrePaid capabilities PPAC(TBD) attribute indicates to the PrePaid server the PrePaid
possessed by the Access Device. These are required in order to capabilities possessed by the Access Device. These are required in
complete the PrePaid authorization procedures. order to complete the PrePaid authorization procedures.
[Editor: add support for the MultiSession-Capabilities attribute]
If the Access Device supports multiple sessions-keys capabilities, If the Access Device supports multiple sessions-keys capabilities,
then it SHOULD include the MultiSession-Capabilities attribute. The then it SHOULD include the MultiSession-Capabilities attribute. The
presence of the MultiSession-Capabilities attribute will indicate to presence of the MultiSession-Capabilities attribute will indicate to
the PPS that the Access Device support prepaid service the PPS that the Access Device support prepaid service
differentiation above simple prepaid access. differentiation above simple prepaid access.
If the Access Device supports the Disconnect-Message or the Change- If the Access Device supports the Disconnect-Message or the Change-
of-Auhtorization capabilities, then it SHOULD include the Dynamic- of-Authorization capabilities, then it SHOULD include the Dynamic-
Capabilities attribute. Capabilities attribute.
In certain deployments, there may be other ways in which to In certain deployments, there may be other ways in which to
terminate a data session, or change authorization of an active terminate a data session, or change authorization of an active
session. For example, some Access Devices provide a session session. For example, some Access Devices provide a session
termination service via Telnet or SNMP. In these cases, the AAA termination service via Telnet or SNMP. In these cases, the AAA
server MAY add the Dynamic-Capabilities message to the Access- server MAY add the Dynamic-Capabilities message to the Access-
Request. Request. Upon receiving the Change-of-Authorization message, the
AAA server would then be responsible for terminating the session
using whatever means that are supported by the device.
If the authentication procedure involves multiple Access-Requests If the authentication procedure involves multiple Access-Requests
(as in EAP), the Access Device MUST include the PPCC attribute and (as in EAP), the Access Device MUST include the PPAC(TBD) attribute
the Dynamic-Capabilities attribute (if used) in at least the last
Access-Request of the authentication procedure. RADIUS Extensions for PrePaid February 2004
and the Dynamic-Capabilities attribute (if used) in at least the
last Access-Request of the authentication procedure.
The Access-Request will be sent as usual to the HAAA. The packet The Access-Request will be sent as usual to the HAAA. The packet
may be proxied through zero or more BAAA. may be proxied through zero or more BAAA.
Once the Access-Request arrives at the HAAA, the HAAA will Once the Access-Request arrives at the HAAA, the HAAA will
authenticate the subscriber. If the subscriber is cannot be authenticate the subscriber. If the subscriber is cannot be
authenticated, the HAAA will send an Access-Reject message back to authenticated, the HAAA will send an Access-Reject message back to
the client. If the subscriber is authenticated, the HAAA will the client. If the subscriber is authenticated, the HAAA will
determine whether or not the subscriber is a PrePaid subscriber. determine whether or not the subscriber is a PrePaid subscriber.
The techniques used to determine whether or not a subscriber is a The techniques used to determine whether or not a subscriber is a
PrePaid subscriber is beyond the scope of this document. If the PrePaid subscriber is beyond the scope of this document. If the
subscriber is not a PrePaid subscriber, then the HAAA will respond subscriber is not a PrePaid subscriber, then the HAAA will respond
as usual with an Access-Accept or Access-Reject message. If the as usual with an Access-Accept or Access-Reject message. If the
subscriber is a PrePaid Subscriber the HAAA SHALL forward the subscriber is a PrePaid Subscriber the HAAA SHALL forward the
Access-Request to a PrePaid server for further authorization. Access-Request to a PrePaid server for further authorization.
The Access-Request will contain the PPCC attribute, the Dynamic- The Access-Request will contain the PPAC(TBD) attribute, the
Capabilities attribute if one was included; and the MultiSession- Dynamic-Capabilities attribute if one was included; and the
Capabilities attribute if one was included, the User-Name(1) MultiSession-Capabilities attribute if one was included, the User-
attribute MAY be set to a value that would represent the Name(1) attribute MAY be set to a value that would represent the
Subscriber’s PrePaid Identity. This attribute is used by the SubscriberÆs PrePaid Identity. This attribute is used by the
PrePaid server to locate the PrePaid Subscriber’s account. For PrePaid server to locate the PrePaid SubscriberÆs account. For
added security, the HAAA MAY also set the User-Password(2) attribute added security, the HAAA MAY also set the User-Password(2) attribute
to the password used between the HAAA and the PrePaid server. to the password used between the HAAA and the PrePaid server.
The PrePaid server lookups the subscribers PrePaid account and will The PrePaid server lookups the subscriberÆs PrePaid account and will
authorize the subscriber taking into consideration the Access Device authorize the subscriber taking into consideration the Access Device
PrePaid Client Capabilities. The Prepaid Server will decide whether PrePaid Client Capabilities. The Prepaid Server will decide whether
single service prepaid access will be provided or a multiple session single service prepaid access will be provided or a multiple session
pre-paid access will be provided. pre-paid access will be provided.
4.2.1 Single Service Pre-paid 4.2.1 Single Service Pre-paid
If a single service prepaid access is provided, upon successful If a single service prepaid access is provided, upon successful
authorization, the PrePaid server will generate an Access-Accept authorization, the PrePaid server will generate an Access-Accept
containing the PPAQ attribute, which contains the following sub- containing the PPAC(TBD) attribute and the PPAQ(TBD) attribute.
attributes:
The PPAC attribute returned to the client indicates the type of
prepaid service to be provided for the session.
which contains the following sub-attributes:
RADIUS Extensions for PrePaid February 2004
- The QUOTA-Id which is set by the PrePaid server to a unique value - The QUOTA-Id which is set by the PrePaid server to a unique value
that is used to correlate subsequent quota requests; that is used to correlate subsequent quota requests;
- Volume and/or Time Quotas, one of which is set to a value - Volume and/or Time Quotas, one of which is set to a value
representing a portion of the subscribers account; representing a portion of the subscribers account;
- MAY contain a Time or Volume Threshold that controls when the - MAY contain a Time or Volume Threshold that controls when the
Access Device requests additional quota; Access Device requests additional quota;
- The IP address of the Serving PrePaid Server and one or more - The IP address of the Serving PrePaid Server and one or more
alternative PrePaid Servers. This is used by the HAAA to route alternative PrePaid Servers. This is used by the HAAA to route
subsequent quota replenishing messages to the appropriate PrePaid subsequent quota replenishing messages to the appropriate PrePaid
server(s). server(s).
- Optionally, a tariff switch time;
- Optionally, a Volume and Time Quota which can be used following a
tariff Switch;
Note: Idle-Timeout(28) can be used to trigger the premature Note: Idle-Timeout(28) can be used to trigger the premature
termination of a pre-paid service following subscriber inactivity. termination of a pre-paid service following subscriber inactivity.
Depending on site policies, upon unsuccessful authorization, the Depending on site policies, upon unsuccessful authorization, the
PrePaid server will generate an Access-Reject or an Access-Accept PrePaid server will generate an Access-Reject to terminate the
and set the Filter-Id(11) or the Ascend-Data-Filter (if supported) session immediately. Alternatively, the PrePaid server may generate
attribute and the Session-Timeout(27) attribute such that the an Access-Accept blocking some or all of the traffic and/or redirect
PrePaid subscriber could get access to a restricted set of locations some or all of the traffic to a location where the subscriber can
for a short duration to allow them to replenish their account, or replenish their account for a period of time. Blocking of traffic
create an account; or to browse free content. is achieved by either Filter-Id(11) or NAS-Filter-Rule(see Redirect
I-d). Redirection is achieved by sending Redirect-Id or Redirect-
Rule defined in the Redirect I-d. The period of time before the
blocked/redirected session last can be specified by Session-
Timeout(27) attribute.
Upon receiving the Access-Accept from the PrePaid Server, the HAAA Upon receiving the Access-Accept from the PrePaid Server, the HAAA
will append the usual service attributes and forward the packet to will append the usual service attributes and forward the packet to
the Access Device. The HAAA SHALL NOT append or overwrite any the Access Device. The HAAA SHALL NOT append or overwrite any
attributes already set by the PrePaid server. If the HAAA, receives attributes already set by the PrePaid server. If the HAAA, receives
an Access-Reject message, it will simply forward the packet to its an Access-Reject message, it will simply forward the packet to its
client. Depending on site policies, if the HAAA fails to receive an client. Depending on site policies, if the HAAA fails to receive an
Access-Accept or Access-Reject message from the PrePaid server it Access-Accept or Access-Reject message from the PrePaid server it
MAY do nothing or send an Access-Reject or an Access-Accept message MAY do nothing or send an Access-Reject or an Access-Accept message
back to its client. back to its client.
4.2.2 Multiple-Session Pre-paid 4.2.2 Multiple-Session Pre-paid
RADIUS Extensions for PrePaid February 2004
If the prepaid server decides that multiple-session prepaid service If the prepaid server decides that multiple-session prepaid service
is to be provided, upon successful authorization, the Prepaid server is to be provided, upon successful authorization, the Prepaid server
will generate an Access Accept containing the initial PPQ-Response will generate an Access-Accept containing the PPAQ attribute which
attribute which contains the following sub-attributes: contains the following sub-attributes:
- a list of the service keys which the Access Device can subsequently - a list of the service keys which the Access Device can subsequently
use in pre-paid service authorization request. use in pre-paid service authorization request.
The Prepaid Referral the first one is set to the IP address of the [Editor: if this stands (see earlier comments) then instead of
issuing an access-accept the PPS should issue a Challenge that
contains the service-keys]
The first PrepaidServer subtype is set to the IP address of the
Serving Prepaid Server, the second one is set to an alternate Serving Prepaid Server, the second one is set to an alternate
Prepaid Server. This way the HAAA will be able to route subsequent Prepaid Server if any. This way the HAAA will be able to route
packets to the serving Prepaid Server or its alternate. subsequent packets to the serving Prepaid Server or its alternate.
[Editor: this should only be done on the Access Accept that deliver
the quota for the specific service.]
Additionally, the Prepaid server MAY set the Terminate-Action(29) to Additionally, the Prepaid server MAY set the Terminate-Action(29) to
RADIUS-Request(1); and MAY set Acct-Interim-Interval(85) to control RADIUS-Request(1); and MAY set Acct-Interim-Interval(85) to control
how often interim Accounting Requests are generated. how often interim Accounting Requests are generated.
Upon receiving the Access Accept from the Prepaid Server, the HAAA Upon receiving the Access-Accept from the Prepaid Server, the HAAA
will append the usual service attributes and forward the packet. will append the usual service attributes and forward the packet.
The HAAA SHALL NOT append any attributes already set by the Prepaid The HAAA SHALL NOT append any attributes already set by the Prepaid
server. If the HAAA, receives an Access Reject message, it will server. If the HAAA, receives an Access-Reject message, it will
simply forward the packet to its client. Depending on site simply forward the packet to its client. Depending on site
policies, if the HAAA fails to receive an Access Response message policies, if the HAAA fails to receive an Access-Accept message from
from the Prepaid server it MAY do nothing or send an Access Reject the Prepaid server it MAY do nothing or send an Access-Reject or an
or an Access Accept message back to its client. Access-Accept message back to its client.
Upon receiving the Access Accept with a list of service keys, the Upon receiving the Access-Accept with a list of service keys, the
Access Device can trigger the authorization request for a particular Access Device can trigger the authorization request for a particular
service corresponding to a service key. The technique for triggering service corresponding to a service key. The technique for triggering
an authorization request for a particular service is out of scope of an authorization request for a particular service is out of scope of
this draft. this draft.
The Access Device initiates authorization for a particular service The Access Device initiates authorization for a particular service
by sending a RADIUS Access Request including a single service-key by sending a RADIUS Access Request including a single service-key
reference. reference.
RADIUS Extensions for PrePaid February 2004
For the specific service-key reference, the prepaid server will For the specific service-key reference, the prepaid server will
check whether funds are available and will, following successful check whether funds are available and will, following successful
allocation of funds, the Prepaid server will generate an Access allocation of funds, the Prepaid server will generate an Access-
Accept containing the PPQ-Response attribute which contains the Accept containing the PPQ-Response attribute which contains the
following sub-attributes: following sub-attributes:
- The QUOTA-Id which is set by the Prepaid server to a unique value - The QUOTA-Id which is set by the Prepaid server to a unique value
that is used to correlate subsequent quota updates; that is used to correlate subsequent quota updates;
- The ServiceKey-Id which is set by the Prepaid server to the - The ServiceKey-Id which is set by the Prepaid server to the
service key requested by the Access Device; service key requested by the Access Device;
- Volume and Time Quotas, one of which is set to a value - Volume and Time Quotas, one of which is set to a value
representing a portion of the subscribers account; representing a portion of the subscribers account;
- The Time of Volume Threshold that the Prepaid server MAY set to - The Time of Volume Threshold that the Prepaid server MAY set to
control when the Access Device requests additional quota. control when the Access Device requests additional quota.
- Optionally, a tariff switch time.
- Optionally, a Volume and Time Quota which can be used following a
tariff Switch
Note: Idle-Timeout(28) can be used to trigger the premature Note: Idle-Timeout(28) can be used to trigger the premature
termination of a pre-paid service following subscriber inactivity. termination of a pre-paid service following subscriber inactivity.
4.3 Session Start Operation 4.3 Session Start Operation
The real start of the session is indicated by the arrival of The real start of the session is indicated by the arrival of
Accounting-Request(Start) packet. The Accounting-Request (Start) Accounting-Request(Start) packet. The Accounting-Request (Start)
MAY be routed to the PrePaid Server so that it can confirm the MAY be routed to the PrePaid Server so that it can confirm the
initial quota allocation. initial quota allocation.
skipping to change at page 25, line 20 skipping to change at page 28, line 5
message it will only know that the session has started upon the message it will only know that the session has started upon the
first reception of a quota replenishment operation. first reception of a quota replenishment operation.
If the Prepaid server does not receive indication directly (via If the Prepaid server does not receive indication directly (via
Accounting-Request(start)) or indirectly, it SHOULD after some Accounting-Request(start)) or indirectly, it SHOULD after some
configurable time, deduce that the Session has not started. If the configurable time, deduce that the Session has not started. If the
Access Device supports termination capabilities, the PPS SHOULD send Access Device supports termination capabilities, the PPS SHOULD send
a Disconnect Message to the Access Device to ensure that the session a Disconnect Message to the Access Device to ensure that the session
is indeed dead. is indeed dead.
RADIUS Extensions for PrePaid February 2004
4.4 Mid-Session Operation 4.4 Mid-Session Operation
During the lifetime of a PrePaid data session the Access Device will During the lifetime of a PrePaid data session the Access Device will
request to replenish the quotas using Authorize-Only Access-Request request to replenish the quotas using Authorize-Only Access-Request
messages. messages.
Once the allocated quota has been reached or the threshold has been Once the allocated quota has been reached or the threshold has been
reached, the Access Device MUST send an Access-Request with Service- reached, the Access Device MUST send an Access-Request with Service-
Type(6) set to a value of “Authorize Only” and the PPAQ attribute. Type(6) set to a value of ôAuthorize Onlyö and the PPAQ(TBD)
attribute.
The Access Device MUST also include NAS identifiers, and Session The Access Device MUST also include NAS identifiers, and Session
identifier attributes in the Authorize Only Access-Request. The identifier attributes in the Authorize Only Access-Request. The
Session Identifier should be the same as those used during the Session Identifier should be the same as those used during the
Access-Request. For example, if the User-Name(1) attribute was used Access-Request. For example, if the User-Name(1) attribute was used
in the Access-Request it MUST be included in the Authorize Only in the Access-Request it MUST be included in the Authorize Only
Access-Request especially if the User-Name(1) attribute is used to Access-Request especially if the User-Name(1) attribute is used to
route the Access-Request to the Home AAA server. route the Access-Request to the Home AAA server.
The Authorize Only Access-Request MUST not include either User The Authorize Only Access-Request MUST not include either User
Password or Chap Password. In order to authenticate the message, Password or Chap Password. In order to authenticate the message,
the Access Device MUST include the Message-Authenticator(80) the Access Device MUST include the Message-Authenticator(80)
attribute. The Access Device will compute the value for the attribute. The Access Device will compute the value for the
Message-Authenticator based on [RFC2869]. Message-Authenticator based on [RFC2869].
When the HAAA receives the Authorize-Only Access-Request that When the HAAA receives the Authorize-Only Access-Request that
contains a PPAQ, it SHALL validate the message using the Message- contains a PPAQ(TBD), it SHALL validate the message using the
Authenticator(80) as per [RFC2869]. If the HAAA receives an Message-Authenticator(80) as per [RFC2869]. If the HAAA receives an
Authorize Only Access-Request that contains a PPAQ but not a Authorize Only Access-Request that contains a PPAQ(TBD) but not a
Message-Authenticator(80) it SHALL silently discard the message. An Message-Authenticator(80) it SHALL silently discard the message. An
Authorize Only Access-Request message that does not contain a PPAQ Authorize Only Access-Request message that does not contain a
is either in error or belongs to another application (for example, a PPAQ(TBD) is either in error or belongs to another application (for
Change of Authorization message [RFC3576]). In this case the example, a Change of Authorization message [RFC3576]). In this case
Authorize Only Access-Request will either be silently discarded or the Authorize Only Access-Request will either be silently discarded
handled by another application (not in scope of this document). or handled by another application (not in scope of this document).
Once the Authorize Only Access-Request message is validated, the Once the Authorize Only Access-Request message is validated, the
HAAA SHALL forward the Authorize Only Access-Request to the HAAA SHALL forward the Authorize Only Access-Request to the
appropriate PrePaid Server. The HAAA MUST forward the Authorize appropriate PrePaid Server. The HAAA MUST forward the Authorize
Only Access-Request to the PrePaid server specified in the PPAQ. Only Access-Request to the PrePaid server specified in the
The HAAA MUST sign the message using the Message-Authenticator(80) PPAQ(TBD). The HAAA MUST sign the message using the Message-
and the procedures in [RFC2869]. As with the Access-Request Authenticator(80) and the procedures in [RFC2869]. As with the
message, the HAAA MAY modify the User-Name(1) attribute to a value
that represents the user’s internal PrePaid account in the PrePaid
server. Note the PrePaid server could use the Quota-ID sub-
attribute contained within the PPAQ to locate the user account.
Upon receiving the Authorize Only Access-Request containing a PPAQ RADIUS Extensions for PrePaid February 2004
attribute, the PrePaid server MUST validate the Message-
Access-Request message, the HAAA MAY modify the User-Name(1)
attribute to a value that represents the userÆs internal PrePaid
account in the PrePaid server. Note the PrePaid server could use
the Quota-ID sub-attribute contained within the PPAQ(TBD) to locate
the user account.
Upon receiving the Authorize Only Access-Request containing a
PPAQ(TBD) attribute, the PrePaid server MUST validate the Message-
Authenticator(80) as prescribed in [RFC2869]. If the message is Authenticator(80) as prescribed in [RFC2869]. If the message is
invalid, the PrePaid server MUST silently discard the message. If invalid, the PrePaid server MUST silently discard the message. If
it received an Authorize Only Access-Request message that does not it received an Authorize Only Access-Request message that does not
contain a PPAQ it MUST silently discard the message. contain a PPAQ(TBD) it MUST silently discard the message.
The PrePaid server will lookup the PrePaid session by using the The PrePaid server will lookup the PrePaid session by using the
PrePaid Quota Id contained within the PPAQ. The PrePaid Server PrePaid Quota Id contained within the PPAQ(TBD). The PrePaid Server
would, take the last allocated quota and subtract that from the would, take the last allocated quota and subtract that from the
Users balance. If there is remaining balance, the PrePaid server UserÆs balance. If there is remaining balance, the PrePaid server
re-authorizes the PrePaid session by allocate an additional quota. re-authorizes the PrePaid session by allocate an additional quota.
The PrePaid server may want to calculate a different threshold The PrePaid server may want to calculate a different threshold
values as well. values as well.
Upon successful re-authorization, the PrePaid server will generate Upon successful re-authorization, the PrePaid server will generate
an Access-Accept containing the PPAQ attribute. The Access-Accept an Access-Accept containing the PPAQ(TBD) attribute. The Access-
message MAY contain Service-Type(6) set to Authorize-Only and MAY Accept message MAY contain Service-Type(6) set to Authorize-Only and
contain the Message-Authenticator(80). MAY contain the Message-Authenticator(80).
Depending on site policies, upon unsuccessful authorization, the Depending on site policies, upon unsuccessful authorization, the
PrePaid server will generate an Access-Reject or an Access-Accept PrePaid server will generate an Access-Reject or an Access-Accept
with Filter-Id(11) or Ascend-Data-Filter (if supported) attribute with Filter-Id(11) or Ascend-Data-Filter (if supported) attribute
and the Session-Timeout(27) attribute such that the PrePaid and the Session-Timeout(27) attribute such that the PrePaid
subscriber could get access to a restricted set of locations for a subscriber could get access to a restricted set of locations for a
short duration to allow them to replenish their account, or create short duration to allow them to replenish their account, or create
an account; or to browse free content. an account; or to browse free content.
Upon receiving the Access-Accept from the PrePaid server, the HAAA Upon receiving the Access-Accept from the PrePaid server, the HAAA
SHALL return the packet to its client. If the HAAA, receives an SHALL return the packet to its client. If the HAAA, receives an
Access-Reject message, it will forward the packet. Depending on Access-Reject message, it will forward the packet. Depending on
site policies, if the HAAA fails to receive an Access-Accept or an site policies, if the HAAA fails to receive an Access-Accept or an
Access-Reject message from the PrePaid server it MAY do nothing or Access-Reject message from the PrePaid server it MAY do nothing or
it MAY send an Access-Reject message back to its client. it MAY send an Access-Reject message back to its client.
Upon receiving an Access-Accept, the Access Device SHALL update its Upon receiving an Access-Accept, the Access Device SHALL update its
quotas and threshold parameters with the values contained in the quotas and threshold parameters with the values contained in the
PPAQ attribute. Note that the PrePaid server MAY update the
RADIUS Extensions for PrePaid February 2004
PPAQ(TBD) attribute. Note that the PrePaid server MAY update the
PrePaidServer attribute(s) and these may have to be saved as well. PrePaidServer attribute(s) and these may have to be saved as well.
Upon receiving an Access-Accept message containing either Filter- Upon receiving an Access-Accept message containing either Filter-
Id(11) or Ascend-Data-Filter attributes, and or Session Timeout(27). Id(11) or Ascend-Data-Filter attributes, and or Session Timeout(27).
The Access Device SHALL restrict the subscriber session accordingly. The Access Device SHALL restrict the subscriber session accordingly.
4.5 Dynamic Operations 4.5 Dynamic Operations
The PrePaid server may want to take advantage of the dynamic The PrePaid server may want to take advantage of the dynamic
capabilities that are supported by the Access Device as advertised capabilities that are supported by the Access Device as advertised
skipping to change at page 28, line 4 skipping to change at page 30, line 36
identified at the Access Device. As a minimum the PrePaid server: identified at the Access Device. As a minimum the PrePaid server:
-MUST provide either the NAS-IP-Address(4) or NAS-Identifier(32) -MUST provide either the NAS-IP-Address(4) or NAS-Identifier(32)
-MUST provide at least one session identifier such as User-Name(1), -MUST provide at least one session identifier such as User-Name(1),
Framed-IP-Address(), the Accounting-Session-Id(44). Framed-IP-Address(), the Accounting-Session-Id(44).
Other attributes could be used to uniquely identify a PrePaid data Other attributes could be used to uniquely identify a PrePaid data
session. session.
4.5.1 Unsolicited Session Termination Operation 4.5.1 Unsolicited Session Termination Operation
This capability is described in detail in [RFC3576]. The PrePaid This capability is described in detail in [RFC3576]. The PrePaid
server sends a Disconnect Request packet that MUST contain server sends a Disconnect Request packet that MUST contain
identifiers that uniquely identify the subscribers data session and identifiers that uniquely identify the subscriberÆs data session and
the Access Device servicing that session. the Access Device servicing that session.
Upon receiving the Disconnect Request packet the HAAA will either Upon receiving the Disconnect Request packet the HAAA will either
act on it or will proxy it to another AAA server until it is act on it or will proxy it to another AAA server until it is
received by the a AAA that is in the same network as the serving received by the a AAA that is in the same network as the serving
Access Device. Access Device.
Each AAA MUST route the Disconnect Request packet. How the routing Each AAA MUST route the Disconnect Request packet. How the routing
decision is made is an implementation detail. decision is made is an implementation detail.
RADIUS Extensions for PrePaid February 2004
Once the Disconnect Request packet reaches AAA that is in the same Once the Disconnect Request packet reaches AAA that is in the same
network as the serving Access Device, if the Access Device supports network as the serving Access Device, if the Access Device supports
Disconnect-Request (as per [RFC3576]), it sends the message directly Disconnect-Request (as per [RFC3576]), it sends the message directly
to the Access Device; otherwise it uses other mechanisms such as to the Access Device; otherwise it uses other mechanisms such as
SNMP or Telnet to command the Access Device to terminate the SNMP or Telnet to command the Access Device to terminate the session
session. (this is an implementation detail).
If the Access Device receives a Disconnect-Request packet, it will If the Access Device receives a Disconnect-Request packet, it will
respond with either a Disconnect-ACK packet if it was able to respond with either a Disconnect-ACK packet if it was able to
terminate the session or else it will respond with a Disconnect-NAK terminate the session or else it will respond with a Disconnect-NAK
packet. packet.
If the AAA server is performing the disconnect operation, it MUST If the AAA server is performing the disconnect operation, it MUST
respond with a Disconnect-ACK message if it successfully terminated respond with a Disconnect-ACK message if it successfully terminated
the session or a Disconnect-NAK message if it failed to terminate the session or a Disconnect-NAK message if it failed to terminate
the session. the session with the appropriate Error-Cause(101) set.
If any AAA server is unable to route the Disconnect-Request it MUST If any AAA server is unable to route the Disconnect-Request it MUST
respond with a Disconnect-NAK packet. respond with a Disconnect-NAK packet with Error-Cause(101) set to
ôRequest Not Routableö(502).
4.5.2 Unsolicited Change of Authorization Operation 4.5.2 Unsolicited Change of Authorization Operation
The PrePaid Server MAY send a Change-of-Authorization message as The PrePaid Server MAY send a Change-of-Authorization message as
described in [RFC3576] to restrict internet access when the described in [RFC3576] to restrict Internet access when the
subscriber has no more balance. subscriber has no more balance. The COA packet may contain Filter-
Id(11) and or attributes defined in Redirect I-d.
The PrePaid server sends a Change-of-Authorization packet it MUST The PrePaid server sends a Change-of-Authorization packet it MUST
contain identifiers that will uniquely identify the subscriber contain identifiers that will uniquely identify the subscriber
session and the Access Device serving that session. session and the Access Device serving that session.
Upon receiving the Change-of-Authorization packet the HAAA will Upon receiving the Change-of-Authorization packet the HAAA will
either act on it or proxy it to another AAA server until it is either act on it or proxy it to another AAA server until it is
received by a AAA server that is in the same network as the serving received by a AAA server that is in the same network as the serving
Access Device. Access Device.
Each AAA must route the packet to the serving network. How the Each AAA must route the packet to the serving network. How the
routing decision is made is an implementation detail. routing decision is made is an implementation detail.
Once the Change-of-Authorization packet reaches a AAA that is in the Once the Change-of-Authorization packet reaches a AAA that is in the
same network as the serving Access Device, if the Access Device same network as the serving Access Device, if the Access Device
supports Change-of-Authorization message, it will forward the supports Change-of-Authorization message, it will forward the
RADIUS Extensions for PrePaid February 2004
message to the Access Device; otherwise, it will use other message to the Access Device; otherwise, it will use other
mechanisms such as SNMP or Telnet to command the Access Device to mechanisms such as SNMP or Telnet to command the Access Device to
change its filters. change its filters.
If the Access Device receives a Change-of-Authorization packet, it If the Access Device receives a Change-of-Authorization packet, it
will respond with either a Change-of-Authorization-ACK packet if it will respond with either a Change-of-Authorization-ACK packet if it
was able to change the filter or else it will respond with a Change- was able to change the filter or else it will respond with a Change-
of-Authorization-NAK packet. of-Authorization-NAK packet.
If the AAA server is performing the change of filter operation, it If the AAA server is performing the change of filter operation, it
skipping to change at page 29, line 39 skipping to change at page 32, line 30
If a AAA server was unable to route the Change-of-Authorization it If a AAA server was unable to route the Change-of-Authorization it
MUST respond with a Change-of-Authorization-NAK packet. MUST respond with a Change-of-Authorization-NAK packet.
4.6 Termination Operation 4.6 Termination Operation
The termination phase is initiated when either: the Subscriber logs The termination phase is initiated when either: the Subscriber logs
off; the quotas have been consumed, or when the Access Device off; the quotas have been consumed, or when the Access Device
receives a Disconnect Message. In all of these instances, if the receives a Disconnect Message. In all of these instances, if the
session is a PrePaid data session, the Access Device will send an session is a PrePaid data session, the Access Device will send an
Authorize-Only Access-Request message with a PPAQ Update-Reason Authorize-Only Access-Request message with a PPAQ(TBD) Update-Reason
attribute set to either “Client Service termination” or “Remote attribute set to either ôClient Service terminationö or ôRemote
Forced disconnect” and the currently used quota. Forced disconnectö and the currently used quota.
The BAAA MUST forward this packet to the next BAAA or the HAAA. The BAAA MUST forward this packet to the next BAAA or the HAAA.
The HAAA MUST validate the Authorize Only Access-Request using the The HAAA MUST validate the Authorize Only Access-Request using the
Message-Authenticator(80) as per [RFC2869] and if valid, use the Message-Authenticator(80) as per [RFC2869] and if valid, use the
PrePaidServer subtype in the PPAQ to forward the Authorize Only PrePaidServer subtype in the PPAQ(TBD) to forward the Authorize Only
Access-Request packet to the serving PrePaid Server or if needed, Access-Request packet to the serving PrePaid Server or if needed,
its alternate. its alternate.
The PrePaid Server MUST validate the Authorize Only Access Request The PrePaid Server MUST validate the Authorize Only Access Request
and use the information contained in the PPAQ attribute to adjust and use the information contained in the PPAQ(TBD) attribute to
the subscriber’s balance and to close the session. The PrePaid adjust the subscriberÆs balance and to close the session. The
Server SHALL respond back with an Access-Accept message. PrePaid Server SHALL respond back with an Access-Accept message.
4.7 Mobile IP Operations 4.7 Mobile IP Operations
RADIUS Extensions for PrePaid February 2004
In roaming scenarios using mobile-ip, as the mobile subscriber roams In roaming scenarios using mobile-ip, as the mobile subscriber roams
between networks, or between different types of networks such as between networks, or between different types of networks such as
between WLAN and CDMA2000 networks, the PrePaid data session is between WLAN and CDMA2000 networks, the PrePaid data session is
maintained transparently. maintained transparently.
As the subscriber device associates with the new Access Device, the As the subscriber device associates with the new Access Device, the
Access Device sends a RADIUS Access-Request and the subscriber is Access Device sends a RADIUS Access-Request and the subscriber is
re-authenticated and reauthorized. If the Access Device has PrePaid re-authenticated and reauthorized. If the Access Device has PrePaid
Client capabilities, it MUST include the PPCC attribute in the Client capabilities, it MUST include the PPAC(TBD) attribute in the
RADIUS Access-Request. In this manner the procedure follows the RADIUS Access-Request. In this manner the procedure follows the
Authentication and Authorization procedure described earlier. Authentication and Authorization procedure described earlier.
The Access-Request message is routed to the home network and MUST The Access-Request message is routed to the home network and MUST
reach the PrePaid System that is serving the PrePaid session. The reach the PrePaid System that is serving the PrePaid session. The
PrePaid system will then correlate the new authorization request PrePaid system will then correlate the new authorization request
with the existing active session and will assign a quota to the new with the existing active session and will assign a quota to the new
request. Any outstanding quota at the old Access Device will be request. Any outstanding quota at the old Access Device will be
returned to the PrePaid system due to the usual mobile-ip handoff returned to the PrePaid system due to the usual mobile-ip handoff
procedures. Specifically, the quota will be returned when the procedures. Specifically, the quota will be returned when the
Access Device sends the Authorize Only Access-Request with PPAQ Access Device sends the Authorize Only Access-Request with PPAQ(TBD)
Update-Reason subtype set to either “Remote Forced disconnect” or Update-Reason subtype set to either ôRemote Forced disconnectö or
“Client Service termination”. In order to trigger the sending of ôClient Service terminationö. In order to trigger the sending of
this last Authorize Only Access-Request, the PrePaid system may this last Authorize Only Access-Request, the PrePaid system may
issue a Disconnect Message [CHIBA] to the Access Device. issue a Disconnect Message [CHIBA] to the Access Device.
If the subscriber has roamed to an Access Device that does not have If the subscriber has roamed to an Access Device that does not have
any PrePaid Capabilities, PrePaid data service may still be possible any PrePaid Capabilities, PrePaid data service may still be possible
by requesting the Home Agent (providing it has PrePaid Capabilities) by requesting the Home Agent (providing it has PrePaid Capabilities)
to assume responsibilities for metering the service. The procedure to assume responsibilities for metering the service. The procedure
for this scenario will be given in the next release of this draft. for this scenario will be given in the next release of this draft.
4.8 Accounting Considerations 4.8 Accounting Considerations
skipping to change at page 31, line 4 skipping to change at page 33, line 39
this last Authorize Only Access-Request, the PrePaid system may this last Authorize Only Access-Request, the PrePaid system may
issue a Disconnect Message [CHIBA] to the Access Device. issue a Disconnect Message [CHIBA] to the Access Device.
If the subscriber has roamed to an Access Device that does not have If the subscriber has roamed to an Access Device that does not have
any PrePaid Capabilities, PrePaid data service may still be possible any PrePaid Capabilities, PrePaid data service may still be possible
by requesting the Home Agent (providing it has PrePaid Capabilities) by requesting the Home Agent (providing it has PrePaid Capabilities)
to assume responsibilities for metering the service. The procedure to assume responsibilities for metering the service. The procedure
for this scenario will be given in the next release of this draft. for this scenario will be given in the next release of this draft.
4.8 Accounting Considerations 4.8 Accounting Considerations
Accounting messages are not required to deliver PrePaid Data Accounting messages are not required to deliver PrePaid Data
Service. Accounting message will typically be generated for PrePaid Service. Accounting message will typically be generated for PrePaid
Data Service. This because accounting message are used for auditing Data Service. This because accounting message are used for auditing
purposes as well as for bill generation. purposes as well as for bill generation.
Accounting messages associated with PrePaid Data Sessions should Accounting messages associated with PrePaid Data Sessions should
include the PPAQ attribute. include the PPAQ(TBD) attribute.
4.9 Service Device Operation 4.9 Service Device Operation
RADIUS Extensions for PrePaid February 2004
To be completed To be completed
4.10 Interoperability with Diameter Credit Control Application 4.10 Interoperability with Diameter Credit Control Application
RADIUS PrePaid solutions need to interoperate with Diameter RADIUS PrePaid solutions need to interoperate with Diameter
protocol. Two possibilities exist: The AAA infrastructure is protocol. Two possibilities exist: The AAA infrastructure is
Diameter based and the Access Device are RADIUS based; or the Access Diameter based and the Access Device are RADIUS based; or the Access
Device is Diameter based and the AAA infrastructure is RADIUS based. Device is Diameter based and the AAA infrastructure is RADIUS based.
The Diameter Credit Control Application [DIAMETERCC] describes how The Diameter Credit Control Application [DIAMETERCC] describes how
to implement a PrePaid using an all Diameter based infrastructure. to implement a PrePaid using an all Diameter based infrastructure.
<This section to be completed.> <This section to be completed.>
5. Attributes 5. Attributes
As currently written, this draft is using the RADIUS [RFC2865] This draft is using the RADIUS [RFC2865] namespace.
namespace.
Note: as currently written, this draft proposes to use container
types, or attributes that contain sub-attributes, that will have
attributes from the PrePaid space and also attributes belonging to
RADIUS space. The technique for encoding such a structure will be
identified in future release of this document.
There has been some discussion on the use of subtypes. The authors
are open to the concept of “flattening” the attributes. However,
this will further move this specification away from the 3GPP2
implementation from which this document is based. Note: that the
only entities that would decode the attributes would be those that
implement the prepaid capabilities. As well, the attributes that
have been subtyped are related to each other semantically and the
use of a single attribute would not make sense.
Note: The attributes presented in this version of the draft,
represent the bare minimum attributes required to implement a
PrePaid solution. The use of the “Authorize Only” Pattern allows
the ability to extend PrePaid by adding additional PrePaid VSA in
the future.
5.1 PPCC attribute 5.1 PPAC Attribute
The PPCC at tribute is sent in the Access-Request message and is The PrepaidAccountingCapability (PPAC) attribute is sent in the
used to describe the Access Devices PrePaid capabilities. The Access-Request message by a Prepaid Capable NAS and is used to
attribute is encrypted using the procedures defined in [RFC2868 ] describe the PrePaid capabilities of the NAS. The PPAC is available
section 3.5. to be sent in an Access-Accept message by the Prepaid server to
indicate the type of prepaid metering that is to be applied to this
session.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TYPE | LENGTH | SUB-TYPE 1 | LENGTH | | TYPE | LENGTH | SUB-TYPE 1 | LENGTH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VALUE (Event-Timestamp) | | AvailableInClient (AiC) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SUB-TYPE 2 | LENGTH | VALUE (PP-capabilities) | | SUB-TYPE 2 | LENGTH | SelectedForSession (SFS) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TYPE: value of PPCC TYPE : value of PPAC
RADIUS Extensions for PrePaid February 2004
LENGTH: 14 LENGTH: 14
VALUE : String
SUB-TYPE 1: 55 The value MUST be encoded as follows:
LENGTH: 6
DESCRIPTION:
The Event-Timestamp as defined by [RFC2869]
SUB-TYPE 2: value of PP-capabilities Sub-Type (=1) : Sub-Type for AvailableInClient attribute
LENGTH: 4 Length : Length of AvailableInClient attribute
DESCRIPTION: (= 6 octets)
BIT-MAP with the following values: AvailableInClient (AiC):
1 Time metering
2 Volume metering
>2 Reserved
5.2 Dynamic-Capabilities attribute The optional AvailableInClient Sub-Type, generated by the PrePaid
client, indicates the PrePaid Accounting capabilities of the NAS and
shall be bitmap encoded. The possible values are:
The Dynamic Capabilities attribute is sent in the Access-Request and 0x00000001 PrePaid Accounting for Volume supported
describes the capabilities of the Access Device. Mainly it 0x00000010 PrePaid Accounting for Duration supported
describes the method for support for unsolicited session termination 0x00000011 PrePaid Accounting for Volume and Duration supported
and the method for support of unsolicited change of filters. (non concurrently)
Others Reserved, treat like Not Capable of PrePaid
Accounting (=0).
Subtype: Session-Termination-Methods 1 Sub-Type (=2) : Sub-Type for SelectedForSession attribute
-None Length : Length of SelectedForSession attribute
-Disconnect-Message [CHIBA] (= 6 octets)
-Telnet SelectedForSession (SfS):
-SNMP
Subtype: Dynamic-Authorization-Capabilities 1 The optional SelectedForSession Sub-Type, generated by the PrePaid
-None server, indicates the PrePaid Accounting capability to be used for a
-CoA [CHIBA] given session. The possible values are:
-Telenet
-SNMP 0x00000000 PrePaid Accounting not used
0x00000001 Usage of PrePaid Accounting for Volume.
(only possible if the AvailableInClient supports
PrePaid Accounting for Volume)
0x00000010 Usage of PrePaid Accounting for Duration.
(only possible if the AvailableInClient supports
PrePaid Accounting for Duration)
0x00000011 Usage of PrePaid Accounting for Volume and Duration
(non concurrent) (only possible if the
AvailableInClient supports PrePaid Accounting for
Volume and duration)
Others Reserved, treat like PrePaid Accounting not used(=0).
RADIUS Extensions for PrePaid February 2004
5.2 Session Termination Capability
The value shall be bitmap encoded rather than a raw integer. This
attribute shall be included RADIUS Access-Request message to the
RADIUS server and indicates whether or not the NAS supports Dynamic
Authorization.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TYPE | LENGTH | String |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type : value of Session Termination Capability
Length: = 4
String encoded as follows:
0x00000001 Dynamic Authorization Extensions (rrfc3576) is
supported.
5.3 PPAQ Attribute 5.3 PPAQ Attribute
The PPAQ attribute is sent in Authorize Only Access-Request and The PPAQ(TBD) attribute is sent in Authorize Only Access-Request and
Access-Accept messages. In Authorize Only Access-Request messages Access-Accept messages. In Authorize Only Access-Request messages
it is used to report usage and request further quota; in an Access- it is used to report usage and request further quota; in an Access-
Accept message it is used to allocate the quota (initial quota and Accept message it is used to allocate the quota (initial quota and
subsequent quotas). subsequent quotas).
The attribute consists of a number of subtypes. Subtypes not used The attribute consists of a number of subtypes. Subtypes not used
are omitted in the message. are omitted in the message.
Type: 26 RADIUS Extensions for PrePaid February 2004
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TYPE | LENGTH | SUB-TYPE 1 | LENGTH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| QuotaIdentifier (QID) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SUB-TYPE 2 | LENGTH | Volume Quota |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Volume Quota | SUB-TYPE 3 | LENGTH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VolumeQuotaOverflow (VQO) | SUB-TYPE 4 | LENGTH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VolumeThreshold (VT) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SUB-TYPE 5 | LENGTH | VolumeThresholdOverflow (VTO) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SUB-TYPE 6 | LENGTH | DurationQuota (DQ) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DurationQuota (DQ) | SUB-TYPE 7 | LENGTH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DurationThreshold (DT) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SUB-TYPE 8 | LENGTH | Update-Reason attribute (UR) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SUB-TYPE 9 | LENGTH | PrePaidServer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PrePaidServer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type : Value of PPAQ
Length: variable, greater than 8 Length: variable, greater than 8
Vendor-ID: 5535
Vendor-Type: 90
Vendor-Length: variable, greater than 2
Sub-Type (=1): Sub-Type for QuotaIDentifier attribute String: The String value MUST be encoded as follows:
Length: length of QuotaIDentifier attribute (= 6 octets)
Sub-Type (=1): Sub-Type for QuotaIDentifier attribute
Length : Length of QuotaIDentifier attribute (= 6 octets)
QuotaIDentifier (QID): QuotaIDentifier (QID):
The QuotaIDentifier Sub-Type is generated by the PrePaid server The QuotaIDentifier Sub-Type is generated by the PrePaid server
at allocation of a Volume and/or Duration Quota. The on-line at allocation of a Volume and/or Duration Quota. The on-line
RADIUS Extensions for PrePaid February 2004
quota update RADIUS Access-Request message sent from the Access quota update RADIUS Access-Request message sent from the Access
Device to the PPS shall include a previously received Device to the PPS shall include a previously received
QuotaIDentifier. QuotaIDentifier.
Sub-Type (=2): Sub-Type for VolumeQuota attribute Sub-Type (=2): Sub-Type for VolumeQuota attribute
Length: length of VolumeQuota attribute (= 6 octets) Length : length of VolumeQuota attribute (= 6 octets)
VolumeQuota (VQ): VolumeQuota (VQ):
The optional VolumeQuota Sub-Type is only present if Volume Based The optional VolumeQuota Sub-Type is only present if Volume Based
charging is used. In RADIUS Access-Accept message (PPS to Access charging is used. In RADIUS Access-Accept message (PPS to Access
Device direction), it indicates the Volume (in octets) allocated Device direction), it indicates the Volume (in octets) allocated
for the session by the PrePaid server. In RADIUS Authorize Only for the session by the PrePaid server. In RADIUS Authorize Only
Access-Request message (Access Device to PPS direction), it Access-Request message (Access Device to PPS direction), it
indicates the total used volume (in octets) for both forward and indicates the total used volume (in octets) for both forward and
reverse traffic applicable to PrePaid accounting. reverse traffic applicable to PrePaid accounting.
Sub-Type (=3): Sub-Type for VolumeQuotaOverflow Sub-Type (=3): Sub-Type for VolumeQuotaOverflow
Length: length of VolumeQuotaOverflow attribute (= 4 octets) Length : length of VolumeQuotaOverflow attribute (= 4 octets)
VolumeQuotaOverflow (VQO): VolumeQuotaOverflow (VQO):
The optional VolumeQuotaOverflow Sub-Type is used to indicate how The optional VolumeQuotaOverflow Sub-Type is used to indicate how
many times the VolumeQuota counter has wrapped around 2^32 over many times the VolumeQuota counter has wrapped around 2^32 over
the course of the service being provided. the course of the service being provided.
Sub-Type (=4): Sub-Type for VolumeThreshold attribute Sub-Type (=4): Sub-Type for VolumeThreshold attribute
Length: length of VolumeThreshold attribute (= 6 octets) Length : length of VolumeThreshold attribute (= 6 octets)
VolumeThreshold (VT): VolumeThreshold (VT):
The VolumeThreshold Sub-Type shall always be present if The VolumeThreshold Sub-Type shall always be present if
VolumeQuota is present in a RADIUS Access-Accept message (PPS to VolumeQuota is present in a RADIUS Access-Accept message (PPS to
Access Device direction). It is generated by the PrePaid server Access Device direction). It is generated by the PrePaid server
and indicates the volume (in octets) that shall be used before and indicates the volume (in octets) that shall be used before
requesting quota update. This threshold should not be larger than requesting quota update. This threshold should not be larger than
the VolumeQuota. the VolumeQuota.
Sub-Type (=5): Sub-Type for VolumeThresholdOverflow Sub-Type (=5): Sub-Type for VolumeThresholdOverflow
Length: length of VolumeThresholdOverflow attribute (= 4 octets) Length : Length of VolumeThresholdOverflow attribute
(= 4 octets)
VolumeThresholdOverflow (VTO): VolumeThresholdOverflow (VTO):
RADIUS Extensions for PrePaid February 2004
The optional VolumeThresholdOverflow Sub-Type is used to indicate The optional VolumeThresholdOverflow Sub-Type is used to indicate
how many times the VolumeThreshold counter has wrapped around how many times the VolumeThreshold counter has wrapped around
2^32 over the course of the service being provided. 2^32 over the course of the service being provided.
Sub-Type (=6): Sub-Type for DurationQuota attribute Sub-Type (=6): Sub-Type for DurationQuota attribute
Length: length of DurationQuota attribute (= 6 octets) Length : length of DurationQuota attribute (= 6 octets)
DurationQuota (DQ): DurationQuota (DQ):
The optional DurationQuota Sub-Type is only present if Duration The optional DurationQuota Sub-Type is only present if Duration
Based charging is used. In RADIUS Access-Accept message (PPS to Based charging is used. In RADIUS Access-Accept message (PPS to
Access Device direction), it indicates the Duration (in seconds) Access Device direction), it indicates the Duration (in seconds)
allocated for the session by the PrePaid server. In on-line allocated for the session by the PrePaid server. In on-line
RADIUS Access-Accept message (PPC to PPS direction), it indicates RADIUS Access-Accept message (PPC to PPS direction), it indicates
the total Duration (in seconds) since the start of the accounting the total Duration (in seconds) since the start of the accounting
session related to the QuotaID. session related to the QuotaID.
Sub-Type (=7): Sub-Type for DurationThreshold attribute Sub-Type (=7): Sub-Type for DurationThreshold attribute
Length: length of DurationThreshold attribute (= 6 octets) Length : length of DurationThreshold attribute (= 6 octets)
DurationThreshold (DT): DurationThreshold (DT):
The DurationThreshold Sub-Type shall always be present if The DurationThreshold Sub-Type shall always be present if
DurationQuota is present in a RADIUS Access-Accept message (PPS DurationQuota is present in a RADIUS Access-Accept message (PPS
to Access Device direction). It represents the duration (in to Access Device direction). It represents the duration (in
seconds) that shall be used by the session before requesting seconds) that shall be used by the session before requesting
quota update. This threshold should not be larger than the quota update. This threshold should not be larger than the
DurationQuota and shall always be sent with the DurationQuota. DurationQuota and shall always be sent with the DurationQuota.
Sub-Type (=8): Sub-Type for Update-Reason attribute Sub-Type (=8): Sub-Type for Update-Reason attribute
Length: length of Update-Reason attribute (= 4 octets) Length : length of Update-Reason attribute (= 4 octets)
Update-Reason attribute (UR): Update-Reason attribute (UR):
The Update-Reason Sub-Type shall be present in the on-line RADIUS The Update-Reason Sub-Type shall be present in the on-line RADIUS
Access-Request message (Access Device to PPS direction). It Access-Request message (Access Device to PPS direction). It
indicates the reason for initiating the on-line quota update indicates the reason for initiating the on-line quota update
operation. Update reasons 4, 5, 6, 7 and 8 indicate that the operation. Update reasons 4, 5, 6, 7 and 8 indicate that the
associated resources are released at the client side, and associated resources are released at the client side, and
therefore the PPS shall not allocate a new quota in the RADIUS therefore the PPS shall not allocate a new quota in the RADIUS
Access_Accept message. Access_Accept message.
RADIUS Extensions for PrePaid February 2004
1. Pre-initialization 1. Pre-initialization
2. Initial request 2. Initial request
3. Threshold reached 3. Threshold reached
4. Quota reached 4. Quota reached
5. Remote Forced disconnect 5. Remote Forced disconnect
6. Client Service termination 6. Client Service termination
7. Main SI released 7. Main SI released
8. Service Instance not established 8. Service Instance not established
Sub-Type (=9): Sub-Type for PrePaidServer attribute Sub-Type (=9) : Sub-Type for PrePaidServer attribute
Length: Length of PrePaidServer (IPv4 = 6 octets, IPv6= 18 octets Length : Length of PrePaidServer
(IPv4 = 6 octets, IPv6= 18 octets
PrePaidServer: PrePaidServer:
The optional, multi-value PrePaidServer indicates the address of The optional, multi-value PrePaidServer indicates the address of
the serving PrePaid System. If present, the Home RADIUS server the serving PrePaid System. If present, the Home RADIUS server
uses this address to route the message to the serving PrePaid uses this address to route the message to the serving PrePaid
Server. The attribute may be sent by the Home RADIUS server. If Server. The attribute may be sent by the Home RADIUS server. If
present in the incoming RADIUS Access-Accept message, the PDSN present in the incoming RADIUS Access-Accept message, the PDSN
shall send this attribute back without modifying it in the shall send this attribute back without modifying it in the
subsequent RADIUS Access-Request message, except for the first subsequent RADIUS Access-Request message, except for the first
one. If multiple values are present, the PDSN shall not change one. If multiple values are present, the PDSN shall not change
the order of the attributes. the order of the attributes.
NOTES: NOTES:
Either Volume-Quota or Time-Quota MUST appear in the attribute. Either Volume-Quota or Time-Quota MUST appear in the attribute.
Volume Threshold may only appear if Volume Quota appears Volume Threshold may only appear if Volume Quota appears
If the Access Device can measure time, and if Time-Threshold appears If the Access Device can measure time, and if Time-Threshold appears
with Volume Quota, then the Access device should trigger a quota with Volume Quota, then the Access device should trigger a quota
replenishment when the Current Time >= Time-Threshold. replenishment when the Current Time >= Time-Threshold.
5.4 Tarrif Switch 5.4 Table of Attributes
TBD
5.5 Table of Attributes
TO BE COMPLETED. TO BE COMPLETED.
Request Accept Reject Challenge # Attribute Request Accept Reject Challenge # Attribute
Authorize_Only Request Accept Reject Authorize_Only Request Accept Reject
RADIUS Extensions for PrePaid February 2004
6. Security Considerations 6. Security Considerations
The protocol exchanges described are susceptible to the same The protocol exchanges described are susceptible to the same
vulnerabilities as RADIUS and it is recommended that IPsec be vulnerabilities as RADIUS and it is recommended that IPsec be
employed to afford better security. employed to afford better security.
If IPsec is not available the protocol in this draft improves the If IPsec is not available the protocol in this draft improves the
security of RADIUS. The various security enhancements are explained security of RADIUS. The various security enhancements are explained
in the following sections. in the following sections.
skipping to change at page 37, line 40 skipping to change at page 42, line 4
Therefore, in subsequent drafts it will be proposed to use a Vendor Therefore, in subsequent drafts it will be proposed to use a Vendor
space as an Application Space. space as an Application Space.
8. Normative References 8. Normative References
[RFC2026] Bradner, S., "The Internet Standards Process -- [RFC2026] Bradner, S., "The Internet Standards Process --
Revision 3", RFC 2026, October 1996. Revision 3", RFC 2026, October 1996.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", RFC 2119, March 1997. Requirement Levels", RFC 2119, March 1997.
[RFC2865] Rigney, C., Rubens, A., Simpson, W. and S. Willens, [RFC2865] Rigney, C., Rubens, A., Simpson, W. and S. Willens,
RADIUS Extensions for PrePaid February 2004
"Remote Authentication Dial In User Server "Remote Authentication Dial In User Server
(RADIUS)", RFC 2865, June 2000. (RADIUS)", RFC 2865, June 2000.
[RFC2866] Rigney, C., "RADIUS Accounting", RFC 2866, June [RFC2866] Rigney, C., "RADIUS Accounting", RFC 2866, June
2000. 2000.
[RFC2869] Rigney, C., Willats, W., Calhoun, P., "RADIUS [RFC2869] Rigney, C., Willats, W., Calhoun, P., "RADIUS
Extensions", RFC 2869, June 2000. Extensions", RFC 2869, June 2000.
[RFC2868] Zorn, G., Leifer, D., Rubens, A., Shriver, J., [RFC2868] Zorn, G., Leifer, D., Rubens, A., Shriver, J.,
Holdrege, M., Goyret, I., "RADIUS Attributes for Holdrege, M., Goyret, I., "RADIUS Attributes for
Tunnel Protocol Support" , RFC 2868, June 2000. Tunnel Protocol Support" , RFC 2868, June 2000.
[RFC3576] Chiba, M., Dommety, G., Eklund, M., Mitton, D., [RFC3576] Chiba, M., Dommety, G., Eklund, M., Mitton, D.,
Aboba, B., "Dynamic Authorization Extensions to Aboba, B., "Dynamic Authorization Extensions to
Remote Authentication Dial-In User Service Remote Authentication Dial-In User Service
(RADIUS)", RFC 3576, February 2003. (RADIUS)", RFC 3576, February 2003.
[DIAMETERCC] Work in Progress. [DIAMETERCC] Work in Progress.
[REDIRECT] RADIUS Redirection Internet Draft. Work in progress.
Acknowledgments Acknowledgments
The authors would like to thank Mark Grayson (Cisco) for his The authors would like to thank Mark Grayson (Cisco) and Nagi
contribution to this draft. Jonnala for their contribution to this draft.
Author's Addresses Author's Addresses
Avi Lior Parviz Yegani, Ph.D. Avi Lior Parviz Yegani, Ph.D.
Bridgewater Systems Mobile Wireless Group Bridgewater Systems Mobile Wireless Group
303 Terry Fox Drive Cisco Systems 303 Terry Fox Drive Cisco Systems
Suite 100 3625 Cisco Way Suite 100 3625 Cisco Way
Ottawa Ontario San Jose, CA 95134 Ottawa Ontario San Jose, CA 95134
Canada USA Canada USA
avi@bridgewatersystems.com pyegani@cisco.com avi@bridgewatersystems.com pyegani@cisco.com
Kuntal Chowdhury Lila Madour Kuntal Chowdhury Lila Madour
Nortel Networks Ericsson Canada Nortel Networks Ericsson Canada
2221, Lakeside Blvd, 5400 Decarie, TMR 2221, Lakeside Blvd, 5400 Decarie, TMR
Richardson, TX-75082 Quebec, Canada Richardson, TX-75082 Quebec, Canada
chowdury@nortelnetworks.com Lila.madour@ericsson.ca chowdury@nortelnetworks.com Lila.madour@ericsson.ca
Yong Li Yong Li
Bridgewater Systems Bridgewater Systems
RADIUS Extensions for PrePaid February 2004
303 Terry Fox Drive 303 Terry Fox Drive
Suite 100 Suite 100
Ottawa Ontario Ottawa Ontario
Canada Canada
Yong.li@bridgewatersystems.com Yong.li@bridgewatersystems.com
Intellectual Property Statement Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
intellectual property or other rights that might be claimed to intellectual property or other rights that might be claimed to
skipping to change at page 39, line 40 skipping to change at page 44, line 4
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph kind, provided that the above copyright notice and this paragraph
are included on all such copies and derivative works. However, this are included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for developing Internet standards in which case the procedures for
RADIUS Extensions for PrePaid February 2004
copyrights defined in the Internet Standards process must be copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than followed, or as required to translate it into languages other than
English. The limited permissions granted above are perpetual and English. The limited permissions granted above are perpetual and
will not be revoked by the Internet Society or its successors or will not be revoked by the Internet Society or its successors or
assigns. This document and the information contained herein is assigns. This document and the information contained herein is
provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE
INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE."
Expiration Date Expiration Date
This memo is filed as draft-lior-radius-extensions-for-prepaid- This memo is filed as draft-lior-radius-extensions-for-prepaid-
02.txt, and will expire 27th March, 2004. 03.txt, and will expire 16th July, 2004.
 End of changes. 134 change blocks. 
255 lines changed or deleted 524 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/