Trace analyzer allows an operator to trace subscriber activity at various points in the network and at various levels of detail in 5G network.
This provides a 3GPP standards-based subscriber session-level trace function for call debugging and testing new functions and access terminals in 5G environment.
Elevator Pitch
The idea is to automatically convert 5G traces (Wireshark, tcpdump) into something readable (SVG sequence diagrams) given that we needed to account for:
• troubleshoot 5G issues in real network
• trace the control plane messaging for a subscriber, for a specific protocol or interface
• trace captures to started and stopped from the NMS, trace captures to be filtered by subscriber/protocol/interface control plane messaging
• Mix of HTTP/2, 5G-NAS and PFCP protocols for 5G trace visualizer
• Sequence details are quite tiring to check in the Wireshark GUI
• Specific versions of Wireshark may be needed to decode specific versions of (e.g.) 5G-NAS
• Mapping of IPs to container names in the deployment
• Mapping of IPs to VM names in the deployment
• Different coloring of the different 5G protocols (NAS, HTTP/2, PFCP, ...), as well as differentiating between requests and responses where possible
Project Details
The or8cr service ctraced can be leveraged to support for display of control flow messages in the form of SVG sequence diagrams in or8cr dashboard.
ctraced supports tracing at subscriber and gateway levels with multiple filters such as interface and protocol levels, can be extended to support all NAS messages and internal messages between Magma core NFs.
Below is the design approach can be adopted to implement the same.
• Imports a Packet Description Markup Language (PDML) file
• Parse http_proto_protocol
• Calculate the length of a packet
• Call wireshark
• Convert a packet to a string
• Generates scatter plots for the given packets
• Output a PackL file
• Order participants
• Convert xml root to JSON
• Parse an HTTP response element
Delivery Approach
Feature will be delivered in 2 milestones. Each milestone will have the following 5 process gates
Design
Development & Unit Testing
code review
Integration testing
resolve integration issues and regression issues
Before finishing the 2nd milestone, the feature shall pass the following process gates
System test
User Acceptance test
Milestone-1
Decoding of specific version of 5G-NAS.
Milestone-2
Implementing and integrating plotting Scripts to plot different metrics and data mainly using python packages.
Test Plan
Following is the set of tests or scenarios to verify dual stack Support.
Integration Testing using UERANSIM or equivalent simulator
Testing of all 5G-NAS messages and its details using the trace analyzer
Verifying all the 5G-NAS sequence flows between different magma NEs
Feature Roadmap
Feature will be delivered in 2 Milestones.
MS | FUNCTIONAL AREA | DELIVERABLES |
-- | -- | -- |
M1.0 | 5G-NAS messages | Decoding of specific version of 5G-NAS |
M2.0 | Plotting Scripts. SIT & UAT | Different metrics. Feature is passing all the tests in Real equipment environment. Feature user / customer runs the conformance tests and accepts the feature. |
Overview
Trace analyzer allows an operator to trace subscriber activity at various points in the network and at various levels of detail in 5G network. This provides a 3GPP standards-based subscriber session-level trace function for call debugging and testing new functions and access terminals in 5G environment.
Elevator Pitch
The idea is to automatically convert 5G traces (Wireshark, tcpdump) into something readable (SVG sequence diagrams) given that we needed to account for: • troubleshoot 5G issues in real network • trace the control plane messaging for a subscriber, for a specific protocol or interface • trace captures to started and stopped from the NMS, trace captures to be filtered by subscriber/protocol/interface control plane messaging • Mix of HTTP/2, 5G-NAS and PFCP protocols for 5G trace visualizer • Sequence details are quite tiring to check in the Wireshark GUI • Specific versions of Wireshark may be needed to decode specific versions of (e.g.) 5G-NAS • Mapping of IPs to container names in the deployment • Mapping of IPs to VM names in the deployment • Different coloring of the different 5G protocols (NAS, HTTP/2, PFCP, ...), as well as differentiating between requests and responses where possible
Project Details
The or8cr service ctraced can be leveraged to support for display of control flow messages in the form of SVG sequence diagrams in or8cr dashboard. ctraced supports tracing at subscriber and gateway levels with multiple filters such as interface and protocol levels, can be extended to support all NAS messages and internal messages between Magma core NFs.
Below is the design approach can be adopted to implement the same. • Imports a Packet Description Markup Language (PDML) file • Parse http_proto_protocol • Calculate the length of a packet • Call wireshark • Convert a packet to a string • Generates scatter plots for the given packets • Output a PackL file • Order participants • Convert xml root to JSON • Parse an HTTP response element
Delivery Approach
Feature will be delivered in 2 milestones. Each milestone will have the following 5 process gates
Milestone-1
Decoding of specific version of 5G-NAS.
Milestone-2
Implementing and integrating plotting Scripts to plot different metrics and data mainly using python packages.
Test Plan
Following is the set of tests or scenarios to verify dual stack Support.
Integration Testing using UERANSIM or equivalent simulator
Feature Roadmap
Feature will be delivered in 2 Milestones.
MS | FUNCTIONAL AREA | DELIVERABLES | -- | -- | -- | M1.0 | 5G-NAS messages | Decoding of specific version of 5G-NAS | M2.0 | Plotting Scripts. SIT & UAT | Different metrics. Feature is passing all the tests in Real equipment environment. Feature user / customer runs the conformance tests and accepts the feature. |References
1) https://dl.cdn-anritsu.com/en-us/test-measurement/files/Brochures-Datasheets-Catalogs/datasheet/MX848086A.pdf 2) https://github.com/telekom/5g-trace-visualizer#summary 3) https://github.com/SadeghKrmi/5G-Trace-Analyzer