Hi all,
During experimenting with RACH requests in my virtual Um-interface environment, I found an interesting issue in OpenBSC. According to the specifications, every RACH request should contain BSIC value of target base station, and if I understand correctly BSC (or BTS?) should ignore such requests, where rach_bsic != bts_bsic (Ghost RACH).
Meanwhile, when I send all-zero sequence (just for testing) on RACH lchan, BSC allocates me a channel despite bts_bsic != 0x00. It probably also explains the reason, why sometimes in a real OpenBSC + OsmoBTS setup I see channel requests, followed by channel allocation without any further response from MS side.
So, do we have any BSIC matching functionality implemented somewhere? If not, I could try to open an issue and implement it.
With best regards, Vadim Yanitskiy.
Hi Vadim,
On Wed, Jul 12, 2017 at 08:43:40AM +0700, Vadim Yanitskiy wrote:
So, do we have any BSIC matching functionality implemented somewhere? If not, I could try to open an issue and implement it.
The BSIC matching must be implemented in the PHY layer, ie. the non-common part of OsmoBTS. Only there do you have the raw bits of the RACH burst in order to make that decision. From L1SAP upwards you only know the 8bit (11bit) "payload" and have no clue anymore about the C(0) to C(5) bits generated by 05.03 Chapter 4.6.