Method and system for forwarding messages received at a traffic manager
First Claim
1. A traffic manager device for forwarding messages, comprising:
- a network interface unit for communicating with a least a client and a plurality of servers; and
a processing unit for executing instructions that enable the traffic manager device to perform actions, including persistently mapping messages between a connection from the client and the plurality of servers to maintain a previous association for the client with a same server in the plurality of servers, wherein information regarding each persistent connection between the traffic manager device and a first server is stored and is retrievable using a single key that is generated from at least a source address that includes a port number in use with at least a second server on behalf of a second client when it is determined that the client and the second client are within a same set of clients as based on a range of addresses, and wherein the source address and the port number are concatenated with at least a destination address to generate the single key such that the concatenated information is employed as an index to a database of connection objects for subsequent comparison with other information associated with a single connection between the traffic manager device and the client, and wherein source addresses in single keys for each of at least two persistent connections include a same source port number such that a received response from the first server is one of a plurality of responses sent to the same port number from at least the first server and the second server.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for forwarding messages received at a traffic manager. A traffic manager receives a message from a first connection to a client computer. At least a part of the message is to be forwarded to a server. If a connection exists to the server that matches the first connection, at least a part of the message is forwarded to the server by employing the existing connection. Otherwise, a source address is selected with which to communicate with the server. A new connection that includes the source address and a destination address associated with the server is opened. In addition, information associating the source address and the destination address with the first connection is stored. This information may then be used to map a response received from the server to the first connection.
-
Citations
20 Claims
-
1. A traffic manager device for forwarding messages, comprising:
-
a network interface unit for communicating with a least a client and a plurality of servers; and a processing unit for executing instructions that enable the traffic manager device to perform actions, including persistently mapping messages between a connection from the client and the plurality of servers to maintain a previous association for the client with a same server in the plurality of servers, wherein information regarding each persistent connection between the traffic manager device and a first server is stored and is retrievable using a single key that is generated from at least a source address that includes a port number in use with at least a second server on behalf of a second client when it is determined that the client and the second client are within a same set of clients as based on a range of addresses, and wherein the source address and the port number are concatenated with at least a destination address to generate the single key such that the concatenated information is employed as an index to a database of connection objects for subsequent comparison with other information associated with a single connection between the traffic manager device and the client, and wherein source addresses in single keys for each of at least two persistent connections include a same source port number such that a received response from the first server is one of a plurality of responses sent to the same port number from at least the first server and the second server. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for managing messages from a client, comprising:
-
a plurality of servers; and a traffic manager device that is interposed between the client and the plurality of servers and is configured to perform actions, including; receiving a message from the client on first connection; selecting at least a portion of the message to be forwarded to one of the servers in the plurality of servers; when stored information exists for a previously established connection from the traffic manager device to one of the servers that matches other information regarding the first connection, forwarding the selected portion of the message to the server employing the existing previously established connection, wherein the server received a previous message from the client forwarded by the traffic manager device; and when stored information does not exist, then; selecting a source address and port number of the traffic manager device to communicate with one of the servers in the plurality of servers, the port number being in use with at least a second server on behalf of a second client when it is determined that the client and the second client are within a same set of clients as based on a range of addresses; opening a new connection using the source address and port number of the traffic manager and a destination address and port number associated with the one server; and storing information associated with the source address and port number of the traffic manager device with other information regarding the first connection, wherein the source address and port number of the traffic manager device are concatenated into a single key used as an index to a dataset of connection objects for mapping a response received from the one server to the first connection. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A non-transitory machine readable storage medium that is configured to store instructions and data that when installed on a machine enable the machine to perform actions, including:
-
receiving over a first connection between a client and a traffic manager, a message to be forwarded to at least one server in a plurality of servers, the message being sent using hypertext transport protocol (HTTP); and persistently mapping the message over the first connection from the client and the plurality of servers to maintain a previous association for the client with a same server in the plurality of servers, wherein information regarding each persistent connection between the traffic manager and a server is stored and is retrievable using a single key that is generated from at least a source address and port number of the traffic manager, the port number being in use with at least a second server on behalf of a second client when it is determined that the client and the second client are within a same set of clients as based on a range of addresses, and that is concatenated with at least a destination address and port number such that the concatenation information is employed as an index to a database of connection objects for subsequent comparisons with other information associated with the first connection between the traffic manager and the client. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification