code being sacrificed in the course of the OmsoNITB split-up

Harald Welte laforge at
Fri Jul 21 06:42:38 UTC 2017

Hi Neels,

On Fri, Jul 21, 2017 at 12:47:35AM +0200, Neels Hofmeyr wrote:
> Some code that is disabled to be able to compile libmsc without libbsc is
> related to communication to the BTS, that is replaced by the new A-interface.
> However, the following bits are not; Any opinions about what to do with it:

my suggestion here would be a set of optional, vendor-specific TLVs that
we can introduce in the A interface to convey related information.
Those extensions could be enabled by default using a vty command on the
BSC, and could be disabled for strict interop with other implementations
that don't understand them.

> - Report on which ARFCN and timeslot a silent call has occured.
>   I would simply drop the ARFCN and timeslot information, saying "silent call
>   successful". (same in two log messages)

Would be easy to include information about the actual physical channel
from BSC -> MSC, such as BTS number (maybe CGI=MCC+MNC+LAC+CID), ARFCN,
timeslot/sub-slot (rsl chan_nr)...

This is generally useful for all kinds of debugging.

In a similar manner I would tranasport some kind of subscriber
name/identification from the MSC to the BSC so the BSC can still show
who has allocated a given channel.  In its most generic form it could be
as simple as a string TLV that the MSC can add to whatever downlink A
interface message, and which the BSC accepts in every such message to
talloc_replace_string() a field in its lchan, which can then be printed
by various code (particularly logging) or used as log filter, or
whatever else.

> - Add Osmocom specific TLVs to SMPP

Could be handled the same way, but should be yet another option, as it
adds a lot of verbosity to the A interface which it otherwise doesn't
need.  Not the highest priority, but definitely doable with reasonable
> - Siemens BS11 MRPCI
>         /* see mail on openbsc@ 9 Feb 2016 22:30:15 +0100
>          * We need to hook sending of MRPCI to Siemens BS11 somewhere else */
>         if (is_siemens_bts(conn->bts))
>                 send_siemens_mrpci(msg->lchan, classmark2-1);

this has to be moved  to the BSC.

> - Debug log: report bts - trx - ts - ti in mncc_rcvmsg()
>   (No BTS information available in OsmoMSC anymore)

see above, can be retrieved from those TLVs which we send once when
confirming the activation of a channel (= SCCP connection).

> - In gsm48_cc_rx_setup(), populate struct gsm_mncc setup with lchan type.
>   (lchan information is no longer available in OsmoMSC)

same as above.

> - In libmsc, gsm_04_08.c, we connect libbsc handle_abisip_signal(); the same is
>   done in osmo_bsc_audio.c in osmo_bsc_audio_init(), so I assume it can be
>   dropped from libmsc.

well, who are the usrers of the signal?

- Harald Welte <laforge at> 
"Privacy in residential applications is a desirable marketing option."
                                                  (ETSI EN 300 175-7 Ch. A6)

More information about the OpenBSC mailing list