- 05 Aug, 2024 12 commits
-
-
Robert Schmidt authored
Integration: `2024.w31` See merge request oai/openairinterface5g!2894 * !2812 NR UE MAC PRACH scheduling fixes * !2885 Fix signal_energy_nodc for lengths that are not multiples of 4 * !2888 nr rlc: fix decode_poll_byte() * !2892 Dockerfiles: correct ENV format * !2891 UE cmd line info: print threequarter-sampling param if used * !2837 replacing assertions with LOG_E in UE UL locking mechanism * !2879 style(docker): newer versions of docker require keyword as to be of same case as from * !2832 Enable PHR reporting for NR UE * !2880 CI: Improve error handling in Iperf3 JSON analysis functions * !2813 Rewrite time_stats_t counters for DLSCH in NR UE. * !2882 Automatic scaling to PUCCH2 receiver * !2691 NR UE data inactivity timer * !2848 Refactor network interface handling * !2865 CI: Create FHI 7.2 pipeline
-
Robert Schmidt authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
- Modify CN deployment and termination functions to include namespace and path parameters. - Update `Module_UE` class with new attributes for namespace and CN path. - Integrate `cnID` for OC CN deployment and termination in `epc.py`. - Extract `cn_id` from XML configurations for CN operations. - Update XML files to include `cn_id` tag for 5G Core initialization and termination. (Used in OAIUE and AW2S pipeline, for OC CN deployment. This change will not affect other CN deployments.)
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
Create directories for gNB deployment with VVDN and Benetel550 RUs. Each directory includes scripts for setting up and cleaning up the host machine running the gNB.
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Jaroslava Fiedlerova authored
-
- 02 Aug, 2024 28 commits
-
-
Jaroslava Fiedlerova authored
-
Robert Schmidt authored
Remove openair1/SIMULATION/ETH_TRANSPORT/netlink_init.c, and move TUN interface creation functionality to tun_if.c. Remove SIMU_ETH target.
-
Robert Schmidt authored
Move openair3/RRC/NAS/nas_config.c to common/utils/tun_if.c, and remove the former from all targets.
-
Robert Schmidt authored
- Remove globals, declare where they are used - Cleanup pdcp_fifo.c - Remove unnecessary headers from netlink_init.c - Reformat netlink_init.c
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
Handle IPv6 (and IPv4v6) PDU sessions by correctly instructing nas_config() to set up the interface with provided IP addresses. Note that as of now, IPv6 PDU sessions have not been fully tested. Remove a useless assert at the gNB; to my understanding the gNB does not care about the IP session type (at least for IP), as it just transparently tunnels the IP packets from/to GTP. I added a comment in the code where to change to request a PDU session different from IPv4. Currently it is hardcoded to IPv4, and it seems that a default OAI 5GC config would reject a PDU session type different from IPv4.
-
Robert Schmidt authored
- Read interface flags before setting status to not inadvertently overwrite existing flags - Set interface flag point-to-point, remove multicast (I think a UE is not supposed to send anywhere else than to the UPF, so it seems to not make sense to declare the interface as multicast)
-
Robert Schmidt authored
Implement handling of IPv4 and IPv6 (on the same interface) in nas_config().
-
Robert Schmidt authored
These rules & route are necessary to properly send packets on oaitun_ue1 interface: 1. This forces the packets coming from a subnet different than the UE's subnet to go back through oaitun_ue1 rather than via what the default route defined on the system (e.g., important if ping from the internet arrives). 2. On machines setting net.ipv4.conf.oaitun_ue1.rp_filter=1 (e.g. RHEL), this prevents that source filtering for packets coming back is applied and those packets be dropped. By default, many hosts have rp_filter=2, so no strict source filtering is applied, and it would work; on others, this rule prevents source filter dropping.
-
Robert Schmidt authored
Prior to this commit, there was a global variable baseNetAddress that could be set independently through a setter and also through the configuration module. This baseNetAddress (16 bits IPv4) would then be complemented with two more bytes in nas_config(). However, this is counter-productive, as not only we have a global variable that is avoidable (we can give the entire address to nas_config() directly), but it also would not work with IPv6. Hence, modify to give nas_config() the entire address. A follow-up commit will add IPv6 support.
-
Robert Schmidt authored
- refactor functions to make them shorter - provide doxygen strings - open socket for operation once instead of in each function - use named constant (from enum) to differentiate interface UP/DOWN - Linux kernel defines name length as IFNAM_SIZE, so use that for interface name length. Also, it seems no null-byte is needed.
-
Robert Schmidt authored
I initially planned to entirely remove the netmask configuration. However, in specific configurations, e.g. in 4G Rfsim with feMBMS, routing does not seem to work anymore using these commands: iperf -B 10.0.2.2 -s -u -i1 iperf -c 10.0.2.2 -B 10.0.2.1 -u -t 30 -b 2.00M -i1 Therefore, we simplify by hardcoding the netmask to /24, which allows the above to work.
-
Robert Schmidt authored
Remove the broadcast address from the UE, as logically, a UE has nothing to broadcast: it can only directly talk to the core. Additionally, at least as of now, the UE interface is shown as "POINTOPOINT", so broadcasting is not possible.
-
Robert Schmidt authored
Remove unused header includes, as well as the test program (which does not do much, and certainly does not test in the way we use the interfaces).
-
Robert Schmidt authored
Remove nas_config_mbms() since nas_config_mbms() and nas_config() do the same
-
Robert Schmidt authored
The routing table is temporarily removed in this commit and introduced in one of the next commits.
-
Robert Schmidt authored
Does the same change in the _mbms() functions as in the previous commit. Also, simplify logic in netlink_init_mbms_tun(): directly use the id in the interface. This requires a slight ID change in the users, which is also done in this commit.
-
Robert Schmidt authored
Instead of implicitly using a hardcoded prefix "oaitun_" interface name, move that out to the callers of these functions to make it clear. The ID still remains outside. The "sister functions" nas_config_mbms()/netlink_init_tun_mbms() will do the same change in the next commit.
-
Robert Schmidt authored
Comparing both functions, it seems that nas_config_mbms_s1() sets the same parameters, assuming that in nas_config_mbms(), we set - (UE_NAS_USE_TUN || ENB_NAS_USE_TUN) yielding true -> should yield the same interface name - netmask is hardcoded to 255.255.255.0 - baseNetAddress is hardcoded 10.0 So replace the call with nas_config_mbms() by setting parameters accordingly.
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-
Bartosz Podrygajlo authored
-
Bartosz Podrygajlo authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-
Jaroslava Fiedlerova authored
-