基于Docker部署Multi-UERANSIM并接入切片核心网V1.0

1. 切片核心网部署

切片核心网启动

docker-compose-host $: docker-compose -f docker-compose-slicing-basic-nrf.yaml up -d
mysql is up-to-date
Creating oai-nrf-slice12 ... done
Creating oai-nssf         ... done
Creating oai-ext-dn       ... done
Creating oai-nrf-slice3   ... done
Creating oai-spgwu-slice2 ... done
Creating oai-udr          ... done
Creating vpp-upf-slice3   ... done
Creating oai-udm          ... done
Creating oai-ausf         ... done
Creating oai-amf          ... done
Creating oai-smf-slice3   ... done
Creating oai-smf-slice1   ... done
Creating oai-smf-slice2   ... done
Creating oai-spgwu-slice1 ... done

查看健康状态

docker-compose-host $: docker-compose -f docker-compose-slicing-basic-nrf.yaml ps -a
Name                    Command                  State                  Ports
-----------------------------------------------------------------------------------------------
mysql              docker-entrypoint.sh mysqld      Up (healthy)   3306/tcp, 33060/tcp
oai-amf            /bin/bash /openair-amf/bin ...   Up (healthy)   38412/sctp, 80/tcp, 9090/tcp
oai-ausf           /bin/bash /openair-ausf/bi ...   Up (healthy)   80/tcp
oai-ext-dn         /bin/bash -c  apt update;  ...   Up (healthy)
oai-nrf-slice12    /bin/bash /openair-nrf/bin ...   Up (healthy)   80/tcp, 9090/tcp
oai-nrf-slice3     /bin/bash /openair-nrf/bin ...   Up (healthy)   80/tcp, 9090/tcp
oai-nssf           /bin/bash /openair-nssf/bi ...   Up (healthy)   80/tcp, 8080/tcp
oai-smf-slice1     /bin/bash /openair-smf/bin ...   Up (healthy)   80/tcp, 8805/udp, 9090/tcp
oai-smf-slice2     /bin/bash /openair-smf/bin ...   Up (healthy)   80/tcp, 8805/udp, 9090/tcp
oai-smf-slice3     /bin/bash /openair-smf/bin ...   Up (healthy)   80/tcp, 8805/udp, 9090/tcp
oai-spgwu-slice1   /openair-spgwu-tiny/bin/en ...   Up (healthy)   2152/udp, 8805/udp
oai-spgwu-slice2   /openair-spgwu-tiny/bin/en ...   Up (healthy)   2152/udp, 8805/udp
oai-udm            /bin/bash /openair-udm/bin ...   Up (healthy)   80/tcp
oai-udr            /bin/bash /openair-udr/bin ...   Up (healthy)   80/tcp
vpp-upf-slice3     /openair-upf/bin/entrypoin ...   Up (healthy)   2152/udp, 8085/udp

2. 多基站部署

参考docker-compose-slicing-ransim.yaml文件进行修改

Ueransim1配置

version: '3.8'
services:
    ueransim-slice1:
        container_name: ueransim-slice1
        image: ueransim:latest
        privileged: true
        environment:
            # GNB Congig Parameters
            - MCC=208
            - MNC=95
            - NCI=0x000000010
            - TAC=0xa000
            - LINK_IP=192.168.70.152
            - NGAP_IP=192.168.70.152
            - GTP_IP=192.168.70.152
            - NGAP_PEER_IP=192.168.70.138
            - SST=128
            - SD=128
            - SST_0=128
            - SD_0=128
            - SST_1=1
            - SD_1=0
            - SST_2=131
            - SD_2=131
            - IGNORE_STREAM_IDS=true
            # UE Config Parameters
            - NUMBER_OF_UE=1
            - IMSI=208950000000035
            - KEY=0C0A34601D4F07677303652C0462535B
            - OP=63bfa50ee6523365ff14c1f45f88737d
            - OP_TYPE=OPC
            - AMF_VALUE=8000
            - IMEI=356938035643803
            - IMEI_SV=0035609204079514
            - GNB_IP_ADDRESS=192.168.70.152
            - PDU_TYPE=IPv4
            - APN=default
            - SST_R=128 #Requested N-SSAI
            - SD_R=128
            - SST_C=128 
            - SD_C=128
            - SST_D=128
            - SD_D=128
        networks:
            public_net:
                ipv4_address: 192.168.70.152
        healthcheck:
            test: /bin/bash -c "ifconfig uesimtun0"
            interval: 10s
            timeout: 5s
            retries: 5
