Sylvain -
There was an unintentional change in filler table behavior between 2.6 and 2.8, probably as a result of modifications to support multi-ARFCN operation. A known symptom of this change in normal OpenBTS operation is the occasional failure of an assignment to a TCH for some MS basebands, most notably Nokia DTC4 series handsets, like the 1600. We are looking for the bug ourselves now.
-- David
On Jan 8, 2013, at 7:40 AM, Sylvain Munaut wrote:
Hi,
Anything OpenBTS is doing wrong?
Well, kind of.
Seems that when the L2 doesn't have anything "new" to send, it doesn't send anything, which causes the filler table to repeat the last message. Now AFAIU, it is the intended behavior, but all in all I'm not convinced it's a good idea. It can help if the process generating the burst doesn't send them to transceiver in time (and so they'll be 'replayed' a multiframe later), but that only works IF:
- The message are time independent (eg some messages on CCCH need to
at the right time (longer than 1 multiframe) to be in the good paging group, each SI message is supposed to be in some specific order, ...)
- No new L1 bursts are generated in the mean time that would
overwrite the non transmitted bursts from the filler table
- The L1FEC was really too late to TX message to the transceiver to
send them in time
I'm kind of wondering how often all those 3 conditions are met and this filler table actually helps.
If instead of retransmitting the last L2 packet, it would just transmit a filler, then if the L1FEC was late, the packet would be lost and the LAPDm recovery would kick-in.
As it is now, it _should_ work since the LAPDm receiver is essentially supposed to ignore all those redudant packet. But that doesn't mean it won't trigger weird bugs in the stack.
Cheers,
Sylvain