Project

General

Profile

Feature #2949

use RR Assignment for Handover within a cell

Added by neels 10 months ago. Updated 10 months ago.

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

0%

Spec Reference:

Description

Currently, we always use RSL_ACT_INTER_ASYNC and RR Handover Command, both for handover between different cells and for re-assignment within the same cell.

There are patches around to use RSL_ACT_INTRA_IMM_ASS and gsm48_send_rr_ass_cmd() for re-assignment within the same cell, instead.
However, that hasn't worked out in testing so far.

Implement Assignment by actual intra-cell assignment instead of Handover Command.


Related issues

Related to OsmoBSC - Bug #3357: osmo-bsc doesn't perform RSL MODE MODIFY on ASSIGNMENT if channel is compatible.New2018-06-26

Is duplicate of OsmoBSC - Feature #3277: handover: for intra-cell HO, use RR Assignment Command, not RR Handover CommandNew2018-05-17

History

#1 Updated by neels 10 months ago

This patch in essence came from the jolly/new_handover branch, does not seem to be sufficient.

commit adf9dc3065329714d1c67aa04600de23d7a70452
Author: Neels Hofmeyr <neels@hofmeyr.de>
Date:   Mon Feb 12 17:28:56 2018 +0100

    use RR Assignment Command for intra-cell re-assignment

    Change-Id: I26b62731f13cd7d4217b68eb76e298a6216af896

diff --git a/src/libbsc/handover_logic.c b/src/libbsc/handover_logic.c
index cdc21f56f..2d6b6bddb 100644
--- a/src/libbsc/handover_logic.c
+++ b/src/libbsc/handover_logic.c
@@ -158,7 +158,9 @@ int bsc_handover_start(enum hodec_id from_hodec_id, struct gsm_lchan *old_lchan,
     new_lchan->conn->ho_lchan = new_lchan;

     rc = rsl_chan_activate_lchan(new_lchan,
-                     ho->async ? RSL_ACT_INTER_ASYNC : RSL_ACT_INTER_SYNC,
+                     ho->inter_cell
+                       ? (ho->async ? RSL_ACT_INTER_ASYNC : RSL_ACT_INTER_SYNC)
+                       : RSL_ACT_INTRA_IMM_ASS,
                      ho->ho_ref);
     if (rc < 0) {
         LOGPHO(ho, LOGL_INFO, "%s Failure: activate lchan rc = %d\n",
@@ -233,7 +235,10 @@ static int ho_chan_activ_ack(struct gsm_lchan *new_lchan)
     /* we can now send the 04.08 HANDOVER COMMAND to the MS
      * using the old lchan */

-    gsm48_send_ho_cmd(ho->old_lchan, new_lchan, new_lchan->ms_power, ho->ho_ref);
+    if (ho->inter_cell)
+        gsm48_send_ho_cmd(ho->old_lchan, new_lchan, new_lchan->ms_power, ho->ho_ref);
+    else
+        gsm48_send_rr_ass_cmd(ho->old_lchan, new_lchan, new_lchan->ms_power);

     /* start T3103.  We can continue either with T3103 expiration,
      * 04.08 HANDOVER COMPLETE or 04.08 HANDOVER FAIL */

#2 Updated by neels 4 months ago

  • Is duplicate of Feature #3277: handover: for intra-cell HO, use RR Assignment Command, not RR Handover Command added

#3 Updated by laforge 3 months ago

  • Related to Bug #3357: osmo-bsc doesn't perform RSL MODE MODIFY on ASSIGNMENT if channel is compatible. added

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)