System and method for performing distributed policing
AssigneeCisco Technology, Inc.
InventorKetan Padwekar
Life of this patent
Estimating the term…
Abstract
Various systems and methods that synchronize local copies of a variable used in a distributed algorithm, such as that used in distributed policing, are disclosed. For example, one system includes several distributed algorithm participants that are coupled to communicate with each other. Each of the each of the distributed algorithm participants maintains a shared variable in order to implement the distributed algorithm. One of the distributed algorithm participants is a synchronizer. The synchronizer is configured to calculate a new value of the shared variable and to communicate the new value to each of the other distributed algorithm participants. The distributed algorithm can be a distributed policing algorithm, and the shared variable can be a global bucket.
Claims22
A system comprising:
- a plurality of distributed algorithm participants, wherein
- the distributed algorithm participants are coupled to communicate with each other,
- each of the distributed algorithm participants is configured to implement a distributed algorithm,
- each of the distributed algorithm participants maintains a shared variable in order to implement the distributed algorithm,
- the distributed algorithm participants comprise a synchronizer participant and a non-synchronizer participant, and
- the synchronizer participant is configured to calculate a new value of the shared variable and to communicate the new value to the non-synchronizer participant.
A system comprising:
- a plurality of policers, wherein
- the policers comprise a synchronizer policer and a non-synchronizer policer,
- the policers are configured to perform distributed policing based on a global bucket variable,
- the synchronizer policer is configured to calculate a new value of the global bucket variable and to send the new value to the non-synchronizer policer.
A system comprising:
- a policer, the policer comprising:
- a first local update packet module;
- and
- a global bucket update module coupled to the first local update module, wherein the first local update packet module is configured to send a first local
- update packet, the first local update packet comprising a measure of traffic permitted by the policer,
- a global update packet received by the policer comprises a new value of a global bucket, and
- the global bucket update module is configured to update a local copy of the global bucket to equal the new value of the global bucket included in the global update packet.
A system comprising:
- a synchronizer policer, the synchronizer policer comprising:
- an interface;
- and
- a global update packet module coupled to the interface, wherein
- the interface is configured to receive a local update packet, the local update packet comprising a local measure of permitted traffic,
- the global update packet module is configured to calculate a new value of a global bucket based on the local measure of permitted traffic, and
- the global update packet module is configured to send the new value of the global bucket to each of a plurality of policers participating in distributed policing for a particular traffic class.
A method comprising:
- receiving a global update packet comprising a new value of a global bucket, wherein the global bucket is used to police traffic in a network;
- and
- updating the global bucket to equal the new value included in the global update packet.
A system comprising:
- means for receiving a global update packet comprising a new value of a global bucket, wherein
- the global bucket is used to police traffic in a network;
- and
- means for updating the global bucket to equal the new value included in the global update packet.
Dependencies are inferred from the claim text.