pespin has uploaded this change for review.

View Change

bsc: Start MGCP transaction ID sequence based on media_nr

This allows different MscConnHandlers to concurrently submit MGCP
messages with unique transaction ID through the shared MGCP-over-IPA
multiplex BSC<->MSC.

Without this, 2 MscConnHandlers would both send a
CRCX using trans_id=0, and the ConnectionTable in RAN_Emulation.cpp
would lookup and return the first MscConnHandler in the table during the
2nd CRCX ACK which was targeted at the second MscConnHandler.

Change-Id: Icb09d67a1f0207dc8501dd2b47c9162175b691b1
---
M bsc/BSC_Tests.ttcn
M bsc/MSC_ConnectionHandler.ttcn
2 files changed, 20 insertions(+), 0 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/74/34574/1
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index f8d8c2d..f89e450 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -12180,6 +12180,7 @@
var TestHdlrParams pars2 := f_gen_test_hdlr_pars();
var MSC_ConnHdlr vc_conn2;
pars2.mgwpool_idx := 1;
+ pars2.media_nr := 2;

f_init(1, true, nr_mgw := 2);
f_sleep(1.0);
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index 7a5e55e..b499244 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -581,6 +581,7 @@

/* initialize all parameters */
function f_MscConnHdlr_init(integer i, HostName bts, HostName mgw, BSSMAP_FIELD_CodecType codecType) runs on MSC_ConnHdlr {
+ g_trans_id := i * 1000; /* Avoid different MscConnHdlr submitting same trans_id over MGCP-IPA */
f_MediaState_init(g_media, i, bts, mgw, codecType);
f_MscConnHdlr_init_vty();
}

To view, visit change 34574. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Icb09d67a1f0207dc8501dd2b47c9162175b691b1
Gerrit-Change-Number: 34574
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin@sysmocom.de>
Gerrit-MessageType: newchange