-
Notifications
You must be signed in to change notification settings - Fork 0
prabinakpattnaik/n4-go
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
# Introduction N4-GO is Go implementation of N4 interface, used between control plane and data plane in the 5GCore architecture. The protocol is defined in 3GPP TS 29.244 v15.5.8. N4 protocol has defined many Information Elements (IE) which will be included in protocol messages (i.e. Packet Forwarding Control Protocol (PFCP)) # Done ## Information Element - Cause - Source Interface - F-TEID - Network Instance - SDF Filter - Gate Status - MBR - GBR - Precedence - Volume Threshold - Time Threshold - Monitoring Time - Inactivity Detection Time - Reporting Triggers - Report Type - Offending IE - Destination Interface - Apply Action - Sequence Number - Packet Detection Rule ID (PDR ID) - F-SEID - Node ID - PFD Contents - Measurement Method - Usage Report Trigger - Measurement Period - Volume Measurement - Duration Measurement - Time of First Packet - Time of Last Packet - Dropped DL Traffic Threshold - Volume Quota - Time Quota - Start Time - End Time - URR ID - Outer Header Creation - BAR ID - Usage Information - Flow Information - UE IP Address - Outer Header Removal - Recovery Time Stamp - Measurement Information - Node Report Type - UR-SEQN - FAR ID - QER ID - OCI Flags - PFCP Association Release Request - PDN Type - User Plane IP Resource Information - User Plane Inactivity Timer - QFI ## PFCP Messages PFCP message header is created and tested. - Heartbeat-Request - Heartbeat-Response - Association-Setup-Request - Association-Setup-Response - Session-Establishment-Request - Session-Establishment-Response - Session-Modification-Request - Session-Modification-Response - Session-Deletion-Request - Session-Deleteion-Respone - Session-Report-Request - Session-Report-Response ## Call Flow SMF entity bahaves as client entity and UPF behaves as server. The client should make an association setup request and get association setup response(see section 6.2.6.2). In the association setup response, UP can provide IP resources. Then, client sends session estblishment request and gets a response. By default, TEID allocation/release is mandatory for the control plane. Therefore, FTUP bit in UP Function Features should not be set. In this case, TEID allocation/release is not managed by the data plane. Session establishment includes uplink and downlink traffic in IPv4. It supports Packet Detection Rules(PDR) and Forwarding Action Rules(FAR). # TODO ## Information Element All necesarry IEs listed in ie.go file and needed to be implemented by order. ## PFCP Messages - Association-Update-Request - Association-Update-Response - Association-Release-Request - Association-Release-Response - PFD-Management-Request - PFD-Management-Response - Node-Report-Request - Node-Report-Response - Length of PFCP messages are not calculated by Len(). In stead, it returns sum of length value and header size. Better, it should be calculated itself. ## Missing Features N4 supports many features. Initial PoC considers only PFCP association setup and session establishment.The following features are considered for later release. - support of load/overload control - Ethernet PDU session - handling of ARP and IPv6 Neighbour Solicitation Response # Compile make install [Compile and build the go packages] make [Compile, run the UT, build the go packages] make test [Run the unit test] make cover [Show the coverity report of UT]
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published