Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
oai-upf-6g
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenXG
oai-upf-6g
Commits
71c37a2f
Commit
71c37a2f
authored
Sep 26, 2024
by
Franck Messaoudi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update: increase the unmber of UEs to 10.000
parent
e23ae641
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
39 additions
and
39 deletions
+39
-39
src/upf_app/bpf/pfcp/pfcp_pdrs.h
src/upf_app/bpf/pfcp/pfcp_pdrs.h
+1
-1
src/upf_app/bpf/pfcp/pfcp_session.h
src/upf_app/bpf/pfcp/pfcp_session.h
+2
-2
src/upf_app/bpf/rules/far/far_maps.h
src/upf_app/bpf/rules/far/far_maps.h
+11
-11
src/upf_app/bpf/rules/include/interfaces_map.h
src/upf_app/bpf/rules/include/interfaces_map.h
+4
-4
src/upf_app/bpf/rules/include/pfcp_session_lookup_maps.h
src/upf_app/bpf/rules/include/pfcp_session_lookup_maps.h
+2
-2
src/upf_app/bpf/rules/include/pfcp_session_pdr_lookup_maps.h
src/upf_app/bpf/rules/include/pfcp_session_pdr_lookup_maps.h
+15
-15
src/upf_app/bpf/rules/pdr/next_prog_rule_map.h
src/upf_app/bpf/rules/pdr/next_prog_rule_map.h
+2
-2
src/upf_app/bpf/rules/qer/qer_maps.h
src/upf_app/bpf/rules/qer/qer_maps.h
+2
-2
No files found.
src/upf_app/bpf/pfcp/pfcp_pdrs.h
View file @
71c37a2f
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
#include <types.h>
#include <types.h>
#include <pfcp/pfcp_pdr.h>
#include <pfcp/pfcp_pdr.h>
#define PDRS_MAX_SIZE 10
#define PDRS_MAX_SIZE 10
000
typedef
struct
pfcp_pdrs_s
{
typedef
struct
pfcp_pdrs_s
{
u32
pdrs_counter
;
u32
pdrs_counter
;
...
...
src/upf_app/bpf/pfcp/pfcp_session.h
View file @
71c37a2f
...
@@ -5,8 +5,8 @@
...
@@ -5,8 +5,8 @@
#include <pfcp/pfcp_pdr.h>
#include <pfcp/pfcp_pdr.h>
#include <pfcp/pfcp_far.h>
#include <pfcp/pfcp_far.h>
#define SESSION_PDRS_MAX_SIZE
5000 // 1
0
#define SESSION_PDRS_MAX_SIZE
1000
0
#define SESSION_FARS_MAX_SIZE
5000 // 1
0
#define SESSION_FARS_MAX_SIZE
1000
0
typedef
struct
pfcp_session_s
{
typedef
struct
pfcp_session_s
{
seid_t_
seid
;
seid_t_
seid
;
...
...
src/upf_app/bpf/rules/far/far_maps.h
View file @
71c37a2f
...
@@ -7,15 +7,15 @@
...
@@ -7,15 +7,15 @@
#include <types.h>
#include <types.h>
#include "arp_table_maps.h"
#include "arp_table_maps.h"
#define ARP_ENTRIES_MAX_SIZE 1
2
#define ARP_ENTRIES_MAX_SIZE 1
0000
#define FAR_TAILS_MAX
1
#define FAR_TAILS_MAX
20
#define MAX_INTERFACES 10
#define MAX_INTERFACES 10
#define MAX_FAR_PROGRAMS 100
#define MAX_FAR_PROGRAMS 100
00
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
FAR_TAILS_MAX
);
// 1,
__uint
(
max_entries
,
FAR_TAILS_MAX
);
__type
(
key
,
u8
);
__type
(
key
,
u8
);
__type
(
value
,
pfcp_far_t_
);
__type
(
value
,
pfcp_far_t_
);
}
m_far
SEC
(
".maps"
);
}
m_far
SEC
(
".maps"
);
...
@@ -23,23 +23,23 @@ struct {
...
@@ -23,23 +23,23 @@ struct {
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_DEVMAP
);
__uint
(
type
,
BPF_MAP_TYPE_DEVMAP
);
__uint
(
max_entries
,
MAX_INTERFACES
);
// 10,
__uint
(
max_entries
,
MAX_INTERFACES
);
__type
(
key
,
u32
);
// id
__type
(
key
,
u32
);
// id
__type
(
value
,
u32
);
// tx port
__type
(
value
,
u32
);
// tx port
}
m_redirect_interfaces
SEC
(
".maps"
);
}
m_redirect_interfaces
SEC
(
".maps"
);
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
ARP_ENTRIES_MAX_SIZE
);
// 2,
__uint
(
max_entries
,
ARP_ENTRIES_MAX_SIZE
);
__type
(
key
,
u32
);
// IPv4 address
__type
(
key
,
u32
);
// IPv4 address
__type
(
value
,
struct
s_arp_mapping
);
// <IP Address, MAC address>
__type
(
value
,
struct
s_arp_mapping
);
// <IP Address, MAC address>
}
m_arp_table
SEC
(
".maps"
);
}
m_arp_table
SEC
(
".maps"
);
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
MAX_FAR_PROGRAMS
);
// 1,
__uint
(
max_entries
,
MAX_FAR_PROGRAMS
);
__type
(
key
,
u32
);
__type
(
key
,
u32
);
__type
(
value
,
u32
);
__type
(
value
,
u32
);
}
m_enforcing_qos
SEC
(
".maps"
);
}
m_enforcing_qos
SEC
(
".maps"
);
...
...
src/upf_app/bpf/rules/include/interfaces_map.h
View file @
71c37a2f
...
@@ -12,9 +12,9 @@
...
@@ -12,9 +12,9 @@
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_DEVMAP
);
__uint
(
type
,
BPF_MAP_TYPE_DEVMAP
);
__uint
(
max_entries
,
MAX_INTERFACES
);
// 10,
__uint
(
max_entries
,
MAX_INTERFACES
);
__type
(
key
,
u32
);
// id
__type
(
key
,
u32
);
// id
__type
(
value
,
u32
);
// tx port
__type
(
value
,
u32
);
// tx port
}
m_redirect_interfaces
SEC
(
".maps"
);
}
m_redirect_interfaces
SEC
(
".maps"
);
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
...
@@ -22,7 +22,7 @@ struct {
...
@@ -22,7 +22,7 @@ struct {
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
INTERFACE_ENTRIES_MAX
);
__uint
(
max_entries
,
INTERFACE_ENTRIES_MAX
);
__type
(
key
,
e_reference_point
);
__type
(
key
,
e_reference_point
);
__type
(
value
,
struct
s_interface
);
// 6,
__type
(
value
,
struct
s_interface
);
}
m_upf_interfaces
SEC
(
".maps"
);
}
m_upf_interfaces
SEC
(
".maps"
);
#endif // __INTERFACES_MAP_H__
#endif // __INTERFACES_MAP_H__
\ No newline at end of file
src/upf_app/bpf/rules/include/pfcp_session_lookup_maps.h
View file @
71c37a2f
...
@@ -12,7 +12,7 @@
...
@@ -12,7 +12,7 @@
#include "interfaces.h"
#include "interfaces.h"
#include "session_id.h"
#include "session_id.h"
#define MAX_LENGTH
5000 // 1
0
#define MAX_LENGTH
1000
0
#define INTERFACE_ENTRIES_MAX 12
#define INTERFACE_ENTRIES_MAX 12
#define MAX_UEs 100000
#define MAX_UEs 100000
...
@@ -59,7 +59,7 @@ struct {
...
@@ -59,7 +59,7 @@ struct {
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
INTERFACE_ENTRIES_MAX
);
// 6,
__uint
(
max_entries
,
INTERFACE_ENTRIES_MAX
);
__type
(
key
,
e_reference_point
);
__type
(
key
,
e_reference_point
);
__type
(
value
,
struct
s_interface
);
__type
(
value
,
struct
s_interface
);
}
m_upf_interfaces
SEC
(
".maps"
);
}
m_upf_interfaces
SEC
(
".maps"
);
...
...
src/upf_app/bpf/rules/include/pfcp_session_pdr_lookup_maps.h
View file @
71c37a2f
...
@@ -8,9 +8,9 @@
...
@@ -8,9 +8,9 @@
#include <ie/fteid.h>
#include <ie/fteid.h>
#include <ie/fseid.h>
#include <ie/fseid.h>
#define MAX_LENGTH
5000 // 1
0
#define MAX_LENGTH
1000
0
#define PDR_ENTRIES_MAX_SIZE
5000 // 1
0
#define PDR_ENTRIES_MAX_SIZE
1000
0
#define FAR_ENTRIES_MAX_SIZE
5000 // 1
0
#define FAR_ENTRIES_MAX_SIZE
1000
0
#define ARP_ENTRIES_MAX_SIZE 12
#define ARP_ENTRIES_MAX_SIZE 12
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
...
@@ -24,33 +24,33 @@ struct {
...
@@ -24,33 +24,33 @@ struct {
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_DEVMAP
);
__uint
(
type
,
BPF_MAP_TYPE_DEVMAP
);
__uint
(
max_entries
,
MAX_LENGTH
);
// 10,
__uint
(
max_entries
,
MAX_LENGTH
);
__type
(
key
,
u32
);
// id
__type
(
key
,
u32
);
// id
__type
(
value
,
u32
);
// tx port
__type
(
value
,
u32
);
// tx port
}
m_redirect_interfaces
SEC
(
".maps"
);
}
m_redirect_interfaces
SEC
(
".maps"
);
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
PDR_ENTRIES_MAX_SIZE
);
// 10,
__uint
(
max_entries
,
PDR_ENTRIES_MAX_SIZE
);
__type
(
key
,
teid_t_
);
// teid
__type
(
key
,
teid_t_
);
// teid
__type
(
value
,
pfcp_pdr_t_
);
// assuming only one PDR
__type
(
value
,
pfcp_pdr_t_
);
// assuming only one PDR
}
m_teid_pdr
SEC
(
".maps"
);
}
m_teid_pdr
SEC
(
".maps"
);
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
PDR_ENTRIES_MAX_SIZE
);
// 10,
__uint
(
max_entries
,
PDR_ENTRIES_MAX_SIZE
);
__type
(
key
,
u32
);
// UE IP address
__type
(
key
,
u32
);
// UE IP address
__type
(
value
,
pfcp_pdr_t_
);
// assuming only one PDR
__type
(
value
,
pfcp_pdr_t_
);
// assuming only one PDR
}
m_ueip_pdr
SEC
(
".maps"
);
}
m_ueip_pdr
SEC
(
".maps"
);
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
type
,
BPF_MAP_TYPE_HASH
);
__uint
(
max_entries
,
ARP_ENTRIES_MAX_SIZE
);
// 2,
__uint
(
max_entries
,
ARP_ENTRIES_MAX_SIZE
);
__type
(
key
,
u32
);
// IPv4 address
__type
(
key
,
u32
);
// IPv4 address
__type
(
value
,
unsigned
char
[
8
]);
// MAC address
__type
(
value
,
unsigned
char
[
8
]);
// MAC address
}
m_arp_table
SEC
(
".maps"
);
}
m_arp_table
SEC
(
".maps"
);
#endif // __PFCP_SESSION_PDR_LOOKUP_MAPS_H__
#endif // __PFCP_SESSION_PDR_LOOKUP_MAPS_H__
src/upf_app/bpf/rules/pdr/next_prog_rule_map.h
View file @
71c37a2f
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
#include <linux/bpf.h>
#include <linux/bpf.h>
#include <types.h>
#include <types.h>
#define MAX_LENGTH
5000 // 1
0
#define MAX_LENGTH
1000
0
/*
/*
* +------------------------------------------------------+
* +------------------------------------------------------+
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
struct
{
struct
{
__uint
(
type
,
BPF_MAP_TYPE_PROG_ARRAY
);
__uint
(
type
,
BPF_MAP_TYPE_PROG_ARRAY
);
__uint
(
max_entries
,
MAX_LENGTH
);
// 10,
__uint
(
max_entries
,
MAX_LENGTH
);
__type
(
key
,
u32
);
__type
(
key
,
u32
);
__type
(
value
,
s32
);
__type
(
value
,
s32
);
}
m_next_rule_prog
SEC
(
".maps"
);
}
m_next_rule_prog
SEC
(
".maps"
);
...
...
src/upf_app/bpf/rules/qer/qer_maps.h
View file @
71c37a2f
...
@@ -7,9 +7,9 @@
...
@@ -7,9 +7,9 @@
#include "filter_key.h"
#include "filter_key.h"
#include "qos_flow.h"
#include "qos_flow.h"
#define QFI_MAX_ENTRIES
5
000
#define QFI_MAX_ENTRIES
10
000
#define FIVE_QI_MAX_ENTRIES 100
#define FIVE_QI_MAX_ENTRIES 100
#define QOS_FLOWS_MAX_ENTRIES 100
#define QOS_FLOWS_MAX_ENTRIES 100
00
#define MAX_INTERFACES 10
#define MAX_INTERFACES 10
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment