Leaving for FOSS.in
I'm just about to go to the airport and leave for FOSS.in/2009. Most of my time there will again
be spent working
out on GSM protocol analysis, i.e. the airprobe project.
The workout wiki doesn't really have any content yet, and I shall fix that as
soon as I get the password for the Workout Wiki (apparently passwords from las
year don't work anymore).
It's going to be fun to meet all my Indian friends again - and at the same time
I'm happy that a large international community will be present, including
Stefan Schmidt, Holger Freyther and Andy Green of Openmoko fame, as well as people like
Milosch and Brita Meriac from projects like
OpenPCD, OpenBeacon and txtr, James Morris of netfilter/iptables and SELinux, Lennart Poettering of avahi and pulseaudio.
OpenBSC: System Information + Rest Octet generation
During the flight to Bangalore I kept working on the system_information
branch of OpenBSC. This branch has been lingering in git for quite some time,
but I haven't yet felt confident enough to merge it into the official master.
In OpenBSC so far, the SYSTEM INFORMATION messages (type 1 through 6) are
not really generated by actual code. Rather, we use some templates that are
patched here and there with actual operational parameters such as the ARFCN
of the current cell. This has been easy for the very early start of the
project, but it has started to become more of a problem lately.
One example are neighbor cell lists. If you operate a network with multiple
cells, then of course you want to provide proper neighbor cell lists. At
HAR2009, we solved the problem by manually hard-coding the respective bitmasks.
That's of course not a proper solution.
Another problem is the notoriously complex encoding of the rest octets,
which culminates in the SI13 REST OCTETS describing the GPRS parameters
of a cell.
After a couple of hours in-flight hacking at the code in the sytem_information
branch, I am now confident that it provides superior quality SI messages and
rest octets than the hard-coded templates we used to have before.
Neighbor Cell lists and even SI13 rest octets are looking great when checking
them in the wireshark dissectors. I think it's ready for prime time now, and
the code should get merged into the master branch ASAP.
Now I am only left with one question: Should I consider this the first part of
the FOSS.in GSM workout? ;)