mirror of
https://gitlab.eurecom.fr/oai/openairinterface5g.git
synced 2026-07-13 04:30:28 +00:00
105 lines
3.6 KiB
Plaintext
105 lines
3.6 KiB
Plaintext
Scenario 1 : Off-network UE2UE link
|
|
SynchREF UE (UE1)
|
|
|
|
UE1(eth0 - 10.10.10.1)--------UE2(eno1 - 10.10.10.2)
|
|
|
|
Here's an example of /etc/network/interfaces configuration for UE1
|
|
auto eth0
|
|
iface eth0 inet static
|
|
address 10.10.10.1
|
|
netmask 255.255.255.0
|
|
gateway 10.10.10.1
|
|
|
|
Prepare the environment:
|
|
- git clone https://gitlab.eurecom.fr/matzakos/LTE-D2D.git #branch: master
|
|
This branch contains all the current development for DDPS
|
|
- UE MAC<-> UE MAC for Scenario 1
|
|
- eNB MAC<->UE MAC (NFAPI Transport)
|
|
- RRC Extensions for “on-network” cases
|
|
|
|
NFAPI configuration (required even for Scenario 1 target)
|
|
- git clone https://github.com/cisco/open-nFAPI.git
|
|
- cd open-nfapi
|
|
- patch -p1 --dry-run < $OPENAIR_HOME/open-nfapi.oai.patch
|
|
Validate that there are no errors
|
|
- patch -p1 < $OPENAIR_HOME/open-nfapi.oai.patch
|
|
|
|
OAI build/execute
|
|
- export NFAPI_DIR=XXX (place where NFAPI was installed)
|
|
- cd cmake_targets
|
|
- ./build_oai --UE --ninja
|
|
(if necessary, use ./build_oai -I --UE to install required packages)
|
|
- cd ran_build/build/
|
|
|
|
UE1:
|
|
- sudo ifconfig oip0 10.0.0.1
|
|
- sudo iptables -A POSTROUTING -t mangle -o oip0 -d 224.0.0.3 -j MARK --set-mark 3
|
|
- (if necessary) sudo route add default gw 10.10.10.1 eth0
|
|
UE2:
|
|
- sudo ifconfig oip0 10.0.0.2
|
|
- sudo iptables -A POSTROUTING -t mangle -o oip0 -d 224.0.0.3 -j MARK --set-mark 3
|
|
- (if necessary) sudo route add default gw 10.10.10.1 eno1
|
|
|
|
UE1 and UE2: Get and build vencore_app from d2d-l3-stub (branch: l3_stub)
|
|
- gcc -I . vencore_app.c -o vencore_app -lpthread
|
|
|
|
--------------------------------
|
|
TEST ONE-TO-MANY
|
|
Run UE1 then UE2, for example:
|
|
UE1: sudo ./lte-softmodem-stub -U --emul-iface eth0
|
|
UE2: sudo ./lte-softmodem-stub -U --emul-iface eno1
|
|
|
|
Test with Ping
|
|
- Sender - UE1: ping -I oip0 224.0.0.3
|
|
- Receiver - UE2: using wireshark
|
|
|
|
Test with Iperf
|
|
- Sender - UE1: iperf -c 224.0.0.3 -u -b 0.1M --bind 10.0.0.1 -t 100
|
|
- Receiver - UE2: sudo ./mcreceive 224.0.0.3 5001
|
|
|
|
Filter the incomming packets according to GroupL2Id: receiver (one-to-many) can discard the packets if it doesn't belong to this group.
|
|
For the moment, both sender and receiver use the same set of Ids (hardcoded)
|
|
|
|
UE1 (sender)
|
|
- sudo ./lte-softmodem-stub -U --emul-iface eth0
|
|
- ./vencore_app #send the sourceL2Id, groupL2Id to OAI
|
|
- ping -I oip0 224.0.0.3
|
|
UE2(receiver)
|
|
- sudo ./lte-softmodem-stub -U --emul-iface eno1
|
|
#we can see the incomming packets from OAI log, however, cannot see from Wireshark -> they are discarded at MAC layer
|
|
- ./vencore_app #we can see the packets appearing in Wireshark
|
|
|
|
--------------------------------------
|
|
TEST PC5-S (UE1 -sender, UE2 - receiver) and PC5-U for ONE-TO-ONE scenario
|
|
Configure UE1/UE2
|
|
UE1:
|
|
- sudo ifconfig oip0 10.0.0.1
|
|
- sudo iptables -A POSTROUTING -t mangle -o oip0 -d 10.0.0.2 -j MARK --set-mark 3
|
|
- sudo route add default gw 10.10.10.1 eth0
|
|
UE2:
|
|
- sudo ifconfig oip0 10.0.0.2
|
|
- sudo iptables -A POSTROUTING -t mangle -o oip0 -d 10.0.0.1 -j MARK --set-mark 3
|
|
- sudo route add default gw 10.10.10.1 eno1
|
|
|
|
step 1:
|
|
- UE1: sudo ./lte-softmodem-stub -U --emul-iface eth0
|
|
step 2:
|
|
- UE2: sudo ./lte-softmodem-stub -U --emul-iface eno1
|
|
- UE2: ./vencore_app -r #listen to incomming message from PC5-S
|
|
step 3:
|
|
- UE1: ./vencore_app -s #send a message via PC5-S (e.g., DirectCommunicationRequest)
|
|
|
|
Generate unicast traffic
|
|
UE1: ping -I oip0 10.0.0.2
|
|
|
|
|
|
--------------------------------------
|
|
TEST PC5-D
|
|
step 1:
|
|
- UE1: sudo ./lte-softmodem-stub -U --emul-iface eth0
|
|
- UE1: ./vencore_app -d #send a PC5-Discovery-Announcement via PC5D
|
|
step 2:
|
|
- UE2: sudo ./lte-softmodem-stub -U --emul-iface eno1
|
|
- UE2: ./vencore_app -d #send a PC5-Discovery-Announcement via PC5D
|
|
|