Network Tap Packet Reordering via Directional Queues
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network tapping technologies struggle to accurately order data packets captured from network connections between endpoints, as they receive a unique third-party view that may include subsets or supersets of packets, leading to uncertainties in the order of request data.
Innovation Solution
A system that utilizes hardware processors and software modules to receive data packets from a network tap, separate them into queues based on communication direction, maintain push-sequence values, and adjust packet output to maintain consecutive sequence numbers, generating gap packets when necessary to ensure correct ordering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If network tapping technologies are used to capture traffic, then a third-party view of packets is obtained, but the packet order becomes uncertain and may not match the original sequence
Solution Approach 1:
The patent applies preliminary action by maintaining separate queues for packets from each endpoint before reordering them. The system pre-processes captured packets by organizing them into direction-specific queues with sequence numbers, then systematically reorders them to reconstruct the original transmission sequence. This preliminary organization enables accurate reconstruction of packet order despite the asynchronous nature of network captures.
2Productivity
If packets are captured from a network connection, then traffic data is obtained, but the asynchronous transmission causes packets to arrive in non-consecutive sequence numbers
Solution Approach 1:
The patent implements feedback mechanisms by continuously monitoring sequence numbers and acknowledgment numbers in captured packets. The system uses this feedback information to dynamically adjust the reordering process, ensuring that packets are delivered to the application layer in the correct sequence. The feedback loop validates that the reconstructed sequence matches the expected TCP protocol behavior.
3Measurement precision
If TCP packets are reordered to maintain consecutive sequence numbers, then accurate data streaming is achieved, but complex queue management and sequence tracking are required
Solution Approach 1:
The patent applies segmentation by dividing the packet reordering task into manageable components: separate queues for each endpoint, individual sequence number tracking for each queue, and systematic rules for selecting which packet to deliver next. This segmentation transforms the complex problem of reordering asynchronous TCP packets into a series of simple, rule-based operations that can be implemented efficiently.
Data Source
AI summary
Ordering partial network traffic. In an embodiment, data packets are received from a network tap and separated into two queues. For each queue, a push-sequence is maintained to represent a sequence number that must be pushed in order to maintain a consecutive order. When both push-sequences are equal to the sequence number of their first packets, if the acknowledgement number of the first packet on one queue is greater than the push-sequence for the other queue and less than or equal to the push-sequence of the one queue, data is pushed off the other queue. Otherwise, a queue having the earlier timestamp is identified as a first queue, the existence of a next acknowledgement number is determined for the second (other) queue, and data is pushed off the first queue according to the existence of the next acknowledgement number. Gap packets may be generated to force progress.


