An error occurred fetching the project authors.
  1. 08 Sep, 2021 1 commit
  2. 06 Sep, 2021 1 commit
    • Cedric Roux's avatar
      gnb sa: improve security · eeca3836
      Cedric Roux authored
      Note: some modifications have been done to the UE too, but for syntactic
      reasons. The UE may fail to work, not tested.
      
      For the UE, we have the problem of handling properly SecurityModeCommand.
      We don't verify its integrity. This is a bit complicated to handle properly
      and may require some API changes in the PDCP layer. So, as of today, the
      integrity of this message is not verified.
      
      Also, NSA mode has been touched, but it should not be a problem. But not
      tested, so not sure.
      eeca3836
  3. 16 Jul, 2021 1 commit
  4. 12 Jul, 2021 1 commit
  5. 10 Jul, 2021 1 commit
  6. 16 Jun, 2021 2 commits
  7. 11 Jun, 2021 1 commit
  8. 08 Jun, 2021 1 commit
  9. 05 Jun, 2021 1 commit
  10. 31 May, 2021 2 commits
  11. 30 May, 2021 2 commits
  12. 26 May, 2021 2 commits
    • luis_pereira87's avatar
      Remove unused variable · 8d096b22
      luis_pereira87 authored
      8d096b22
    • matzakos's avatar
      Enable IP TUN interface configuration upon reception of PDU Session... · f60e5997
      matzakos authored
      Enable IP TUN interface configuration upon reception of PDU Session Establishment Accept NAS message
      
      -User plane traffic validation with OAI UE and OAI CN:
      
      -Downlink ping initiated from the CN is received at the IP interface of the UE. However it seems that there is some packet corruption preventing the generaration of ping reply.
      
      -Uplink ping initiated from the UE reaches the OAI CN machine. However no ping reply is seen yet either.
      f60e5997
  13. 18 May, 2021 1 commit
  14. 12 May, 2021 1 commit
  15. 11 May, 2021 1 commit
  16. 10 May, 2021 3 commits
  17. 02 May, 2021 2 commits
  18. 30 Apr, 2021 1 commit
  19. 27 Apr, 2021 1 commit
  20. 26 Apr, 2021 1 commit
    • Cedric Roux's avatar
      sa: nr pdcp: improve security · 9135d420
      Cedric Roux authored
      This commit implements integrity and security settings for nr pdcp. It will
      only work for SRBs.
      
      This commit has not been tested. It may fail to work completely. To be checked.
      9135d420
  21. 18 Apr, 2021 1 commit
  22. 17 Apr, 2021 1 commit
  23. 16 Apr, 2021 1 commit
  24. 14 Apr, 2021 1 commit
  25. 16 Mar, 2021 1 commit
  26. 10 Mar, 2021 1 commit
    • Cedric Roux's avatar
      NR: fix: set PDCP discard timer to infinity · 4ff8f883
      Cedric Roux authored
      The discard timer is used by the PDCP layer to discard packets that were not
      transmitted to RLC after some time.
      
      We don't really need it for the moment, maybe never for the default
      bearer which is a best-effort bearer passing all kind of IP traffic.
      Maybe for voice over IP kind of traffic it's important, or realtime
      applications.
      
      I ran an iperf UDP uplink test and saw no error on the PHY layer but still
      lots of packets lost in the iperf logs, which was very surprising. By
      analyzing the logs in wireshark I saw that, with the current scheduler,
      an IP packet sent by the UE took 40ms to be sent piece by piece to the
      gNB, and then the next uplink IP packet was never sent at all because
      the discard timer was expired, leading to the high count of packets lost
      in the iperf logs.
      
      So let's put infinity for the moment for the discard timer. From my
      understanding of the moment it's not a problem. If for some reason we
      should set it to some non-infinity value, then we can change later.
      4ff8f883
  27. 09 Mar, 2021 1 commit
  28. 04 Mar, 2021 2 commits
  29. 03 Mar, 2021 1 commit
    • Cedric Roux's avatar
      nr pdcp: improvements · 9edc8cce
      Cedric Roux authored
      Implement data transfer (38.331 5.2):
          - transmit operation (in nr_pdcp_entity_recv_sdu)
          - receive operation (in nr_pdcp_entity_recv_pdu)
          - t-Reordering expiration
      
      To keep track of time the function nr_pdcp_wakeup_timer_thread has been
      added and is called by the gNB's MAC scheduler via nr_pdcp_tick.
      
      (The UE has not been modified.)
      
      A thread has been introduced to set time of all the existing PDCP
      entities in the system. This probably does not scale well with many
      PDCP entities (many UEs connected to the gNB). To be changed at some
      point when needed. Hopefully, with a few UEs this mechanism won't be
      too problematic (ie. won't cause realtime problems).
      
      The problem with time in PDCP is that SDUs are kept if some are
      missing, to do reordering. A timer is started and when it expires
      we have to transmit the SDUs even if some are still missing. We
      want to do that as soon as possible. So we have to check timers
      often (every millisecond).
      
      In RLC the time is set when there is some activity (SDU or PDU
      received). In PDCP we cannot wait for this kind of activity. We
      would keep packets longer than necessary, which may disturb
      upper layers (think: TCP). That is why we introduced the thread,
      as a simple mechanism to keep packets no longer than necessary.
      
      The locking done by this thread may create realtime issues.
      
      The whole logic of time keeping can be changed later if it turns
      out that it is not efficient.
      
      The functions dealing with DRB AM have been removed. All the types
      of PDCP entities (DRB AM, DRB UM, SRB) use the same mechanism for
      transmit and receive operations. So the code has been made common
      for all those types.
      
      We don't deal with:
          - entity re-establishment, entity release or entity suspend
          - SDU discard (the timer is present but not used)
          - status reporting
          - data recovery
          - data volume calculation
          - header compression / decompression
      
      There is no plan to implement those features in a near future.
      
      Integrity protection is not done yet, and will be implemented soon.
      9edc8cce
  30. 26 Feb, 2021 1 commit
  31. 25 Feb, 2021 2 commits