IP Library › Granted Patent US 12,323,315
Granted Patent B2
US 12,323,315 · App. 18/105,692 · Granted Jun 3, 2025

Methods, systems, and computer readable media for scaling network traffic and emulating a stateful transport layer protocol

Inventors: Alexander Bortok (Mountain View, CA); Thomas Ameling (Woodland Hills, CA); Razvan Ionut Stan (Agoura Hills, CA); Sahil Gupta (Rochester, NY)
Assignee: KEYSIGHT TECHNOLOGIES, INC.
H04L43/50H04L41/145
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 12,323,315
App. No.
18/105,692
Granted
Jun 3, 2025
Kind
B2
Abstract

A method for scaling network traffic includes, at a programmable switching ASIC, receiving n traffic flows from at least one external traffic generator, n being an integer. The method further includes generating, by the programmable switching ASIC and using information from packets in the n traffic flows, m traffic flows, where m is an integer greater than n. The method further includes transmitting, by the programmable switching ASIC, the m traffic flows to a flow destination via device under test.

Claims (25)

1. A method for emulating a stateful transport layer protocol, including packet retransmissions, in a programmable switching application-specific integrated circuit (ASIC), the method comprising:

emulating a stateful transport layer client on a first port of a programmable switching ASIC;

transmitting packets from the emulated stateful transport layer client to a device under test (DUT) to establish a plurality of stateful transport layer protocol connections;

storing, at the programmable switching ASIC, packet content information of each of the transmitted packets;

detecting, by the emulated transport layer client and using a transmission time for one of the packets, a packet timeout event for the one packet;

in response to detecting the packet timeout event for the one packet, generating, by a packet generator implemented in the programmable switching ASIC and using the stored packet content information for the one packet, a copy of the one packet for emulating a stateful transport layer retransmission of the one packet; and

transmitting, by the emulated transport layer client, the copy of the one packet to emulate the stateful transport layer retransmission of the one packet.

2. The method of claim 1 further comprising emulating a stateful transport layer server on a second port of the programmable switching ASIC, wherein transmitting packets from the emulated stateful transport layer client to a device under test (DUT) comprises transmitting packets to establish a plurality of stateful transport layer protocol connections between the emulated stateful transport layer client and the emulated stateful transport layer server through the DUT.

3. The method of claim 2 wherein the programmable switching ASIC includes a P4 programmable switching ASIC, wherein emulating a stateful transport layer client includes emulating a transmission control protocol (TCP) client and wherein emulating a stateful transport layer server includes emulating a TCP server using the P4 programmable switching ASIC.

4. The method of claim 3 wherein transmitting the packets to establish the stateful transport layer connections includes transmitting emulated TCP 3-way handshake packets between the TCP client and the TCP server.

5. The method of claim 4 wherein detecting the packet timeout event includes detecting a timeout of one of the 3-way TCP handshake packets.

6. The method of claim 1 wherein detecting the packet timeout event includes determining that a transmission time of the packet for which the packet timeout event occurred exceeds a threshold.

7. A system for emulating a stateful transport layer protocol, including packet retransmissions, the system comprising:

a programmable switching application-specific integrated circuit (ASIC) configured for:

emulating a stateful transport layer client on a first port of a programmable switching ASIC,

transmitting packets to establish a plurality of stateful transport layer protocol connections between the emulated stateful transport layer client and the emulated stateful transport layer server through a device under test (DUT);

storing, at the programmable switching ASIC, packet content information of each of the transmitted packets;

detecting, by the emulated transport layer client or the emulated transport layer server and using a transmission time for one of the packets, a packet timeout event for the one packet;

in response to detecting the packet timeout event for the one packet, generating, by a packet generator implemented in the programmable switching ASIC and using the stored packet content information for the one packet, a copy of the one packet for emulating a stateful transport layer retransmission of the one packet; and

transmitting, by the emulated transport layer client or the emulated transport layer server, the copy of the one packet to emulate the stateful transport layer retransmission of the one packet.

8. The system of claim 7 further comprising emulating a stateful transport layer server on a second port of the programmable switching ASIC, wherein transmitting packets from the emulated stateful transport layer client to a device under test (DUT) comprises transmitting packets to establish a plurality of stateful transport layer protocol connections between the emulated stateful transport layer client and the emulated stateful transport layer server through the DUT.

9. The system of claim 8 wherein the programmable switching ASIC includes a P4 programmable switching ASIC, wherein emulating a stateful transport layer client includes emulating a transmission control protocol (TCP) client and wherein emulating a stateful transport layer server includes emulating a TCP server using the P4 programmable switching ASIC.

