Question regarding timeouts and 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/.

Refik Hadzialic refikthesis at googlemail.com
Wed Apr 4 14:40:36 UTC 2012


Dear group members,

(I would like to apologize if you got this message for the second
time, but last time I sent it to the wrong mail address and I am not
sure if the gnumonks mailing list is synchronized with this one,
osmocom, I am sorry if you get this mail for the second time!)

I would like to ask you a question regarding the timeouts and
initiating/allocating an SDCCH channel for a subscriber inside of the
GSM network. I am trying to modify some parts of OpenBSC
(/openbsc/src/libmsc/rrlp.c) and to implement the MS-based RRLP in
OpenBSC (to send assistance data in form of almanac, ephemeris, BTS
geolocation data and GPS reference time to the MS).

At the moment I use the silent sms to start an RRLP request (send RRLP
request + assistance data and then send the silent sms). But if it
takes too long to send the assistance data OpenBSC starts from the
beginning (send rrlp request + assistance data + sms again). I think
this is because OpenBSC waits for an ack from the MS for the silent
sms (which has not been sent) and therefore it's a timeout issue. As a
quick hack I have modified parts of the code and got the RRLP to work
(sent successfully these data and I got a position from the MS).

Just for the curious one, I commented out three lines just before the
return, in /openbsc/src/libmsc/gsm_04_11.c in the function,
gsm411_rx_rp_ack, the following lines:

//else
//gsm411_release_conn(trans->conn);

/* free the transaction here */
//trans_free(trans);


and I changed one timer value from 10 to 100, in
/openbsc/src/libbsc/bsc_rll.c in the function, rll_establish to:

osmo_timer_schedule(&rllr->timer, 100, 0);.


As I know what I did was wrong (since changing the timers and not
releasing the channel properly influences the whole system) but I just
did it for the purpose of testing and to see do I send correct data
and does the RRLP work at all.

I hope you can give me some hints and guides how to allocate a channel
for around 130 seconds and to send the RRLP assistance data within
that channel without doing the above tricks. Once everything works
properly I will provide the RRLP code.

Best regards,
Refik Hadzialic




More information about the OpenBSC mailing list