|
J-Sim v1.2.1-p7 API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectdrcl.DrclObj
drcl.comp.Component
drcl.net.Module
drcl.inet.core.PktDispatcher
Implements the packet dispatcher component in the inet router architecture. Fragmentation is simulated, but not yet emulated.
PktSending,
PktDelivery,
IDLookup,
RTLookup,
Serialized Form| Nested Class Summary |
| Nested classes inherited from class drcl.comp.Component |
Component.Locks |
| Field Summary | |
static int |
DEBUG_FRAGMENT
|
static int |
DEBUG_PIP
|
static int |
DEBUG_REASSEMBLE
|
| Fields inherited from class drcl.net.Module |
address, downPort, PortGroup_DOWN, PortGroup_UP, timerPort, upPort |
| Fields inherited from interface drcl.inet.core.InetCoreConstants |
CONFIG_PORT_ID, PULL_PORT_ID |
| Constructor Summary | |
PktDispatcher()
|
|
PktDispatcher(java.lang.String id_)
|
|
| Method Summary | |
int |
_getMTU(int index_)
|
int |
_getSequenceNo()
|
void |
_setMTU(int index_,
int mtu_)
|
void |
_setMTUs(int mtu_)
Sets the maximum fragmentation size at all interfaces. |
void |
_setSequenceNo(int sn_)
|
void |
bind(Identity id_)
|
void |
bind(RT rt_)
|
java.lang.Object |
clone()
Returns a clone of this object. |
protected void |
dataArriveAtDownPort(java.lang.Object data_,
Port downPort_)
The handler invoked when a packet arrives at a "down" port. |
protected void |
dataArriveAtUpPort(java.lang.Object data_,
Port upPort_)
The handler invoked when a packet arrives at an "up" port. |
void |
duplicate(java.lang.Object source_)
Duplicates the content of source_, including ID, name, child components and connections among them, to this component. |
java.lang.String[] |
getDebugLevelNames()
Returns the names of defined debug levels; subclasses should override this method if debug levels are defined. |
double |
getFragmentTTL()
|
int |
getHeaderSize()
|
int[][][] |
getLabelSwitches()
Returns the label switching incoming label map. |
int[] |
getMTUs()
|
int |
getRouteCacheSize()
|
int[] |
getSwitches()
Returns the switching cross connect table. |
VIFPack |
getVIFs()
Returns the VIF pack data structure regarding the VIF setup on this component. |
java.lang.String |
info()
Returns information regarding this component. |
boolean |
isFragmentEnabled()
|
boolean |
isLabelSwitchingEnabled()
|
boolean |
isPIPEnabled()
|
boolean |
isRouteCacheEnabled()
|
boolean |
isRTLookup()
Returns true this PktDispatcher needs route lookup service. |
boolean |
isSwitchingEnabled()
|
boolean |
isTTLCheckEnabled()
|
protected void |
portAdded(Port p_)
The hookup method for subclasses to handle the event when the port p_ is added to the component. |
void |
removeLabelSwitch(int incomingIf_,
int incomingLabel_)
Removes the label switching incoming label map entry at the incoming interface and the incoming label. |
void |
removeLabelSwitches(int incomingIf_)
Removes the label switching incoming label map entry at the incoming interface. |
void |
removeSwitch(int incomingIf_)
Removes the switching cross connect table entry at the incoming interface. |
void |
reset()
Resets the component for being used anew. |
void |
setFragmentEnabled(boolean enabled_)
|
void |
setFragmentTTL(double ttl_)
|
void |
setHeaderSize(int hsize_)
|
void |
setLabelSwitch(int incomingIf_,
int[][] switch_)
Sets the label switching incoming label map entry at the incoming interface. |
void |
setLabelSwitch(int incomingIf_,
int incomingLabel_,
int outgoingIf_,
int outgoingLabel_)
Sets the label switching incoming label map entry at the incoming interface and the incoming label. |
void |
setLabelSwitches(int[][][] map_)
Sets the label switching incoming label map. |
void |
setLabelSwitchingEnabled(boolean enabled_)
|
void |
setMTUs(int[] mtu_)
|
void |
setPIPEnabled(boolean enabled_)
|
void |
setRouteCacheEnabled(boolean enabled_)
|
void |
setRouteCacheSize(int size_)
|
void |
setSwitch(int incomingIf_,
int outgoingIf_)
Sets the switching cross connect table entry at the incoming interface. |
void |
setSwitches(int[] connectTable_)
Sets the switching cross connect table. |
void |
setSwitchingEnabled(boolean enabled_)
|
void |
setTTLCheckEnabled(boolean v_)
|
void |
setVIF(int vif_,
long peer_)
Adds a virtual interface and the corresponding up port to this component. |
void |
setVIF(int vif_,
long myself_,
long peer_)
Adds a virtual interface and the corresponding up port to this component. |
void |
setVIFs(VIFPack pack_)
Installs the VIF pack on this component. |
protected void |
timeout(java.lang.Object data_)
The handler invoked when a timeout event occurs. |
| Methods inherited from class drcl.net.Module |
cancelTimeout, deliver, getAddress, process, processOther, removeDefaultDownPort, removeDefaultUpPort, removeTimerPort, setAddress, setTimeout, setTimeoutAt |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final int DEBUG_FRAGMENT
public static final int DEBUG_REASSEMBLE
public static final int DEBUG_PIP
| Constructor Detail |
public PktDispatcher()
public PktDispatcher(java.lang.String id_)
| Method Detail |
public java.lang.String[] getDebugLevelNames()
Component
getDebugLevelNames in class Componentpublic void reset()
Component
reset in class Componentpublic void duplicate(java.lang.Object source_)
Component
duplicate in interface ObjectDuplicableduplicate in class Modulepublic java.lang.Object clone()
DrclObjDrclObj.duplicate(Object) to duplicate the content of this object to
the newly-created one.
This method uses getClass().newInstance() to create
new instance. Hence,
subclasses need to override this method only if the subclass is not
declared as public or does not have explicit no-argument constructor.
A subclass may override this method for performance reason.
clone in interface ObjectDuplicableclone in class DrclObjpublic java.lang.String info()
Component
info in class Componentprotected void portAdded(Port p_)
Componentp_ is added to the component.
portAdded in class Componentpublic void bind(Identity id_)
public void bind(RT rt_)
public boolean isTTLCheckEnabled()
public final void setTTLCheckEnabled(boolean v_)
public void setFragmentEnabled(boolean enabled_)
public boolean isFragmentEnabled()
public void setPIPEnabled(boolean enabled_)
public boolean isPIPEnabled()
public void setRouteCacheEnabled(boolean enabled_)
public boolean isRouteCacheEnabled()
public void setSwitchingEnabled(boolean enabled_)
public boolean isSwitchingEnabled()
public void setLabelSwitchingEnabled(boolean enabled_)
public boolean isLabelSwitchingEnabled()
public void setRouteCacheSize(int size_)
public int getRouteCacheSize()
public void setHeaderSize(int hsize_)
public int getHeaderSize()
public boolean isRTLookup()
public void _setSequenceNo(int sn_)
public int _getSequenceNo()
public double getFragmentTTL()
public void setFragmentTTL(double ttl_)
public void _setMTU(int index_,
int mtu_)
public void _setMTUs(int mtu_)
public int _getMTU(int index_)
public void setMTUs(int[] mtu_)
public int[] getMTUs()
protected void timeout(java.lang.Object data_)
Module
timeout in class ModuleModule.setTimeout(Object, double),
Module.setTimeoutAt(Object, double)
protected void dataArriveAtUpPort(java.lang.Object data_,
Port upPort_)
Module
dataArriveAtUpPort in class Module
protected void dataArriveAtDownPort(java.lang.Object data_,
Port downPort_)
Module
dataArriveAtDownPort in class Module
public void setVIF(int vif_,
long peer_)
public void setVIF(int vif_,
long myself_,
long peer_)
public void setVIFs(VIFPack pack_)
public VIFPack getVIFs()
public void setSwitches(int[] connectTable_)
public int[] getSwitches()
public void setSwitch(int incomingIf_,
int outgoingIf_)
public void removeSwitch(int incomingIf_)
public void setLabelSwitches(int[][][] map_)
public int[][][] getLabelSwitches()
public void setLabelSwitch(int incomingIf_,
int[][] switch_)
public void setLabelSwitch(int incomingIf_,
int incomingLabel_,
int outgoingIf_,
int outgoingLabel_)
public void removeLabelSwitches(int incomingIf_)
public void removeLabelSwitch(int incomingIf_,
int incomingLabel_)
|
J-Sim v1.2.1-p7 API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||