Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Ivan Tyagov
slapos
Commits
05bd12e9
Commit
05bd12e9
authored
3 months ago
by
Joanne Hugé
Browse files
Options
Download
Email Patches
Plain Diff
simpleran: add PDN list parameter and add more default parameters
parent
30d97cf5
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
597 additions
and
60 deletions
+597
-60
software/simpleran/buildout.hash.cfg
software/simpleran/buildout.hash.cfg
+6
-6
software/simpleran/config/enb.jinja2.cfg
software/simpleran/config/enb.jinja2.cfg
+30
-30
software/simpleran/config/ims.jinja2.cfg
software/simpleran/config/ims.jinja2.cfg
+2
-2
software/simpleran/config/mme.jinja2.cfg
software/simpleran/config/mme.jinja2.cfg
+9
-6
software/simpleran/instance-core-network-input-schema.json
software/simpleran/instance-core-network-input-schema.json
+34
-0
software/simpleran/instance-core-network.jinja2.cfg
software/simpleran/instance-core-network.jinja2.cfg
+23
-4
software/simpleran/instance-enb-input-schema.json
software/simpleran/instance-enb-input-schema.json
+435
-0
software/simpleran/instance-enb.jinja2.cfg
software/simpleran/instance-enb.jinja2.cfg
+28
-0
software/simpleran/instance-ors-enb-input-schema.json
software/simpleran/instance-ors-enb-input-schema.json
+4
-4
software/simpleran/instance-ors-enb.jinja2.cfg
software/simpleran/instance-ors-enb.jinja2.cfg
+22
-4
software/simpleran/instance-ors-gnb-input-schema.json
software/simpleran/instance-ors-gnb-input-schema.json
+4
-4
No files found.
software/simpleran/buildout.hash.cfg
View file @
05bd12e9
...
...
@@ -60,11 +60,11 @@ md5sum = 52da9fe3a569199e35ad89ae1a44c30e
[template-enb]
_update_hash_filename_ = instance-enb.jinja2.cfg
md5sum =
915af421eb59f36f7145c404c88b24b0
md5sum =
e89ee67dcee89923aace67759b3a7867
[template-ors-enb]
_update_hash_filename_ = instance-ors-enb.jinja2.cfg
md5sum =
f4221fa9088546a40449845dcfb15447
md5sum =
8ed4dcc068950078daadfa7dd63b67fe
[template-ors-ue]
_update_hash_filename_ = instance-ors-ue.jinja2.cfg
...
...
@@ -72,7 +72,7 @@ md5sum = f4389a92fb111447e7976e452db78607
[template-core-network]
_update_hash_filename_ = instance-core-network.jinja2.cfg
md5sum =
7b653b5bfd62e91d0c423ee
93
8
7c
a04
5
md5sum =
92fd8377819ae6e844f77
937c
ecfa60
5
[template-ue]
_update_hash_filename_ = instance-ue.jinja2.cfg
...
...
@@ -88,7 +88,7 @@ md5sum = dd50b4e4780830ddbde28b84af118f18
[enb.jinja2.cfg]
filename = config/enb.jinja2.cfg
md5sum =
5f5441444d442e87526b6ced33265656
md5sum =
d19d631a0181a5449be8859274d4fade
[drb_lte.jinja2.cfg]
filename = config/drb_lte.jinja2.cfg
...
...
@@ -108,7 +108,7 @@ md5sum = 9dbd93036c15c87c6de74b88b34062b6
[mme.jinja2.cfg]
filename = config/mme.jinja2.cfg
md5sum =
d1df6c004ca74330699969818aec3252
md5sum =
eff3bd1b191cfab251a602ad99a8316e
[dnsmasq-core-network.jinja2.cfg]
filename = config/dnsmasq-core-network.jinja2.cfg
...
...
@@ -120,7 +120,7 @@ md5sum = 95f4f8fb85e0480eb3e9059b9db26540
[ims.jinja2.cfg]
filename = config/ims.jinja2.cfg
md5sum =
f07c85916bcb7e4002c8edc3d087c1be
md5sum =
8379c4edcccc03db94acceca77e3cd07
[ue.jinja2.cfg]
filename = config/ue.jinja2.cfg
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/config/enb.jinja2.cfg
View file @
05bd12e9
...
...
@@ -451,32 +451,32 @@
a2_hysteresis: {{ slapparameter_dict.handover_a2_hysteresis }},
a2_time_to_trigger: {{ slapparameter_dict.handover_a2_time_to_trigger }},
eutra_handover: {
{%- if 'a3_rsrp' in slapparameter_dict.eutra_handover.event %}
{%- if 'a3_rsrp' in slapparameter_dict.eutra_
eutra_
handover.event %}
a3_report_type: "rsrp",
a3_offset: {{ slapparameter_dict.eutra_handover.event.a3_rsrp }},
{%- elif 'a4_rsrp' in slapparameter_dict.eutra_handover.event %}
a3_offset: {{ slapparameter_dict.eutra_
eutra_
handover.event.a3_rsrp }},
{%- elif 'a4_rsrp' in slapparameter_dict.eutra_
eutra_
handover.event %}
a4_report_type: "rsrp",
a4_threshold_rsrp: {{ slapparameter_dict.eutra_handover.event.a4_rsrp }},
{%- elif 'a5_rsrp' in slapparameter_dict.eutra_handover.event %}
a4_threshold_rsrp: {{ slapparameter_dict.eutra_
eutra_
handover.event.a4_rsrp }},
{%- elif 'a5_rsrp' in slapparameter_dict.eutra_
eutra_
handover.event %}
a5_report_type: "rsrp",
a5_threshold1_rsrp: {{ slapparameter_dict.eutra_handover.event.a5_threshold1_rsrp }},
a5_threshold2_rsrp: {{ slapparameter_dict.eutra_handover.event.a5_threshold2_rsrp }},
a5_threshold1_rsrp: {{ slapparameter_dict.eutra_
eutra_
handover.event.a5_threshold1_rsrp }},
a5_threshold2_rsrp: {{ slapparameter_dict.eutra_
eutra_
handover.event.a5_threshold2_rsrp }},
{%- endif %}
hysteresis: {{ slapparameter_dict.eutra_handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.eutra_handover.time_to_trigger }}
hysteresis: {{ slapparameter_dict.eutra_
eutra_
handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.eutra_
eutra_
handover.time_to_trigger }}
{%- if len(list(ipeercell_dict|dictsort | selectattr('1._.cell_type', '==', 'nr'))) > 0 %}
},
nr_handover: {
{%- if 'b1_rsrp' in slapparameter_dict.nr_handover.event %}
{%- if 'b1_rsrp' in slapparameter_dict.
eutra_
nr_handover.event %}
b1_report_type: "rsrp",
b1_threshold_rsrp: {{ slapparameter_dict.nr_handover.event.b1_rsrp }},
{%- elif 'b2_rsrp' in slapparameter_dict.nr_handover.event %}
b1_threshold_rsrp: {{ slapparameter_dict.
eutra_
nr_handover.event.b1_rsrp }},
{%- elif 'b2_rsrp' in slapparameter_dict.
eutra_
nr_handover.event %}
b2_report_type: "rsrp",
b2_threshold1_rsrp: {{ slapparameter_dict.nr_handover.event.b2_threshold1_rsrp }},
b2_threshold2_rsrp: {{ slapparameter_dict.nr_handover.event.b2_threshold2_rsrp }},
b2_threshold1_rsrp: {{ slapparameter_dict.
eutra_
nr_handover.event.b2_threshold1_rsrp }},
b2_threshold2_rsrp: {{ slapparameter_dict.
eutra_
nr_handover.event.b2_threshold2_rsrp }},
{%- endif %}
hysteresis: {{ slapparameter_dict.nr_handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.nr_handover.time_to_trigger }}
hysteresis: {{ slapparameter_dict.
eutra_
nr_handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.
eutra_
nr_handover.time_to_trigger }}
},
{%- else %}
}
...
...
@@ -829,28 +829,28 @@
a2_hysteresis: {{ slapparameter_dict.handover_a2_hysteresis }},
a2_time_to_trigger: {{ slapparameter_dict.handover_a2_time_to_trigger }},
nr_handover: {
{%- if 'a3_rsrp' in slapparameter_dict.nr_handover.event %}
{%- if 'a3_rsrp' in slapparameter_dict.nr_
nr_
handover.event %}
a3_report_type: "rsrp",
a3_offset: {{ slapparameter_dict.nr_handover.event.a3_rsrp }},
{%- elif 'a4_rsrp' in slapparameter_dict.nr_handover.event %}
a4_threshold_rsrp: {{ slapparameter_dict.nr_handover.event.a4_rsrp }},
{%- elif 'a5_rsrp' in slapparameter_dict.nr_handover.event %}
a5_threshold1_rsrp: {{ slapparameter_dict.nr_handover.event.a5_threshold1_rsrp }},
a5_threshold2_rsrp: {{ slapparameter_dict.nr_handover.event.a5_threshold2_rsrp }},
a3_offset: {{ slapparameter_dict.nr_
nr_
handover.event.a3_rsrp }},
{%- elif 'a4_rsrp' in slapparameter_dict.nr_
nr_
handover.event %}
a4_threshold_rsrp: {{ slapparameter_dict.nr_
nr_
handover.event.a4_rsrp }},
{%- elif 'a5_rsrp' in slapparameter_dict.nr_
nr_
handover.event %}
a5_threshold1_rsrp: {{ slapparameter_dict.nr_
nr_
handover.event.a5_threshold1_rsrp }},
a5_threshold2_rsrp: {{ slapparameter_dict.nr_
nr_
handover.event.a5_threshold2_rsrp }},
{%- endif %}
hysteresis: {{ slapparameter_dict.nr_nr_handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.nr_nr_handover.time_to_trigger }}
},
{%- if len(list(ipeercell_dict|dictsort | selectattr('1._.cell_type', '==', 'lte'))) > 0 %}
eutra_handover: {
{%- if 'b1_rsrp' in slapparameter_dict.eutra_handover.event %}
b1_threshold_rsrp: {{ slapparameter_dict.eutra_handover.event.b1_rsrp }},
{%- elif 'b2_rsrp' in slapparameter_dict.eutra_handover.event %}
b2_threshold1_rsrp: {{ slapparameter_dict.eutra_handover.event.b2_threshold1_rsrp }},
b2_threshold2_rsrp: {{ slapparameter_dict.eutra_handover.event.b2_threshold2_rsrp }},
{%- if 'b1_rsrp' in slapparameter_dict.
nr_
eutra_handover.event %}
b1_threshold_rsrp: {{ slapparameter_dict.
nr_
eutra_handover.event.b1_rsrp }},
{%- elif 'b2_rsrp' in slapparameter_dict.
nr_
eutra_handover.event %}
b2_threshold1_rsrp: {{ slapparameter_dict.
nr_
eutra_handover.event.b2_threshold1_rsrp }},
b2_threshold2_rsrp: {{ slapparameter_dict.
nr_
eutra_handover.event.b2_threshold2_rsrp }},
{%- endif %}
hysteresis: {{ slapparameter_dict.eutra_handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.eutra_handover.time_to_trigger }}
hysteresis: {{ slapparameter_dict.
nr_
eutra_handover.hysteresis }},
time_to_trigger: {{ slapparameter_dict.
nr_
eutra_handover.time_to_trigger }}
},
{%- endif %}
ssb_rsrq_filter_coeff: 3,
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/config/ims.jinja2.cfg
View file @
05bd12e9
...
...
@@ -22,11 +22,11 @@
],
mms_server_bind_addr: "{{ internet_ipv4 }}:1111",
sctp_addr: "{{ slap
_configuration['configuration
.ims_addr
']
}}",
sctp_addr: "{{ slap
parameter_dict
.ims_addr }}",
cx_server_addr: "127.0.1.100",
cx_bind_addr: "{{ slap
_configuration['configuration
.ims_addr
']
}}",
cx_bind_addr: "{{ slap
parameter_dict
.ims_addr }}",
rx_server_addr: "127.0.1.100",
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/config/mme.jinja2.cfg
View file @
05bd12e9
...
...
@@ -30,7 +30,7 @@
gtp_addr: "{{ gtp_addr_v6 }}",
{%- endif %}
{%- else %}
gtp_addr: "{{ slap
_configuration['configuration
.gtp_addr
']
}}",
gtp_addr: "{{ slap
parameter_dict
.gtp_addr }}",
{%- endif %}
plmn: "{{ slapparameter_dict.get('core_network_plmn', "00101") }}",
...
...
@@ -70,14 +70,18 @@
ims_list: [
{
ims_addr: "{{ slap
_configuration['configuration
.ims_addr
']
}}",
bind_addr: "{{ slap
_configuration['configuration
.ims_bind
']
}}",
ims_addr: "{{ slap
parameter_dict
.ims_addr }}",
bind_addr: "{{ slap
parameter_dict
.ims_bind }}",
}
],
pdn_list: [
{
access_point_name: ["default", "internet", "sos"],
access_point_name: [
{%- for _, pdn in slapparameter_dict.pdn_list |dictsort -%}
"{{ pdn.name }}",
{%- endfor -%}
],
pdn_type: "ipv4v6",
tun_ifname: "{{ tun_name }}",
first_ip_addr: "{{ internet_ipv4_start }}",
...
...
@@ -89,10 +93,9 @@
{%- else %}
dns_addr: ["8.8.8.8", "2001:4860:4860::8888"],
{%- endif %}
erabs: [
{
qci:
9
,
qci:
{{ slapparameter_dict.qci }}
,
priority_level: 15,
pre_emption_capability: "shall_not_trigger_pre_emption",
pre_emption_vulnerability: "not_pre_emptable",
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-core-network-input-schema.json
View file @
05bd12e9
...
...
@@ -51,6 +51,40 @@
"description"
:
"Set to true to force a static IPv4 for each UE. If true, the number of UE is limited."
,
"type"
:
"boolean"
},
"pdn_list"
:
{
"title"
:
"PDN list"
,
"description"
:
"Configure the available EPS Packet Data Networks and 5GS Data Network Names."
,
"default"
:
{
"internet"
:
{
"name"
:
"internet"
},
"default"
:
{
"name"
:
"default"
},
"sos"
:
{
"name"
:
"sos"
}
},
"patternProperties"
:
{
".*"
:
{
"properties"
:
{
"name"
:
{
"title"
:
"APN name"
,
"description"
:
"APN name"
,
"type"
:
"string"
}
},
"type"
:
"object"
}
},
"type"
:
"object"
},
"qci"
:
{
"default"
:
9
,
"title"
:
"QCI of default E-RAB"
,
"description"
:
"QoS Class Identifier of the default E-RAB"
,
"type"
:
"number"
},
"eps_5gs_interworking"
:
{
"title"
:
"EPS 5GS Interworking"
,
"type"
:
"string"
,
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-core-network.jinja2.cfg
View file @
05bd12e9
{#- defaults for global core network parameters.
TODO automatically load enb defaults from JSON schema #}
{%- set mme_defaults = {
'gtp_addr': '127.0.1.100',
'ims_addr': '127.0.0.1',
'ims_bind': '127.0.0.2',
'qci': 9,
'pdn_list': {
'internet': {'name': 'internet'},
'default': {'name': 'default'},
'sos': {'name': 'sos'}
}
} %}
{%- for k,v in mme_defaults|dictsort %}
{%- do slapparameter_dict.setdefault(k, v) %}
{%- endfor %}
{%- set dns_slave_instance_list = [] %}
{%- set sim_slave_instance_list = [] %}
{%- set fixed_ip = slapparameter_dict.get("fixed_ips", False) %}
...
...
@@ -93,6 +109,12 @@ eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
[myslap]
# NOTE we don't query slapos.cookbook:slapconfiguration the second time because
# slapparameter_dict is potentially modified with defaults.
parameter_dict = {{ dumps(slapparameter_dict) }}
configuration = {{ dumps(slap_configuration) }}
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration.serialised
computer = {{ slap_connection['computer-id'] }}
...
...
@@ -100,9 +122,6 @@ partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
key = {{ slap_connection['key-file'] }}
cert = {{ slap_connection['cert-file'] }}
configuration.gtp_addr = 127.0.1.100
configuration.ims_addr = 127.0.0.1
configuration.ims_bind = 127.0.0.2
ue_db_path = ${ue-db-config:output}
{%- if fixed_ip %}
sim_list = ${sim-ip-configuration:sim-with-ip-list}
...
...
@@ -227,7 +246,7 @@ extra-context =
context =
section directory directory
section slap_configuration slap-configuration
key slapparameter_dict slap
-configuration:configuration
key slapparameter_dict
my
slap
:parameter_dict
raw gtp_addr_v6 {{ my_ipv6 }}
raw gtp_addr_v4 {{ lan_ipv4 }}
import netaddr netaddr
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-enb-input-schema.json
View file @
05bd12e9
...
...
@@ -165,6 +165,441 @@
"type"
:
"object"
,
"default"
:
{}
},
"handover_a1_rsrp"
:
{
"title"
:
"Handover A1 event RSRP threshold"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold value in dBm."
,
"type"
:
"number"
,
"default"
:
-70
},
"handover_a1_hysteresis"
:
{
"title"
:
"Handover A1 event hysteresis"
,
"description"
:
"Integer, range from 0 to 30. A1 hysteresis in 0.5dB steps used for the measurement report triggering condition."
,
"type"
:
"number"
,
"default"
:
0
},
"handover_a1_time_to_trigger"
:
{
"title"
:
"Handover A1 event time to trigger"
,
"description"
:
"Time in ms during which the A1 event condition must be met before triggering the measurement report."
,
"type"
:
"number"
,
"enum"
:
[
0
,
40
,
64
,
80
,
100
,
128
,
160
,
256
,
320
,
480
,
512
,
640
,
1024
,
1280
,
2560
,
5120
],
"default"
:
640
},
"handover_a2_rsrp"
:
{
"title"
:
"Handover A2 event RSRP threshold"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold value in dBm."
,
"type"
:
"number"
,
"default"
:
-80
},
"handover_a2_hysteresis"
:
{
"title"
:
"Handover A2 event hysteresis"
,
"description"
:
"Integer, range from 0 to 30. A2 hysteresis in 0.5dB steps used for the measurement report triggering condition."
,
"type"
:
"number"
,
"default"
:
0
},
"handover_a2_time_to_trigger"
:
{
"title"
:
"Handover A2 event time to trigger"
,
"description"
:
"Time in ms during which the A2 event condition must be met before triggering the measurement report."
,
"type"
:
"number"
,
"enum"
:
[
0
,
40
,
64
,
80
,
100
,
128
,
160
,
256
,
320
,
480
,
512
,
640
,
1024
,
1280
,
2560
,
5120
],
"default"
:
640
},
"eutra_eutra_handover"
:
{
"title"
:
"EUTRA Handover"
,
"type"
:
"object"
,
"default"
:
{
"event"
:
{
"a3_rsrp"
:
6
},
"hysteresis"
:
0
,
"time_to_trigger"
:
480
},
"properties"
:
{
"event"
:
{
"title"
:
"EUTRA Handover event"
,
"type"
:
"object"
,
"oneOf"
:
[
{
"title"
:
"A3 event"
,
"type"
:
"object"
,
"required"
:
[
"a3_rsrp"
],
"properties"
:
{
"a3_rsrp"
:
{
"title"
:
"Handover A3 event RSRP offset"
,
"description"
:
"Integer, range from -140 to -43. RSRP gain offset between eNBs and gNBs which will trigger handover"
,
"type"
:
"number"
}
}
},
{
"title"
:
"A4 event"
,
"type"
:
"object"
,
"required"
:
[
"a4_rsrp"
],
"properties"
:
{
"a4_rsrp"
:
{
"title"
:
"Handover A4 event RSRP threshold"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold value in dBm"
,
"type"
:
"number"
}
}
},
{
"title"
:
"A5 event"
,
"type"
:
"object"
,
"required"
:
[
"a5_threshold1_rsrp"
,
"a5_threshold2_rsrp"
],
"properties"
:
{
"a5_threshold1_rsrp"
:
{
"title"
:
"Handover A5 event RSRP threshold1"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold1 value in dBm"
,
"type"
:
"number"
},
"a5_threshold2_rsrp"
:
{
"title"
:
"Handover A5 event RSRP threshold2"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold2 value in dBm"
,
"type"
:
"number"
}
}
}
]
},
"hysteresis"
:
{
"title"
:
"EUTRA Handover hysteresis"
,
"description"
:
"Integer, range from 0 to 30. A3/A4/A5 hysteresis in 0.5dB steps used for the measurement report triggering condition."
,
"type"
:
"number"
},
"time_to_trigger"
:
{
"title"
:
"EUTRA Handover time to trigger"
,
"description"
:
"Time in ms during which the A3/A4/A5 event condition must be met before triggering the measurement report."
,
"type"
:
"number"
,
"enum"
:
[
0
,
40
,
64
,
80
,
100
,
128
,
160
,
256
,
320
,
480
,
512
,
640
,
1024
,
1280
,
2560
,
5120
]
}
}
},
"eutra_nr_handover"
:
{
"title"
:
"NR Handover"
,
"type"
:
"object"
,
"default"
:
{
"event"
:
{
"b1_rsrp"
:
-80
},
"hysteresis"
:
0
,
"time_to_trigger"
:
100
},
"properties"
:
{
"event"
:
{
"title"
:
"NR Handover event"
,
"type"
:
"object"
,
"oneOf"
:
[
{
"title"
:
"B1 event"
,
"type"
:
"object"
,
"required"
:
[
"b1_rsrp"
],
"properties"
:
{
"b1_rsrp"
:
{
"title"
:
"Handover B1 event RSRP threshold"
,
"description"
:
"Integer, range from -156 to -30. RSRP threshold value in dBm."
,
"type"
:
"number"
}
}
},
{
"title"
:
"B2 event"
,
"type"
:
"object"
,
"required"
:
[
"b2_threshold1_rsrp"
,
"b2_threshold2_rsrp"
],
"properties"
:
{
"b2_threshold1_rsrp"
:
{
"title"
:
"Handover B2 event RSRP threshold1"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold1 value in dBm"
,
"type"
:
"number"
},
"b2_threshold2_rsrp"
:
{
"title"
:
"Handover B2 event RSRP threshold2"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold2 value in dBm"
,
"type"
:
"number"
}
}
}
]
},
"hysteresis"
:
{
"title"
:
"NR Handover hysteresis"
,
"description"
:
"Integer, range from 0 to 30. NR B1 or B2 hysteresis in 0.5dB steps."
,
"type"
:
"number"
},
"time_to_trigger"
:
{
"title"
:
"NR Handover time to trigger"
,
"description"
:
"Time in ms during which the NR B1 or B2 event condition must be met before triggering the measurement report."
,
"type"
:
"number"
,
"enum"
:
[
0
,
40
,
64
,
80
,
100
,
128
,
160
,
256
,
320
,
480
,
512
,
640
,
1024
,
1280
,
2560
,
5120
]
}
}
},
"nr_nr_handover"
:
{
"title"
:
"NR Handover"
,
"type"
:
"object"
,
"default"
:
{
"event"
:
{
"a3_rsrp"
:
6
},
"hysteresis"
:
0
,
"time_to_trigger"
:
480
},
"properties"
:
{
"event"
:
{
"title"
:
"NR Handover event"
,
"type"
:
"object"
,
"oneOf"
:
[
{
"title"
:
"A3 event"
,
"type"
:
"object"
,
"required"
:
[
"a3_rsrp"
],
"properties"
:
{
"a3_rsrp"
:
{
"title"
:
"Handover A3 event RSRP offset"
,
"description"
:
"Integer, range from -140 to -43. RSRP gain offset between eNBs and gNBs which will trigger handover"
,
"type"
:
"number"
}
}
},
{
"title"
:
"A4 event"
,
"type"
:
"object"
,
"required"
:
[
"a4_rsrp"
],
"properties"
:
{
"a4_rsrp"
:
{
"title"
:
"Handover A4 event RSRP threshold"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold value in dBm"
,
"type"
:
"number"
}
}
},
{
"title"
:
"A5 event"
,
"type"
:
"object"
,
"required"
:
[
"a5_threshold1_rsrp"
,
"a5_threshold2_rsrp"
],
"properties"
:
{
"a5_threshold1_rsrp"
:
{
"title"
:
"Handover A5 event RSRP threshold1"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold1 value in dBm"
,
"type"
:
"number"
},
"a5_threshold2_rsrp"
:
{
"title"
:
"Handover A5 event RSRP threshold2"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold2 value in dBm"
,
"type"
:
"number"
}
}
}
]
},
"hysteresis"
:
{
"title"
:
"NR Handover hysteresis"
,
"description"
:
"Integer, range from 0 to 30. A3/A4/A5 hysteresis in 0.5dB steps used for the measurement report triggering condition."
,
"type"
:
"number"
},
"time_to_trigger"
:
{
"title"
:
"NR Handover time to trigger"
,
"description"
:
"Time in ms during which the A3/A4/A5 event condition must be met before triggering the measurement report."
,
"type"
:
"number"
,
"enum"
:
[
0
,
40
,
64
,
80
,
100
,
128
,
160
,
256
,
320
,
480
,
512
,
640
,
1024
,
1280
,
2560
,
5120
]
}
}
},
"nr_eutra_handover"
:
{
"title"
:
"EUTRA Handover"
,
"type"
:
"object"
,
"default"
:
{
"event"
:
{
"b1_rsrp"
:
-80
},
"hysteresis"
:
0
,
"time_to_trigger"
:
100
},
"properties"
:
{
"event"
:
{
"title"
:
"EUTRA Handover event"
,
"type"
:
"object"
,
"oneOf"
:
[
{
"title"
:
"B1 event"
,
"type"
:
"object"
,
"required"
:
[
"b1_rsrp"
],
"properties"
:
{
"b1_rsrp"
:
{
"title"
:
"Handover B1 event RSRP threshold"
,
"description"
:
"Integer, range from -156 to -30. RSRP threshold value in dBm."
,
"type"
:
"number"
}
}
},
{
"title"
:
"B2 event"
,
"type"
:
"object"
,
"required"
:
[
"b2_threshold1_rsrp"
,
"b2_threshold2_rsrp"
],
"properties"
:
{
"b2_threshold1_rsrp"
:
{
"title"
:
"Handover B2 event RSRP threshold1"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold1 value in dBm"
,
"type"
:
"number"
},
"b2_threshold2_rsrp"
:
{
"title"
:
"Handover B2 event RSRP threshold2"
,
"description"
:
"Integer, range from -140 to -43. RSRP threshold2 value in dBm"
,
"type"
:
"number"
}
}
}
]
},
"hysteresis"
:
{
"title"
:
"EUTRA Handover hysteresis"
,
"description"
:
"Integer, range from 0 to 30. EUTRA B1 or B2 hysteresis in 0.5dB steps."
,
"type"
:
"number"
},
"time_to_trigger"
:
{
"title"
:
"EUTRA Handover time to trigger"
,
"description"
:
"Time in ms during which the EUTRA B1 or B2 event condition must be met before triggering the measurement report."
,
"type"
:
"number"
,
"enum"
:
[
0
,
40
,
64
,
80
,
100
,
128
,
160
,
256
,
320
,
480
,
512
,
640
,
1024
,
1280
,
2560
,
5120
]
}
}
},
"handover_meas_gap_config"
:
{
"title"
:
"Handover measurement gap configuration"
,
"description"
:
"Configuration of the measurement gap. Ignored if no neighbour cells are configured."
,
"type"
:
"string"
,
"enum"
:
[
"None"
,
"Gap Pattern 0"
,
"Gap Pattern 1"
],
"default"
:
"Gap Pattern 1"
},
"log_phy_debug"
:
{
"title"
:
"Physical layer log debug"
,
"description"
:
"Enable debug mode for physical layer logs"
,
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-enb.jinja2.cfg
View file @
05bd12e9
...
...
@@ -17,6 +17,34 @@
'xlog_forwarding_enabled': True,
'wendelin_telecom_software_release_url': 'wendelin-telecom-enb-shared-instance',
'xlog_fluentbit_forward_port': 24224,
'nr_nr_handover': {
'event': {
'a3_rsrp': 6
},
'hysteresis': 0,
'time_to_trigger': 480
},
'nr_eutra_handover': {
'event': {
'b1_rsrp': -80
},
'hysteresis': 0,
'time_to_trigger': 100
},
'eutra_eutra_handover': {
'event': {
'a3_rsrp': 6
},
'hysteresis': 0,
'time_to_trigger': 480
},
'eutra_nr_handover': {
'event': {
'b1_rsrp': -80
},
'hysteresis': 0,
'time_to_trigger': 100
}
} %}
{%- set gtp_addr_lo = '127.0.1.1' %}
{%- for k,v in enb_defaults|dictsort %}
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-ors-enb-input-schema.json
View file @
05bd12e9
...
...
@@ -79,7 +79,7 @@
"mme_list"
:
{
"$ref"
:
"instance-enb-input-schema.json#/properties/mme_list"
,
"default"
:
{
"
1
"
:
{
"
Local core-network
"
:
{
"mme_addr"
:
"127.0.1.100"
}
}
...
...
@@ -88,7 +88,7 @@
"$ref"
:
"instance-enb-input-schema.json#/properties/plmn_list"
,
"description"
:
"List of PLMNs broadcasted by the eNodeB, at most 6 (default: 00101)"
,
"default"
:
{
"
1
"
:
{
"
Test PLMN
"
:
{
"plmn"
:
"00101"
}
}
...
...
@@ -165,7 +165,7 @@
],
"default"
:
640
},
"eutra_handover"
:
{
"eutra_
eutra_
handover"
:
{
"title"
:
"EUTRA Handover"
,
"type"
:
"object"
,
"default"
:
{
...
...
@@ -260,7 +260,7 @@
}
}
},
"nr_handover"
:
{
"
eutra_
nr_handover"
:
{
"title"
:
"NR Handover"
,
"type"
:
"object"
,
"default"
:
{
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-ors-enb.jinja2.cfg
View file @
05bd12e9
...
...
@@ -17,8 +17,17 @@
"tac": "0x0001",
"root_sequence_index": 204,
"enb_id": "0x1A2D0",
"mme_list": {'1': {'mme_addr': '127.0.1.100'}},
"plmn_list": {"1": {'plmn': '00101'}},
'mme_list': {
'Local Core Network': {
'mme_addr': '127.0.1.100'
}
},
'plmn_list': {
'Test PLNM': {
'plmn': '00101',
'tac': 100
}
},
"ncell_list": {},
"x2_peers": {},
"inactivity_timer": 10000,
...
...
@@ -35,8 +44,17 @@
"cell_id": "0x01",
"gnb_id": "0x12345",
"gnb_id_bits": 28,
"amf_list": {'1': {'amf_addr': '127.0.1.100'}},
"plmn_list": {'1': {'plmn': '00101', 'tac': 100}},
'amf_list': {
'Local Core Network': {
'amf_addr': '127.0.1.100'
}
},
'plmn_list': {
'Test PLNM': {
'plmn': '00101',
'tac': 100
}
},
"ncell_list": {},
"xn_peers": {},
"inactivity_timer": 10000,
...
...
This diff is collapsed.
Click to expand it.
software/simpleran/instance-ors-gnb-input-schema.json
View file @
05bd12e9
...
...
@@ -60,7 +60,7 @@
"amf_list"
:
{
"$ref"
:
"instance-enb-input-schema.json#/properties/amf_list"
,
"default"
:
{
"
1
"
:
{
"
Local core-network
"
:
{
"amf_addr"
:
"127.0.1.100"
}
}
...
...
@@ -69,7 +69,7 @@
"$ref"
:
"instance-enb-input-schema.json#/properties/plmn_list_5g"
,
"description"
:
"List of PLMNs broadcasted by the gNodeB, at most 12 (default: 00101)"
,
"default"
:
{
"
1
"
:
{
"
Test PLMN
"
:
{
"plmn"
:
"00101"
,
"tac"
:
100
}
...
...
@@ -150,7 +150,7 @@
],
"default"
:
640
},
"nr_handover"
:
{
"nr_
nr_
handover"
:
{
"title"
:
"NR Handover"
,
"type"
:
"object"
,
"default"
:
{
...
...
@@ -245,7 +245,7 @@
}
}
},
"eutra_handover"
:
{
"
nr_
eutra_handover"
:
{
"title"
:
"EUTRA Handover"
,
"type"
:
"object"
,
"default"
:
{
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment