Methodology
5 scenarios were used in the client simulator
put-mmtel-services.scen put-stn-sr.scen get-mmtel-services.scen get-msisdn.scen ue-reachability-subscribe.scen
The two PUT scenarios contain a PUT and then a GET for the modified data.
The two GET scenarios contain two GETs each for the same data.
The SUBSCRIBE scenario contains one POST.
If each scenario is run 10 times, that equates to 50 simulator "sessions", and 90 requests over the wire. So 1 SPS equals 1.8 requests per second.
Scenarios
For the benchmark we used 5 scenarios to give a broad load profile. Each scenario includes the client call to ShCM and the call from ShCM to the HSS. The scenario mix was weighted to 84% GETS, 11% PUTs, and 5% Susbcribes, to mimic the likely load profile from VoLTE.
GET MMTel-Services
The client-ShCM scenario:
The ShCM-HSS scenario:
This scenario retrieves a subscriber’s transparent data. This is the data returned by the HSS:
<Sh-Data> <RepositoryData> <ServiceIndication>MMTEL-Services</ServiceIndication> <SequenceNumber>1</SequenceNumber> <ServiceData> <MMTelServices xmlns:ss="http://uri.etsi.org/ngn/params/xml/simservs/xcap" xmlns:cp="urn:ietf:params:xml:ns:common-policy" xmlns:ocp="urn:oma:xml:xdm:common-policy" xmlns="http://uri.etsi.org/ngn/params/xml/simservs/xcap"> <version>1</version> <complete-originating-identity-presentation> <originating-identity-presentation active="true"/> <operator-originating-identity-presentation authorized="true"> <restriction-override>override-not-active</restriction-override> </operator-originating-identity-presentation> </complete-originating-identity-presentation> <complete-originating-identity-restriction> <originating-identity-presentation-restriction active="true"> <default-behaviour>presentation-not-restricted</default-behaviour> </originating-identity-presentation-restriction> <operator-originating-identity-presentation-restriction authorized="true"> <mode>temporary</mode> <restriction>all-private-information</restriction> </operator-originating-identity-presentation-restriction> </complete-originating-identity-restriction> <complete-communication-diversion> <communication-diversion active="true"> <cp:ruleset> <cp:rule id="CFU"> <cp:conditions> <rule-deactivated/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61212266406</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="cfb"> <cp:conditions> <busy/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="cfnrc"> <cp:conditions> <rule-deactivated/> <not-reachable/> </cp:conditions> <cp:actions> <forward-to> <target/> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="cfnr"> <cp:conditions> <rule-deactivated/> <no-answer/> </cp:conditions> <cp:actions> <forward-to> <target/> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> </cp:ruleset> </communication-diversion> <operator-communication-diversion authorized="true"> <communication-retention-on-invocation>clear-communication-on-invocation-of-diversion</communication-retention-on-invocation> <retention-when-diverting-rejected-at-diverted-to-user>no-action-at-diverting-user</retention-when-diverting-rejected-at-diverted-to-user> <total-number-of-diversions-for-each-communication>3</total-number-of-diversions-for-each-communication> <cdiv-indication-timer>0</cdiv-indication-timer> <communication-forwarding-on-no-reply-timer>30</communication-forwarding-on-no-reply-timer> <cdivn-buffer-timer>0</cdivn-buffer-timer> <cp:ruleset> <cp:rule id="operator-default-cfb"> <cp:conditions> <rule-deactivated/> <busy/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="operator-default-cfnrc"> <cp:conditions> <rule-deactivated/> <not-reachable/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="operator-default-cfna"> <cp:conditions> <no-answer/> <rule-deactivated/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> </cp:ruleset> </operator-communication-diversion> </complete-communication-diversion> <complete-communication-waiting> <communication-waiting active="true"/> <operator-communication-waiting authorized="true"> <calling-user-receives-notification-his-call-is-waiting>false</calling-user-receives-notification-his-call-is-waiting> </operator-communication-waiting> </complete-communication-waiting> <complete-communication-hold> <operator-communication-hold authorized="true"/> </complete-communication-hold> <complete-communication-barring> <incoming-communication-barring active="false"> <cp:ruleset> <cp:rule id="User-BAIC"> <cp:conditions> <rule-deactivated/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> <cp:rule id="User-BAIC-Roam"> <cp:conditions> <rule-deactivated/> <roaming/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> </cp:ruleset> </incoming-communication-barring> <outgoing-communication-barring active="false"> <cp:ruleset> <cp:rule id="User-BAOC"> <cp:conditions> <rule-deactivated/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> <cp:rule id="User-boic"> <cp:conditions> <rule-deactivated/> <international/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> <cp:rule id="User-boice-exhc"> <cp:conditions> <rule-deactivated/> <international-exHC/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> </cp:ruleset> </outgoing-communication-barring> <operator-incoming-communication-barring authorized="true"/> <operator-outgoing-communication-barring authorized="true"/> </complete-communication-barring> <complete-conference> <operator-conference authorized="true"/> </complete-conference> </MMTelServices> </ServiceData> </RepositoryData> </Sh-Data>
GET MSISDN
The client-ShCM scenario:
The ShCM-HSS scenario:
This scenario retrieves the MSISDN from HSS using the data reference MSISDN.
PUT MMTel-Services
The client-ShCM scenario:
The ShCM-HSS scenario:
This scenario sends a PUR request to the HSS with this data:
<Sh-Data> <RepositoryData> <ServiceIndication>MMTEL-Services</ServiceIndication> <SequenceNumber>1</SequenceNumber> <ServiceData> <MMTelServices xmlns:ss="http://uri.etsi.org/ngn/params/xml/simservs/xcap" xmlns:cp="urn:ietf:params:xml:ns:common-policy" xmlns:ocp="urn:oma:xml:xdm:common-policy" xmlns="http://uri.etsi.org/ngn/params/xml/simservs/xcap"> <version>1</version> <complete-originating-identity-presentation> <originating-identity-presentation active="true"/> <operator-originating-identity-presentation authorized="true"> <restriction-override>override-not-active</restriction-override> </operator-originating-identity-presentation> </complete-originating-identity-presentation> <complete-originating-identity-restriction> <originating-identity-presentation-restriction active="true"> <default-behaviour>presentation-not-restricted</default-behaviour> </originating-identity-presentation-restriction> <operator-originating-identity-presentation-restriction authorized="true"> <mode>temporary</mode> <restriction>all-private-information</restriction> </operator-originating-identity-presentation-restriction> </complete-originating-identity-restriction> <complete-communication-diversion> <communication-diversion active="true"> <cp:ruleset> <cp:rule id="CFU"> <cp:conditions> <rule-deactivated/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61212266406</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="cfb"> <cp:conditions> <busy/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="cfnrc"> <cp:conditions> <rule-deactivated/> <not-reachable/> </cp:conditions> <cp:actions> <forward-to> <target/> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="cfnr"> <cp:conditions> <rule-deactivated/> <no-answer/> </cp:conditions> <cp:actions> <forward-to> <target/> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> </cp:ruleset> </communication-diversion> <operator-communication-diversion authorized="true"> <communication-retention-on-invocation>clear-communication-on-invocation-of-diversion</communication-retention-on-invocation> <retention-when-diverting-rejected-at-diverted-to-user>no-action-at-diverting-user</retention-when-diverting-rejected-at-diverted-to-user> <total-number-of-diversions-for-each-communication>3</total-number-of-diversions-for-each-communication> <cdiv-indication-timer>0</cdiv-indication-timer> <communication-forwarding-on-no-reply-timer>30</communication-forwarding-on-no-reply-timer> <cdivn-buffer-timer>0</cdivn-buffer-timer> <cp:ruleset> <cp:rule id="operator-default-cfb"> <cp:conditions> <rule-deactivated/> <busy/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="operator-default-cfnrc"> <cp:conditions> <rule-deactivated/> <not-reachable/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> <cp:rule id="operator-default-cfna"> <cp:conditions> <no-answer/> <rule-deactivated/> </cp:conditions> <cp:actions> <forward-to> <target>tel:+61222022000</target> <notify-caller>false</notify-caller> </forward-to> </cp:actions> </cp:rule> </cp:ruleset> </operator-communication-diversion> </complete-communication-diversion> <complete-communication-waiting> <communication-waiting active="true"/> <operator-communication-waiting authorized="true"> <calling-user-receives-notification-his-call-is-waiting>false</calling-user-receives-notification-his-call-is-waiting> </operator-communication-waiting> </complete-communication-waiting> <complete-communication-hold> <operator-communication-hold authorized="true"/> </complete-communication-hold> <complete-communication-barring> <incoming-communication-barring active="false"> <cp:ruleset> <cp:rule id="User-BAIC"> <cp:conditions> <rule-deactivated/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> <cp:rule id="User-BAIC-Roam"> <cp:conditions> <rule-deactivated/> <roaming/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> </cp:ruleset> </incoming-communication-barring> <outgoing-communication-barring active="false"> <cp:ruleset> <cp:rule id="User-BAOC"> <cp:conditions> <rule-deactivated/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> <cp:rule id="User-boic"> <cp:conditions> <rule-deactivated/> <international/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> <cp:rule id="User-boice-exhc"> <cp:conditions> <rule-deactivated/> <international-exHC/> </cp:conditions> <cp:actions> <allow>false</allow> </cp:actions> </cp:rule> </cp:ruleset> </outgoing-communication-barring> <operator-incoming-communication-barring authorized="true"/> <operator-outgoing-communication-barring authorized="true"/> </complete-communication-barring> <complete-conference> <operator-conference authorized="true"/> </complete-conference> </MMTelServices> </ServiceData> </RepositoryData> </Sh-Data>