Handling state information in a network element cluster
First Claim
1. A method for handling dynamic state information used for handling data packets, which arrive at a network element node of a network element cluster, said network element cluster having at least two nodes and each node handling separate sets of data packets, said method comprising:
- maintaining in a first node a first, node-specific data structure comprising entries representing state information needed for handling sets of data packets handled in said first node, said sets of data packets handled in said first node being different from sets of data packets handled in any other node of said network element cluster, and each set of data packets containing data packets related to each other,maintaining in said first node in addition to said node-specific data structure a second, common data structure comprising at least entries representing state information for data packets handled in at least one other node of said network element, cluster, the contents of said common data structure effectively differing from the contents of said node-specific data structure and including copies of all state information entries maintained in a node-specific data structure of said at least one other node and needed for handling sets of data packets in said at least one other node, said entries being maintained according to information on how different sets of data packets are distributed among the nodes of the network element cluster,dynamically changing distribution of at least one set of data packets from said at least one other node to said first node in the network element cluster, and providing said first node with respective changed distribution information,in response to said changed distribution information, selecting the state information entries of at least one re-distributed set of data packets from said second common data structure and transferring them to said first node specific data structure of said first node;
allocating to each node belonging to said network element cluster certain node-specific distribution identifiers, each node having separate node-specific distribution identifiers allocated to it,handling at least a plurality of data packets so that a data packet is handled in that node of said network element cluster, to which node a distribution identifier calculated using certain field(s) of said data packet is allocated, andmaintaining in a plurality of entries of said node-specific and common data structures distribution information relating to the distribution identifier, which corresponds to the set of data packets related to the respective entry.
9 Assignments
0 Petitions
Accused Products
Abstract
A method for handling dynamic state information used for handling data packets, which arrive at a network element node of a network element cluster, said network element cluster having at least two nodes and each node handling separate sets of data packets. In a node there is maintained 206 a first, node-specific data structure comprising entries representing state information needed for handling sets of data packets handled in said node. In said node there is also maintained 208 a second, common data structure comprising at least entries representing state information needed for handling sets of data packets handled in one other node of said network element cluster. The contents of said common data structure effectively differs from the contents of said node-specific data structure. Data packets are distributed 202, 204 to nodes of the cluster by means of distribution identifiers allocated 200 to nodes. Advantageously, information related to the distribution identifiers is included 212 in the entries of the data structures in order to identify to which node a set of data packets represented by a given entry belongs to at a given moment.
69 Citations
23 Claims
-
1. A method for handling dynamic state information used for handling data packets, which arrive at a network element node of a network element cluster, said network element cluster having at least two nodes and each node handling separate sets of data packets, said method comprising:
-
maintaining in a first node a first, node-specific data structure comprising entries representing state information needed for handling sets of data packets handled in said first node, said sets of data packets handled in said first node being different from sets of data packets handled in any other node of said network element cluster, and each set of data packets containing data packets related to each other, maintaining in said first node in addition to said node-specific data structure a second, common data structure comprising at least entries representing state information for data packets handled in at least one other node of said network element, cluster, the contents of said common data structure effectively differing from the contents of said node-specific data structure and including copies of all state information entries maintained in a node-specific data structure of said at least one other node and needed for handling sets of data packets in said at least one other node, said entries being maintained according to information on how different sets of data packets are distributed among the nodes of the network element cluster, dynamically changing distribution of at least one set of data packets from said at least one other node to said first node in the network element cluster, and providing said first node with respective changed distribution information, in response to said changed distribution information, selecting the state information entries of at least one re-distributed set of data packets from said second common data structure and transferring them to said first node specific data structure of said first node; allocating to each node belonging to said network element cluster certain node-specific distribution identifiers, each node having separate node-specific distribution identifiers allocated to it, handling at least a plurality of data packets so that a data packet is handled in that node of said network element cluster, to which node a distribution identifier calculated using certain field(s) of said data packet is allocated, and maintaining in a plurality of entries of said node-specific and common data structures distribution information relating to the distribution identifier, which corresponds to the set of data packets related to the respective entry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A network element node of a network element cluster having at least two nodes, said node comprising:
-
a first data storage, means for maintaining in said first data storage a first, node-specific data structure comprising entries representing state information needed for handling sets of data packets handled in said node, said sets of data packets handled in said first node being different from sets of data packets handled in any other node of said network element cluster, and each set of data packets containing data packets related to each other in one or more of the following ways;
data packets of same packet data connection, data packets of same communication session comprising a plurality-of packet data connections, and data packets of a plurality of packet data connections of same secure tunnel,a second data storage, means for maintaining in said second data storage a second, common data structure comprising at least entries representing state information for data packets handled in one other node of said network element cluster, the contents of said common data structure effectively differing from the contents of said node-specific data structure and including copies of all state information entries maintained in a node-specific data structure of said at least one other node and needed for handling sets of data packets in said at least one other node, and said entries being maintained according to information on how different sets of data packets are distributed among the nodes of the network element cluster, means for receiving changed distribution information dynamically changing distribution of at least one set of data packets from said at least one other node to said node in the network element cluster, and means for selecting, based on said changed distribution information the state information entries of at least one re-distributed set of data packets from said second common data structure in said second data storage and transfers them to said first node-specific data structure in said first data storage of said node, means for receiving a distribution identifiers, which are currently allocated to said node, said distribution identifiers being used for handling at least a plurality of data packets so that a data packet is handled in that node of said network element cluster, to which node a distribution identifier calculated using certain field(s) of said data packet is allocated, a third data storage for storing said distribution identifiers, and wherein said means for maintaining the node-specific and common data structures are adapted to maintain in a plurality of entries of said node-specific. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. A network element cluster having at least two network element nodes, at least one of said nodes comprising:
-
a first data storage means, means for maintaining in said first storage means a first, node-specific data structure comprising entries representing state information needed for handling sets of data packets handled in said node, said sets of data packets handled in said node being different from sets of data packets handled in any other node of said network element cluster, and each set of data packets containing data packets related to each other, a second data storage means, and means for maintaining in said second storage a second, common data structure comprising at least entries representing state information needed for handling sets of data packets handled in one other node of said network element cluster, the contents of said common data structure effectively differing from the contents of said node-specific data structure and including copies of all state information entries maintained in a node-specific data structure of said one other node and needed for handling sets of data packets in said one other node, said entries being maintained according to information on how different sets of data packets are distributed among the nodes of the network element cluster, means for receiving changed distribution information dynamically changing distribution of at least one set of data packets from said one other node to said at least one node in the network element cluster, and means for selecting based on said changed distribution information the state information entries of at least one re-distributed set of data packets from said second common data structure in said second data storage and transferring them to said first node-specific data structure in said first data storage means of said at least one node; means for allocating to each node belonging to said network element cluster certain node-specific distribution identifiers, each node having separate node-specific distribution identifiers allocated to it, said distribution identifiers being used for handling at least a plurality of data packets so that a data packet is handled in that node of said network element cluster, to which node a distribution identifier calculated using certain field(s) of said data packet is allocated, and in that said at least one node further comprises; means for receiving a distribution identifiers, which are currently allocated to said node, and a third data storage for storing said distribution identifiers, and wherein said means for maintaining the node-specific and common data structures are adapted to maintain in a plurality of entries of said node-specific and common data structures in said first and second data storage means distribution information relating to the distribution identifier, which corresponds to the set of data packets related to the respective entry. - View Dependent Claims (22)
-
-
23. A computer-readable medium comprising computer-executable components which, when run on a computer, configure the computer to
operate as a network element node of a network element cluster having at least two nodes and each node handling separate sets of data packets, maintain in said network element node a first, node-specific data structure comprising entries representing state information needed for handling sets of data packets handled in said network element node, said sets of data packets handled in said network element node being different from sets of data packets handled in any other node of said network element cluster, and each set of data packets containing data packets related to each other, maintain in said network element node in addition to said node-specific data structure a second, common data structure comprising at least entries representing state information for data packets handled in at least one other node of said network element cluster, the contents of said common data structure effectively differing from the contents of said node-specific data structure and including copies of all state information entries maintained in a node-specific data structure of said at least one other node and needed for handling sets of data packets in said at least one other node, said entries being maintained according to information on how different sets of data packets are distributed among the nodes of the network element cluster, receive changed distribution information dynamically changing distribution of at least one set of data packets from said at least one other node to said network element node in the network element cluster, select based on said changed distribution information, the state information entries of at least one re-distributed set of data packets from said second common data structure and transfer them to said first node-specific data structure of said network element node, receive distribution identifiers, which are currently allocated to said node, said distribution identifiers being used for handling at least a plurality of data packets so that a data packet is handled in that node of said network element cluster, to which node a distribution identifier calculated using certain field(s) of said data packet is allocated, and maintain in a plurality of entries of said node-specific and common data structures in said first and second data storage distribution information relating to the distribution identifier, which corresponds to the set of data packets related to the respective entry.
Specification