intel / FlexRAN

Other
129 stars 42 forks source link

Issue in receiving packets after launching sample-app with Intel Flexran #14

Open perapallamaneesha opened 2 years ago

perapallamaneesha commented 2 years ago

Hi Team,

We could launch Flexran sample-app on 2 different servers (one used as DU and another one as RU).

We followed this link: https://docs.o-ran-sc.org/projects/o-ran-sc-o-du-phy/en/latest/Setup-Configuration_fh.html

and added probing and dpdk binding for the VFs on both servers.

But we don't see any Rx counter and the Rx IQ samples shows (0,0) only.

VF[0] 0000:17:02.0 VF[1] 0000:17:02.1 IQ files size is 40 slots app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2645460] numRBs[52] app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52] app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2645460] numRBs[52] app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52] app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52] Loading file ./usecase/mu0_10mhz/ant_0.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760] from addr (0x7fe23007e010) size (1397760) bytes num (1397760) Loading file ./usecase/mu0_10mhz/ant_1.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760] from addr (0x7fe1ddd7a010) size (1397760) bytes num (1397760) Loading file ./usecase/mu0_10mhz/ant_2.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760] from addr (0x7fe1ddc24010) size (1397760) bytes num (1397760) Loading file ./usecase/mu0_10mhz/ant_3.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760] from addr (0x7fe1ddace010) size (1397760) bytes num (1397760) Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant0.txt: from addr (0x7fe23007e010) size (1397760) IQ num (349440) Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant0.bin: from addr (0x7fe23007e010) size (698880) bytes num (698880) Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant1.txt: from addr (0x7fe1ddd7a010) size (1397760) IQ num (349440) Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant1.bin: from addr (0x7fe1ddd7a010) size (698880) bytes num (698880) Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant2.txt: from addr (0x7fe1ddc24010) size (1397760) IQ num (349440) Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant2.bin: from addr (0x7fe1ddc24010) size (698880) bytes num (698880) Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant3.txt: from addr (0x7fe1ddace010) size (1397760) IQ num (349440) Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant3.bin: from addr (0x7fe1ddace010) size (698880) bytes num (698880) TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [0] TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [1] TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [2] TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [3] app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2645460] numRBs[52] app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52] System clock (rdtsc) resolution 2095077612 [Hz] Ticks per us 2095 xran_init: MTU 9600 total cores 144 c_mask 0x21 core 5 [id] system_core 0 [id] pkt_proc_core 0x0 [mask] pkt_aux_core 0 [id] timing_core 5 [id] xran_ethdi_init_dpdk_io: Calling rte_eal_init:wls_0 -c 0x21 -n2 --iova-mode=pa --socket-mem=8192 --socket-limit=8192 --proc-type=auto --file-prefix wls_0 -w 0000:00:00.0 EAL: Detected 128 lcore(s) EAL: Detected 4 NUMA nodes EAL: Auto-detected process type: PRIMARY EAL: Multi-process socket /var/run/dpdk/wls_0/mp_socket EAL: Selected IOVA mode 'PA' EAL: Probing VFIO support... EAL: VFIO support initialized EAL: PCI device 0000:17:02.0 on NUMA socket 0 EAL: probe driver: 8086:154c net_i40e_vf EAL: using IOMMU type 1 (Type 1)

initializing port 0 for TX, drv=net_i40e_vf Port 0 MAC: 00 11 22 33 44 66 Port 0: nb_rxd 4096 nb_txd 4096

Checking link status portid [0] EAL: PCI device 0000:17:02.1 on NUMA socket 0 EAL: probe driver: 8086:154c net_i40e_vf

initializing port 1 for TX, drv=net_i40e_vf Port 1 MAC: 00 11 22 33 44 66 Port 1: nb_rxd 4096 nb_txd 4096

