I’m working on my master thesis at an egineering university and I’m planning to create a new seperate node just for performance measuring in 5G core. I’m thinking in creating some counters which can measure TPS (transacions per second) for every node which the msg goes though. And if some load is considered too high then this node would be able to send alarm notifications to the overloaded node to do something. Checking latency caused by the core nw nodes could be also a cool function.
Do you see it possible to create a node like this on free5gc?
I mean TPS on every implemented interface. I would like to measure how many request and answer messages are processed by each existing node. And if there are some unsuccesful ones for any reason, like node is not up, or can’t process the message which he received, then we could see this here. I could create these reasons manually, like sending signal kill to a node.
I would like to create a lof of UEs, to simulate some kind of real environment where not only one UE exist.
And I’m not sure if voice over 5G is already implemented, but measuring the success rate of the calls would also be cool.
Service meshes can be used for different purposes, among them we find observability ([istio observability] and linkerd observability). In this case they can help generating metrics (what you call TPS) to be collected by monitoring tools.
Prometheus for the monitoring (will scrape metrics provided by the application or by service meshes for example and then provide these metrics to the admin or to another tiers for automating operations like scaling …etc.).
I encourage you to join the discussion to express your ideas on the subject.
FYI, I have been setting up Free5GC with Istio, Prometheus en ELK stack successfully, so I would be more the interested and willing to help out, also on the Helm aspects of it.