srsran / srsRAN_Project

Open source O-RAN 5G CU/DU solution from Software Radio Systems (SRS) https://docs.srsran.com/projects/project
https://www.srsran.com
GNU Affero General Public License v3.0
517 stars 177 forks source link

Error: O-RAN NearRT-RIC and xApp - Failed to create SCTP gateway #255

Closed raul-parada closed 1 year ago

raul-parada commented 1 year ago

Issue Description

Error to connect with nearRT-RIC

Setup Details

Ubuntu 22.04

Expected Behavior

As mentioned in the tutorial:

--== srsRAN gNB (commit 611bf17fe) ==--

Connecting to AMF on 10.53.1.2:38412
Available radio types: zmq.
Connecting to NearRT-RIC on 127.0.0.1:36421
Cell pci=1, bw=10 MHz, dl_arfcn=368500 (n3), dl_freq=1842.5 MHz, dl_ssb_arfcn=368410, ul_freq=1747.5 MHz

==== gNodeB started ===

Actual Behaviour

Lower PHY in executor blocking mode.

--== srsRAN gNB (commit 5e6f50a20) ==--

Failed to bind SCTP socket to 10.53.1.1:0. Cannot assign requested address
srsGNB ERROR: Failed to create SCTP gateway.

Aborted (core dumped)

Steps to reproduce the problem

1- Run flexric:

./flexric/build/examples/ric/nearRT-RIC
Setting the config -c file to /usr/local/etc/flexric/flexric.conf
Setting path -p for the shared libraries to /usr/local/lib/flexric/
[NEAR-RIC]: nearRT-RIC IP Address = 127.0.0.1, PORT = 36421
[NEAR-RIC]: Initializing 
[NEAR-RIC]: Loading SM ID = 147 with def = ORAN-E2SM-KPM 
[NEAR-RIC]: Loading SM ID = 144 with def = PDCP_STATS_V0 
[NEAR-RIC]: Loading SM ID = 146 with def = TC_STATS_V0 
[NEAR-RIC]: Loading SM ID = 148 with def = GTP_STATS_V0 
[NEAR-RIC]: Loading SM ID = 142 with def = MAC_STATS_V0 
[NEAR-RIC]: Loading SM ID = 145 with def = SLICE_STATS_V0 
[NEAR-RIC]: Loading SM ID = 143 with def = RLC_STATS_V0 
[iApp]: Initializing ... 
[iApp]: nearRT-RIC IP Address = 127.0.0.1, PORT = 36422
fd created with 6 

2- Execute gnb (then I got the error mentioned above)

Additional Information

I've followed all the steps succesfully from https://docs.srsran.com/projects/project/en/latest/tutorials/source/flexric/source/index.html

pgawlowicz commented 1 year ago

Do you run both gnb and ric on the same host?

Please try to set bind_addr

e2:
  enable_du_e2: true                # Enable DU E2 agent (one for each DU instance)
  e2sm_kpm_enabled: true            # Enable KPM service module
  addr: 127.0.0.1                   # RIC IP address
  bind_addr: 127.0.0.1              # A local IP that the E2 agent binds to for traffic from the RIC
  port: 36421                       # RIC port
raul-parada commented 1 year ago

Yes, everything in the same host. I still get the same error.