Checking link status portid [1] vf 0 local SRC MAC: 00 11 22 33 44 66 vf 0 remote DST MAC: 00 11 22 33 44 55 vf 1 local SRC MAC: 00 11 22 33 44 66 vf 1 remote DST MAC: 00 11 22 33 44 55 FFT Order 10 app_xran_cal_nrarfcn: nCenterFreq[2650140] nDeltaFglobal[5] nFoffs[0] nNoffs[0] nNRARFCN[530028] DL center freq 2650140 DL NR-ARFCN 530028 app_xran_cal_nrarfcn: nCenterFreq[2530140] nDeltaFglobal[5] nFoffs[0] nNoffs[0] nNRARFCN[506028] UL center freq 2530140 UL NR-ARFCN 506028 XRAN front haul xran_mm_init xran_sector_get_instances [0]: CC 0 handle 0x135f8c00 Handle: 0x118cd918 Instance: 0x135f8c00 init_xran [0]: CC 0 handle 0x135f8c00 Sucess xran_mm_init nSectorNum 1 nSectorIndex[0] = 0 ru_0_cc_0_idx_0: [ handle 0x135f8c00 0 0 ] [nPoolIndex 0] nNumberOfBuffers 2240 nBufferSize 15696 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 0] mb pool 0x2ea4f6b00 ru_0_cc_0_idx_1: [ handle 0x135f8c00 0 0 ] [nPoolIndex 1] nNumberOfBuffers 35840 nBufferSize 24 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 1] mb pool 0x2e80d17c0 ru_0_cc_0_idx_2: [ handle 0x135f8c00 0 0 ] [nPoolIndex 2] nNumberOfBuffers 2240 nBufferSize 48416 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 2] mb pool 0x2e6b1f180 ru_0_cc_0_idx_3: [ handle 0x135f8c00 0 0 ] [nPoolIndex 3] nNumberOfBuffers 2240 nBufferSize 15696 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 3] mb pool 0x2e00f1e40 ru_0_cc_0_idx_4: [ handle 0x135f8c00 0 0 ] [nPoolIndex 4] nNumberOfBuffers 35840 nBufferSize 24 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 4] mb pool 0x2ddcccb00 ru_0_cc_0_idx_5: [ handle 0x135f8c00 0 0 ] [nPoolIndex 5] nNumberOfBuffers 2240 nBufferSize 48416 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 5] mb pool 0x2dc71a4c0 ru_0_cc_0_idx_6: [ handle 0x135f8c00 0 0 ] [nPoolIndex 6] nNumberOfBuffers 2240 nBufferSize 8192 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 6] mb pool 0x2d5ced180 ru_0_cc_0_idx_7: [ handle 0x135f8c00 0 0 ] [nPoolIndex 7] nNumberOfBuffers 2240 nBufferSize 15696 CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 7] mb pool 0x2d48a5b40 init_xran_iq_content xran_open: 5G NR Category A xRAN open PRACH config: Numerology 0 ConfIdx 189, preambleFmrt 7 startsymb 0, numSymbol 2, occassionsInPrachSlot 7 PRACH: x 1 y[0] 0, y[1] 0 prach slot: 1 .. 6 .. PRACH start symbol 0 lastsymbol 13 xran_open: interval_us=1000 XRAN_UP_VF: 0x0000 XRAN_CP_VF: 0x0001

MLog Info: virt=0x0000000000000000 size=0

