1 Introduction This document outlines the test plan for testing the interoperability between PortaOne OCS and IPLOOK P-GW (TT#778911 ).
2.1 Peers 2.2 User Identification Attribute User-Name END_USER_E164
18001234010
2.3 Predefined Charging Rule Names 2.4 Predefined Rating Group names Name Gy Value Notes
RG133 133
2 Test Cases # Test Script ID Case Name Description Result Tester Comments/Bugs Date 1. CER Connection Establishment and Capabilities Exchange (CER/CEA)
Verify that a Diameter peer is successfully established.
18.01.22 2. DPR Disconnect Peer (DPR/DPA)
Verify that disconnect between peers is properly acknowledged.
18.01.22 3. TS01 3G session - diameter/interconnectivity 3G session - diameter/interconnectivity 18.01.22 4. TS02 3G session - establish connection 3G session - establish connection 18.01.22 5. TS03 3G session - rejected connection for nonexistent subscriber 3G session - rejected connection for nonexistent subscriber 18.01.22 6. TS03.a 3G session - hotlined connection for expired, blocked, suspended subscriber 3G session - hotlined connection for expired, blocked, suspended subscriber Redirect to hotline URL/IP is not supported 18.05.22 7. TS04 3G session - billing session 3G session - billing session 26.01.22 8. TS04.a 3G session - billing for multiple rating groups within a session 3G session - billing for multiple rating groups within a session EPC does not have DPI so impossible to divide traffic to separate RGs 18.05.22 9. TS05 3G session – session is hotlined once quota is depleted 3G session – session is hotlined once quota is depleted Redirect to hotline URL/IP is not supported. Session is not terminated once quota is depleted - it remains active, but usage is blocked (no access, usage is reported as 0 with Validity-Time periodicity) 18.05.22 10. TS06 3G session - hotlined connection when insufficient funds 3G session - hotlined connection when insufficient funds Redirect to hotline URL/IP is not supported 18.05.22 11. TS07 3G session - Validity-Time support 3G session - Validity-Time support 18.05.22 12. TS08 3G session - Session re-establishment upon payment 3G session - Session re-establishment upon payment 18.05.22 13. TS09 3G session - Volume-Quota-Threshold support 3G session - Volume-Quota-Threshold support 18.05.22
PASSED - without issues
PASSED (M) - with minor issues (the reason should be described in "Comments/Bugs" column)
PASSED (C) - with critical issues (the reason should be described in "Comments/Bugs" column)
FAILED - issues are too critical (the reason should be described in "Comments/Bugs" column)
PENDING - is not started yet
3 Test Cases description and results 3.1 Connection Establishment and Capabilities Exchange (CER/CEA) This case is aimed to verify Diameter connection between PortaOne OCS and test P-GW.
3.2 Disconnect Peer (DPR/DPA) Disconnect-Peer-Request (DPR) can be originated by any of peers. It is needed to check both cases.
3.3 Diameter/interconnectivity In this case basic CC exchange is going to be checked. P-GW should send CCR-I, OCS - CCA-I.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST) is received
Session-Id = 'pgw_gy1.corenetwork.com;1642494200;1090200010;4283301234560065'
Event-Timestamp = '1642495643'
Origin-Host = 'pgw_gy1.corenetwork.com'
Origin-Realm = 'corenetwork.com'
Service-Context-Id = '3gpp_r7_default'
Multiple-Services-Indicator = 'SUPPORTED'
Destination-Realm = 'portaone.com'
Destination-Host = 'ocs.portaone.com'
Auth-Application-Id = '4'
CC-Request-Type = 'INITIAL_REQUEST'
CC-Request-Number = '0'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '11'
Rating-Group = '130'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
Origin-State-Id = '4'
Subscription-Id = 'BEGIN-GROUP'
Subscription-Id-Type = 'END_USER_E164'
Subscription-Id-Data = '231220200006'
Subscription-Id = 'END-GROUP'
Subscription-Id = 'BEGIN-GROUP'
Subscription-Id-Type = 'END_USER_IMSI'
Subscription-Id-Data = '428330123456006'
Subscription-Id = 'END-GROUP'
User-Equipment-Info = 'BEGIN-GROUP'
User-Equipment-Info-Type = 'IMEISV'
User-Equipment-Info-Value = 'S7#\144r\009\129\003'
User-Equipment-Info = 'END-GROUP'
Service-Information = 'BEGIN-GROUP'
PS-Information = 'BEGIN-GROUP'
Called-Station-Id = 'ltcmobile'
3GPP-IMSI-MCC-MNC = '42833'
3GPP-Charging-Id = '@\251!\202'
3GPP-PDP-Type = '0'
PDP-Address = '11.11.2.65'
SGSN-Address = '172.30.120.73'
GGSN-Address = '172.30.120.74'
CG-Address = '0.0.0.0'
3GPP-NSAPI = '5'
3GPP-Selection-Mode = '2'
3GPP-Charging-Characteristics = '0C00'
3GPP-SGSN-MCC-MNC = '42833'
3GPP-User-Location-Info = '\130$\2483(a$\2483\012\184\221\244'
3GPP-RAT-Type = '\006'
3GPP-MS-TimeZone = '#\000'
PDP-Context-Type = 'PRIMARY'
PS-Information = 'END-GROUP'
Service-Information = 'END-GROUP'
2 Check, if all required/expected attributes are present The request is understood by PortaBilling and responded to client
Jan 18 08:48:14.699 [3]: Authorize::Gy::NETACCESS::CCR-I accept response, attributes:
Session-Id = 'pgw_gy1.corenetwork.com;1642494200;1090200010;4283301234560065'
Auth-Application-Id = '4'
CC-Request-Number = '0'
CC-Request-Type = 'INITIAL_REQUEST'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1073741824'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '130'
Result-Code = '2001'
Service-Identifier = '11'
Validity-Time = '7149'
Multiple-Services-Credit-Control = 'END-GROUP'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '104857600'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '7149'
Final-Unit-Indication = 'BEGIN-GROUP'
Final-Unit-Action = 'REDIRECT'
Redirect-Server = 'BEGIN-GROUP'
Redirect-Address-Type = 'URL'
Redirect-Server-Address = 'https://portaone.com'
Redirect-Server = 'END-GROUP'
Final-Unit-Indication = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
Result-Code = '2001'
Origin-Host = 'ocs.portaone.com'
Origin-Realm = 'portaone.com'
3 Check response is delivered to HA diameter client GW is able to decode the response 7067775F 6779312E 636F7265 E7512D42
3.4 Establish connection To check that user can use some traffic.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '11'
Rating-Group = '130'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
2 Check, if session is granted the response provides grants to establish the session
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1073741824'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '130'
Result-Code = '2001'
Service-Identifier = '11'
Validity-Time = '7149'
Multiple-Services-Credit-Control = 'END-GROUP'
3 Check response will allow user to start using the session GW allows the user to connect 7067775F 6779312E 636F7265 E7512D42
3.5 Rejected connection for nonexistent subscriber To check that service cannot be provided for nonexistent user.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
2 Check, if reject response is provided the CCA denies the session
Session-Id = 'pgw_gy1.corenetwork.com;1642496711;1093200010;4283301234560066'
Auth-Application-Id = '4'
CC-Request-Number = '0'
CC-Request-Type = 'INITIAL_REQUEST'
Origin-Host = 'ocs.portaone.com'
Origin-Realm = 'portaone.com'
Result-Code = '5030'
3 Check response will disallow user to connect SAE-GW rejects the connection 7067775F 6779312E 636F7265 749CA97C
3.6 Hotlined connection for expired, blocked, suspended subscriber To check that expired/blocked/suspended user is redirected to captive portal.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit 2 Check, if reject response is provided the CCA denies the session and provides the "hotlining" redirect URL 3 Check that SAE-GW disallows user to connect Upon any web browsing attempt user is redirected to the hotlining server; all other network traffic is blocked
3.7 Billing session To check that session is billed properly and xDRs are shown properly on WI.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
2 Check, if session is granted the response provides grants to establish the sesion
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1073741824'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '54'
Multiple-Services-Credit-Control = 'END-GROUP'
3 Check response will allow user to start using the session the user is able to use the service 69706C6F 6F6B2E67 792E7379 D853AB88 4 User performs some data transfers (1-10MBs) Check if the session generates UPDATE reauthorizations billing records are produced, usage and session is represented on PB gui
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '45081672'
CC-Input-Octets = '2555313'
CC-Output-Octets = '42526359'
CC-Time = '54'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'VALIDITY_TIME'
Multiple-Services-Credit-Control = 'END-GROUP'
5 User terminates the session Check if the session generates TERMINATE CCR final billing record is produced, usage and session is cleaned in PortaBilling
Session-Id = 'iplook.gy.system;1643162541;172200016;4601101234560015'
Event-Timestamp = '1643185034'
Origin-Host = 'iplook.gy.system'
Origin-Realm = 'gy.system'
Service-Context-Id = '3gpp_r7_default'
Multiple-Services-Indicator = 'SUPPORTED'
Termination-Cause = 'LOGOUT'
Destination-Host = 'ocs.portaone.com'
Destination-Realm = 'portaone.com'
Auth-Application-Id = '4'
CC-Request-Type = 'TERMINATION_REQUEST'
CC-Request-Number = '9'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '11'
Rating-Group = '130'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '0'
CC-Input-Octets = '0'
CC-Output-Octets = '0'
CC-Time = '46'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'FINAL'
Multiple-Services-Credit-Control = 'END-GROUP'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '362402'
CC-Input-Octets = '115341'
CC-Output-Octets = '247061'
CC-Time = '45'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'FINAL'
Multiple-Services-Credit-Control = 'END-GROUP'
Origin-State-Id = '98'
Subscription-Id = 'BEGIN-GROUP'
Subscription-Id-Type = 'END_USER_E164'
Subscription-Id-Data = '86180123465001'
Subscription-Id = 'END-GROUP'
Subscription-Id = 'BEGIN-GROUP'
Subscription-Id-Type = 'END_USER_IMSI'
Subscription-Id-Data = '460110123456001'
Subscription-Id = 'END-GROUP'
User-Equipment-Info = 'BEGIN-GROUP'
User-Equipment-Info-Type = 'IMEISV'
User-Equipment-Info-Value = 'S7#\144r\009\129\003'
User-Equipment-Info = 'END-GROUP'
Service-Information = 'BEGIN-GROUP'
PS-Information = 'BEGIN-GROUP'
Called-Station-Id = 'ctnet'
3GPP-IMSI-MCC-MNC = '46011'
3GPP-Charging-Id = '\010C\144P'
3GPP-PDP-Type = '0'
PDP-Address = '10.218.3.193'
SGSN-Address = '172.26.2.3'
GGSN-Address = '172.26.3.1'
CG-Address = '0.0.0.0'
3GPP-NSAPI = '5'
3GPP-Session-Stop-Indicator = '\255'
3GPP-Selection-Mode = '0'
3GPP-Charging-Characteristics = '0C00'
3GPP-SGSN-MCC-MNC = '46011'
Charging-Rule-Base-Name = 'pgw_cbb_service'
3GPP-User-Location-Info = '\130d\240\017(ad\240\017\012\184\221\244'
3GPP-RAT-Type = '\006'
3GPP-MS-TimeZone = '\000\000'
PS-Information = 'END-GROUP'
Service-Information = 'END-GROUP'
To check that session is billed properly for several rating groups and xDRs are shown properly on WI.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 HA-GW is configured to distinguish between classes of network traffic - e.g. generic Internet and VoIP traffic (to/from IP addresses of PortaSIP servers and provider's VoIP gateways).
Obtain the rating group Ids, assign them as separate entries in the product configuration (rating group = access code) Usage charging definition with multiple groups is created within product 2 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit 3 Check, if session is granted the response provides grants to establish the sesion 4 Check response will allow user to start using the session the user is able to use the service
5 User performs some data transfers (1-10MBs) which fall into "chargeable" category and user performs some data transfers (1-10MBs) which fall into "free" category Check if the session generates UPDATE reauthorizations billing records are produced, usage and session is represented on PB gui. Customer's balance is only changed by the value supplied in the "chargeable" rating group. 6 User terminates the session Check if the session generates TERMINATE CCR final billing record is produced, usage and session is cleaned in PortaBilling
3.9 Session is hotlined once quota is depleted To check that user is redirected to captive portal as soon as quota is depleted. Only free services are allowed.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit 2 Check, if session is granted the response provides grants to establish the session 3 Check response will allow user to start using the session the user is able to use the service
4 User performs some data transfers (1-10MBs) Check if the session generates UPDATE reauthorizations billing records are produced, usage and session is represented on PB gui 5 User runs out of available funds Check if CCA limits the requested quota the CCA provides less then allowed resources in granted service units, FUA REDIRECT is present in CCA for chargeable RG 6 GW reports final usage Check if CCR-U provides USU billing records are produced, usage and session is represented on PB gui, OCS replies with no GSU AVP for chargeable RG, access only to services related to free RGs 7 User has access only to free services Check if the session generates UPDATE reauthorizations CCR-U only for free RGs. User is able to use free services only
3.10 Hotlined connection when insufficient funds To check that user is redirected when account (customer) has no funds.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit 2 Check, if DIAMETER_CREDIT_LIMIT_REACHED response is provided Result-Code 4012 and FUA REDIRECT is present in CCA 3 Check response will allow user to connect only to Redirect-Server-Address OCS replies with no GSU AVP, access only to URL provided in Redirect-Server-Address
3.11 Validity-Time support To check whether P-GW supports Validity-Time.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
2 Check, if session is granted and Validity-Time is provided the response provides grants to establish the session and includes Validity-Time AVP (120 seconds)
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1073741824'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '54'
Multiple-Services-Credit-Control = 'END-GROUP'
3 Check response will allow user to start using the session the user is able to use the service 69706C6F 6F6B2E67 792E7379 D853AB88
4 User performs some data transfers (1-10MBs) Check if the session generates UPDATE reauthorizations billing records are produced, usage and session is represented on PB gui
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '45081672'
CC-Input-Octets = '2555313'
CC-Output-Octets = '42526359'
CC-Time = '54'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'VALIDITY_TIME'
Multiple-Services-Credit-Control = 'END-GROUP'
5 Check if UPDATE CCAs include Validity-Time the responses provide grants to establish the session and include Validity-Time AVP (120 seconds)
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1073741824'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '55'
Multiple-Services-Credit-Control = 'END-GROUP'
6 User performs too low/no consumption Check if the session generates UPDATE reauthorizations on Validity-Time expiration billing records are produced, usage and session is represented on PB gui
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '3565195'
CC-Input-Octets = '86748'
CC-Output-Octets = '3478447'
CC-Time = '56'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'VALIDITY_TIME'
Multiple-Services-Credit-Control = 'END-GROUP'
7 User terminates the session Check if the session generates TERMINATE CCR final billing record is produced, usage and session is cleaned in PortaBilling
Session-Id = 'iplook.gy.system;1643162541;172200016;4601101234560015'
Event-Timestamp = '1643185034'
Origin-Host = 'iplook.gy.system'
Origin-Realm = 'gy.system'
Service-Context-Id = '3gpp_r7_default'
Multiple-Services-Indicator = 'SUPPORTED'
Termination-Cause = 'LOGOUT'
Destination-Host = 'ocs.portaone.com'
Destination-Realm = 'portaone.com'
Auth-Application-Id = '4'
CC-Request-Type = 'TERMINATION_REQUEST'
CC-Request-Number = '9'
3.12 Session re-establishment upon payment To check that user is returned from captive portal upon payment.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
End-user with depleted funds connects Diameter request (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '443484'
CC-Input-Octets = '13776'
CC-Output-Octets = '429708'
Reporting-Reason = 'THRESHOLD'
Used-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
Reporting-Reason = 'OTHER_QUOTA_TYPE'
CC-Time = '1'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
2 Check, if reject response is provided the CCA denies the session and provides the "hotlining" redirect URL
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Final-Unit-Indication = 'BEGIN-GROUP'
Final-Unit-Action = 'TERMINATE'
Final-Unit-Indication = 'END-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '22528'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '120'
Multiple-Services-Credit-Control = 'END-GROUP'
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '503050'
CC-Input-Octets = '12448'
CC-Output-Octets = '490602'
CC-Time = '0'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'FINAL'
Multiple-Services-Credit-Control = 'END-GROUP'
3 Check response will disallow user to connect Upon any web browsing attempt user is redirected to the hotlining server; all other network traffic is blocked
4 End-user makes a payment / topup on PortaBilling self-care portal (or via external application, which sends the payment info to PortaBilling via API) User's available funds / quota increased
5 RAR is sent from PortaBilling to HA-GW RAR is received and RAA is sent by SAE-GW
RAR:
Session-Id=iplook.gy.system.com;1652693002;147600014;4609901234560105
Auth-Application-Id=4
Re-Auth-Request-Type=AUTHORIZE_ONLY
Destination-Host=iplook.gy.system.com
Destination-Realm=gy.system.com
RAA:
Session-Id=iplook.gy.system.com;1652693002;147600014;4609901234560105
Result-Code=2002
Origin-Host=iplook.gy.system.com
Origin-Realm=gy.system.com
Origin-State-Id=38
6 UPDATE reauthorization is sent to PortaBilling User is authorized to use the service normally
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '0'
CC-Input-Octets = '0'
CC-Output-Octets = '0'
CC-Time = '0'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Reporting-Reason = 'FORCED_REAUTHORISATION'
Multiple-Services-Credit-Control = 'END-GROUP'
3.13 Volume-Quota-Threshold support To check whether P-GW supports Volume-Quota-Threshold.
Results
Step ID Test Data Specification REALM Step description Expected Results Result Data 1 Subscriber identification: <MDN> # HA-gw node(s): <Origin-Host/Origin-Realm>
# /
make a user to establish a session Diameter requests (INITIAL_REQUEST/UPDATE_REQUEST) is received containing Requested-Service-Unit
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
2 Check, if session is granted and Volume-Quota-Threshold AVP is provided the response provides grants to establish the session and includes Volume-Quota-Threshold AVP
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1048576'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '120'
Volume-Quota-Threshold = '148576'
Multiple-Services-Credit-Control = 'END-GROUP'
3 Check response will allow user to start using the session the user is able to use the service 69706C6F 6F6B2E67 792E7379 D81E9068
4 User performs some data transfers (1-10MBs) Check if the session generates UPDATE reauthorizations billing records are produced, usage and session is represented on PB gui
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '900475'
CC-Input-Octets = '152647'
CC-Output-Octets = '747828'
Reporting-Reason = 'THRESHOLD'
Used-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
Reporting-Reason = 'OTHER_QUOTA_TYPE'
CC-Time = '71'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
5 Check if UPDATE CCAs include Volume-Quota-Threshold AVP the responses provide grants to establish the session and include Volume-Quota-Threshold AVP
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Granted-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '1048576'
Granted-Service-Unit = 'END-GROUP'
Rating-Group = '133'
Result-Code = '2001'
Service-Identifier = '0'
Validity-Time = '120'
Volume-Quota-Threshold = '148576'
Multiple-Services-Credit-Control = 'END-GROUP'
6 User performs too low/no consumption Check if the session generates UPDATE reauthorizations when the quota contents fall below Volume-Quota-Threshold. HA/PGW sends CCR-U message to BOSS. HA/PGW shall allow service to continue whilst the re-authorization is progress, up to the volume indicated in the original quota. Billing records are produced, usage and session is represented on PB gui
Multiple-Services-Credit-Control = 'BEGIN-GROUP'
Service-Identifier = '0'
Rating-Group = '133'
Requested-Service-Unit = 'BEGIN-GROUP'
Requested-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
CC-Total-Octets = '901026'
CC-Input-Octets = '28761'
CC-Output-Octets = '872265'
Reporting-Reason = 'THRESHOLD'
Used-Service-Unit = 'END-GROUP'
Used-Service-Unit = 'BEGIN-GROUP'
Reporting-Reason = 'OTHER_QUOTA_TYPE'
CC-Time = '3'
CC-Service-Specific-Units = '0'
Used-Service-Unit = 'END-GROUP'
Multiple-Services-Credit-Control = 'END-GROUP'
7 User terminates the session Check if the session generates TERMINATE CCR final billing record is produced, usage and session is cleaned in PortaBilling
Session-Id = 'iplook.gy.system.com;1652693002;147600016;4609901234560105'
Event-Timestamp = '1652771546'
Origin-Host = 'iplook.gy.system.com'
Origin-Realm = 'gy.system.com'
Service-Context-Id = '3gpp_r7_default'
Multiple-Services-Indicator = 'SUPPORTED'
Termination-Cause = 'LOGOUT'
Destination-Host = 'ocs.portaone.com'
Destination-Realm = 'portaone.com'
Auth-Application-Id = '4'
CC-Request-Type = 'TERMINATION_REQUEST'
Logs and tcpdumps .