|
DRCL J-Sim 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 |
downPort, PortGroup_DOWN, PortGroup_UP, 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. |
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()
Returns the MTUs array used by this PktDispatcher. |
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 |
isRouteBackEnabled()
|
boolean |
isRouteCacheEnabled()
|
boolean |
isRTLookup()
Returns true this PktDispatcher needs route lookup service. |
boolean |
isSwitchingEnabled()
|
boolean |
isTTLCheckEnabled()
|
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 |
resetCache()
|
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 |
setRouteBackEnabled(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. |
| Methods inherited from class drcl.net.Module |
cancelTimeout, setTimeout, setTimeoutAt |
| Methods inherited from class java.lang.Object |
equals, 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 resetCache()
public 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 ObjectCloneableclone in class DrclObjpublic java.lang.String info()
Component
info 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 setRouteBackEnabled(boolean enabled_)
public boolean isRouteBackEnabled()
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()
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_)
|
DRCL J-Sim API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||