|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--gov.nist.antd.mpls.mgmt.mpls_interface.MPLSTrafficPolicy
MPLS Traffic Policy module.
The MPLS Traffic Policy module provedes a function for packet drop to
discard a packet that exceed the MPLS Traffic Parameters.
It consists of three token bucket, PBS token bucket, CBS token bucket
and EBS token bucket.
The Concept of the MPLSTrafficPolicy module is as follows
Traffic Parameters
PDR : Peak Data Rate
PBS : Peak Burst Size
CDR : Committed Data Rate
CBS : Committed Burst Size
EBS : Excess Burst Size
Token Rate PDR CDR
| |
| +-----------------+
+------ | | | | | | | | |
| | | | | | |
Token | | | | | |=====|
Bucket | +- |=====|PBS Token | |CBS Token |=====| EBS Token
Size | token | |=====|Bucket | |Bucket |=====| Bucket
| size | |=====| |=====| |=====|
PBS | | |=====| |=====| |=====|
CBS | | |=====| |=====| |=====|
EBS +----- +- +-----+ +-----+ +-----+
| +-----+ +----+
| | |
(1) packet +-----------+ +-----------+
arrival ---->| packet | --------> | packet | ----------> Packet Forwarding
+-----------+ +-----------+
| |
Packet drop packet drop
(2) IF Packet size <= PBS token size (3) IF Packet Size <= CBS token size
sends to the next test.. Packet Forwarding
Else Else IF Packet Size <= EBS
Packet drop Marking and Packet Forwarding
Else
Packet drop
This class was developed at the National Institute of Standards and Technology by employees of the Federal Government in the course of their official duties. Pursuant to title 17 Section 105 of the United States Code this software is not subject to copyright protection and is in the public domain. NIST assumes no responsibility whatsoever for its use by other parties, and makes no guarantees, expressed or implied, about its quality, reliability, or any other characteristic.
We would appreciate acknowledgement if the software is used.
NIST ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION AND DISCLAIM ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
| Field Summary | |
double |
bitrate
Field bitrate |
double |
CBS
Field CBS |
double |
CBSTokenBucket
Field CBSTokenBucket |
double |
CDR
Field CDR |
double |
EBS
Field EBS |
double |
EBSTokenBucket
Field EBSTokenBucket |
java.lang.String |
ID
Field ID |
private long |
lastCheckTime
|
ProtocolGraph |
localNode
Field localNode - Local Node Object |
double |
PBS
Field PBS |
double |
PBSTokenBucket
Field PBSTokenBucket |
double |
PDR
Field PDR |
double |
PeakRate
Field PeakRate - Peak Rate |
int |
pktCount
Field pktCount - Packet count |
int |
pktDropCount
Field pktDropCount - Dropped packet count |
double |
pktDropsBytes
Field pktDropsBytes - Dropped packet bytes count |
long |
startTime
Field startTime |
double |
totalBytes
Field totalBytes |
| Constructor Summary | |
MPLSTrafficPolicy(ProtocolGraph g,
double peakrate,
double pdr,
double pbs,
double cdr,
double cbs,
double ebs)
Constructor MPLSTrafficPolicy |
|
| Method Summary | |
boolean |
checkCDR(ProtocolMessage msg)
Method checkCDR Check CDR |
void |
checkMark(ProtocolMessage msg)
Method checkMark Set mark in the packet |
boolean |
checkTrafficParameters(ProtocolMessage msg)
Method checkTrafficParameters Check conformance to traffic policy |
double |
getNumberOfBitsInQueue()
Returns queue size in bits at the moment of calling. |
void |
modifyTrafficParms(double peakrate,
double pdr,
double pbs,
double cdr,
double cbs,
double ebs)
Method modifyTrafficParms Modify the traffic parameters |
boolean |
trafficPolicyTest(ProtocolMessage msg)
Method trafficPolicyTest Update packet count and dropped packet count |
void |
updateTokenBucket()
Method updateTokenBucket Update Token Bucket parameters |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private long lastCheckTime
public ProtocolGraph localNode
public java.lang.String ID
public int pktCount
public int pktDropCount
public double pktDropsBytes
public double PeakRate
public double PDR
public double PBS
public double CDR
public double CBS
public double EBS
public double PBSTokenBucket
public double CBSTokenBucket
public double EBSTokenBucket
public double totalBytes
public long startTime
public double bitrate
| Constructor Detail |
public MPLSTrafficPolicy(ProtocolGraph g,
double peakrate,
double pdr,
double pbs,
double cdr,
double cbs,
double ebs)
g - Local Nodepeakrate - Packe Ratepdr - pbs - cdr - cbs - ebs - | Method Detail |
public void modifyTrafficParms(double peakrate,
double pdr,
double pbs,
double cdr,
double cbs,
double ebs)
peakrate - pdr - pbs - cdr - cbs - ebs - public void updateTokenBucket()
public boolean trafficPolicyTest(ProtocolMessage msg)
msg -
public boolean checkTrafficParameters(ProtocolMessage msg)
msg -
public boolean checkCDR(ProtocolMessage msg)
msg -
public void checkMark(ProtocolMessage msg)
msg - public double getNumberOfBitsInQueue()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||