SYSTEMS AND METHODS FOR PORT ALLOCATION
First Claim
1. A method of allocating ports for packets distributed via a computer network comprising:
- receiving, by a packet engine configured on a first core of a plurality of cores of a device intermediary between a client and a server, a first packet from the client comprising an outer header of an encapsulation protocol encapsulating a payload with an inner header, the first packet directed by a packet distributor of the device to the first core selected based on a first tuple of the outer header;
determining, by a port allocator configured on the packet engine, a source port number from a plurality of source port numbers to cause the packet distributor to identify the first core based on a second tuple of the inner header;
modifying, by the packet engine, the inner header of the payload to include the determined source port number; and
forwarding, by the device, the first packet to the server, the first packet comprising the modified inner header.
7 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods of the present disclosure relate to allocating ports for packets distributed via a computer network. A packet engine on a core of a multicore device intermediary between a client and a server receives a first packet from the client. The first packet includes an outer header of an encapsulation protocol encapsulating a payload with an inner header. The first packet is directed by a packet distributor of the device to the first core selected based on a first tuple of the outer header. A port allocator of the packet engine determines a source port number to cause the packet distributor to identify the first core based on a second tuple of the inner header. The packet engine modifies the inner header of the payload to include the determined source port number. The device forwards the first packet including the modified inner header to the server.
81 Citations
20 Claims
-
1. A method of allocating ports for packets distributed via a computer network comprising:
-
receiving, by a packet engine configured on a first core of a plurality of cores of a device intermediary between a client and a server, a first packet from the client comprising an outer header of an encapsulation protocol encapsulating a payload with an inner header, the first packet directed by a packet distributor of the device to the first core selected based on a first tuple of the outer header; determining, by a port allocator configured on the packet engine, a source port number from a plurality of source port numbers to cause the packet distributor to identify the first core based on a second tuple of the inner header; modifying, by the packet engine, the inner header of the payload to include the determined source port number; and forwarding, by the device, the first packet to the server, the first packet comprising the modified inner header. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for port allocation of packets distributed via a computer network comprising:
-
a packet engine on a first core of a plurality of cores of a device intermediary between a client and a server, the packet engine configured to receive a first packet from the client comprising an outer header of an encapsulation protocol encapsulating a payload with an inner header, the first packet directed by a packet distributor of the device to the first core selected based on a first tuple of the outer header; a port allocator on the packet engine configured to determine a source port number from a plurality of source port numbers to cause the packet distributor to identify the first core based on a second tuple of the inner header; the packet engine configured to modify the inner header of the payload to include the determined source port number; and the device configured to forward the first packet to the server, the first packet comprising the modified inner header. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification