SDN Packet Trajectory Tracing via Probe Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current debugging tools for Software-Defined Networking (SDN) in datacenter environments face challenges in efficiently tracing packet trajectories due to high overhead and resource consumption, particularly in large-scale networks with many redundant paths, and are unable to effectively detect data plane issues such as bugs in switch firmware or limited memory.

Innovation Solution

The PathSeer method generates a tracing table with rules in SDN switches based on network topology, using a probe packet with encoded ingress ports in the MAC address to reconstruct the packet trajectory, reducing the need for flow rules and packet header space, and allowing efficient tracing without interfering with existing network functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional debugging tools (NetFlow, sFlow, SNMP, traceroute) are used in SDN environments, then network traffic can be monitored, but they cannot effectively detect data plane issues such as bugs in switch firmware or limited memory

Engineering Contradiction:
Improvefault detection capabilityVSAvoiddata plane debugging capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces probe packets as an intermediary mechanism to trace packet trajectories through the data plane. These probe packets carry encoding information that allows the system to track the actual path packets take through switches, enabling detection of data plane issues that traditional configuration-based tools cannot detect.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces configuration-based debugging mechanisms with actual packet trajectory tracing. Instead of analyzing static flow rules and network configurations, the system dynamically traces packet paths through the data plane, substituting mechanical analysis of configurations with observational tracking of actual packet behavior.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If NetSight is used to trace packet trajectories by gathering packet histories and emitting postcards from every switch, then ground-truth forwarding behavior can be obtained, but significant logging overhead is incurred

Engineering Contradiction:
Improvetrajectory tracing accuracyVSAvoidlogging overhead
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent extracts only the essential information needed for trajectory tracing by encoding ingress port numbers directly into packet header fields (such as VLAN tags or MPLS labels). This extraction approach captures the necessary trajectory data without the overhead of comprehensive logging from every switch, removing unnecessary information while retaining traceability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter representation by encoding trajectory information in compact forms within packet headers. Instead of generating separate log entries for each switch, the system modifies packet parameters (header fields) to carry trajectory data, reducing the overall logging overhead while maintaining measurement precision.

Inventive Principle:
Principle #35Parameter changes

3Loss of energy

If PathletTracer is used with Precise Calling Context Encoding to minimize encoded bits, then data collection overhead is reduced, but a large number of flow rules are required especially in datacenter networks

Engineering Contradiction:
Improvedata collection overheadVSAvoidnumber of flow rules
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent makes the tracing mechanism universal by using standard packet header fields (VLAN tags, MPLS labels) that can carry trajectory information across different network devices and protocols. This multi-functional approach allows the same encoding mechanism to work throughout the network without requiring device-specific flow rules, reducing overall system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent moves the tracing information from a separate control plane dimension to the data plane dimension by embedding trajectory data directly in packet headers. This dimensional shift allows trajectory information to be carried along with data packets themselves, eliminating the need for separate flow rules and control messages to track packet paths.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Device complexity

If CherryPick is used to minimize the number of flow rules by exploiting fat-tree topology structure, then tracing overhead is reduced, but high header space overhead is incurred due to inserting multiple VLAN tags

Engineering Contradiction:
Improvenumber of flow rulesVSAvoidpacket header space
Core Design Contradiction:
Device complexityVSVolume of moving object

Solution Approach 1:

The patent discards the approach of inserting multiple VLAN tags for trajectory encoding and recovers header space by using existing packet header fields more efficiently. Instead of adding redundant tagging layers, the system utilizes available header space in existing fields to encode trajectory information, recovering packet header efficiency while maintaining tracing capability.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10200279B1Tracer of traffic trajectories in data center networks
Publication Date: 2019.02.05 UNIV OF TABUK
  • US10200279B1 patent drawing
  • US10200279B1 patent drawing
  • US10200279B1 patent drawing

AI summary

A SDN controller is configured to generate and install a tracing table with tracing rules into switches of a SDN based on a switch level in a network topology of the SDN; identify a source switch and a destination switch for tracing a trajectory path of a transit packet; generate a probe packet; set all bytes in a source address to zero and initialize a DSCP field to 16; inject the probe packet into the source switch; encode selective ingress ports of intermediate switches within the trajectory path into the source address of the probe packet; receive the probe packet when the probe packet reaches the destination switch; and reconstruct the trajectory path of the transit packet, via encoded information in the source address of the probe packet, wherein the reconstructed trajectory path is constructed via the encoded selective ingress ports of the one or more intermediate switches.