Network Flow Tracking via Sequence Number Insertion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network test systems face difficulties in tracking network flows when using connectionless protocols, especially in environments with network address translation (NAT), as intervening equipment alters IP addresses and ports, making it challenging to identify originating flows.
Innovation Solution
Implementing a flow-identifying sequence number during the connection establishment process of a connection-oriented protocol, which is inserted into a sequence number field of the first message and extracted from subsequent messages to uniquely identify network flows, allowing for tracking and analysis even in NAT environments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If connectionless protocols are used for network testing, then test coverage and versatility are improved, but flow tracking capability deteriorates when NAT is involved
Solution Approach 1:
The patent introduces a flow-identifying sequence number as an intermediary element that is inserted into the packet header during connection establishment. This sequence number acts as a mediator between the test device and NAT device, allowing the test device to uniquely identify and track network flows even when NAT translates IP addresses and ports. The sequence number is extracted from subsequent packets to maintain flow tracking capability throughout the communication.
2Adaptability or versatility
If NAT is used in network testing, then network address translation functionality is tested, but flow identification becomes difficult due to IP address and port translation
Solution Approach 1:
The patent applies preliminary action by inserting the flow-identifying sequence number into the packet header during the connection establishment phase, before NAT translation occurs. This ensures that the sequence number is established and recorded when the original flow identification is still valid, allowing accurate flow tracking even after NAT translates the IP address and port numbers in subsequent packets.
3Reliability
If sequence number field is used for flow identification, then flow tracking is enabled, but device complexity increases due to additional processing requirements
Solution Approach 1:
The patent applies universality by reusing the existing sequence number field in the packet header for dual purposes: its original function for protocol sequence tracking and the additional function of flow identification. This eliminates the need for separate flow identification fields or complex data structures, thereby maintaining reliability while minimizing the increase in device complexity.
Data Source
AI summary
The subject matter described herein relates to methods, systems, and computer readable media for testing network equipment devices using connection-oriented protocols. In some examples, a method for testing a network equipment device under test (DUT) includes executing, by a network equipment test device, a test script to test the network equipment DUT using a connection-oriented protocol. The method includes inserting, during a connection establishment process of the connection-oriented protocol for a network flow to the network equipment DUT, a flow-identifying sequence number into a sequence number field of a first message of the network flow. The flow-identifying sequence number is a number uniquely identifying the network flow from other network flows. The method includes receiving a second message from the network equipment DUT and determining that the second message belongs to the network flow by extracting the flow-identifying sequence number from the second message.


