Project

General

Profile

Bug #3357

osmo-bsc doesn't perform RSL MODE MODIFY on ASSIGNMENT if channel is compatible.

Added by laforge 6 months ago. Updated 2 months ago.

Status:
New
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
06/26/2018
Due date:
% Done:

0%

Spec Reference:

Description

As neels points out in https://gerrit.osmocom.org/#/c/osmo-bsc/+/9671/6/include/osmocom/bsc/lchan_fsm.h@53

The current master branch code does not ever perform a Chan Mode Modify, so neither does this refactored code. It is relatively trivial to add it, but I decided to not add more to this refactoring.

For example: we gave an MS a TCH/F lchan for initial Channel Request. Now a BSSMAP Assignment Command tells us to assign a TCH/F to the MS. We don't need to find a new unused lchan, we can just use the assigned one. All that's needed is to send a Chan Mode Modify to the BTS and go through the FSM states that set up the RTP stream. But we don't do that yet; so far, instead we look for a completely new lchan. (If the lchan mode already matches, we do use the current lchan. See assignment_fsm_start() in assignment_fsm.c )

We should start by creating a BSC_Tests.ttcn test case for this specific behavior. It would then fail until we fixed our BSC.


Related issues

Related to OsmoBSC - Feature #2949: use RR Assignment for Handover within a cellNew2018-02-16

History

#1 Updated by laforge 2 months ago

  • Related to Feature #2949: use RR Assignment for Handover within a cell added

#2 Updated by laforge 2 months ago

  • Assignee changed from sysmocom to dexter

#3 Updated by neels 2 months ago

The easy way of testing: merely send two distinct Assignment Commands from the MSC,
which cause a different chan_mode, like go from SPEEC_V1 to SPEECH_AMR.

Then it would also be good to model a congestion scenario, where no SDCCH are available and TCH/* need to help out.
osmo-bsc is fairly strictly giving out only SDCCH channels for Immediate Assignment,
it will initially only give an MS a TCH/F if all SDCCH are occupied.
So a congestion test would first need to occupy all SDCCH, e.g. with a series of "dummy" Chan Requests,
then send one more Chan Request, to get a TCH/* lchan in mode = SIGN;
and would then send an Assignment Command from the MSC, expecting a Chan Mode Modify, and not a new Chan Activ.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)