OpenAirInterface Core Network: Recent enhancements in OAI-CN,
MME, SPGW, HSSBeken Dincer, BLACKNED
and
Gauthier Lionel, EURECOM
Outline
12/12/2018 - - p 1
EPC fundamentals
OAI Core Network
Recent developments
Testing (testers ng4T and 3 eNB connected to a box –attenuation/mobility scenarios )
Future plans
Wish list
Outline
EPC fundamentals3GPP picture of network function and interfaces.Releases and features
OAI Core Network
Recent developments
Testing (testers ng4T and 3 eNB connected to a box –attenuation/mobility scenarios )
Future plans
Wish list
12/12/2018 - - p 2
Core Network Fundamentals – Purpose of CN
Evolved Packet Core Network Purpose Evolved Packet Core (EPC) is a framework for providing converged
voice and data on a 4G Long-Term Evolution (LTE) network.
12/12/2018 - - p 3
Source http://www.3gpp.org/technologies/keywords-acronyms/100-the-evolved-packet-core
Core Network Fundamentals
High level functions Network Access Control Functions.
– Authentication and authorization, admission control, Policy and charging enforcement
Packet Routing and Transfer Functions: IP header compression function, packet screening.
Mobility Management Functions. – Reachability management for UE in ECM-IDLE state
Security Functions. Radio Resource Management Functions. Network Management Functions (O&M)
– GTP-C signaling based Load and Overload Control, Load balancing between MME, MME control of overload, PDN GW control of overload
12/12/2018 - - p 4
Core Network Fundamentals - Architecture
12/12/2018 - - p 5
Core Network Fundamentals – Access Networks
12/12/2018 - - p 6
WiMax, CDMA2000, WLAN,fixed networks
Core Network Fundamentals – schedule
12/12/2018 - - p 7
All IP network
IMS
eMBMS
Interworking with WiFi
ETWS PWS / CMAS
LTE Introduced
Enhanc. to LTE
LTE Advanced
Enhanc. to LTE Advan.
Further enhanc. to LTE Advanced
Meeting the growing throughput demand
The start of 5G standardiz.
Rel 1003/2011
Rel 1109/2012
Rel 1203/2015
Rel 1303/2016
Rel 1406/2017
Rel 1509/2018
Rel 912/2009
Rel 812/2008
KPAS EU‐ALERT
Enhancements to Wi-Fi interworking
Prose stage 1 Prose stage 2
Wifi integration with LTE
SIPTO
CUPS
Core Network Overload (GTP-c/DNS)
LIPA/SIPTO enhancements
EPC Signaling improv. For race scenarios
User Plane Congestion
Volte
D2D PS Relays, Priority V2X Multi-RAT Interworking
Outline
EPC fundamentals
OAI Core NetworkArchitecture overviewAvailable features
– MME– SPGW– HSS
CodeDeployment
Recent developments Testing Future plans Wish list
12/12/2018 - - p 8
OAI Core Network – Architecture overview
12/12/2018 - - p 9
S11S10
S1-U
S6aS1-MME
HSS
MME
ServingGateway
PDNGateway
SGi
OAI Core Network – MME Available features
12/12/2018 - - p 10
# interfaces Status Comments Protocols
1 S1-MME V Still rel 10 should be upgraded to rel 15 soon. S1AP/SCTP
2 S11 V GTPv2-C/UDP
3 S3 X To interface SGSN, not planned. GTPv2-C/UDP
4 S6a V Still rel 14 should be upgraded to rel 15. freeDiameter/TCP-SCTP
5 S10 V GTPv2-C/UDP
OAI Core Network – MME conformance functions 1/4 (3GPP TS 23.401 V15.5.0 §4.4.2)
12/12/2018 - - p 11
# Classification Status Comment
1 NAS signalling V2 NAS signalling security V3 Inter CN node signalling for mobility between 3GPP
access networks (terminating S3)X Intra LTE HO only
4 UE Reachability in ECM-IDLE state (including control, execution of paging retransmission and optionally Paging Policy Differentiation)
V We are working on this
5 Tracking Area list management V
OAI Core Network – MME conformance functions 2/4 (3GPP TS 23.401 V15.5.0 §4.4.2)
# Classification Status Comment
6 Mapping from UE location (e.g. TAI) to time zone, and signalling a UE time zone change associated with mobility
X
7 PDN GW and Serving GW selection V spgw selection & neighboring MME selection via WRR
8 MME selection for handovers with MME change V S1 (inter (S10) and intra MME S1AP handover), X2 HO supported
9 SGSN selection for handovers to 2G or 3G 3GPP access networks
X
10 Roaming (S6a towards home HSS) X11 Authentication V Also NAS messages inside the S10 at
mobility
12 Authorization V HSS (UE-AMBR + defaults),PCRF (APN/Bearer Level QoS)
12/12/2018 - - p 12
OAI Core Network – MME conformance functions 3/4 (3GPP TS 23.401 V15.5.0 §4.4.2)
# Classification Status Comment
13 Bearer management functions including dedicated bearer establishment
V Dedicated bearers are supported
14 Lawful Interception of signalling traffic X
15 Warning message transfer function (including selection of appropriate eNodeB)
X
16 UE Reachability procedures V
17 Support Relaying function (RN Attach/Detach) X
12/12/2018 - - p 13
OAI Core Network – MME conformance functions 4/4 (3GPP TS 23.401 V15.5.0 §4.4.2)
# Classification Status Comment
18 Change of UE presence in Presence Reporting Area reporting upon PCC request
in the case of Change of UE presence in Presence Reporting Area reporting, management of Core Networkpre-configured Presence Reporting Areas.
X
19 For the Control Plane CIoT EPS Optimisationa) transport of user data (IP and Non-IP);b) local Mobility Anchor point;c) header compression (for IP user data);d) ciphering and integrity protection of user data;e) Lawful Interception of user traffic not transported via the Serving GW (e.g. traffic using T6a).
X Future : NB-IoT, SMS
12/12/2018 - - p 14
OAI Core Network – SGW conformance Interfaces
12/12/2018 - - p 15
# Interface Status Comment Protocol
1 S5/S8 X SGW and PGW combined GTP-C/U
2 S1-U V GTP-U/UDP
3 S11 V S11-C only actually GTP-C/UDP
4 S4 X GTP-C/UDP
5 S12 X GTP-U/UDP
OAI Core Network – SGW conformance functions 1/2 (3GPP TS 23.401 V15.5.0 §4.4.3.2)
12/12/2018 - - p 16
# Classification Status Comments
1 the local Mobility Anchor point for inter-eNodeB handover (except when user data is transported using the Control Plane CIoT EPS Optimisation)
X Very soon, X2HO will be supported.
2 sending of one or more "end marker" to the source eNodeB, source SGSN or source RNC immediately after the Serving GW switches the path during inter-eNodeB and inter-RAT handover, especially to assist the reordering function in eNodeB
X Could be if requested by RAN team.
3 Mobility anchoring for inter-3GPP mobility (terminating S4 and relaying the traffic between 2G/3G system and PDN GW)
X No support of 2G and 3G systems.
4 ECM-IDLE mode downlink packet buffering and initiation of network triggered service request procedure and optionally Paging Policy Differentiation
X buffering is not supported for paging in idle mode.
5 Lawful Interception X
OAI Core Network – SGW conformance functions 2/2 (3GPP TS 23.401 V15.5.0 §4.4.3.2)
12/12/2018 - - p 17
# Classification Status Comments
6 Packet routing and forwarding V
7 Transport level packet marking in the uplink and the downlink, e.g. setting the DiffServ Code Point, based on the QCI, and optionally the ARP priority level, of the associated EPS bearer
X could be supported quickly
8 Accounting for inter-operator charging. For GTP-based S5/S8, the Serving GW generates accounting data per UE and bearer
X
9 Interfacing OFCS according to charging principles and through reference points specified in TS 32.240
X
10 Forwarding of "end marker" to the source eNodeB, source SGSN or source RNC when the "end marker" is received from PDN GW and the Serving GW has downlink user plane established. Upon reception of "end marker", the Serving GW shall not send Downlink Data Notification.
X
OAI Core Network – PGW conformance interfaces
12/12/2018 - - p 18
# Interface Status Comment
1 GTP-based S5/S8 X S-GW and P-GW combined.
2 Gx X Policy.
3 Gy interface X Charging.
4 SGi V
OAI Core Network – PGW conformance functions 1/4 (3GPP TS 23.401 V15.5.0 §4.4.3.3)
12/12/2018 - - p 19
# Classification Status
1 Per-user based packet filtering (by e.g. deep packet inspection) V
2 Lawful Interception X3 UE IP address allocation V Pools of IP addresses
4 Transport level packet marking in the uplink and downlink, e.g. setting the DiffServ Code Point, based on the QCI, and optionally the ARP priority level, of the associated EPS bearer
X Could be done
5 Accounting for inter-operator charging: for home routed roaming, the P-GW shall collect and report the uplink and downlink data volume (per EPS bearer) as received from and sent to the serving node
X
OAI Core Network – PGW conformance functions 2/4 (3GPP TS 23.401 V15.5.0 §4.4.3.3)
12/12/2018 - - p 20
# Classification Status
6 UL and DL service level charging as defined in TS 23.203 (e.g. based on SDFs defined by the PCRF, or based on deep packet inspection defined by local policy)
X
7 Interfacing OFCS through according to charging principles and through reference points specified in TS 32.240
X
8 UL and DL service level gating control as defined in TS 23.203 X Gating control shall be applied by the PCEF on a per service data flow basis
9 UL and DL service level rate enforcement as defined in TS 23.203 (e.g. by rate policing/shaping per SDF); X
10 UL and DL rate enforcement based on APN-AMBR (e.g. by rate policing/shaping per aggregate of traffic of all SDFs of the same APN that are associated with Non-GBR QCIs);
X
11 DL rate enforcement based on the accumulated MBRs of the aggregate of SDFs with the same GBR QCI (e.g. by rate policing/shaping); X
12 DHCPv4 (server and client) and DHCPv6 (client and server) functions X Contributions welcome for server.
OAI Core Network – PGW conformance functions 3/4 (3GPP TS 23.401 V15.5.0 §4.4.3.3)
12/12/2018 - - p 21
# Classification Status
13 The network does not support PPP bearer type in this version of the specification. Pre-Release 8 PPP functionality of a GGSN may be implemented in the PDN GW
X
14 The PDN GW may support Non-IP data transfer (e.g. with CIoT EPS Optimizations)
X
15 Packet screening X16 sending of one or more "end marker" to the source SGW immediately after
switching the path during SGW change; X
17 PCC related features (e.g. involving PCRF and OCS) as described in TS 23.203
X
OAI Core Network – PGW conformance functions 4/4 (3GPP TS 23.401 V15.5.0 §4.4.3.3)
12/12/2018 - - p 22
# Classification Status
Additionally the PDN GW includes the following functions for the GTP-based S5/S8:
18 UL and DL bearer binding as defined in TS 23.203 X19 UL bearer binding verification as defined in TS 23.203 X20 Functionality as defined in RFC 4861 X21 Accounting per UE and bearer X
OAI Core Network – Source code
OAI Core network source code Download is free, no registration required.
– GitHub main page https://github.com/OPENAIRINTERFACE/openair-cn
– Git : https://github.com/OPENAIRINTERFACE/openair-cn.git Is open source
– all binaries can be generated from what is in the git repository, and on internet, for 3rd party software.
– If there is generated source code in the repository, you will find the code generator in it.
Contribution is opened to any people who signs the license agreement.
12/12/2018 - - p 23
OAI Core Network – Source code
License is Apache v2 (differ from RAN) Compatibility chart
12/12/2018 - - p 24
Source: https://en.wikipedia.org/wiki/License_compatibility
OAI Core Network – Source code
License Apache v2
12/12/2018 - - p 25
Source: https://tldrlegal.com/license/apache-license-2.0-(apache-2.0)
OAI Core Network – Deployment
Target OS Linux, interest is no proprietary stacks, open-source. The targets are Ubuntu 16.04 (Xenial), 18.04 (Bionic). May be plans for Fedora in 2019.
Hardware requirements CPU:
– Target is X86-64 (Intel, AMD).– No plans for ARM, we cannot guarantee the endianness-proof.
RAM – Some work is needed there, 4GB seems enough for hundreds of UEs.
Network interfaces– Better to have 3 network interfaces on the host were software switch of SPGW is deployed.
Linux Kernel Any kernel that comes along the OS for the MME, HSS. Let’s say above version 4.13 is fine. Kernel 4.9.x for the SPGW (Open vSwitch patch constraint).
Practically You can deploy any Network Function on a PC or server or VM.
12/12/2018 - - p 26
Outline
EPC fundamentals OAI Core Network
Recent developmentsMMESPGWHSS
Testing Future plans Wish list
12/12/2018 - - p 27
Recent developments – MME (Blackned)
Actualizing the code: Merging different branches for most actual version (develop
branch). Thereby rework on the whole code, reviewing the layers, contexts
and procedures.– Clear separation between EMM and rest of the layers.
Stabilisation Burst attaches with NG4T, Out of coverage scenarios with real
eNBs.
12/12/2018 - - p 28
Recent developments – MME (Blackned)
Inter-MME S1 Handover & S1-TAU: Fallback methods and validations: VERY fault tolerant.
– Rejects, Missing Messages (TAC after HO, HO-Notify)– Failed Authorizations → Fallback to local security.– Return to local cell during handover.– Burst tests with NG4T.
Multi-APN is supported, Multi-Bearer in works.
12/12/2018 - - p 29
MME1HSS1SAE1
MME2HSS2SAE2
S1
S1
X2
Recent developments – MME (Blackned)
Intra-MME S1 Handover & S1-TAU & X2: Up to 50 eNBs on a single node, same or different TAC. X2 : No SP-GW relocation considered.
12/12/2018 - - p 30
EPC1
S1
X2
Recent developments – MME (Blackned)
12/12/2018 - - p 31
Recent developments – MME (Blackned)
12/12/2018 - - p 32
Dynamic QoS: Multiple Dedicated Bearer Establishment, Modification and
Removal. Default Bearer QoS update based on PCRF authorized values. All TFT operations supported.
– Fault Detection: Verifying Packet Filters and Precedences.– Update of TFT & filter rules, precedence, QoS, IP-Filter
supported. Bearer QoS Update supported. Transaction based: Update of contexts only if success in access
network. Congestion support.
– Implicit Indicators : Handover/Service Request failures.– Explicit Indicator: Bearer Resource Command, Delete Bearer
Command.
Recent developments – MME (Blackned)
12/12/2018 - - p 33
Further Functionalities Multi-APN Paging Restoration Procedures
EMM/ESM separation (in works) Independent processing to reduce errors, part of separation of EMM
from the rest (CN functions). No ESM context, only transactions (multiple simultanous).
Recent developments - SPGW
Facebook contributions: GTP-U patch on Open vSwitch contributed by Facebook for
handling GTPU encapsulation/decapsulation. Paging mechanism in OVS (table rules). There is an OpenFlow interface for Control/User Plane separation,
not 3GPP compliant, but a starting point (see next slides).
PGW NAT No more supported internally in the SPGW, you have to do your
own NAT on IP path behind SGi.
12/12/2018 - - p 34
Recent developments - HSS
A new HSS was contributed by Sprint. Rel14 compliant based on previous OAI HSS. Implements 3GPP interfaces:
– S6a: between HSS and MME– S6d: between HSS and SGSN, unused. – S6t: between the HSS and the Service Capability Exposure
Function (SCEF), unused actually.– S6c: interface between the HSS and the central SMS functions
(SMS-GMSC, SMS Router), unused actually. Implement Following messages: Contributed fork of freeDiameter allowing duplicate AVPs among
several dictionaries. Persistence of data done by Cassandra. Written in C++.
12/12/2018 - - p 35
Recent developments - HSS
Contributed HSS comes with modules. HSSGTW: Home Subscriber Server Provisioning Gateway, provides
a REST-ful interface for provisioning UE’s in the HSS database. Will be integrated soon.
CDF: Charging Data Functions, stub, not planned to be integrated. CTF: Charging Trigger Function, not planned to be integrated.
12/12/2018 - - p 36
Outline
EPC fundamentals
OAI Core Network
Recent developments
Testing (testers ng4T and 3 eNB connected to a box –attenuation/mobility scenarios ) NG4T Blackned Testing Environment
Future plans
Wish list
12/12/2018 - - p 37
Testing – MME
12/12/2018 - - p 38
Testing – MME
12/12/2018 - - p 39
Outline
EPC fundamentals
OAI Core Network
Recent developments
Testing mobility scenarios
Future plans MME Rel15 New SPGW
Wish list
12/12/2018 - - p 40
MME Future Plans
Multi Bearer S10 Handover For sake of completion (mesh-PCRF).
SMS/NB-IoT Functionalities will be added early next year.
Multicast M3 Interface Sm Interface MBMS Gateway (dummy).
12/12/2018 - - p 41
MME Future Plans
Rel15 S1AP will be upgraded to Rel15 (asn1c modification contributed by
Chiu Bi-Ruei https://github.com/brchiu)– Already started and visible on branch “prose”, except for HO
information elements.
12/12/2018 - - p 42
New SPGW - rewrite
Actual SPGW Written in C. GTPV2-C stack with clear design but with flaws in its implementation, not well
integrated (everything is uintptr*). SPGW split not envisioned at the beginning, missing procedures in regards of
recent MME developments, etc.
Recent interests for SPGW Need for supporting ProSe in Eurecom contracted project, partners expressing
the need for S/P-GW split, enabling the integration of a PCEF in the PGW. Internal request from Eurecom SDN researchers.
– To clearly separate Control and User Plane (CUPS). Actually done by Open-Flow, but not 3GPP compliant.
Recent Contributions From FB concerning the integration of a software switch. From Sprint concerning a PCEF, skeletons of TDF, tiny PCRF (still not
integrated). All recent contributions are provided in C++ (-std11).
12/12/2018 - - p 43
New SPGW - rewrite
Lead to the decision Rewrite SPGW
– In C++– C++ have pros and cons, but much more pros over C for writing
high level applications in regard of C IMHO (OO, memory management facilities, STL, Collections, etc).
– Python? And what about JAVA ? OO but interpreted, with changes this year in JAVA licensing conditions. (https://www.itassetmanagement.net/2018/05/01/oracle-to-charge-for-java-from-jan-2019/)
– Erlang would be a better competitor than all previous cited languages, but what about contributors (?)
Already started InterTask middleware (asynchronous message and timer facilities),
GTPV2-C stack and SPGW in C++ (OVS application controller was already contributed by FB in C++11).
Planned with same features as old SPGW end of January or before. More to come.
12/12/2018 - - p 44
New SPGW – Planned features
Multi-PDN PGW
– Will be able to manage several APNs of any type (IPv4, IPv6, IPv4andv6).
– Will manage several pools of IP addresses (IPv4, IPv6).
Dedicated bearers
ProSe SPGW will benefit from the ProSe work done inside a collaborative
project at Eurecom.
Rel 15 Is the targeted 3GPP compliance.
12/12/2018 - - p 45
New SPGW – Planned features
SPGW split enabled Will not be finalized, but the new code will allow with some “not so big” extra-work to
split the SPGW if needed. Will have SGW_S5S8 and PGW_S5S8 tasks implemented exchanging S5/GTPV2-C
asynchronous messages over ITTI instead of UDP. Would allow to have a 3GPP compliant 5G/EPC interworking architecture (next
slide).
12/12/2018 - - p 46
New SPGW – Planned features
12/12/2018 - - p 47
Outline
EPC fundamentals
OAI Core Network
Recent developments
Testing mobility scenarios
Future plans
Wish list CUPS, PFCP.
12/12/2018 - - p 48
Whish List CUPS
Packet Forwarding Control Protocol (PFCP) defined in TS 29.244 Interface between the Control Plane and User Plane of EPC Nodes.
In case of combined SPGW, Sxa and Sxb are also combined.
12/12/2018 - - p 49
Source: 3GPP TS 23.214 version 15.4.0 Release 15
Whish List
CUPS Important note: PFCP is also the protocol between SMF and UPF (5G
Core), interface N4.– A factorization of work is possible there.
PFCP is very similar to GTP-C, is over UDP port 8805, same retransmission strategy as GTP-C, identifier for transactions.
Only found 1 implementation of PFCP in erlang with a fork of the Cisco open source software switch.
12/12/2018 - - p 50
OAI Core Network – End
QUESTIONS ?
12/12/2018 - - p 51
Top Related