You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/blog/open-sourcing-packetrusher-a-5g-core-performance-tester.md
+29-17Lines changed: 29 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,28 +15,40 @@ tags:
15
15
In the fast-evolving landscape of 5G technology, the demand for robust and efficient testing tools has never been higher. Enter PacketRusher, a cutting-edge 5G Core Network performance testing tool. As the lead developer behind this groundbreaking project, I am thrilled to share the power and potential PacketRusher holds in revolutionizing the way we test and optimize 5G networks.
16
16
17
17
## PacketRusher
18
-
PacketRusher is a tool dedicated to the performance testing and automatic validation of 5G Core Networks using simulated UEs (user equipments) and gNodeBs (5G base station). It enables users to tests 5G Core Networks with up to 100k simulated UEs simultaneously all from a simple virtual machine, without the needs for expensive commercial tools, or 100k phones on a table ;-)
19
-
20
-
## Features
21
-
* Simulate multiple UEs and gNodeB from a single tool
22
-
* We tested up to 10k UEs!
23
-
* Supports both N2 (NGAP) and N1 (NAS) interfaces for stress testing
24
-
* --pcap parameter to capture pcap of N1/N2 traffic
* Supports Create/Delete PDU Sessions, up to 15 PDU Sessions per UE
28
-
* Supports Roaming
29
-
* Implements high-performant N3 (GTP-U) interface
30
-
* Generic tunnel supporting all kind of traffic (TCP, UDP, Video…)
31
-
* We tested iperf3 traffic, and Youtube traffic through PacketRusher
32
-
* We roughly reach 5 GB/s per UE, which is more than what a real UE can achieve.
33
-
* Integrated all-in-one mocked 5GC/AMF for PacketRusher's integration testing
34
18
19
+
PacketRusher is a tool dedicated to the performance testing and automatic validation of 5G Core Networks. It tests a 5G Core Network via its external interfaces, as defined by the 3GPP : N1, N2 and N3 interfaces. The tool can emulate various types of User Equipment (eg. 5G phones or 5G-enabled IoT devices) and gNodeBs (eg. antennas in Radio Access Network), and it can validate and load-tests the 5G core network’s Control Plane functions using a set of pre-defined procedures on top of both New Generation Application Protocol (NGAP) and Non-access Stratum (NAS-5GS) 5G protocols. It enables users to tests 5G Core Networks with up to 100k simulated UEs simultaneously all from a simple Linux virtual machine, without the needs for expensive commercial tools, or 100k phones on a table ;-)
20
+
21
+
## Architecture
22
+
Before we understand how PacketRusher works, we need to understand the components of a minimal 5G network:
35
23
36
24

37
25
26
+
To summarize, there are essentially three main components:
27
+
- User Equipment, which is any 5G device used directly by a user to communicate. For example, a smartphone or an IoT device.
28
+
- The gNodeB, which is the radio used for wireless communication between the User Equipment and the 5G network core.
29
+
- And finally, the 5G network core itself, which manages all mobile network functionalities. This is the component that will manage phone authentication in the network, quality of service, routing to the data network, and so on...
30
+
31
+
38
32

39
33
34
+
PacketRusher's behavior is quite simple; it essentially simulates two of the three major components of a 5G network:
35
+
- the User Equipments, i.e. the phones
36
+
- and the gNodeB, i.e. the antennas.
37
+
- At the same time, it connects to the 5G Core via its external interfaces, as if it were a black box.
38
+
PacketRusher simulates both components en masse, which means it can simulate several user devices and gNodeBs at the same time.
39
+
40
+
For testing, PacketRusher implements main control plane procedures:
* Supports Create/Delete PDU Sessions, up to 15 PDU Sessions per UE
43
+
* Supports Xn handover: UE handover between simulated gNodeB (PathSwitchRequest)
44
+
* Supports 5G Roaming
45
+
46
+
For throughput testing, PacketRusher implements high-performant N3 (GTP-U) interface:
47
+
* Generic tunnel supporting all kind of traffic (TCP, UDP, Video…)
48
+
* We tested iperf3 traffic, and Youtube traffic through PacketRusher.
49
+
* We roughly reach 5 GB/s per UE, which is more than what a real UE can achieve.
50
+
51
+
40
52
## Community contributions
41
53
42
54
Excitingly, PacketRusher has caught the attention of a leading industry player. Orange, a key player in the telecommunications sector, has recognized the potential of PacketRusher and is actively integrating it into their open-source GitHub project, [toward-5gs](https://github.com/Orange-OpenSource/towards5gs-helm).\
@@ -49,7 +61,7 @@ We believe that the future of 5G is a collaborative one, and we invite you to be
49
61
To get started, visit our [GitHub repository](https://github.com/HewlettPackard/PacketRusher) to access the source code, documentation, and engage with the community. Your feedback, suggestions, and contributions are invaluable in shaping the future of 5G technology.\
50
62
At HPE, we are committed to pushing the boundaries of innovation, and with the release of PacketRusher as open-source, we are laying the foundation for a new era of connectivity.
51
63
52
-
Let's build the future of 5G together!
64
+
PacketRusher is not just a testing tool; it's a community-driven effort to push the boundaries of 5G technology. Let's build the future of 5G together!
0 commit comments