IP Library Granted Patent US 9,686,175
Granted Patent B2
US 9,686,175 · App. 14/164,218 · Granted Jun 20, 2017

Methods, systems, and computer readable media for testing network devices using simulated application traffic

Inventors: Marius Pavel Nistor (Bucharest, RO); Florin-Fabian Dedu (Bucharest, RO)
Assignee: Ixia
H04L43/50H04L41/142
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,686,175
App. No.
14/164,218
Granted
Jun 20, 2017
Kind
B2
Abstract

Methods, systems, and computer readable media for testing network devices using simulated application traffic are disclosed. One method includes steps implemented in a network equipment test device including at least one processor. The method includes emulating data transfer operations of a plurality of server applications. The method further includes receiving application traffic from a plurality of different client applications. The method further includes queuing incoming connections received from the client applications. The method further includes, for each of the connections, attempting to correlate application-level data with one of the emulated server applications. The method further includes, in response to successful correlation of the received application-level data with one of the emulated server applications, performing application-specific processing for the emulated server application. Performing application-specific processing includes sending data from an emulated server application to a client application through a device under test.

Claims (32)

1. A method for testing network devices using simulated application traffic, the method comprising:

in a network equipment test device including at least one processor:

emulating data transfer operations performed by a plurality of different server applications;

receiving application traffic from a plurality of different client applications;

queuing incoming connections received from the client applications;

for each of the connections, attempting to correlate application-level data with one of the emulated server applications, wherein attempting to correlate the received data with one of the server applications includes executing a correlator for each server application, wherein each correlator parses data for a connection to determine whether the data includes correlator data specific to its respective server application; and

in response to successful correlation of received application-level data with one of the emulated server applications, performing application-specific processing for the emulated server application, wherein performing application-specific processing includes sending data from the emulated server application to a client application through a device under test.

2. The method of claim 1 wherein receiving application traffic includes receiving application traffic destined for plural different server applications, at least some of the server applications sharing a transport layer port.

3. The method of claim 1 wherein receiving application traffic includes receiving application traffic destined for two different instances of the same server application sharing a transport layer port.

4. The method of claim 1 wherein each correlator is configured to return connections to a connections queue in response to failing to locate the correlator data for its respective application.

5. The method of claim 1 wherein each of the correlators attempts to identify the correlator data for its respective server application by comparing the received data to correlator packages in a list of correlator packages for all of the server applications monitoring data received over the same port in a given test.

6. The method of claim 1 wherein at least one of the correlators is configured to handle applications that have plural connections as a single flow of execution of the correlator.

7. The method of claim 1 wherein the emulated server applications are configured to identify packets marked as differentiators when client applications have overlapping scripts and to execute the correlators in response to detecting the differentiators.

8. The method of claim 1 wherein the device under test includes one of a network address translator (NAT), a firewall, a switch, a router, and a content aware device.

9. A system for testing a network device using simulated application traffic, the system comprising:

a network equipment test device including at least one processor;

a listener located on the network equipment test device for receiving incoming application traffic and for queuing incoming connections; and

a plurality of server emulators located on the network equipment test device, each server emulator including a correlator and an application-specific portion that emulates data transfer operations of a server application, the correlator attempting to correlate data received on one of the connections with an emulated server application using application-level data received over the connection, wherein each of the correlators is configured to parse data for a connection to determine whether the data includes correlator data specific to its respective server application, and, in response to successful correlation by the correlator, the application-specific portion performing application specific processing, wherein performing application-specific processing includes sending data from the emulated server application to a client application through a device under test.

10. The system of claim 9 wherein at least some of the server emulators share a transport layer port.

11. The system of claim 9 wherein the server emulators include different instances of the same application on the same transport layer port.

12. The system of claim 9 wherein each correlator is configured to return connections to a connections queue in response to failing to locate the correlator data for its respective server application.

13. The system of claim 9 wherein each of the correlators attempts to identify the correlator data for its respective server application by comparing the received data to correlator packages in a list of correlator packages for all of the server applications listening on a given port in a given test.

14. The system of claim 9 wherein at least one of correlators is configured to handle applications that have plural connections as a single flow of execution of the correlator.

15. The system of claim 9 wherein the server emulators are configured to identify packets marked as differentiators when applications have overlapping scripts and to execute the correlators in response to detecting the differentiators.

16. The system of claim 9 wherein the device under test comprises one of: a network address translator (NAT), a firewall, a switch, a router, and a content-aware device.

17. A non-transitory computer readable medium having stored thereon executable instructions that when executed by the processor of a computer control the computer to perform steps comprising:

in a network equipment test device including at least one processor:

emulating data transfer operations of a plurality of different server applications;

receiving application traffic from a plurality of different client applications;

queuing incoming connections received from the client applications;

for each of the connections, attempting to correlate application-level data with one of the emulated server applications, wherein attempting to correlate the received data with one of the server applications includes executing a correlator for each server application, wherein each correlator parses data for a connection to determine whether the data includes correlator data specific to its respective server application; and

in response to successful correlation of received application-level data with one of the emulated server applications, performing application-specific processing for the emulated server application, wherein performing application-specific processing includes sending data from the emulated server application to a client application through a device under test.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2018
From: KEYSIGHT TECHNOLOGIES SINGAPORE (HOLDINGS) PTE. LTD.
To: KEYSIGHT TECHNOLOGIES SINGAPORE (SALES) PTE. LTD.
Reel/Frame 048225/0065 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2017
From: IXIA
To: KEYSIGHT TECHNOLOGIES SINGAPORE (HOLDINGS) PTE. LTD.
Reel/Frame 044222/0695 →
RELEASE OF SECURITY INTEREST Recorded Apr 26, 2017
From: SILICON VALLEY BANK, AS SUCCESSOR ADMINISTRATIVE AGENT
To: IXIA
Reel/Frame 042335/0465 →
SECURITY INTEREST Recorded Mar 3, 2015
From: IXIA; ANUE SYSTEMS, INC.; BREAKINGPOINT SYSTEMS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 035121/0860 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2014
From: NISTOR, MARIUS PAVEL; DEDU, FLORIN-FABIAN
To: IXIA
Reel/Frame 032655/0852 →
Priority Claims (1)
RO a 2014 00070 · Jan 24, 2014 · national
Continuity (1)
Related Publication 20150212914A1 · Jul 30, 2015