When executing gnb ``` cd ./srsRAN_Project/docker docker-compose up --build 5gc


, I receive this message:

which will be ignored. Compose does not support 'configs' configuration - use docker stack deploy to deploy to a swarm. Building 5gc DEPRECATED: The legacy builder is deprecated and will be removed in a future release. Install the buildx component to build images with BuildKit: https://docs.docker.com/go/buildx/

Sending build context to Docker daemon 27.65kB Step 1/17 : ARG OS_VERSION=22.04 Step 2/17 : FROM ubuntu:$OS_VERSION as base ---> bf40b7bc7a11 Step 3/17 : ENV PYTHONBUFFERED=1 ---> Using cache ---> 768fa6534f6c Step 4/17 : ENV DEBIAN_FRONTEND=noninteractive ---> Using cache ---> 93089ee7df29 Step 5/17 : RUN apt-get update && apt install -y software-properties-common && rm -rf /var/lib/apt/lists/* ---> Using cache ---> 4170d4c90e06 Step 6/17 : RUN apt-get update && apt-get install -y python3-pip python3-setuptools python3-wheel ninja-build build-essential flex bison git libsctp-dev libgnutls28-dev libgcrypt-dev libssl-dev libidn11-dev libmongoc-dev libbson-dev libyaml-dev libnghttp2-dev libmicrohttpd-dev libcurl4-gnutls-dev libnghttp2-dev libtins-dev meson mongodb curl gettext gdb iproute2 iptables iputils-ping netcat iperf iperf3 libtalloc-dev cmake ---> Using cache ---> cc16ecbe11e1 Step 7/17 : ARG OPEN5GS_VERSION ---> Using cache ---> f3833e27831f Step 8/17 : RUN echo $OPEN5GS_VERSION > ./open5gsversion ---> Using cache ---> 046fb4618875 Step 9/17 : RUN git clone --depth 1 --branch $(cat ./open5gsversion) https://github.com/open5gs/open5gs open5gs && cd open5gs && meson build --prefix=pwd/install && ninja -C build && cd build && ninja install ---> Using cache ---> f7ce448c0c40 Step 10/17 : RUN curl -fsSL https://deb.nodesource.com/setup_14.x | bash - && apt-get install -y nodejs && cd open5gs/webui && npm ci --no-optional ---> Using cache ---> 5c3bf7bec20d Step 11/17 : RUN python3 -m pip install pymongo click pyroute2 ipaddress python-iptables ---> Using cache ---> 81c8e5638564 Step 12/17 : FROM base as open5gs ---> 81c8e5638564 Step 13/17 : WORKDIR /open5gs ---> Using cache ---> 9bc2cca0609e Step 14/17 : COPY open5gs-5gc.yml open5gs-5gc.yml.in ---> Using cache ---> 5dc18055ed22 Step 15/17 : COPY open5gs_entrypoint.sh add_users.py setup_tun.py subscriber_db.cs[v] ./ ---> Using cache ---> 117748842547 Step 16/17 : ENV PATH="${PATH}:/open5gs/build/tests/app/" ---> Using cache ---> bc51bd5f3094 Step 17/17 : ENTRYPOINT [ "./open5gs_entrypoint.sh" ] ---> Using cache ---> 0f8957dd3e6a Successfully built 0f8957dd3e6a Successfully tagged docker_5gc:latest Starting open5gs_5gc ... Starting open5gs_5gc ... error

ERROR: for open5gs_5gc Cannot start service 5gc: driver failed programming external connectivity on endpoint open5gs_5gc (53dc732c18acacfcc06ce171693e29bf58a6d4f52bd9dc384b317f31d2fd4c77): Error starting userland proxy: listen tcp4 0.0.0.0:3000: bind: address already in use

ERROR: for 5gc Cannot start service 5gc: driver failed programming external connectivity on endpoint open5gs_5gc (53dc732c18acacfcc06ce171693e29bf58a6d4f52bd9dc384b317f31d2fd4c77): Error starting userland proxy: listen tcp4 0.0.0.0:3000: bind: address already in use ERROR: Encountered errors while bringing up the project.


In which folders should I paste the files gnb_zmq.yaml and ue_zmq.config?
pgawlowicz commented 1 year ago

5gc cannot be started as there is already sth running on port 3000. Did you try to run Open 5GC twice?

raul-parada commented 1 year ago

After restarting the PC and it runs successfully. Now, the gnb runs, however, the UE doesn't receive IP

Active RF plugins: libsrsran_rf_zmq.so
Inactive RF plugins: 
Reading configuration file ./ue_zmq.conf...

Built in Release mode using commit fa56836b1 on branch master.

Opening 1 channels in RF device=zmq with args=tx_port=tcp://127.0.0.1:2001,rx_port=tcp://127.0.0.1:2000,base_srate=11.52e6
Supported RF device list: zmq file
CHx base_srate=11.52e6
Current sample rate is 1.92 MHz with a base rate of 11.52 MHz (x6 decimation)
CH0 rx_port=tcp://127.0.0.1:2000
CH0 tx_port=tcp://127.0.0.1:2001
Current sample rate is 11.52 MHz with a base rate of 11.52 MHz (x1 decimation)
Current sample rate is 11.52 MHz with a base rate of 11.52 MHz (x1 decimation)
Waiting PHY to initialize ... done!
Attaching UE...
Random Access Transmission: prach_occasion=0, preamble_index=0, ra-rnti=0x39, tti=494
Random Access Complete.     c-rnti=0x4601, ta=0
RRC Connected
Failed to setup/configure GW interface
RRC NR reconfiguration successful.

The Open5GS docker returned this:

open5gs_5gc | 10/13 15:48:03.407: [gmm] INFO: [imsi-001010123456780] Registration complete (../src/amf/gmm-sm.c:1916)
open5gs_5gc | 10/13 15:48:03.407: [amf] INFO: [imsi-001010123456780] Configuration update command (../src/amf/nas-path.c:612)
open5gs_5gc | 10/13 15:48:03.407: [gmm] INFO:     UTC [2023-10-13T15:48:03] Timezone[0]/DST[0] (../src/amf/gmm-build.c:544)
open5gs_5gc | 10/13 15:48:03.407: [gmm] INFO:     LOCAL [2023-10-13T15:48:03] Timezone[0]/DST[0] (../src/amf/gmm-build.c:549)
open5gs_5gc | 10/13 15:48:03.407: [amf] INFO: [Added] Number of AMF-Sessions is now 1 (../src/amf/context.c:2348)
open5gs_5gc | 10/13 15:48:03.407: [gmm] INFO: UE SUPI[imsi-001010123456780] DNN[srsapn] S_NSSAI[SST:1 SD:0xffffff] (../src/amf/gmm-handler.c:1186)
open5gs_5gc | 10/13 15:48:03.411: [smf] INFO: [Added] Number of SMF-UEs is now 1 (../src/smf/context.c:1012)
open5gs_5gc | 10/13 15:48:03.411: [smf] INFO: [Added] Number of SMF-Sessions is now 1 (../src/smf/context.c:3108)
open5gs_5gc | 10/13 15:48:03.424: [smf] INFO: UE SUPI[imsi-001010123456780] DNN[srsapn] IPv4[10.45.1.2] IPv6[] (../src/smf/npcf-handler.c:528)
open5gs_5gc | 10/13 15:48:03.425: [upf] INFO: [Added] Number of UPF-Sessions is now 1 (../src/upf/context.c:194)
open5gs_5gc | 10/13 15:48:03.425: [gtp] INFO: gtp_connect() [127.0.0.4]:2152 (../lib/gtp/path.c:60)
open5gs_5gc | 10/13 15:48:03.425: [upf] INFO: UE F-SEID[UP:0x1 CP:0x1] APN[srsapn] PDN-Type[1] IPv4[10.45.1.2] IPv6[] (../src/upf/context.c:467)
open5gs_5gc | 10/13 15:48:03.425: [upf] INFO: UE F-SEID[UP:0x1 CP:0x1] APN[srsapn] PDN-Type[1] IPv4[10.45.1.2] IPv6[] (../src/upf/context.c:467)
open5gs_5gc | 10/13 15:48:03.426: [gtp] INFO: gtp_connect() [10.53.1.2]:2152 (../lib/gtp/path.c:60)
open5gs_5gc | 10/13 15:48:03.432: [gmm] INFO: [imsi-001010123456780] No GUTI allocated (../src/amf/gmm-sm.c:1242)
open5gs_5gc | 10/13 15:48:03.555: [gtp] INFO: gtp_connect() [10.53.1.1]:2152 (../lib/gtp/path.c:60)

I'm missing something?

pgawlowicz commented 1 year ago

Try

sudo ip netns add ue1