Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
spbro
OpenXG-RAN
Commits
be461a0d
Commit
be461a0d
authored
Jan 07, 2024
by
Jaroslava Fiedlerova
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
RF-Sim-Test-4G - modify xml files, use iperf3, add svr id
parent
8830529e
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
148 additions
and
74 deletions
+148
-74
ci-scripts/ci_infra.yaml
ci-scripts/ci_infra.yaml
+12
-0
ci-scripts/cls_oaicitest.py
ci-scripts/cls_oaicitest.py
+50
-0
ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml
ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml
+16
-14
ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml
ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml
+14
-12
ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml
ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml
+14
-12
ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml
ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml
+14
-12
ci-scripts/xml_files/container_4g_rfsim_fembms.xml
ci-scripts/xml_files/container_4g_rfsim_fembms.xml
+7
-6
ci-scripts/xml_files/container_4g_rfsim_mbms.xml
ci-scripts/xml_files/container_4g_rfsim_mbms.xml
+7
-6
ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml
ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml
+14
-12
No files found.
ci-scripts/ci_infra.yaml
View file @
be461a0d
...
...
@@ -339,6 +339,18 @@ rfsim4g_enb_nos1:
CmdPrefix
:
docker exec rfsim4g-oai-enb
IF
:
oaitun_enb1
rfsim4g_enb_fembms
:
Host
:
localhost
NetworkScript
:
docker exec rfsim4g-oai-enb ip a show dev oaitun_enm1
CmdPrefix
:
docker exec rfsim4g-oai-enb
IF
:
oaitun_enm1
rfsim4g_ue_fembms
:
Host
:
localhost
NetworkScript
:
docker exec rfsim4g-oai-lte-ue0 ip a show dev oaitun_uem1
CmdPrefix
:
docker exec rfsim4g-oai-lte-ue0
IF
:
oaitun_uem1
l2sim5g_ue
:
Host
:
localhost
AttachScript
:
docker start l2sim-oai-nr-ue0
...
...
ci-scripts/cls_oaicitest.py
View file @
be461a0d
...
...
@@ -189,6 +189,52 @@ def Iperf_analyzeV3UDP(filename, iperf_bitrate_threshold, iperf_packetloss_thres
else
:
return
(
False
,
'Could not analyze iperf report'
)
def
Iperf_analyzeV2UDP
(
server_filename
,
iperf_bitrate_threshold
,
iperf_packetloss_threshold
,
iperf_opt
):
if
(
not
os
.
path
.
isfile
(
server_filename
)):
return
(
False
,
'Could not analyze, server report not found!'
)
# Computing the requested bandwidth in float
req_bw
=
1.0
# default iperf throughput, in Mbps
result
=
re
.
search
(
'-b *(?P<iperf_bandwidth>[0-9\.]+)(?P<magnitude>[kKMG])'
,
iperf_opt
)
if
result
is
not
None
:
req_bw
=
float
(
result
.
group
(
'iperf_bandwidth'
))
magn
=
result
.
group
(
'magnitude'
)
if
magn
==
"k"
or
magn
==
"K"
:
req_bw
/=
1000
elif
magn
==
"G"
:
req_bw
*=
1000
statusTemplate
=
'(?:|\[ *\d+\].*) +0\.0-\s*(?P<duration>[0-9\.]+) +sec +[0-9\.]+ [kKMG]Bytes +(?P<bitrate>[0-9\.]+) (?P<magnitude>[kKMG])bits\/sec +(?P<jitter>[0-9\.]+) ms +(\d+\/ *\d+) +(\((?P<packetloss>[0-9\.]+)%\))'
with
open
(
server_filename
,
'r'
)
as
server_file
:
for
line
in
server_file
.
readlines
():
res
=
re
.
search
(
statusTemplate
,
str
(
line
))
if
res
is
not
None
:
result
=
res
if
result
is
None
:
return
(
False
,
'Could not parse server report!'
)
bitrate
=
float
(
result
.
group
(
'bitrate'
))
magn
=
result
.
group
(
'magnitude'
)
if
magn
==
"k"
or
magn
==
"K"
:
bitrate
/=
1000
elif
magn
==
"G"
:
# we assume bitrate in Mbps, therefore it must be G now
bitrate
*=
1000
jitter
=
float
(
result
.
group
(
'jitter'
))
packetloss
=
float
(
result
.
group
(
'packetloss'
))
br_perf
=
float
(
bitrate
)
/
float
(
req_bw
)
*
100
br_perf
=
'%.2f '
%
br_perf
result
=
float
(
br_perf
)
>=
float
(
iperf_bitrate_threshold
)
and
float
(
packetloss
)
<=
float
(
iperf_packetloss_threshold
)
req_msg
=
f'Req Bitrate :
{
req_bw
}
'
bir_msg
=
f'Bitrate :
{
bitrate
}
'
brl_msg
=
f'Bitrate Perf:
{
br_perf
}
%'
if
float
(
br_perf
)
<
float
(
iperf_bitrate_threshold
):
brl_msg
+=
f' (too low! <
{
iperf_bitrate_threshold
}
%)'
jit_msg
=
f'Jitter :
{
jitter
}
'
pal_msg
=
f'Packet Loss :
{
packetloss
}
'
if
float
(
packetloss
)
>
float
(
iperf_packetloss_threshold
):
pal_msg
+=
f' (too high! >
{
self
.
iperf_packetloss_threshold
}
%)'
return
(
result
,
f'
{
req_msg
}
\n
{
bir_msg
}
\n
{
brl_msg
}
\n
{
jit_msg
}
\n
{
pal_msg
}
'
)
#-----------------------------------------------------------
# OaiCiTest Class Definition
#-----------------------------------------------------------
...
...
@@ -750,6 +796,10 @@ class OaiCiTest():
udpIperf
=
re
.
search
(
'-u'
,
iperf_opt
)
is
not
None
bidirIperf
=
re
.
search
(
'--bidir'
,
iperf_opt
)
is
not
None
client_filename
=
f'iperf_client_
{
self
.
testCase_id
}
_
{
ue
.
getName
()
}
.log'
server_filename
=
f'iperf_server_
{
self
.
testCase_id
}
_
{
ue
.
getName
()
}
.log'
ymlPath
=
CONTAINERS
.
yamlPath
[
0
].
split
(
'/'
)
logPath
=
f'../cmake_targets/log/
{
ymlPath
[
1
]
}
'
if
udpIperf
:
iperf_opt
=
Iperf_ComputeModifiedBW
(
idx
,
ue_num
,
self
.
iperf_profile
,
self
.
iperf_args
)
# note: for UDP testing we don't want to use json report - reports 0 Mbps received bitrate
...
...
ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml
View file @
be461a0d
...
...
@@ -110,22 +110,24 @@
<ping_packetloss_threshold>
5
</ping_packetloss_threshold>
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Downlink
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-trf-gen
</client_container_name>
<server_options>
-B 12.0.0.2 -u -i 1 -s
</server_options>
<client_options>
-c 12.0.0.2 -u -i 1 -t 30 -b 2M
</client_options>
<testCase
id=
"030012"
>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 2M -R
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"030012"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Uplink
</desc>
<server_container_name>
rfsim4g-trf-gen
</server_container_name>
<client_container_name>
rfsim4g-oai-lte-ue0
</client_container_name>
<server_options>
-u -i 1 -s
</server_options>
<client_options>
-B 12.0.0.2 -c 192.168.61.11 -u -i 1 -t 30 -b 1M
</client_options>
<testCase
id=
"030011"
>
<class>
Iperf
</class>
<desc>
Iperf UDP UL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 1M
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml
View file @
be461a0d
...
...
@@ -91,21 +91,23 @@
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Downlink
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-oai-enb
</client_container_name>
<server_options>
-B 10.0.1.2 -u -i 1 -s
</server_options>
<client_options>
-B 10.0.1.1 -c 10.0.1.2 -u -i 1 -t 30 -b 2M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_enb_nos1
</svr_id>
<iperf_args>
-u -t 30 -b 2M -R
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"030012"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Uplink
</desc>
<server_container_name>
rfsim4g-oai-enb
</server_container_name>
<client_container_name>
rfsim4g-oai-lte-ue0
</client_container_name>
<server_options>
-B 10.0.1.1 -u -i 1 -s
</server_options>
<client_options>
-B 10.0.1.2 -c 10.0.1.1 -u -i 1 -t 30 -b 1M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP UL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_enb_nos1
</svr_id>
<iperf_args>
-u -t 30 -b 1M
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml
View file @
be461a0d
...
...
@@ -111,21 +111,23 @@
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Downlink
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-trf-gen
</client_container_name>
<server_options>
-B 12.0.0.2 -u -i 1 -s
</server_options>
<client_options>
-c 12.0.0.2 -u -i 1 -t 30 -b 2M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 2M -R
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"030012"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Uplink
</desc>
<server_container_name>
rfsim4g-trf-gen
</server_container_name>
<client_container_name>
rfsim4g-oai-lte-ue0
</client_container_name>
<server_options>
-u -i 1 -s
</server_options>
<client_options>
-B 12.0.0.2 -c 192.168.61.11 -u -i 1 -t 30 -b 1M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP UL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 1M
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml
View file @
be461a0d
...
...
@@ -111,21 +111,23 @@
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Downlink
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-trf-gen
</client_container_name>
<server_options>
-B 12.0.0.2 -u -i 1 -s
</server_options>
<client_options>
-c 12.0.0.2 -u -i 1 -t 30 -b 2M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 2M -R
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"030012"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Uplink
</desc>
<server_container_name>
rfsim4g-trf-gen
</server_container_name>
<client_container_name>
rfsim4g-oai-lte-ue0
</client_container_name>
<server_options>
-u -i 1 -s
</server_options>
<client_options>
-B 12.0.0.2 -c 192.168.61.11 -u -i 1 -t 30 -b 1M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP UL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 1M
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
ci-scripts/xml_files/container_4g_rfsim_fembms.xml
View file @
be461a0d
...
...
@@ -72,12 +72,13 @@
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Push MBMS traffic
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-oai-enb
</client_container_name>
<server_options>
-sui1 -B 10.0.2.2
</server_options>
<client_options>
-uc 10.0.2.2 -i1 -t10 -b2M -B10.0.2.1
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue_fembms
</id>
<svr_id>
rfsim4g_enb_fembms
</svr_id>
<iperf_args>
-u -t 30 -b 2M
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
ci-scripts/xml_files/container_4g_rfsim_mbms.xml
View file @
be461a0d
...
...
@@ -72,12 +72,13 @@
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Push MBMS traffic
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-oai-enb
</client_container_name>
<server_options>
-sui1 -B 10.0.2.2
</server_options>
<client_options>
-uc 10.0.2.2 -i1 -t10 -b2M -B10.0.2.1
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_enb_nos1
</svr_id>
<iperf_args>
-u -t 30 -b 2M -R
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml
View file @
be461a0d
...
...
@@ -112,21 +112,23 @@
</testCase>
<testCase
id=
"030011"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Downlink
</desc>
<server_container_name>
rfsim4g-oai-lte-ue0
</server_container_name>
<client_container_name>
rfsim4g-trf-gen
</client_container_name>
<server_options>
-B 12.0.0.2 -u -i 1 -s
</server_options>
<client_options>
-c 12.0.0.2 -u -i 1 -t 30 -b 2M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP DL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 2M -R
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"030012"
>
<class>
IperfFromContainer
</class>
<desc>
Iperf UDP Uplink
</desc>
<server_container_name>
rfsim4g-trf-gen
</server_container_name>
<client_container_name>
rfsim4g-oai-lte-ue0
</client_container_name>
<server_options>
-u -i 1 -s
</server_options>
<client_options>
-B 12.0.0.2 -c 192.168.61.11 -u -i 1 -t 30 -b 1M
</client_options>
<class>
Iperf
</class>
<desc>
Iperf UDP UL
</desc>
<id>
rfsim4g_ue
</id>
<svr_id>
rfsim4g_ext_dn
</svr_id>
<iperf_args>
-u -t 30 -b 1M
</iperf_args>
<iperf_packetloss_threshold>
25
</iperf_packetloss_threshold>
<iperf_bitrate_threshold>
80
</iperf_bitrate_threshold>
</testCase>
<testCase
id=
"100011"
>
...
...
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