|
DRCL JavaSim API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--drcl.DrclObj
|
+--drcl.comp.Component
|
+--drcl.comp.Extension
|
+--drcl.net.tool.TrafficMonitor
This component monitors incoming traffic (packets) and outputs throughput of the traffic.
It keeps a fixed-size window of packets. The throughput at current
time is then calculated by summing up the sizes of the packets in the current window
divided by the window size. Then the results are exported
every outputInterval second. The default window size is 5 seconds
and the default output interval is one second.
This component can operate in either "byte" mode, "packet" mode or both.
If the "byte" mode is enabled, the component exports the throughput, in the unit of
bit/second, or bps, at the bytecount@ port.
If the "packet" mode is enabled, it exports the throughput, in packet/second, at
the pktcount@ port.
The first exported event is in the following format (drcl.comp.contract.EventMsg):
BYTE_COUNT_EVENT) or
"Throughput (packet count)" ("packet" mode, see PKT_COUNT_EVENT).
Double.
null.
Double.
| Inner classes inherited from class drcl.comp.Component |
Component.LockPack |
| Field Summary | |
static java.lang.String |
BYTE_COUNT_EVENT
Name of the byte-mode events. |
static java.lang.String |
BYTE_COUNT_PORT_ID
ID of the port to export the byte-mode events. |
static java.lang.String |
PKT_COUNT_EVENT
Name of the packet-mode events. |
static java.lang.String |
PKT_COUNT_PORT_ID
ID of the port to export the packet-mode events. |
| Constructor Summary | |
TrafficMonitor()
|
|
TrafficMonitor(java.lang.String id_)
|
|
| Method Summary | |
void |
configure(double wsize_,
double uint_)
Configures this traffic monitor. |
void |
duplicate(java.lang.Object source_)
Duplicates the content of source_, including ID, name, child components and connections among them, to this component. |
double |
getOutputInterval()
Returns the output interval (in second). |
double |
getWindowSize()
Returns the size of the measurement window (in second). |
java.lang.String |
info()
Returns information regarding this component. |
boolean |
isByteModeEnabled()
Returns true if the "byte" mode is enabled. |
boolean |
isPktModeEnabled()
Returns true if the "packet" mode is enabled. |
protected void |
process(java.lang.Object data_,
Port inPort_)
The main callback method of a component. |
void |
reset()
Resets the component for being used anew. |
void |
setByteModeEnabled(boolean enabled_)
Enables/disables the "byte" mode. |
void |
setOutputInterval(double int_)
Sets the output interval (in second). |
void |
setPktModeEnabled(boolean enabled_)
Enables/disables the "packet" mode. |
void |
setWindowSize(double size_)
Sets the size of the measurement window (in second). |
| Methods inherited from class drcl.comp.Extension |
isExtensionEnabled, portAdded, setExtensionEnabled |
| Methods inherited from class drcl.DrclObj |
clone |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final java.lang.String PKT_COUNT_PORT_ID
public static final java.lang.String BYTE_COUNT_PORT_ID
public static final java.lang.String PKT_COUNT_EVENT
public static final java.lang.String BYTE_COUNT_EVENT
| Constructor Detail |
public TrafficMonitor()
public TrafficMonitor(java.lang.String id_)
| Method Detail |
public void reset()
Componentreset in class Componentpublic void duplicate(java.lang.Object source_)
Componentduplicate in class Component
protected void process(java.lang.Object data_,
Port inPort_)
Componentprocess in class Componentdrcl.comp.Componentdata_ - the arrival data.inPort_ - the port where the data arrives.public java.lang.String info()
Componentinfo in class Component
public void configure(double wsize_,
double uint_)
wsize_ - the window size in second.uint_ - the output interval in second.public void setOutputInterval(double int_)
public double getOutputInterval()
public void setWindowSize(double size_)
public double getWindowSize()
public void setPktModeEnabled(boolean enabled_)
public boolean isPktModeEnabled()
public void setByteModeEnabled(boolean enabled_)
public boolean isByteModeEnabled()
|
DRCL JavaSim API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||