From ca2dfc0e619c8fb10baf06e9e3e2cd445c97c4f7 Mon Sep 17 00:00:00 2001 From: Raphael Defosseux Date: Thu, 11 Jan 2024 10:03:34 +0100 Subject: [PATCH] chore(ci): updating l2-simulator scenario to CN v2.0 Signed-off-by: Raphael Defosseux --- .../xml_files/container_5g_l2sim_tdd.xml | 8 +- ci-scripts/yaml_files/5g_l2sim_tdd/README.md | 64 +++++------ .../5g_l2sim_tdd/docker-compose.yaml | 107 +++--------------- 3 files changed, 44 insertions(+), 135 deletions(-) diff --git a/ci-scripts/xml_files/container_5g_l2sim_tdd.xml b/ci-scripts/xml_files/container_5g_l2sim_tdd.xml index 50ad28e5ca..8fcdcd6cb0 100644 --- a/ci-scripts/xml_files/container_5g_l2sim_tdd.xml +++ b/ci-scripts/xml_files/container_5g_l2sim_tdd.xml @@ -60,8 +60,8 @@ DeployGenObject Deploy OAI 5G CoreNetwork yaml_files/5g_l2sim_tdd - oai-nrf oai-amf oai-smf oai-spgwu oai-ext-dn - 6 + oai-amf oai-smf oai-upf oai-ext-dn + 5 @@ -69,7 +69,7 @@ Deploy OAI 5G gNB L2 sim SA yaml_files/5g_l2sim_tdd oai-gnb - 7 + 6 @@ -77,7 +77,7 @@ Deploy OAI 5G NR-UE L2 sim SA and Proxy yaml_files/5g_l2sim_tdd proxy oai-nr-ue0 - 9 + 8 diff --git a/ci-scripts/yaml_files/5g_l2sim_tdd/README.md b/ci-scripts/yaml_files/5g_l2sim_tdd/README.md index 6bdff1c3e4..9062044b2c 100644 --- a/ci-scripts/yaml_files/5g_l2sim_tdd/README.md +++ b/ci-scripts/yaml_files/5g_l2sim_tdd/README.md @@ -96,10 +96,9 @@ Now pull images. ```bash docker pull mysql:8.0 -docker pull oaisoftwarealliance/oai-amf:v1.5.0 -docker pull oaisoftwarealliance/oai-nrf:v1.5.0 -docker pull oaisoftwarealliance/oai-smf:v1.5.0 -docker pull oaisoftwarealliance/oai-spgwu-tiny:v1.5.0 +docker pull oaisoftwarealliance/oai-amf:v2.0.0 +docker pull oaisoftwarealliance/oai-smf:v2.0.0 +docker pull oaisoftwarealliance/oai-upf:v2.0.0 docker pull oaisoftwarealliance/trf-gen-cn5g:focal docker pull oaisoftwarealliance/oai-gnb:develop @@ -139,14 +138,13 @@ sudo ifconfig lo: 127.0.0.2 netmask 255.0.0.0 up ```bash cd ci-scripts/yaml_files/5g_l2sim_tdd -docker-compose up -d mysql oai-nrf oai-amf oai-smf oai-spgwu oai-ext-dn +docker-compose up -d mysql oai-amf oai-smf oai-upf oai-ext-dn ``` ```bash Creating network "l2sim-oai-public-net" with driver "bridge" Creating network "l2sim-oai-traffic_net-net" with driver "bridge" -Creating l2sim-oai-nrf ... done Creating l2sim-mysql ... done -Creating l2sim-oai-spgwu ... done +Creating l2sim-oai-upf ... done Creating l2sim-oai-amf ... done Creating l2sim-oai-smf ... done Creating l2sim-oai-ext-dn ... done @@ -160,12 +158,11 @@ docker-compose ps -a ```bash Name Command State Ports ------------------------------------------------------------------------------------------------- -l2sim-mysql docker-entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp +l2sim-mysql docker-entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp l2sim-oai-amf /bin/bash /openair-amf/bin ... Up (healthy) 38412/sctp, 80/tcp, 9090/tcp -l2sim-oai-ext-dn /bin/bash -c apt update; ... Up (healthy) -l2sim-oai-nrf /bin/bash /openair-nrf/bin ... Up (healthy) 80/tcp, 9090/tcp -l2sim-oai-smf /bin/bash /openair-smf/bin ... Up (healthy) 80/tcp, 8805/udp, 9090/tcp -l2sim-oai-spgwu /openair-spgwu-tiny/bin/en ... Up (healthy) 2152/udp, 8805/udp +l2sim-oai-ext-dn /bin/bash -c apt update; ... Up (healthy) +l2sim-oai-smf /bin/bash /openair-smf/bin ... Up (healthy) 80/tcp, 8805/udp, 9090/tcp +l2sim-oai-upf /bin/bash /openair-upf/bin ... Up (healthy) 2152/udp, 8805/udp ``` At this point, you can prepare a capture on the newly-created public docker bridges: @@ -206,8 +203,7 @@ sudo nohup tshark -f "(host 192.168.72.135 and icmp) or (not host 192.168.72.135 docker-compose up -d oai-gnb ``` ```bash -l2sim-oai-nrf is up-to-date -l2sim-oai-spgwu is up-to-date +l2sim-oai-upf is up-to-date l2sim-oai-ext-dn is up-to-date Creating l2sim-oai-gnb ... done ``` @@ -220,13 +216,12 @@ $ docker-compose ps -a ```bash Name Command State Ports ------------------------------------------------------------------------------------------------- -l2sim-mysql docker-entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp +l2sim-mysql docker-entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp l2sim-oai-amf /bin/bash /openair-amf/bin ... Up (healthy) 38412/sctp, 80/tcp, 9090/tcp -l2sim-oai-ext-dn /bin/bash -c apt update; ... Up (healthy) -l2sim-oai-gnb /opt/oai-gnb/bin/entrypoin ... Up (healthy) -l2sim-oai-nrf /bin/bash /openair-nrf/bin ... Up (healthy) 80/tcp, 9090/tcp -l2sim-oai-smf /bin/bash /openair-smf/bin ... Up (healthy) 80/tcp, 8805/udp, 9090/tcp -l2sim-oai-spgwu /openair-spgwu-tiny/bin/en ... Up (healthy) 2152/udp, 8805/udp +l2sim-oai-ext-dn /bin/bash -c apt update; ... Up (healthy) +l2sim-oai-gnb /opt/oai-gnb/bin/entrypoin ... Up (healthy) +l2sim-oai-smf /bin/bash /openair-smf/bin ... Up (healthy) 80/tcp, 8805/udp, 9090/tcp +l2sim-oai-upf /bin/bash /openair-upf/bin ... Up (healthy) 2152/udp, 8805/udp ``` You can verify that the `gNB` is connected with the `AMF`: @@ -250,10 +245,9 @@ docker-compose up -d proxy oai-nr-ue ``` ```bash l2sim-mysql is up-to-date -l2sim-oai-nrf is up-to-date l2sim-oai-amf is up-to-date l2sim-oai-smf is up-to-date -l2sim-oai-spgwu is up-to-date +l2sim-oai-upf is up-to-date l2sim-oai-ext-dn is up-to-date l2sim-oai-gnb is up-to-date Creating l2sim-oai-nr-ue ... done @@ -268,18 +262,17 @@ docker-compose ps -a ```bash Name Command State Ports ------------------------------------------------------------------------------------------------- -l2sim-mysql docker-entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp +l2sim-mysql docker-entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp l2sim-oai-amf /bin/bash /openair-amf/bin ... Up (healthy) 38412/sctp, 80/tcp, 9090/tcp -l2sim-oai-ext-dn /bin/bash -c apt update; ... Up (healthy) -l2sim-oai-gnb /opt/oai-gnb/bin/entrypoin ... Up (healthy) -l2sim-oai-nr-ue0 /opt/oai-nr-ue/bin/entrypo ... Up (healthy) -l2sim-oai-nrf /bin/bash /openair-nrf/bin ... Up (healthy) 80/tcp, 9090/tcp -l2sim-oai-smf /bin/bash /openair-smf/bin ... Up (healthy) 80/tcp, 8805/udp, 9090/tcp -l2sim-oai-spgwu /openair-spgwu-tiny/bin/en ... Up (healthy) 2152/udp, 8805/udp -l2sim-proxy /oai-lte-multi-ue-proxy/bi ... Up (healthy) +l2sim-oai-ext-dn /bin/bash -c apt update; ... Up (healthy) +l2sim-oai-gnb /opt/oai-gnb/bin/entrypoin ... Up (healthy) +l2sim-oai-nr-ue0 /opt/oai-nr-ue/bin/entrypo ... Up (healthy) +l2sim-oai-smf /bin/bash /openair-smf/bin ... Up (healthy) 80/tcp, 8805/udp, 9090/tcp +l2sim-oai-upf /bin/bash /openair-upf/bin ... Up (healthy) 2152/udp, 8805/udp +l2sim-proxy /oai-lte-multi-ue-proxy/bi ... Up (healthy) ``` ```bash -docker stats --no-stream --format "table {{.Container}}\t{{.CPUPerc}} {{.MemUsage}}\t{{.MemPerc}}" l2sim-mysql l2sim-oai-amf l2sim-oai-ext-dn l2sim-oai-gnb l2sim-oai-nr-ue0 l2sim-oai-nrf l2sim-oai-smf l2sim-oai-spgwu l2sim-proxy +docker stats --no-stream --format "table {{.Container}}\t{{.CPUPerc}} {{.MemUsage}}\t{{.MemPerc}}" l2sim-mysql l2sim-oai-amf l2sim-oai-ext-dn l2sim-oai-gnb l2sim-oai-nr-ue0 l2sim-oai-smf l2sim-oai-upf l2sim-proxy ``` ```bash CONTAINER CPU % MEM USAGE / LIMIT MEM % @@ -288,9 +281,8 @@ l2sim-oai-amf 4.05% 29.49MiB / 62.54GiB 0.05% l2sim-oai-ext-dn 0.00% 31.27MiB / 62.54GiB 0.05% l2sim-oai-gnb 1.29% 1.853GiB / 62.54GiB 2.96% l2sim-oai-nr-ue0 1.43% 350.8MiB / 62.54GiB 0.55% -l2sim-oai-nrf 0.21% 9.105MiB / 62.54GiB 0.01% l2sim-oai-smf 3.24% 30.23MiB / 62.54GiB 0.05% -l2sim-oai-spgwu 0.00% 11.78MiB / 62.54GiB 0.02% +l2sim-oai-upf 0.00% 11.78MiB / 62.54GiB 0.02% l2sim-proxy 6.97% 290.4MiB / 62.54GiB 0.45% ``` @@ -389,19 +381,17 @@ Stopping l2sim-oai-nr-ue2 ... done Stopping l2sim-oai-nr-ue ... done Stopping l2sim-oai-gnb ... done Stopping l2sim-oai-ext-dn ... done -Stopping l2sim-oai-spgwu ... done +Stopping l2sim-oai-upf ... done Stopping l2sim-oai-smf ... done Stopping l2sim-oai-amf ... done -Stopping l2sim-oai-nrf ... done Stopping l2sim-mysql ... done Removing l2sim-oai-nr-ue2 ... done Removing l2sim-oai-nr-ue ... done Removing l2sim-oai-gnb ... done Removing l2sim-oai-ext-dn ... done -Removing l2sim-oai-spgwu ... done +Removing l2sim-oai-upf ... done Removing l2sim-oai-smf ... done Removing l2sim-oai-amf ... done -Removing l2sim-oai-nrf ... done Removing l2sim-mysql ... done Removing network l2sim-oai-public-net Removing network l2sim-oai-traffic-net diff --git a/ci-scripts/yaml_files/5g_l2sim_tdd/docker-compose.yaml b/ci-scripts/yaml_files/5g_l2sim_tdd/docker-compose.yaml index 38b82988f9..28412dbfe4 100644 --- a/ci-scripts/yaml_files/5g_l2sim_tdd/docker-compose.yaml +++ b/ci-scripts/yaml_files/5g_l2sim_tdd/docker-compose.yaml @@ -1,14 +1,5 @@ version: '3.8' services: - oai-nrf: - container_name: "l2sim-oai-nrf" - image: oaisoftwarealliance/oai-nrf:v1.5.0 - environment: - - NRF_INTERFACE_NAME_FOR_SBI=eth0 - - TZ=Europe/Paris - networks: - public_net: - ipv4_address: 192.168.71.130 mysql: container_name: "l2sim-mysql" image: mysql:8.0 @@ -31,108 +22,36 @@ services: ipv4_address: 192.168.71.131 oai-amf: container_name: "l2sim-oai-amf" - image: oaisoftwarealliance/oai-amf:v1.5.0 + image: oaisoftwarealliance/oai-amf:v2.0.0 environment: - TZ=Europe/paris - - MCC=208 - - MNC=99 - - REGION_ID=128 - - AMF_SET_ID=1 - - SERVED_GUAMI_MCC_0=208 - - SERVED_GUAMI_MNC_0=99 - - SERVED_GUAMI_REGION_ID_0=128 - - SERVED_GUAMI_AMF_SET_ID_0=1 - - SERVED_GUAMI_MCC_1=460 - - SERVED_GUAMI_MNC_1=11 - - SERVED_GUAMI_REGION_ID_1=10 - - SERVED_GUAMI_AMF_SET_ID_1=1 - - PLMN_SUPPORT_MCC=208 - - PLMN_SUPPORT_MNC=99 - - PLMN_SUPPORT_TAC=0x0001 - # Only one slice is defined (1, 0xFFFFFF). - - SST_0=1 - - AMF_INTERFACE_NAME_FOR_NGAP=eth0 - - AMF_INTERFACE_NAME_FOR_N11=eth0 - # One single SMF instance - - SMF_INSTANCE_ID_0=1 - - SMF_FQDN_0=oai-smf - - SMF_IPV4_ADDR_0=192.168.71.133 - - SELECTED_0=true - # mysql definition in AMF is mandatory in mini deployment. - - MYSQL_SERVER=192.168.71.131 - - MYSQL_USER=root - - MYSQL_PASS=linux - - MYSQL_DB=oai_db - # NF registration - - NRF_IPV4_ADDRESS=192.168.71.130 - - NRF_FQDN=oai-nrf - - NF_REGISTRATION=yes - - SMF_SELECTION=yes - - USE_FQDN_DNS=yes - - USE_HTTP2=no + volumes: + - ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-amf/etc/config.yaml depends_on: - - oai-nrf - mysql networks: public_net: ipv4_address: 192.168.71.132 oai-smf: container_name: "l2sim-oai-smf" - image: oaisoftwarealliance/oai-smf:v1.5.0 + image: oaisoftwarealliance/oai-smf:v2.0.0 environment: - TZ=Europe/Paris - - SMF_INTERFACE_NAME_FOR_N4=eth0 - - SMF_INTERFACE_NAME_FOR_SBI=eth0 - - DEFAULT_DNS_IPV4_ADDRESS=172.21.3.100 - - DEFAULT_DNS_SEC_IPV4_ADDRESS=4.4.4.4 - - AMF_IPV4_ADDRESS=192.168.71.132 - - AMF_FQDN=oai-amf - - UPF_IPV4_ADDRESS=192.168.71.134 - - UPF_FQDN_0=oai-spgwu - - NRF_IPV4_ADDRESS=192.168.71.130 - - NRF_FQDN=oai-nrf - - REGISTER_NRF=yes - - DISCOVER_UPF=yes - - USE_FQDN_DNS=yes - - USE_LOCAL_SUBSCRIPTION_INFO=yes - - UE_MTU=1500 - # Only one slice is defined (1, 0xFFFFFF) - - DNN_NI0=oai - - TYPE0=IPv4 - - DNN_RANGE0=12.1.1.2 - 12.1.1.127 - - NSSAI_SST0=1 - - SESSION_AMBR_UL0=200Mbps - - SESSION_AMBR_DL0=400Mbps - - DEFAULT_CSCF_IPV4_ADDRESS=127.0.0.1 - - ENABLE_USAGE_REPORTING=no + volumes: + - ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-smf/etc/config.yaml depends_on: - - oai-nrf - oai-amf networks: public_net: ipv4_address: 192.168.71.133 - oai-spgwu: - container_name: "l2sim-oai-spgwu" - image: oaisoftwarealliance/oai-spgwu-tiny:v1.5.0 + oai-upf: + container_name: "l2sim-oai-upf" + image: oaisoftwarealliance/oai-upf:v2.0.0 environment: - TZ=Europe/Paris - - SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP=eth0 - - SGW_INTERFACE_NAME_FOR_SX=eth0 - - PGW_INTERFACE_NAME_FOR_SGI=eth0 - - NETWORK_UE_NAT_OPTION=yes - - NETWORK_UE_IP=12.1.1.0/24 - - ENABLE_5G_FEATURES=yes - - REGISTER_NRF=yes - - USE_FQDN_NRF=yes - - UPF_FQDN_5G=oai-spgwu - - NRF_IPV4_ADDRESS=192.168.71.130 - - NRF_FQDN=oai-nrf - # Only one slice is defined (1, 0xFFFFFF) - - NSSAI_SST_0=1 - - NSSAI_SD_0=0xffffff - - DNN_0=oai + volumes: + - ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-upf/etc/config.yaml depends_on: - - oai-nrf - oai-smf cap_add: - NET_ADMIN @@ -153,7 +72,7 @@ services: "iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;"\ "ip route add 12.1.1.0/24 via 192.168.72.134 dev eth0; sleep infinity" depends_on: - - oai-spgwu + - oai-upf networks: traffic_net: ipv4_address: 192.168.72.135 @@ -172,7 +91,7 @@ services: USE_ADDITIONAL_OPTIONS: --sa --nfapi VNF --emulate-l1 --log_config.global_log_options level,time,thread_id,nocolor ASAN_OPTIONS: detect_leaks=0 depends_on: - - oai-spgwu + - oai-upf - oai-amf volumes: - ../../conf_files/gnb.sa.band78.106prb.l2sim.conf:/opt/oai-gnb/etc/gnb.conf