SDN Offline Routing Path Query via Control Message Replay
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Debugging operational software defined networks (SDNs) is challenging due to their size, distributed state, and complexity, with existing debugging solutions being limited and inefficient in determining precise routing paths of data packets.
Innovation Solution
A method and system that intercept control messages in SDNs, record and replay them to emulate the network state at a specific time, allowing for offline queries of precise routing paths without instrumentation or tracing, using a proxy to store control messages and network latency measurements, and a network emulator to reconstruct possible routing paths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If online packet or flowtable dumping is used in SDN switches to determine routing paths, then routing path information can be obtained, but the debugging complexity and time consumption increase significantly
Solution Approach 1:
The system performs preliminary actions by intercepting and storing control messages during normal SDN operation. When a debugging query is needed, the pre-captured control messages are replayed in an emulated environment to reconstruct historical routing paths, eliminating the need for time-consuming online packet dumping and enabling rapid offline analysis of packet routing behavior
Solution Approach 2:
The invention creates a copy of the SDN control plane by intercepting control messages and replaying them in an emulated switch environment. This virtual copy allows debugging operations to be performed on the replicated control state without affecting the live network, enabling efficient routing path reconstruction through message replay rather than online packet capture
2Measurement precision
If SDN debugging is performed online with packet dumping, then routing paths can be determined, but the system complexity and operational difficulty increase
Solution Approach 1:
The system introduces an intermediary component that sits between the SDN controller and switches, intercepting control messages and storing them for later analysis. This intermediary layer simplifies debugging operations by providing a centralized repository of control messages that can be replayed and analyzed offline, eliminating the need for operators to manually configure complex online packet dumping procedures across multiple switches
Solution Approach 2:
The invention creates a virtual copy of the SDN control plane by intercepting control messages and replaying them in an emulated switch environment. This virtual copy allows debugging operations to be performed on the replicated control state without affecting the live network, enabling efficient routing path reconstruction through message replay rather than online packet capture
3Adaptability or versatility
If the SDN controller software complexity increases to handle distributed state, then network control capability improves, but debugging difficulty increases
Solution Approach 1:
The invention extracts the debugging functionality from the complex SDN controller software by implementing an external message interception and replay system. This separation allows the controller to maintain its full control capabilities while the debugging function operates independently through control message capture and emulation, eliminating the need to instrument or trace within the complex controller software itself
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Methods and systems for finding a packet's routing path in a network includes intercepting control messages sent by a controller to one or more switches in a software defined network (SDN). A state of the SDN at a requested time is emulated and one or more possible routing paths through the emulated SDN is identified by replaying the intercepted control messages to one or more emulated switches in the emulated SDN. The one or more possible routing paths correspond to a requested packet injected into the SDN at the requested time.