Intel® oneAPI IoT Toolkit
Get answers to your questions about bringing big data technology and IoT to healthcare, smart homes, aerospace, security, and more.
22 Discussions

How to capture packets while running Flexran sample-app

Rajisha
Novice
1,559 Views

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.

 

Regards,

Rajisha

Labels (1)
0 Kudos
1 Reply
Jonghak_K_Intel
Employee
1,520 Views

Hi Rajisha, 

 

thanks for reporting your issue. 

 

1. Could you please check if your DKDP is properly configured following : http://doc.dpdk.org/guides/prog_guide/profile_app.html#profiling-with-vtune , so your DPDK is ready for VTune to collect data from it? 

 

2. Also from VTune side, you can refer this link for the details how DPDK applications can be analyzed by VTune.  : https://www.intel.com/content/www/us/en/develop/documentation/vtune-help/top/analyze-performance/input-and-output-analysis/analyze-dpdk-applications.html 

 

Regards, 

 

Jon 

0 Kudos
Reply