Start XRAN traffic Set debug stop 1, debug stop count 0 xran_timing_source_thread [CPU 5] [PID: 136561] O-DU: thread_run start time: 12/09/21 10:19:42.000000004 UTC [1000] Start C-plane DL 200 us after TTI [trigger on sym 3] Start C-plane UL 440 us after TTI [trigger on sym 7] Start U-plane DL 400 us before OTA [offset in sym -5] Start U-plane UL 360 us OTA [offset in sym 6] C-plane to U-plane delay 200 us after TTI Start Sym timer 142857 ns interval_us 1000 +---------------------------------------+ | Press 1 to start 5G NR XRAN traffic | | Press 2 reserved for future use | | Press 3 to quit | +---------------------------------------+ [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.31 % [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.27 % [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.32 % [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.30 % [o-du][rx 0 pps 0 kbps 0][tx 43956 pps 43956 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.92 % [o-du][rx 0 pps 0 kbps 0][tx 108760 pps 64804 kbps 1089406] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.08 % [o-du][rx 0 pps 0 kbps 0][tx 173564 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 % [o-du][rx 0 pps 0 kbps 0][tx 238368 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 % [o-du][rx 0 pps 0 kbps 0][tx 303172 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 % [o-du][rx 0 pps 0 kbps 0][tx 367976 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 % [o-du][rx 0 pps 0 kbps 0][tx 432784 pps 64808 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 % [o-du][rx 0 pps 0 kbps 0][tx 497588 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 % [o-du][rx 0 pps 0 kbps 0][tx 562392 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 % [o-du][rx 0 pps 0 kbps 0][tx 627196 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.01 % [o-du][rx 0 pps 0 kbps 0][tx 692004 pps 64808 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 % STOP:[1639045200.000000078] Closing timing source thread... [o-du][rx 0 pps 0 kbps 0][tx 710236 pps 18232 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.01 % get_xran_iq_content Closing l1 app... Ending all threads... Failed at xran_mm_destroy, status -2 Dump IQs... RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [0] RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [1] RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [2] RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [3] Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant0.txt: from addr (0x7fe1dd978010) size (1397760) IQ num (349440) Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant0.bin: from addr (0x7fe1dd978010) size (698880) bytes num (698880) Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant1.txt: from addr (0x7fe1dd822010) size (1397760) IQ num (349440) Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant1.bin: from addr (0x7fe1dd822010) size (698880) bytes num (698880) Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant2.txt: from addr (0x7fe1dd6cc010) size (1397760) IQ num (349440) Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant2.bin: from addr (0x7fe1dd6cc010) size (698880) bytes num (698880) Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant3.txt: from addr (0x7fe1dd576010) size (1397760) IQ num (349440) Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant3.bin: from addr (0x7fe1dd576010) size (698880) bytes num (698880) PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [0] PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [1] PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [2] PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [3] Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant0.txt: from addr (0x7fe1dd127010) size (4515840) IQ num (1128960) Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant0.bin: from addr (0x7fe1dd127010) size (2257920) bytes num (2257920) Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant1.txt: from addr (0x7fe1dccd8010) size (4515840) IQ num (1128960) Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant1.bin: from addr (0x7fe1dccd8010) size (2257920) bytes num (2257920) Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant2.txt: from addr (0x7fe1dc889010) size (4515840) IQ num (1128960) Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant2.bin: from addr (0x7fe1dc889010) size (2257920) bytes num (2257920) Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant3.txt: from addr (0x7fe1dc43a010) size (4515840) IQ num (1128960) Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant3.bin: from addr (0x7fe1dc43a010) size (2257920) bytes num (2257920) [root@localhost app]#

Can anyone help in capturing the packets while running sample-app?

Or is there any change required?

Thank you.

stepin104796 commented 2 years ago

Hi Team, We could capture the packets at infra level, that is without dodk binding we could capture it on receiver side interface using wireshark. But after dpdk binding, we tried using dpdk-pdump, we see below error:

[root@localhost bin]#./dpdk-pdump ----pdump 'port=0,queue =** EAL: Detected 128 Icore(s) EAL: Detected 4 NUMA nodes EAL: Multi-process socket /var/run/dpdk/rte/mp_ socket 280381_9f53d52f16e0 EAL: failed to send to (/var/run/dpdk/rte/mp socket) due to Connection refused EAL: Fail to send request /var/run/dpdk/rte/mp socket:bus _vdev mp dev scan0: Failed to request dev from primary EAL: Selected IOVA mode 'PA' EAL: Probing VFIO support.. EAL: failed to send to (/var/run/dpdk/rte/mp socket) due to Connection refused AL: Fail to send request /var/run/dpdk/rte/mp_socket:eal_vfio_mp_sync EAL: cannot request default container fd AL: VFIO support could not be initialized

Thank you Sindhu.

stepin104796 commented 2 years ago

One more query While running l1 binary in xran mode we are getting an error saying phy_xran.cfg file not found On looking through the make file there also they mentioned many config files but in the cloned Flexran directory couldn't find the files in the path FlexRAN/l1/bin/nr5g/gnb/l1/

Can please look into this issue also?