Lockless atomic table update
First Claim
Patent Images
1. A traffic manager device configured to provide uninterrupted access to a network traffic handling table during table updates, the device comprising:
- a memory configured to store a set of processor executable instructions;
a network transceiver configured to handle network traffic;
a processor coupled to the network transceiver and the memory, the processor configured to execute the set of stored processor executable instructions which causes the processor to perform a method, the method further comprising;
identifying a first classifier index associated with a data packet received via the network interface;
identifying a second classifier index associated with the data packet;
accessing a first classifier table to determine a current position in a first dimension of a network traffic handling table associated with the first classifier index;
determining an open position in the first dimension of the network traffic handling table;
copying existing packet handling data from the current position to one or more corresponding locations in the open position in the first dimension of the network traffic handling table;
storing updated packet handling data within the open position in the network traffic handling table at a second dimension location indicated by the second classifier index;
associating the open position with the first classifier index in the first classifier table, wherein the open position becomes a new current position associated with the first classifier index;
designating the current position previously associated with the first classifier index as a new open position in the network traffic handling table; and
determining the second dimension location indicated by the second classifier index by referencing a second classifier table associating a plurality of second dimension locations with a plurality of second classifier indices.
0 Assignments
0 Petitions
Accused Products
Abstract
Upon detecting a data event initiating an update to a table, a first classifier index associated with the data event is identified. From a classifier table, the current position in a first dimension of the table associated with the classifier index is determined. An open position in the first dimension of the table is also identified. Updated data is stored in the open position within the table. In the classifier table, the open position storing the updated data is associated with the classifier index.
80 Citations
29 Claims
-
1. A traffic manager device configured to provide uninterrupted access to a network traffic handling table during table updates, the device comprising:
-
a memory configured to store a set of processor executable instructions; a network transceiver configured to handle network traffic; a processor coupled to the network transceiver and the memory, the processor configured to execute the set of stored processor executable instructions which causes the processor to perform a method, the method further comprising; identifying a first classifier index associated with a data packet received via the network interface; identifying a second classifier index associated with the data packet; accessing a first classifier table to determine a current position in a first dimension of a network traffic handling table associated with the first classifier index; determining an open position in the first dimension of the network traffic handling table; copying existing packet handling data from the current position to one or more corresponding locations in the open position in the first dimension of the network traffic handling table; storing updated packet handling data within the open position in the network traffic handling table at a second dimension location indicated by the second classifier index; associating the open position with the first classifier index in the first classifier table, wherein the open position becomes a new current position associated with the first classifier index; designating the current position previously associated with the first classifier index as a new open position in the network traffic handling table; and determining the second dimension location indicated by the second classifier index by referencing a second classifier table associating a plurality of second dimension locations with a plurality of second classifier indices. - View Dependent Claims (2, 3)
-
-
4. A traffic manager device configured to provide uninterrupted access to a network traffic handling table during table updates, the device comprising:
-
a memory configured to store a set of processor executable instructions; a network transceiver configured to handle network traffic; a processor coupled to the network transceiver and the memory, the processor configured to execute the set of stored processor executable instructions which causes the processor to perform a method, the method further comprising; identifying a first classifier index associated with a data packet received via the network transceiver; identifying a second classifier index associated with the data packet; accessing a first classifier table to determine a current position in a first dimension of a network traffic handling table associated with the first classifier index; determining an open position in the first dimension of the network traffic handling table; copying existing packet handling data from the current position to one or more corresponding locations in the open position in the first dimension of the network traffic handling table; storing updated packet handling data within the open position in the network traffic handling table at a second dimension location indicated by the second classifier index; associating the open position with the first classifier index in the first classifier table, wherein the open position becomes a new current position associated with the first classifier index; and designating the current position previously associated with the first classifier index as a new open position in the network traffic handling table, wherein the network traffic handling table includes a destination table configured to store entries containing addresses of one or more resources to which one or more other data packets are to be directed, wherein an address of a resource to which an additional data packet is to be delivered is retrieved from the destination table based on a classifier index associated with the additional data packet.
-
-
5. A non-transitory machine readable medium having stored thereon instructions for providing uninterrupted access to a network traffic handling table during table updates, comprising machine executable code which when executed by at least one processor, causes the processor to perform steps comprising:
-
identifying a first classifier index associated with a data packet received by at least one of a plurality of traffic management devices; determining from a first classifier table an initial table position in a first dimension of a network traffic handling table, the first classifier table associating classifier indices with table positions such that the initial table position is associated with the first classifier index; determining an initial open table position in the first dimension of the network traffic handling table; storing information associated with the data packet in the initial open table position in the network traffic handling table; and associating the initial open table position with the first classifier index in the first classifier table. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method to provide uninterrupted access to a network traffic handling dataset during dataset updates, the method comprising:
-
identifying, by a network traffic management computing entity, a first classifier index associated with a data packet received by one of a plurality of traffic management entities; determining, by the network traffic management computing entity from a first classifier dataset, an initial dataset position in a first dimension of the network traffic handling dataset, the first classifier dataset associating classifier indices with dataset positions such that the initial dataset position is associated with the first classifier index; determining, by the network traffic management computing entity, an initial open dataset position in the first dimension of the network traffic handling dataset; storing, by the network traffic management computing entity, information associated with the data packet in the initial open dataset position in the network traffic handling dataset; and associating, by the network traffic management computing entity, the initial open dataset position with the first classifier index in the first classifier dataset. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A method to provide uninterrupted access to a network traffic handling table during table updates, the method comprising:
-
receiving, by a network traffic management computing device, a data packet; identifying, by the network traffic management computing device, a first classifier index associated with the data packet; identifying, by the network traffic management computing device, a second classifier index associated with the data packet; accessing, by the network traffic management computing device, a first classifier table to determine a current position in a first dimension of the network traffic handling table associated with the first classifier index; determining, by the network traffic management computing device, an open position in the first dimension of the network traffic handling table; copying, by the network traffic management computing device, existing packet handling data from the current position to one or more corresponding locations in the open position in the first dimension of the network traffic handling table; storing, by the network traffic management computing device, updated packet handling data within the open position in the network traffic handling table at a second dimension location indicated by the second classifier index; associating, by the network traffic management computing device, the open position with the first classifier index in the first classifier table, wherein the open position becomes a new current position associated with the first classifier index; and designating, by the network traffic management computing device, the current position previously associated with the first classifier index as a new open position in the network traffic handling table. - View Dependent Claims (26, 27, 28, 29)
-
Specification