networks:
    public_net:
        external:
            name: demo-oai-public-net
    public_net_access:
        external:
            name: oai-public-access

Ueransim2配置

version: '3.8'
services:
    ueransim-slice2:
        container_name: ueransim-slice2
        image: ueransim:latest
        privileged: true
        environment:
            # GNB Congig Parameters
            - MCC=208
            - MNC=95
            - NCI=0x000000010
            - TAC=0xa000
            - LINK_IP=192.168.70.153
            - NGAP_IP=192.168.70.153
            - GTP_IP=192.168.70.153
            - NGAP_PEER_IP=192.168.70.138
            - SST=128
            - SD=128
            - SST_0=128
            - SD_0=128
            - SST_1=1
            - SD_1=0
            - SST_2=131
            - SD_2=131
            - IGNORE_STREAM_IDS=true
            # UE Config Parameters
            - NUMBER_OF_UE=1
            - IMSI=208950000000045
            - KEY=0C0A34601D4F07677303652C0462535B
            - OP=63bfa50ee6523365ff14c1f45f88737d
            - OP_TYPE=OPC
            - AMF_VALUE=8000
            - IMEI=356938035643803
            - IMEI_SV=0035609204079514
            - GNB_IP_ADDRESS=192.168.70.153
            - PDU_TYPE=IPv4
            - APN=default
            - SST_R=128 #Requested N-SSAI
            - SD_R=128
            - SST_C=128 
            - SD_C=128
            - SST_D=128
            - SD_D=128
        networks:
            public_net:
                ipv4_address: 192.168.70.153
        healthcheck:
            test: /bin/bash -c "ifconfig uesimtun0"
            interval: 10s
            timeout: 5s
            retries: 5
networks:
    public_net:
        external:
            name: demo-oai-public-net
    public_net_access:
        external:
            name: oai-public-access

Ueransim3配置

version: '3.8'
services:
    ueransim-slice3:
        container_name: ueransim-slice3
        image: ueransim:latest
        privileged: true
        environment:
            # GNB Congig Parameters
            - MCC=208
            - MNC=95
            - NCI=0x000000010
            - TAC=0xa000
            - LINK_IP=192.168.70.154
            - NGAP_IP=192.168.70.154
            - GTP_IP=192.168.70.154
            - NGAP_PEER_IP=192.168.70.138
            - SST=128
            - SD=128
            - SST_0=128
            - SD_0=128
            - SST_1=1
            - SD_1=0
            - SST_2=131
            - SD_2=131
            - IGNORE_STREAM_IDS=true
            # UE Config Parameters
            - NUMBER_OF_UE=1
            - IMSI=208950000000055
            - KEY=0C0A34601D4F07677303652C0462535B
            - OP=63bfa50ee6523365ff14c1f45f88737d
            - OP_TYPE=OPC
            - AMF_VALUE=8000
            - IMEI=356938035643803
            - IMEI_SV=0035609204079514
            - GNB_IP_ADDRESS=192.168.70.154
            - PDU_TYPE=IPv4
            - APN=default
            - SST_R=128 #Requested N-SSAI
            - SD_R=128
            - SST_C=128 
            - SD_C=128
            - SST_D=128
            - SD_D=128
        networks:
            public_net:
                ipv4_address: 192.168.70.154
        healthcheck:
            test: /bin/bash -c "ifconfig uesimtun0"
            interval: 10s
            timeout: 5s
            retries: 5
networks:
    public_net:
        external:
            name: demo-oai-public-net
    public_net_access:
        external:
            name: oai-public-access

 启动

oai-cn5g-fed/docker-compose# docker-compose -f ueransim-slice1.yaml up -d

注销

oai-cn5g-fed/docker-compose# docker-compose -f ueransim-slice1.yaml down

3. 容器状态及日志查询 

3.1 所有容器运行状态

3.2  AMF日志

三个用户顺利接入(由IMSI鉴别)

3.3 基站日志

4. 数据流测试

docker-compose-host $: docker exec oai-ext-dn ping -c 4 12.2.1.8

猜你喜欢

转载自blog.csdn.net/weixin_44810982/article/details/129419832