10. The system of claim 9 wherein transmitting the packets to establish the stateful transport layer connections includes transmitting emulated TCP 3-way handshake packets between the TCP client and the TCP server.

11. The system of claim 10 wherein detecting the packet timeout event includes detecting a timeout of one of the 3-way TCP handshake packets.

12. The system of claim 7 wherein detecting the packet timeout event includes determining that a transmission time of the packet for which the packet timeout event occurred exceeds a threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2023
From: BORTOK, ALEXANDER; AMELING, THOMAS; STAN, RAZVAN IONUT; GUPTA, SAHIL
To: KEYSIGHT TECHNOLOGIES, INC.
Reel/Frame 062601/0646 →
Continuity (2)
Provisional Application 63426728 · Nov 19, 2022
Related Publication 20240171495A1 · May 23, 2024
References Cited (30)
US 9582620B1 · Segal et al. · 2017 [cited by applicant]
US 10225381B1 · Bosshart · 2019 [cited by applicant]
US 10599657B1 · Balogh · 2020 [cited by examiner]
US 11093376B2 · Sommers et al. · 2021 [cited by applicant]
US 20080198742A1 · Kaempfer · 2008 [cited by applicant]
US 20110145649A1 · Nilsson et al. · 2011 [cited by applicant]
US 20170322873A1 · Morris · 2017 [cited by applicant]
US 20180176020A1 · Mukhopadhyay · 2018 [cited by examiner]
US 20180210823A1 · Vorganti · 2018 [cited by applicant]
US 20210328902A1 · Huselton et al. · 2021 [cited by applicant]
US 20230199531A1 · Cummings · 2023 [cited by examiner]
US 20240345164A1 · Kung · 2024 [cited by examiner]
DE 102020114730A1 · 2020 [cited by applicant]
GB 2588837A · 2021 [cited by applicant]
Kundel, et al., “PASTA: High Performance Packet Timestamping with Programmable Packet Processors”, IEEE/IFIP Network Operations and Management Symposium, pp. 1-9 (2020). [cited by applicant]
Zhou, et al., “HyperTester: High-performance Network Testing Driven by Programmable Switches”, CoNEXT, pp. 1-14 (2019). [cited by applicant]
Xi, et al., “SIGCOMM: U: High-Performance Flexible Packet Generator Using Programmable Switching ASIC”, Proceedings of the ACM SIGCOMM 2019 Conference Posters and Demos, pp. 1-5 (2019). [cited by applicant]
“Dynamic Test-Based P4 Packet Blaster Hardware Configuration”, IP.com, Pub. Id. IPCOM000257013D (Jan. 10, 2019). [cited by applicant]
Examination Report under Section 18(3) for Great Britain Application Serial No. GB2009118.7 (Aug. 19, 2021). [cited by applicant]
Applicant-Initiated Interview Summary for U.S. Appl. No. 16/446,318 (May 28, 2021). [cited by applicant]
Notice of Allowance and Fee(s) Due for U.S. Appl. No. 16/446,318 (May 26, 2021). [cited by applicant]
Combined Search and Examination Report under Sections 17 & 18(3) for Great Britain Application Serial No. GB2009118.7 (Mar. 8, 2021). [cited by applicant]
Keysight Test Automation Platform—Keysight Technologies, Inc. (2017). [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/446,318 (Feb. 4, 2021). [cited by applicant]
Zhang et al., “HyperVDP: High-Performance Virtualization of the Programmable Data Plane,” IEEE Journal on Selected Areas in Communications, vol. 37, No. 3, pp. 556-569 (Mar. 2019). [cited by applicant]
“Dynamic Test-Based P4 Packet Blaster Hardware Configuration,” IPCOM000257013D, pp. 1-6 (Jan. 10, 2019). [cited by applicant]
Bradner et al., “Benchmarking Methodology for Network Interconnect Devices,” RFC 2544, pp. 1-31 (Mar. 1999). [cited by applicant]
Ginoza, “Request for Comments Summary RFC Nos. 2800-2899,” RFC 2899, pp. 1-22 (May 2001). [cited by applicant]
P4lang / switch, https://github.com/p4lang/switch, pp. 1-4 (Copyright 2019). [cited by applicant]
Papneja et al., “Basic BGP Convergence Benchmarking Methodology for Data-Plane Convergence,” RFC 7747, pp. 1-35 (Apr. 2016). [cited by applicant]