cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1179
Views
10
Helpful
4
Replies

BNG Service accounting

Peyman Zadmehr
Spotlight
Spotlight

Hi

We are using ASR1K as PPPoE BRAS. With our pppoe service we have different accounting information about  the volume of traffic which subscriber uses. this information is retrieved via different accounting updates which are sent for the particular PPPoE session and for a particular service withing the PPPoE Session.

We defined the service by using ACL and class-map type traffic and policy-map type service. Upon session initiation, RADIUS gives the name of mentioned policy-map to the BRAS and service is applied to the PPPoE session.

I searched a lot about ASR9K counterpart and I did not find a direct reference to this implementation. I want to ask does ASR9K work in this way or not?

1 Accepted Solution
4 Replies 4

smilstea
Cisco Employee
Cisco Employee

Hopefully this helps you.

 

What Is Session and Service Accounting on the ASR9000?

 

The accounting features within the IOS-XR BNG software suite enable the functionality to keep track of the beginning and end of a session or service, along with the amount of bandwidth consumed on a per-subscriber or per-service basis. This is commonly used in prepaid service deployments when coupled with a PCRF (Policy and Charging Rules Function) server such as Cisco Prime with the BNG Service Manager or a third party solution.

 

 

How Does Service and Session Accounting Work?

 

When the BNG accounting features are enabled and a subscriber comes online, the ASR9K will generate an Account-Start message and send it to the configured RADIUS server. Next, at the defined session or service interval, period updates will be sent with amount of bytes in & out, packets in & out, as well as timing information. Lastly, when the session disconnects, an Account-Stop message will be sent from the ASR9K to the RADIUS service.

 

Note: This follows and is outlined in greater detail in RFC2866

 

 

What Is the Difference Between Session and Service Accounting?

 

Session accounting will provide the aforementioned information for the entire BNG session from when it first is established until it is disconnected. Service-Accounting however can be configured to send you stats for only a portion or a specific ‘service’ of the user’s BNG session.

 

For example, perhaps the configuration allows access to a few internet websites, but for a fee 100Mbytes of unrestricted internet access. A service dynamic-template can be configured (As compared to the common ipsubscriber or ppp template types) to remove an HTTP-Redirect policy and then begin Service Accounting, providing stats only while the ‘Unrestricted Internet’ service is active.

 

 

How Do I Configure Session Accounting?

 

 

Using a Dynamic-Template

 

In the main dynamic-template, session accounting can be activated using the configuration below. We would first create an aaa accounting subscriber method list name, in this case we chose ‘bng_accounting’. The type would be session and lastly the periodic-interval which determines how often we send the accounting-updates, which in this case is 1 minute.

 

aaa accounting subscriber bng_accounting group radius

dynamic-template
type <ipsubscriber|ppp> MAIN-DYN-TEMP
accounting aaa list bng_accounting type session periodic-interval 1 dual-stack-delay 5

 

 

Using RADIUS AV-Pairs

 

The following AV-pairs can be added to the BNG user’s RADIUS profile, which upon an Access-Accept message generated from RADIUS (Successful authentication) would trigger session accounting updates every minute. The interval and accounting-list AV-pairs are required; however the dual-stack-delay is optional.

 

cisco-avpair = subscriber:accounting-list=bng_accounting
cisco-avpair = acct-interval=1
cisco-avpair = subscriber:dual-stack-delay=<sec>

 

Note: The optional ‘dual-stack-delay’ feature delays the accounting updates from starting, which is meant to give enough time for the IPv4 and IPv6 addressing to complete as opposed to accounting updates triggering as soon as an IPv4 or IPv6 address is assigned. Mixing parts of the configuration from the dynamic-template with the av-pair for session accounting is not supported.

 

Note: RADIUS has preference over the dynamic template, do NOT configure both

 

 

 

 

How Do I Configure Service Accounting?

 

Using a Dynamic-Template

 

In a service dynamic-template, session accounting can be activated using the configuration below. We would first create an aaa accounting service method list name, in this case we chose ‘bng_accounting’. The type would be service and lastly the periodic-interval which determines how often we send the accounting-updates, which in this case is 1 minute.

 

aaa accounting service bng_accounting group radius

dynamic-template
type service SERVICE-DYN-TEMP
accounting aaa list bng_accounting type service periodic-interval 1

 

 

How Do I See the Accounting-Updates?

 

The ‘debug radius’ is a very verbose and clear way to see how often and what data is actually being sent within the RADIUS accounting messages. Here is an example of one:

 

Note: Unfortunately at this time, there is no filtering functionality for this debug, so this many not be feasible depending on how large of an environment exists.

 

 

 

 

How Can I Decipher the BNG Accounting Debug Messages?

 

When you have the 'debug radius' enabled to view or troubleshoot the BNG Accounting messages, generated by the ASR9K here are some of the key fields to look for:

 

Acct-Status-Type    [40]    6       Start[0] <-- Generated upon session activation
       Stop[0] <-- Generated upon session-disconnect
Watchdog[0] <-- Updates generated at interim interval

Acct-Input-Packets  [47]    6       65 <-- Number of packets Rx by ASR9K since session/service activation.
Acct-Input-Octets   [42]    6       4259 <-- Number of bytes Rx by ASR9K since session/service activation.
Acct-Output-Octets  [43]    6       3355 <-- Number of packets Tx by ASR9K since session/service activation.
Acct-Output-Packets [48]    6       58 <-- Number of btyes Tx by ASR9K since session/service activation.


Cisco AVpair        [1]    20      pppoe-session-id=7

 

 

General RADIUS Accounting Troubleshooting

 

Show subscribers session filter….detail internal
Show radius accounting
Debug aaa-subscriber all
Debug subscriber manager session next-subscriber

 

 

 

Sam

Hi

such a complete answer, the only part which was not covered is how to specify traffic. I presume it will be done via ACLs and class-maps and policy-maps same as IOS-XE...

Thank you

 

Thank you for help and update.