Skip to content
Snippets Groups Projects
  1. Feb 07, 2025
    • Bartosz Podrygajlo's avatar
      Refactor tun_if.h · e61bf513
      Bartosz Podrygajlo authored
      Use a common function for generating interface name. Use full interface
      name in tun_if.h functions.
      e61bf513
  2. Aug 02, 2024
    • Robert Schmidt's avatar
      Remove netlink_init.c, and move remaining functionality to tun_if.c · 168582b5
      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.
      168582b5
    • Robert Schmidt's avatar
      Create tun_if module for TUN interface handling · 89d89a75
      Robert Schmidt authored
      Move openair3/RRC/NAS/nas_config.c to common/utils/tun_if.c, and remove
      the former from all targets.
      89d89a75
    • Robert Schmidt's avatar
      Refactor change_interface_state() · d0f32d8a
      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)
      d0f32d8a
    • Robert Schmidt's avatar
      nas_config(): change API to handle both IPv4 and IPv6 · ae5702d0
      Robert Schmidt authored
      Implement handling of IPv4 and IPv6 (on the same interface) in
      nas_config().
      ae5702d0
    • Robert Schmidt's avatar
      Reintroduce the IP rule&route for OAI UE through setup_ue_ipv4_route() · ffcf53fc
      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.
      ffcf53fc
    • Robert Schmidt's avatar
      nas_config(): provide entire IP address to configure · 2da09aba
      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.
      2da09aba
    • Robert Schmidt's avatar
      Refactor setInterfaceParameter() and bringInterfaceUp() · 2c878c10
      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.
      2c878c10
    • Robert Schmidt's avatar
      Remove netmask configuration and hardcode instead · e2163ba3
      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.
      e2163ba3
    • Robert Schmidt's avatar
      nas_config(): remove broadcast parameter · 5bf498fc
      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.
      5bf498fc
    • Robert Schmidt's avatar
      Remove unused code from nas_config.c · 4810efdc
      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).
      4810efdc
    • Robert Schmidt's avatar
      Remove nas_config_mbms() · 9fedbf31
      Robert Schmidt authored
      Remove nas_config_mbms() since nas_config_mbms() and nas_config() do the
      same
      9fedbf31
    • Robert Schmidt's avatar
      Remove routing table init in nas_config() · 380cf5c6
      Robert Schmidt authored
      The routing table is temporarily removed in this commit and introduced
      in one of the next commits.
      380cf5c6
    • Robert Schmidt's avatar
      nas_config_mbms/netlink_init_mbms_tun(): use entire interface prefix · a12460e8
      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.
      a12460e8
    • Robert Schmidt's avatar
      nas_config()/netlink_init_tun(): use entire interface name (prefix) · 5acfa473
      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.
      5acfa473
    • Robert Schmidt's avatar
      Replace nas_config_mbms_s1() call with nas_config_mbms() · 983ee279
      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.
      983ee279
  3. Aug 01, 2024
    • Robert Schmidt's avatar
      Remove functions from nas_config that are not used, mark static · 7782f4ae
      Robert Schmidt authored
      - Remove unused NAS_config(): It does most of what the highly similar
        nas_config() does.
      - Remove unused set_gateway()
      - Remove unused blocking_NAS_config()
      - Remove unused functions getNetMask()
      - Remove unused broadcast functionality: functions setBroadcastAddress()
        and getBroadcastAddress(), as well as global variable broadcastAddr
        are not used in consumers. Remove it.
      - Make functions static
      7782f4ae
  4. Nov 10, 2023
  5. Aug 18, 2023
  6. Mar 09, 2023
  7. Dec 13, 2022
  8. Nov 30, 2022
    • Robert Schmidt's avatar
      Remove FlexRAN · 287c1829
      Robert Schmidt authored
      - Remove any FlexRAN code
      - Cleanup config files
      - Remove LFDS7, libyaml dependencies
      287c1829
  9. Aug 16, 2022
  10. Sep 03, 2021
  11. Aug 13, 2021
  12. May 19, 2021
  13. Feb 25, 2021
  14. Jan 22, 2020
  15. Jan 09, 2020
  16. Sep 18, 2019
  17. Sep 14, 2019
    • Dr.-Ing.  Javier Morgade's avatar
      -MBMS RRC procedures for M2AP · 3992eb9e
      Dr.-Ing. Javier Morgade authored
      	-On the fligh MBMS recofiguration for MBSFN, sib13,sib2 and MCCH enabled through M2 interface (MCE)
      	-RRC NAS update for MBMS TUN interfaces configuration
      	-UE RRC modified to handle dynamic SIB2 (MBSFN Subframe Config Lists), SIB13 (MCCH) reconfigurations (TO CAREFULLY BE CHECKED)
      
      	ACKNOWLEDGEMENT:
       	1. This commit was developed at Vicomtech (https://www.vicomtech.org) under UE project CDN-X-ALL: "CDN edge-cloud computing for efficient cache and reliable streaming aCROSS Aggregated unicast-multicast LinkS"
       	2. Project funded by Fed4FIRE+ OC5 (https://www.fed4fire.eu
      
      )
      
      Signed-off-by: Dr.-Ing.  Javier Morgade's avatarJavier Morgade <javier.morgade@ieee.org>
      3992eb9e
  18. Apr 08, 2019
  19. Apr 05, 2019
  20. Mar 09, 2019
  21. Mar 08, 2019
  22. Mar 04, 2019
  23. Jan 07, 2019
    • Cédric Roux's avatar
      fix a lot of file mode · aea6b4b5
      Cédric Roux authored
      For whatever reason most of the files had their permission
      changed from 644 to 755, which is not wanted.
      aea6b4b5
  24. Jul 30, 2018
  25. Oct 23, 2017
Loading