SYSTEMS AND METHODS FOR HANDLING A MULTI-CONNECTION PROTOCOL BETWEEN A CLIENT AND SERVER TRAVERSING A MULTI-CORE SYSTEM
First Claim
1. A method of handling a multi-connection protocol communication between a client and a server traversing a multi-core system, the multi-connection protocol comprising a control connection and a data connection, the method comprising:
- a) receiving, by a first packet processing engine of a first core of a multi-core system, a port command via a control connection from a client to a server to establish a data connection with the server via a multi-connection protocol, the port command comprising an internet protocol address of the client and a port number of the client;
b) determining, by the first packet processing engine based on the port command, a second core of the multi-core system to which a flow distributor will forward a data connection request from the server;
c) sending, by the first core, to the second core a message comprising information on the port command;
d) establishing, by a second packet processing engine of the second core, a listening service on a mapped internet protocol address of and a mapped port number of the multi-core system;
e) sending, by the second core, to the first core a second message identifying the mapped internet protocol address and mapped port number; and
f) modifying, by the first packet processing engine, the port command to identify the mapped internet protocol address of the multi-core system as the internet protocol address of the client and the mapped port number as the port number of the client.
8 Assignments
0 Petitions
Accused Products
Abstract
The present application is directed towards systems and methods for handling a multi-connection protocol communication between a client and a server traversing a multi-core system. The multi-connection protocol comprises a first connection and a second connection, which may be used respectively for control communications and data communications. Because different cores in the multi-core system may handle the first connection and second connection, the present invention provides systems and methods for efficiently coordinating protocol management between a plurality of cores.
-
Citations
19 Claims
-
1. A method of handling a multi-connection protocol communication between a client and a server traversing a multi-core system, the multi-connection protocol comprising a control connection and a data connection, the method comprising:
-
a) receiving, by a first packet processing engine of a first core of a multi-core system, a port command via a control connection from a client to a server to establish a data connection with the server via a multi-connection protocol, the port command comprising an internet protocol address of the client and a port number of the client; b) determining, by the first packet processing engine based on the port command, a second core of the multi-core system to which a flow distributor will forward a data connection request from the server; c) sending, by the first core, to the second core a message comprising information on the port command; d) establishing, by a second packet processing engine of the second core, a listening service on a mapped internet protocol address of and a mapped port number of the multi-core system; e) sending, by the second core, to the first core a second message identifying the mapped internet protocol address and mapped port number; and f) modifying, by the first packet processing engine, the port command to identify the mapped internet protocol address of the multi-core system as the internet protocol address of the client and the mapped port number as the port number of the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of handling a multi-connection protocol communication between a client and a server traversing a multi-core system, the multi-connection protocol comprising a control connection and a data connection, the method comprising:
-
a) receiving, by a first packet processing engine of a first core of a multi-core system via a control connection of a multi-connection protocol, a request from a client to a server for a port of the server to establish a data connection with the server; b) receiving, by the first packet processing engine, a response from the server identifying the port of the server for establishing the data connection; c) identifying, by the first packet processing engine, a virtual port number and virtual internet protocol address of the multi-core system; d) sending, by the first packet processing engine, to a plurality of cores of the multi-core system, a first message identifying the virtual internet protocol address and the virtual port number; e) establishing, by each of the plurality of cores, a listening service on the virtual internet protocol address and the virtual port number; f) receiving, by the listening service of a second core of the plurality of cores, a data connection request from the client to the server; and g) sending, by the second core, a second message to the plurality of cores that the second core has the data connection. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
Specification