Wednesday, 28 October 2015

MME can’t find HSS caused by the wrong IMSIHSS configuration on MME (Huawei)



1.    Phenomenon Description

Not a single webpage could be opened while the default bearer can be established via USN(PS9.2), UGW (PS9.2).

2.    Alarm Information.

Null.

3.    Cause Analysis

1)     Wrong subscription on HSS.
2)        Wrong limitation on USN/UGW.

4.    Handling Process

The customer changes the subscription of AMBR from 10Mbps to the largest value (4294967295 bps) on HSS on Friday and he observes no webpage can be opened the next Monday, nor can he ping any server in the internet from the UE.
Nothing else has been changed since Friday, so we ask the customer to change the subscription back to 10Mbps.No improvement in the speed has been observed immediately.
Around 4pm in the afternoon, the speed recovered to a normal state magically, but no one knows why.
The customer thinks the issue lies somewhere else, so he changes the AMBR on HSS to 4294967295 bps again on Monday.
Tuesday morning, there is some report about no internet service again.
The customer changes the AMBR on HSS to 10Mbps again, hoping there would be a change.
This time, the subscriber has APN AMBR=10Mbps on HSS. But when we run DSP SMCTX, we get:
UE-AMBR uplink in use  =  704
UE-AMBR downlink in use  =  704
APN-AMBR uplink in use  =  704
APN-AMBR downlink in use  =  704
 Meanwhile, when we get a subscriber trace, we can see different kinds of traces.
1) At around 10:26 am
In the trace, we can see that the USN sends "AMBR=1" in the "create session request".
At around 10:26, when the default bearer is established, there is no "Update Location Request" sent from USN to HSS, so we guess USN uses this value from its cache. But USN cannot decide what value to use for creating the session, it must get is from other systems, so we need to find out where this "1Kbps" comes from.
So we use AT command on the UE to do a "UE initiated detach".
2) At around 10:37 am
In the following trace, we can see that the USN sends "AMBR=1" in the "create session request". This is no different from what we see in #115.
However, this time, we can see a "Update Location Request" in the trace (#586), sent from USN to HSS and HSS doesn't send the QoS information to USN in the "Update Location Response".
3) At around 12:03 pm
In order for HSS to send the QoS information to USN, we use "RMV USER" command on USN to remove the subscriber's MM context and SM context on the USN completely.
This time, the subscriber's download speed is normal.
And we can see from the trace "Update Location Request" and "Update Location Response" between USN and HSS, and to our joy, HSS sends the QoS information to USN.
So we compare the "Update Location Requests" in these two scenarios and we find USN sends only one bit different in the "Update Location Request".
Please see to the picture below to see the difference.
35 (Dec)=100011(Bin)
39 (Dec)=100111(Bin)
The difference is on bit 2.
That explains why HSS didn't send the QoS at 10:37.
ULR-Flags
Bit
Name
Description
0
Single-Registration-Indication
This bit, when set, indicates that the HSS shall send Cancel Location to the SGSN. An SGSN shall not set this bit when sending ULR.
1
S6a/S6d-Indicator
This bit, when set, indicates that the ULR message is sent on the S6a interface, i.e. the source node is an MME (or a combined MME/SGSN to which the UE is attached via E-UTRAN).
This bit, when cleared, indicates that the ULR message is sent on the S6d interface, i.e. the source node is an SGSN (or a combined MME/SGSN to which the UE is attached via UTRAN or GERAN).
2
Skip Subscriber Data
This bit, when set, indicates that the HSS may skip subscription data in ULA. If the subscription data has changed in the HSS after the last successful update of the MME/SGSN, the HSS shall ignore this bit and send the updated subscription data. If the HSS effectively skips the sending of subscription data, the GPRS-Subscription-Data-Indicator flag can be ignored.
3
GPRS-Subscription-Data-Indicator
This bit, when set, indicates that the HSS shall include in the ULA command the GPRS subscription data, if available in the HSS; it shall be included in the GPRS-Subscription-Data AVP inside the Subscription-Data AVP (see Subscription Data).
Otherwise, the HSS shall not include the GPRS-Subscription-Data AVP in the response, unless the Update Location Request is received over the S6d interface and there is no EPS subscription data stored for the subscriber, or when the subscription data is returned by a Pre-Rel-8 HSS (via an IWF).
A standalone MME shall not set this bit when sending a ULR.
4
Node-Type-Indicator
This bit, when set, indicates that the requesting node is a combined MME/SGSN.
This bit, when cleared, indicates that the requesting node is a single MME or SGSN; in this case, if the S6a/S6d-Indicator is set, the HSS may skip the check of those supported features only applicable to the SGSN, and consequently skip the download of the SMS related subscription data to a standalone MME.
5
Initial-Attach-Indicator
This bit, when set, indicates that the HSS shall send Cancel Location to the MME or SGSN if there is the MME or SGSN registration.
6
PS-LCS-Not-Supported-By-UE
This bit, when set, indicates to the HSS that the UE does not support neither UE Based nor UE Assisted positioning methods for Packet Switched Location Services. The MME or SGSN shall set this bit on the basis of the UE capability information and the access technology supported by the SGSN or MME.
Bits not defined in this table shall be cleared by the sending MME or SGSN and discarded by the receiving HSS.

The remaining issue then is where USN gets this 1 Kbps to create the session request.
When USN gets the APN AMBR=4294967295 bit/s from HSS, USN will convert this value to :
1)AMBR’=(round up (AMBR/1000))*1000  b/s  (AMBR’ will be saved in USN before the corresponding timer times out)
2)AMBR’’=round up (AMBR’/1000)  Kb/s  (AMBR’’ will be sent to UGW create session)
When AMBR=4294967295 bit/s, AMBR’= 4294968000 (Dec) =  0x1 000002C0 (Hex)
However, the largest value USN can store for AMBR’ is  0xffffffff, so USN removes the highest bit and stores 0x2c0 (Hex) = 704 (Dec)
So new AMBR’’= 1 Kb/s is used to created session, and that’s why the subscriber could attach but no internet service could be used.
This issue is related to the subscription and we successfully reproduce this issue after changing the subscription on HSS to 4294967295 bps and removing the user on USN.
After changing the subscription to a proper value, this issue could be fixed.

5.    Suggestions and Summary

It is important to use unified unit in a single element, otherwise, we need to specify the unit in use.
On USN, the trace shows USN send the 1Kbps to create session, while DSP SMCTX shows USN uses 704 bps. This causes a little confusion.
1Kbps=1024 bps,  Not 1000 bps.
Before USN gets a patch for this issue, it is suggested we should use a proper value (around 100Mbps) on the AMBR subscription on the HSS.

Budi Prasetyo

About Budi Prasetyo

All About LTE

Subscribe to this Blog via Email :