RRLP

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Sylvain Munaut 246tnt at gmail.com
Sun Oct 25 18:50:53 UTC 2009


Hi,

I've been working on improving RRLP support lately. Most precisely,
providing  real assistance data sourced directly from a GPS receiver
attached to the control PC.
My problem right now is that the generated APDU is about 1500 bytes
and obviously there is no way that fits in a single L3 frame.

GSM 04.08 9.1.53 describes the format of the APDU and there is a 4
bits flag fields, which from what I understand occupies the 4 upper
fields of the first octet and that allows fragmentation. From reading
the IE description in 10.5.2.49  I should set :

0x10 for the first segment
0x30 for the intermediate segments
0x20 for the last segment

Which is what I tried, by modifying the gsm48_send_rr_app_info
function like this : http://yourpaste.net/3558/
Unfortunately, I couldn't make it work. When I set the segment size to
try and have L3 frame of 251 bytes, I get some RSL error back and when
I use a smaller size, the MS seems to interpret each segment
separately and not reconstituting them ...

Does anyone have a clue ?

        Sylvain

Here's a log, where you see the MS answering independently to the 3
segments (with errors since you can't just decode partial data ...):

<0002> gsm_04_08.c:280 lchan (bts=0,trx=0,ts=0,ch=0) decreases usage to: 0
<0004> gsm_04_08.c:901 -> LOCATION UPDATE ACCEPT
<0002> gsm_04_08_utils.c:144 (bts 0 trx 0 ts 0 pd 05) Sending 0x02 to MS.
l3_len = 14
<0004> gsm_04_08.c:1222 -> MM INFO
<0002> gsm_04_08_utils.c:144 (bts 0 trx 0 ts 0 pd 05) Sending 0x32 to MS.
l3_len = 22
<0008> gsm_04_08.c:1651 TX APPLICATION INFO id=0x00, len=688
<0008> gsm_04_08.c:1669 TX APPLICATION INFO Segment ofs=0 len=230 id=10
<0002> gsm_04_08_utils.c:144 (bts 0 trx 0 ts 0 pd 06) Sending 0x38 to MS.
l3_len = 234
<0008> gsm_04_08.c:1669 TX APPLICATION INFO Segment ofs=230 len=230 id=30
<0002> gsm_04_08_utils.c:144 (bts 0 trx 0 ts 0 pd 06) Sending 0x38 to MS.
l3_len = 234
<0008> gsm_04_08.c:1669 TX APPLICATION INFO Segment ofs=460 len=228 id=20
<0002> gsm_04_08_utils.c:144 (bts 0 trx 0 ts 0 pd 06) Sending 0x38 to MS.
l3_len = 232
<0001> abis_rsl.c:1282 channel=(bts=0,trx=0,ts=0) chan_nr=0x20 sapi=0
DATA INDICATION
<0004> gsm_04_08.c:1438 TMSI Reallocation Completed. Subscriber: 206205003327508
<0001> abis_rsl.c:1282 channel=(bts=0,trx=0,ts=0) chan_nr=0x20 sapi=0
DATA INDICATION
<0020> gsm_04_08.c:1594 RX APPLICATION INFO id/flags=0x00 apdu_len=2 apdu=48 20
<0010> abis_rsl.c:997 channel=(bts=0,trx=0,ts=0) chan_nr=0x28
CONNECTION FAIL: CAUSE=0x01(Radio Link Failure) RELEASING.
<0010> abis_rsl.c:720 RF Channel Release CMD
channel=(bts=0,trx=0,ts=0) chan_nr=0x28
<0010> abis_rsl.c:997 channel=(bts=0,trx=0,ts=0) chan_nr=0x28 RF
CHANNEL RELEASE ACK
<0001> abis_rsl.c:1282 channel=(bts=0,trx=0,ts=0) chan_nr=0x20 sapi=0
DATA INDICATION
<0020> gsm_04_08.c:1594 RX APPLICATION INFO id/flags=0x00 apdu_len=2 apdu=88 10
<0010> abis_rsl.c:720 RF Channel Release CMD
channel=(bts=0,trx=0,ts=0) chan_nr=0x28
<0010> abis_rsl.c:997 channel=(bts=0,trx=0,ts=0) chan_nr=0x28 RF
CHANNEL RELEASE ACK
<0001> abis_rsl.c:1282 channel=(bts=0,trx=0,ts=0) chan_nr=0x20 sapi=0
DATA INDICATION
<0020> gsm_04_08.c:1594 RX APPLICATION INFO id/flags=0x00 apdu_len=2 apdu=c8 00
<0001> abis_rsl.c:1282 channel=(bts=0,trx=0,ts=0) chan_nr=0x20 sapi=0
RELEASE INDICATION
<0010> abis_rsl.c:720 RF Channel Release CMD
channel=(bts=0,trx=0,ts=0) chan_nr=0x20
<0010> abis_rsl.c:997 channel=(bts=0,trx=0,ts=0) chan_nr=0x20 RF
CHANNEL RELEASE ACK
<0002> gsm_subscriber_base.c:150 subscr 201 usage decreased usage to: 0




More information about the OpenBSC mailing list