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-connect protocol connection 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;
g) sending, by the second core, a second message to the plurality of cores that the second core has the data connection; and
h) incrementing, by the first packet processing engine of the first core, a reference counter for the data connection of the control connection in response to the second message.
7 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.
18 Citations
18 Claims
-
1. A method of handling a multi-connect protocol connection 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; g) sending, by the second core, a second message to the plurality of cores that the second core has the data connection; and h) incrementing, by the first packet processing engine of the first core, a reference counter for the data connection of the control connection in response to the second message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system of handling a multi-connect protocol connection between a client and a server traversing a multi-core system, the multi-connection protocol comprising a control connection and a data connection, the system comprising:
-
a multi-core system comprising a plurality of cores; a first packet processing engine of a first core of the plurality of cores of the multi-core system receiving 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, receiving a response from the server identifying the port of the server for establishing the data connection, and wherein the first packet processing engine identifies a virtual port number and virtual internet protocol address of the multi-core system and sends to the plurality of cores of the multi-core system, a first message identifying the virtual internet protocol address and the virtual port number; and a listening service established, by each of the plurality of cores, on the virtual internet protocol address and the virtual port number, wherein the listening service of a second core of the plurality of cores receive a data connection request from the client to the server; and wherein the second core sends a second message to the plurality of cores that the second core has the data connection and the first packet processing engine of the first core increments a reference counter for the data connection of the control connection in response to the second message. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification