‘mbts gprs list’ is one of the Configuration Commands available through the rmanager interface.
The command is used for listing details about mobile stations, allocated temporary block flows and GPRS channels that are active for GPRS. The command has the following structure:
mbts gprs list [ms|tbf|ch] [-v] [-x] [-c] [id]
On issuing the command, when having an GPRS-attached MS, the output will resemble:
mbts gprs list MS#1,TLLI=c07b06cf,807b06ce rrmode=PacketIdle Bytes:401up/106down Utilization=67% GMM Context: imsi=001020000000004 ptmsi=0xc07b06cf tlli=0xc07b06cf imei=0123456789012345 state=GmmRegisteredNormal age=349 idle=1 ConnId=8193 TA=2 TE=(0.00 min=-1.00 max=0.00 avg=-0.14 N=2583) RSSI=(-9 min=-19 max=1 avg=-4.90 N=2583) CV=(41 min=40 max=57 avg=46.12 N=17) ILev=(0) RXQual=(0) SigVar=(0) ChCoding=(3 min=0 max=3 avg=2.95 N=118) RXLev=(-71 min=-72 max=-63 avg=-67.08 N=12) mLastAlpha=5 mLastGamma=31 mGamma=31 dataER:.9% (276) recent:.8% (18) low:.8% (18) tbfER:0% (19) rrbpER:0% (114) recent:0% (15) ccchER:.5% (12) recent:1.0% (1) low:1.0% (1) TBF#19 TFI=19 TBF_TLLI=0xc07b06cf mtMS= MS#1,TLLI=c07b06cf,807b06ce mtDir=RLCDir::Down channels: down=( 0:1 0:2 0:3) up=( 0:2,usf=0 0:3,usf=0) mtState==TBFState::DataWaiting1 mtAttached=1 mtTFI=19 mtTlli=0xc07b06cf size=0 PDCH ARFCN=144 TN=1 FER=100% PDCH ARFCN=144 TN=2 FER=14% PDCH ARFCN=144 TN=3 FER=23%
Each mobile station has an allocated debug ID, which will be printed as MS#x where x is a number.
A parameter printed in format (val min= max= avg= N=) details the current value, minimum encountered value, maximum encountered value, the average of the value and the number of values measured and entered into the average.
The parameters associated with one mobile stations are:
- imsi – Subscriber identity.
- ptmsi – Allocated P-TMSI for this subscriber.
- tlli – TLLI associated with MS at Layer 3.
- imei – Mobile equipment identity/
- state – Layer 3 state. Values can be GmmDeregistered (MS is not GPRS attached – as in not registered to SGSN), GmmRegistrationPending (MS is in the process of attaching to GPRS services), GmmRegisteredNormal(MS is GPRS attached), GmmRegisteredSuspended (GPRS services are suspended due to CS services).
- age – time in seconds since the MS attached to GPRS services (GPRS Attach procedure was completed).
- idle – time in seconds since there was any kind of activity of the MS at GPRS L3 layer.
- ConnId – YBTS connection ID assigned to this MS.
- IPs – allocated IPs to this MS. Only appears when the MS has an active PDP context.
- TA – last Timing Advance value ordered to the MS. Range is 0..63. See Timing Advance definition.
- TE – the timing error of the bursts received from the MS. See Timing Error definition.
- RSSI – Received Signal Strength Indicator for the the bursts received from this MS. It details the last value received, the minimum, maximum and average value as well at the number of values received (practically the number of burst received for this MS). It is in dB, and maximum value was observed to be 1dB. Power control will try to keep this negative in order to not saturate the receiver.
- CV – C value as reported by the MS in PacketResourceRequest/PacketDownlinkAckNack messages. See C Value definition.
- ILev – I_LEVEL values reported by MS in PacketResourceRequest/PacketDownlinkAckNack messages. I_LEVELs are reported for each timeslot, but mbts gathers them all in a single statistic. See I_LEVEL definition.
- RXQual: averaged received signal quality at MS, as reported in PacketDownlinkAckNack messages. See RXQUAL definition.
- SigVar – averaged received signal variance parameter SIGN_VAR calculated by the MS (see 45.008, section 10.2.3.1.2) and provided in PacketResourceRequest/PacketDownlinkAckNack messages. Range is 0..63 and is mapped according to the rule 0.25 * SigVar(dB^2) < signal variance < 0.25 * (Sigvar + 1)(dB^2).
- ChCoding – channel coding scheme used for GPRS transmission. Range is 0..3, with 0 corresponding to CS-1 and 3 to CS-4. mbts supports only CS-1 and CS-4. CS-1 is always used for control messages. Data is transmitted using CS-1 or CS-4 according to configuration and RSSI. See ChannelCodingControl.RSSI, Codecs.Uplink and Codecs.Downlink settings in Ybts.conf.
- RXLev – averaged BTS signal level at the MS (see TS 45.008, section 8.1.4) and reported in PacketMeasurementReport messages. Range is -111..-48dBm (actually the range is the same as CV and calculated the same, only that the value is displayed already mapped).
- mLastAlpha – last Alpha parameter given to the MS in a downlink message (see 45.008, section 10.2.1 and Annex B). Alpha is parameter involved in the calculation of the MS output power for weighing the BTS output power. It is involved in the power control procedures. Range is 0..10. See Power Control Loop.
- mLastGamma – last GammaCh parameter given to the MS in a downlink message (see 45.008, section 10.2.1 and Annex B). Gamma is parameter involved in the calculation of the MS output power. It is involved in the power control procedures. 0…31 corresponding to 0…62dB, in 2dBm steps. See Power Control Loop.
- mGamma– next GammaCh parameter to be given to the MS in a downlink message (see 45.008, section 10.2.1 and Annex B). Gamma is parameter involved in the calculation of the MS output power. It is involved in the power control procedures. 0…31 corresponding to 0…62dB, in 2dBm steps. See Power Control Loop.
- dataER – total percentage of missed blocks both uplink and downlink from the total of allocated blocks for the MS.
- recent – percentage of missed blocks in the last 20 48-block-multiframes, which is approx one second.
- low – if present, the biggest percentage of missed blocks in one of the 20 48-block-multiframes.
- tbfER: – percentage of TBFs terminated with error of total allocated TBFs for this MS.
- rrbpER – percentage of total missed RRBP reservations made for this MS.
- recent – percentage of missed RRBP reservations in the last 20 48-block-multiframes, which is approx one second.
- low – if present, the biggest percentage of missed RRBP reservations in one of the 20 48-block-multiframes.
- ccchER – percentage of total missed CCCH reservations made for this MS
- recent – percentage of missed CCCH reservations in the last 20 48-block-multiframes, which is approx one second.
- low – if present, the biggest percentage of missed CCCH reservations in one of the 20 48-block-multiframes.
Each TBF (Temporary Block Flow) has an allocated debug ID which will be printed as TBF#x where x is a number.
The parameters associated with one TBF are:
- down – downlink allocations in ARFCN:Timeslot pairs.
- up – uplink allocations in ARFCN:Timeslot:USF triplets.
For each channel used for GPRS there will be an entry like this:
PDCH ARFCN=144 TN=3 FER=23%
decayFactor = 20 a = 1.0 / decayFactor b = 1.0 - a FER = b * FER + a * fail, where fail = 1 if frame is bad and fail = 0 if the frame is good
Timing advance (TA) is a control parameter ordered by the base station, which tries to compensate the length of time a signal takes to reach the BTS from a mobile phone.
A burst arrives on time when it appers centered on the timeslot. Due to the delay introduced by the distance between the MS and the BTS (which is reported through the timing error), timing advance tries to adjust the time at which the transmitter(the MS) sends bursts in order to compensate the delay at the receiver (BTS). This is performed to prevent collisions with bursts from adjacent timeslots. Thus, TA will tell the MS by how much to advance in time its transmission.
The range of the parameter is 0..63 and it is passed to the MS through messages such as: ImmediateAssignment, PacketUplinkAssignment, PacketUplinkAckNack. Each step represents about an advance of one bit period (~3.69 microseconds). This means that one TA step represents a change in distance of ~1100meters. Taking into account that the delay is round-trip, a TA step means an ~550meters change in the distance between the MS and BTS. So, a TA of 3 means that the MS must be ~1.6km away from the BTS.
Timing error (TE) is a calculated value at transceiver level, which determines the time delay in arrival of a burst at the receiver. It is the difference between the moment the burst should have arrived and the moment the burst actually arrived (centered in the timeslot). The TA compensates this delay.
Timing errors are usually positive, meaning that the burst arrived late. It uses the same scale as timing advance, meaning that one step corresponds to ~550m distance between the MS and the BTS. If the TE is negative, it means that the MS is very close to the BTS, and that cannot be compensated through a TA value.
When the TA is ordered accordingly, the TE should be ~0.
C value is the normalized received signal strength at the MS. Through this value, the MS reports the power of the BTS as seen at its end (see 3GPP TS 45.008, section 10.2.3.1).
It is reported in a range of 0..63 and it is mapped according to the following formula (see TS 45.008, section 8.1.4):
C = -111dBm + CV.
I_LEVEL represents the the interference level observed on a timeslot compared to the C value (see 3GPP TS 45.008, section 10.3).
The range is 0..15. I_LEVEL represents the mapping of the interference level compared to the C value. Mapping is done like this:
for I_LEVEL = 1..14: C - 2 * I_LEVEL <= interference <= C - 2 * (I_LEVEL - 1) for I_LEVEL = 0: interference >= C for I_LEVEL = 15: interference <= C - 28dB
RXQUAL represents the BER (bit error rate) detected for the channel by the MS (see 3GPP TS 45.008, section 22.214.171.124 and 8.2.4).
Range is 0..7 and it’s interpreted like this:
|RXQUAL||BER is greater than (%)||Assumed BER value (%)||BER is less than (%)|
Power control loop
The open power control loop used for GPRS tries to adjust the MS radio power output in order for bursts to reach the BTS. The MS cannot transmit a GPRS burst at full power at all times because it will saturate the BTS’s receiver (and will also consume more power). To counter this inability, the MS adjust its output power taking into account the measured signal strength received from the BTS and the commands received from the BTS.
According to 3GPP TS 45.008, section 10.2.1, the MS output power is determined by:
Pch = min(Gamma0 - GammaCh - Alpha * (C + 48), PMAX)
According to the Annex B, all power calculations are in dBm. The parameters of the formula are:
- is GPRS_MS_TXPWR_MAX_CCH if PBCCH is present
- is MS_TXPWR_MAX_CCH, if no PBCCH is present (the case of mbts)
- has values in range between 5-43 dBm (see Table 1 is spec)
- 39 dBm for GSM400, GSM850, GSM900
- 36 dBm for DCS1800 and PCS1900
- is a system parameter broadcast on PBCCH (if present – not in the mbts case), and ordered by the BTS to the MS through some downlink RLC control messages.
- is encoded on range of 0…10 corresponding to values of 0.1…1.0 in 0.1 steps
- serves as a factor which decides the weight of the measured level of the received BTS signal in the output power
- is an MS (our case) and channel specific parameter sent to the MS in several downlink RLC control messages
- is encoded on a range of 0…31 corresponding to 0…62dB, in 2dBm steps
- is a parameter which tells the MS by how much to turn down the power
Looking closely to the formula, and knowing that the the MS usually measures received signal levels (the C value) between -111dBm…-48dBm, the conclusion is that the whole (C + 48) expression is negative. Combined with the negative sign in front of Alpha, it results that ALPHA DECIDES BY HOW MUCH THE MS SHOULD TURN UP ITS POWER.
Because it is always positive, GAMMACH DECIDES BY HOW MUCH THE MS SHOULD TURN DOWN ITS POWER.
Setting ALPHA to 1 will allow the MS to increase its power with the difference between the received signal and the -48 dBm threshold. In theory, if GammaCh is also set to 0, the power control is given completely to the MS. But, as PMAX = MS_TXPWR_MAX_CCH is usually +33 / +30dBm (equivalent to 2/1W transmit power),setting GammaCh to 0, will have no effect, as Gamma0 is already 6dBm greater than PMAX, so the transmit power will always be PMAX.
Setting ALPHA to 0 and network adjusting of GammaCh based on the MS received signal strength allows the network to take control of the power loop for the MS.
Below are some examples of the effects of the power control loop on the transmit power of the MS.
Pch = 39 - 2 * 31 - 1.0 * (C + 48) (dBm) = -23 - (C + 48) (dBm) = -71 - C (dBm) For: C = -111 dBm -> Pch = 40 dBm, but PMAX = 33/30 dBm so it will trasmit with PMAX C = -104 dBm -> Pch = 33 dBm (same as PMAX = 33 dBm for a 2W MS in GSM850/GSM900) C = -101 dBm -> Pch = 30 dBm (same as PMAX = 30 dBm for a 1W MS in DCS1800/PCS1900) C = -76 dBm -> Pch = 5 dBm (usually the minimum transmit power of 3mW) C = -48 dBm -> Pch = -23 dBm (but limited by the minimum 5 dBm transmit power) So, Pch varies only for value of C in range -104...-76 dBm for GSM850/GSM900, -101...-76 dBm for DCS1800/PCS1900.
Pch = 5 - 1.0 (C + 48) (dBm) = -43 -C (dBm) For: C = -76 dBm -> Pch = 33 dBm (same as PMAX in GSM850/GSM900) C = -73 dBm -> Pch = 30 dBm (same as PMAX in DCS1800/PCS1900) C = -48 dBm -> Pch = 5 dBm ( minimum of 3mW transmit power) So, Pch varies only for values of C in range -76...-48 dbm for GSM850/GSM900, -73...-48 dBm for DCS1800/PCS1900.
C has a range of 62dB and Pch has a typical range of 28 or 25 dB. That gives Alpha = 4 and GammaCh = 17. Pch = 5 - 0.4 (C + 48) (dBm) = -14 -0.4*C (dBm) C = -111 dBm -> Pch = 30 dBm C = -48 dBm -> Pch = 5 dBm For GSM850 and GSM900, setting Alpha = 5 makes it possible to exploit the larger MS_TXPWR_MAX_CCH.
See 3GPP TS 45 008 V12.3.0, Annex B for further explanations.
YateBTS will order a pre-configured Alpha. See MS.Power.Alpha in Ybts.conf. GammaCh will be adjusted by YateBTS starting from the configured MS.Power.Gamma in Ybts.conf in order to obtain a MS RSSI in a configured interval around a configured target RSSI (see MS.Power.RSSITarget and MS.Power.RSSIInterval in ybts.conf). By default, YateBTS will order a GammaCh in order to obtain a RSSI in the -28..-23 range.
It is desirable to try to keep the MS output power at the minimum required for the burst to be received at the BTS. If the bursts where to be transmitted at full power, it can saturate the receiver and the burst will be dropped. The same if the transmit power is too low, the burst might not be detected at receiver.
Interpreting the parameters
- if the RSSI is high and the power control cannot order turning down the power to an even lower value (meaning Gamma = 31), it could mean one or all of the following situations:
- the MS is quite close to base station;
- the BTS is transmitting at a lower power (it can be seen at what power the MS see it through CV and/or RXLev), and the MS thinks that it is far from the BTS and will transmit at a higher power. In this case, an attenuator on the receiver might be needed;
- both situations will lead to high power burst arriving at the BTS. A high RSSI for a burst increases the chances that bursts are being dropped due to receiver saturation and, therefore, have the appearance that nothing is being received from MS.
- if the RSSI is low and the power cannot be turned up (Gamma = 0), it could mean that the MS is close to being out the range of the BTS. This can be checked by looking at CV/RXlev to see at what level the MS is seeing the BTS signal. A value of -100dBm is low, and at -110dBm, MSs consider the BTS signal lost. Increasing (if possible) the transmit power of the BTS should solve the problem.
- depending of the range wished to be covered, setting an appropriate Alpha for the power control is important. For a short range, you’d want Alpha 0 so that the whole output power of the MS is not influenced by the BTS transmit power, and only by Gamma.
- the MS power is inversely correlated with the BTS output power. This is designed so that the MS will transmit at low power when it is close to the BTS, and high when it’s far because the MS assumes that BTS transmits at a certain power as to cover a certain distance.
- assuming that the MS stays in place and the BTS turns down its power, this will cause the MS to increase its transmit power. The BTS will be able to turn down the MS power to a certain point (until Gamma is 31), but if after that the MS signal is still to strong, you can either adjust Alpha (make it smaller), either turn up the BTS power at least to where the power loop can compensate or either install an attenuator on the receiver of the BTS.
- a high value of RXQUAL indicates that the MS is receiving a percentage of burst with the BER as indicated by the mapping in the RXQUAL definition. A high BER could indicate interference with the BTS signal or possibly that the BTS is transmitting with too low/too high amplification.