If a Public Spot user has to authenticate only and no further changes are required throughout the login, then the parameter RADIUS_LOGIN will meet your needs. On the other hand, if you need to change the attributes of an ongoing session for a Public Spot user, you have the option of using RADIUS_CoA. To implement a change, your external hotspot gateway sends a RADIUS-CoA-Request to the Public Spot, which directly transfers the changes in it to the Station table under .
One application for CoA messages is the automatic throttling of bandwidth: If a Public Spot user has consumed his/her volume budget, an external hotspot gateway is able to throttle the user's bandwidth by evaluating the accounting data and sending a CoA message to the Public Spot.
The XML messages for negotiations between the hotspot gateway and the Public Spot appear as follows:
- RADIUS-CoA-Request
-
The external gateway sends the data with the session change to the Public Spot. The Public Spot then changes the session data in the station table for the authenticated user 'user2350'.
<?xml version="1.0" encoding="ISO-8859-1"?> <PUBLICSPOTXMLINTERFACE> <ACCESS_CUBE COMMAND="RADIUS_COA_REQUEST"> <SUB_USER_NAME>user2350</SUB_USER_NAME> <SUB_PASSWORD>5juchb</SUB_PASSWORD> <SUB_MAC_ADDR>00164115208c</SUB_MAC_ADDR> <TXRATELIMIT>100</TXRATELIMIT> <RXRATELIMIT>100</RXRATELIMIT> <SECONDSEXPIRE>3600</SECONDSEXPIRE> <TRAFFICEXPIRE>10000000</TRAFFICEXPIRE> </ACCESS_CUBE> </PUBLICSPOTXMLINTERFACE>
In the example above, the user is assigned a session duration of 3,600 seconds, a transferable data volume of 10,000,000 bytes, and a transmit and receive bandwidth of 100 kbps.
- RADIUS-CoA-Response:
-
The XML interface sens a confirmation to the external hotspot gateway that the session data was changed:
<?xml version="1.0" encoding="ISO-8859-1" ?> <PUBLICSPOTXMLINTERFACE> <ACCESS_CUBE ID="WLC_PM" IP="192.168.100.2" COMMAND="USER_STATUS"> <SUB_STATUS>RADIUS_COA_ACCEPT</SUB_STATUS> <SUB_MAC_ADDR>00:16:41:15:20:8b</SUB_MAC_ADDR> <SUB_USER_NAME>user2350</SUB_USER_NAME> <TXRATELIMIT>100</TXRATELIMIT> <RXRATELIMIT>100</RXRATELIMIT> <SECONDSEXPIRE>3600</SECONDSEXPIRE> <TRAFFICEXPIRE>10000000</TRAFFICEXPIRE> <ACCOUNTCYCLE>0</ACCOUNTCYCLE> <IDLETIMEOUT>0</IDLETIMEOUT> </ACCESS_CUBE> </PUBLICSPOTXMLINTERFACE>
In case of throttling, the change to the user session always affects the quota that is still available to the user. For instance, if the user was logged on for one hour already, then a change of the time quota to six hours means that just five hours remain. If the time quota is less than the time the user is already logged on, the Public Spot logs out the user and sends a logout message to the hotspot gateway.