gbproxy: Start to allocate NRIs to SGSNs

We change the osmo-gbproxy.cfg to use NRI 3 for SGSN-0 (NSEI 101) and
NRI 4 for SGSN-1 (NSEI 102).

We also add the capability to GBProxy_Tests to allocate P-TMSI with
a specific NRI and default to the first NRI of SGSN-0 so all tests
written still for a single-SGSN-non-pool scenario pass without any
modification.

Related: OS#4472, SYS#5002
Change-Id: I15f78dca5ac31a1c71f086d3e92a70e900eae250
This commit is contained in:
Harald Welte 2021-01-15 19:59:15 +01:00
parent 5fb0174dbe
commit 77218d0990
3 changed files with 16 additions and 4 deletions

View File

@ -45,6 +45,12 @@ const BcdMccMnc c_mcc_mnc := '262F42'H;
const integer max_fr_info_size := 1600;
modulepar {
/* NRI bit-length. 0 for no pooling */
integer mp_nri_bitlength := 5;
roro_integer mp_sgsn_nri := {
{ 3 }, /* list of NRIs of first SGSN */
{ 4 } /* list of NRIs of second SGSN */
};
boolean mp_enable_bss_load_sharing := false;
/* SGSN NS configuration */
NSConfigurations mp_nsconfig_sgsn := {
@ -594,10 +600,10 @@ type function void_fn(charstring id) runs on BSSGP_ConnHdlr;
/* helper function to create, connect and start a BSSGP_ConnHdlr component */
function f_start_handler(void_fn fn, charstring id, GbInstances pcu, GbInstances sgsn, integer imsi_suffix,
float t_guard := 30.0)
float t_guard := 30.0, integer nri := mp_sgsn_nri[0][0])
runs on test_CT return BSSGP_ConnHdlr {
var BSSGP_ConnHdlr vc_conn;
var OCT4 p_tmsi := f_gen_tmsi(imsi_suffix);
var OCT4 p_tmsi := f_gen_tmsi(imsi_suffix, nri_v := nri, nri_bitlen := mp_nri_bitlength);
var BSSGP_ConnHdlrPars pars := {
imei := f_gen_imei(imsi_suffix),
@ -608,8 +614,8 @@ runs on test_CT return BSSGP_ConnHdlr {
tlli := f_gprs_tlli_from_tmsi(p_tmsi, TLLI_LOCAL),
tlli_old := omit,
ra := omit,
pcu := g_pcu,
sgsn := g_sgsn,
pcu := pcu,
sgsn := sgsn,
t_guard := t_guard
};

View File

@ -6,10 +6,13 @@ line vty
no login
!
gbproxy
nri bitlen 5
sgsn nsei 101
name first
nri add 3
sgsn nsei 102
name second
nri add 4
ns
bind udp local
listen 127.0.0.1 23000

View File

@ -49,7 +49,10 @@ ns
nsvc fr hdlcnet7 dlci 22 nsvci 7
nsvc fr hdlcnet8 dlci 23 nsvci 8
gbproxy
nri bitlen 5
sgsn nsei 101
name first
nri add 3
sgsn nsei 102
name second
nri add 4