US 12,003,422 B1
Methods for switching network packets based on packet data and devices
William Ross Baumann, Seattle, WA (US); and Alan B. Mimms, Spokane, WA (US)
Assigned to F5, Inc., Seattle, WA (US)
Filed by F5 Networks, Inc., Seattle, WA (US)
Filed on Sep. 30, 2019, as Appl. No. 16/588,074.
Claims priority of provisional application 62/738,590, filed on Sep. 28, 2018.
Int. Cl. H04L 69/22 (2022.01); H04L 47/41 (2022.01); H04L 67/568 (2022.01)
CPC H04L 47/41 (2013.01) [H04L 67/568 (2022.05); H04L 69/22 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for managing network packets, the method implemented by a network traffic management system comprising one or more network traffic apparatuses, client devices, or server devices, the method comprising:
separating header data and payload data for a network packet;
creating, exclusively with a field programmable gate array (FPGA) device within a network traffic manager apparatus, digest data from the separated header data for the network packet;
assigning the digest data for each of the header data to a specific processor of a plurality of processors, wherein the specific processor is a separate processor from the FPGA device;
identifying a network action for the network packet based on the created digest data for each of the header data, wherein the identified network action comprises:
adding, changing or deleting a MAC address from the network packet;
adding, changing or deleting an IP address from the network packet;
switching the network packet to a new destination;
routing the network packet to a next-hop;
decrementing the network packet's time-to-live;
dropping the network packet; or
transforming the header data or tunnel data of the network packet; and
performing, exclusively with the assigned separate specific processor of the plurality of processors, the identified network action on the separated header data and the payload data, wherein the specific processor is selected based on the created digest data for each of the header data.