Patent ID: 8452835

Claim:
A method for managing a rate of requests for an object transmitted between a server and one or more clients via a multi-core intermediary device, the method comprising: (a) receiving, by a first packet processing engine executing on a first core of a plurality of cores of an intermediary device deployed between a plurality of clients and one or more servers, a request from a client for a first object of a plurality of objects from a server, each of the plurality of packet processing engines executing on a corresponding core of the plurality of cores, the intermediary device comprising a rate limit for a first object across the plurality of cores, the rate limit comprising a predetermined number of requests for the first object to traverse the intermediary device within a predetermined time period, the first object comprises a predetermined application layer object; (b) designating, by the intermediary device, the first core as an owner core of the first object; (c) establishing, by the first packet processing engine, a location in shared memory accessible by the plurality of cores for storing a rate related counter for the first object, the rate related counter identifying a number of requests for the first object traversing the intermediary device; (d) receiving, by a second packet processing engine executing on a second core of the plurality of cores, a second request for the first object; (e) receiving, by the second packet processing engine from the first packet processing engine, the location in shared memory; and (f) determining, by the second packet processing engine via the rate related counter obtained from the location in shared memory, whether or not the rate limit for the first object has been reached.