aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2021-01-15 09:27:30 +0100
committerNeels Hofmeyr <neels@hofmeyr.de>2021-01-19 11:49:07 +0100
commit3025e69814eeb38e9e17450c58a801c02585b077 (patch)
treec144a3c6f6075a54633d630793bf317ec28db278 /tests
parent434d3ae2ed5f1ad7c101aa100287658bed99aae6 (diff)
hodec2: fix congestion resolution on dyn TS
For handover algorithm 2, properly figure out what effects the target cell will see for the *other* TCH kind when a handover would occupy a dynamic timeslot. Before this, only TCH/F or TCH/H would be regarded at a time. This introduces detection of whether a dynamic timeslot would be occupied by a handover, and how losing one unused dynamic timeslot affects the congestion situation for the TCH kind that is not targeted by the handover. In other words, if a handover to TCH/F causes congestion in TCH/H because of a dynamic timeslot becoming occupied, the handover will not be performed. Before this, oscillation situations could occur. A subsequent patch will do the same for congestion balancing. Related: SYS#5297 Change-Id: I1536b60f03cb0aeb6ba14a72b518aec82fa572fe
Diffstat (limited to 'tests')
-rw-r--r--tests/handover/test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty28
1 files changed, 10 insertions, 18 deletions
diff --git a/tests/handover/test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty b/tests/handover/test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty
index bc2c8840e..c5890a513 100644
--- a/tests/handover/test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty
+++ b/tests/handover/test_dyn_ts_congestion_tch_f_vs_tch_h.ho_vty
@@ -20,12 +20,8 @@ meas-rep lchan * * * * rxlev 40 rxqual 0 ta 0 neighbors 30
expect-no-chan
meas-rep lchan 0 0 1 0 rxlev 20 rxqual 0 ta 0 neighbors 40
-# FAIL: should not handover because that results in congestion on TCH/H in bts 1
-expect-ho from lchan 0 0 1 0 to lchan 1 0 5 0
-
-expect-ts-use trx 0 0 states * - - - pdch pdch pdch *
-expect-ts-use trx 1 0 states * TCH/F TCH/F TCH/F TCH/HH TCH/F pdch *
-
+# no handover because that results in congestion on TCH/H in bts 1
+expect-no-chan
###
@@ -34,11 +30,9 @@ set-ts-use trx 1 0 states * TCH/F TCH/F TCH/F TCH/HH TCH/F pdch *
meas-rep lchan * * * * rxlev 40 rxqual 0 ta 0 neighbors 30
congestion-check
-# FAIL: really weird: handover one TCH/H to the same cell to TCH/F, taking up another dyn TS.
-# TCH/H congestion hence actually gets worse.
-expect-ho from lchan 1 0 4 1 to lchan 1 0 6 0
-expect-ts-use trx 0 0 states * - - - pdch pdch pdch *
-expect-ts-use trx 1 0 states * TCH/F TCH/F TCH/F TCH/H- TCH/F TCH/F *
+expect-ho from lchan 1 0 4 1 to lchan 0 0 4 0
+expect-ts-use trx 0 0 states * - - - TCH/H- pdch pdch *
+expect-ts-use trx 1 0 states * TCH/F TCH/F TCH/F TCH/H- TCH/F pdch *
###
@@ -65,12 +59,9 @@ meas-rep lchan 1 * * * rxlev 40 rxqual 0 ta 0 neighbors 30
expect-no-chan
meas-rep lchan 0 * * * rxlev 30 rxqual 0 ta 0 neighbors 40
-# FAIL: back to bts 1 because of rxlev, plus moving TCH/H to TCH/F!?
-expect-ho from lchan 0 0 4 0 to lchan 1 0 4 0
-
-expect-ts-use trx 0 0 states * - - - pdch pdch pdch *
-expect-ts-use trx 1 0 states * TCH/F TCH/F TCH/F TCH/F TCH/F TCH/F *
-
+# no HO because the target is congested on TCH/H. Moving to TCH/F would also
+# reduce TCH/H lchans because it would convert another dyn TS.
+expect-no-chan
###
@@ -78,5 +69,6 @@ set-ts-use trx 0 0 states * - - - pdch pdch pdch *
set-ts-use trx 1 0 states * TCH/F TCH/F TCH/F TCH/F TCH/F TCH/F *
congestion-check
+# FAIL: TCH/F occupy dynamic timeslots -- should hand over to bts 0 to free a
+# dyn TS and reduce TCH/H congestion.
expect-no-chan
-# Stable situation now only because TCH/F has min-free-slots set to 0