DRCL J-Sim API

drcl.intserv.scheduler
Class scheduler_SFQ

java.lang.Object
  extended bydrcl.DrclObj
      extended bydrcl.comp.Component
          extended bydrcl.comp.queue.ActiveQueue
              extended bydrcl.inet.core.Queue
                  extended bydrcl.intserv.Scheduler
                      extended bydrcl.intserv.scheduler.scheduler_SFQ
All Implemented Interfaces:
java.lang.Cloneable, InetConstants, InetCoreConstants, ObjectCloneable, ObjectDuplicable, java.io.Serializable, Wrapper

public class scheduler_SFQ
extends Scheduler

The Start-time Fair Queueing scheduler. Accepts any type of Rspec.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class drcl.comp.Component
Component.Locks
 
Field Summary
 
Fields inherited from class drcl.intserv.Scheduler
AVAILABLE_ACTUAL_QoS, AVAILABLE_ALLOCATED_QoS, AVAILABLE_BE, BUFFER_CHANGE_EVENT_NAME, BUFFER_CHANGE_EVENT_PORT, BW_CHANGE_EVENT_NAME, BW_CHANGE_EVENT_PORT, mtu, pktLossRate
 
Fields inherited from class drcl.comp.queue.ActiveQueue
OUTPUT_PORT_ID
 
Fields inherited from class drcl.comp.Component
FLAG_COMPONENT_NOTIFICATION, FLAG_DEBUG_ENABLED, FLAG_DIRECT_OUTPUT_ENABLED, FLAG_ENABLED, FLAG_ERROR_ENABLED, FLAG_EVENT_ENABLED, FLAG_GARBAGE_DISPLAY_ENABLED, FLAG_GARBAGE_ENABLED, FLAG_PORT_NOTIFICATION, FLAG_STARTED, FLAG_STOPPED, FLAG_TRACE_ENABLED, FLAG_UNDEFINED_START, id, infoPort, locks, name, parent, PortGroup_DEFAULT_GROUP, PortGroup_EVENT, PortGroup_SERVICE, Root, Trace_DATA, Trace_SEND
 
Fields inherited from interface drcl.inet.core.InetCoreConstants
CONFIG_PORT_ID, PULL_PORT_ID
 
Fields inherited from interface drcl.inet.InetConstants
BYTE_MODE, DEFAULT_BANDWIDTH, DEFAULT_BUFFER_SIZE, DEFAULT_MTU, EVENT_ID_CHANGED_PORT_ID, EVENT_IDENTITY_ADDED, EVENT_IDENTITY_REMOVED, EVENT_IF_NEIGHBOR_DOWN, EVENT_IF_NEIGHBOR_UP, EVENT_IF_PORT_ID, EVENT_LINK_BROKEN, EVENT_LINK_BROKEN_PORT_ID, EVENT_MCAST_HOST_PORT_ID, EVENT_PKT_ARRIVAL, EVENT_PKT_ARRIVAL_PORT_ID, EVENT_RT_ENTRY_ADDED, EVENT_RT_ENTRY_MODIFIED, EVENT_RT_ENTRY_REMOVED, EVENT_RT_MCAST_CHANGED_PORT_ID, EVENT_RT_UCAST_CHANGED_PORT_ID, EVENT_VIF_NEIGHBOR_DOWN, EVENT_VIF_NEIGHBOR_UP, EVENT_VIF_PORT_ID, HOST_ENTRY_EXT, ID_CSL, ID_TRACE_RT, MCAST_QUERY_PORT_ID, PACKET_MODE, PID_AODV, PID_DV, PID_DVMRP, PID_HELLO, PID_IGMP, PID_OSPF, PID_RSVP, PID_TCP, PID_TRACE_RT, PID_UDP, SERVICE_CONFIGSW_PORT_ID, SERVICE_ID_PORT_ID, SERVICE_IF_PORT_ID, SERVICE_MCAST_PORT_ID, SERVICE_RT_PORT_ID, UCAST_QUERY_PORT_ID
 
Constructor Summary
scheduler_SFQ()
           
scheduler_SFQ(java.lang.String id_)
           
 
Method Summary
 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 info()
          Returns information regarding this component.
 SpecFlow removeFlowspec(int handle_)
          Event handler when the receive the FLOW_TEARDOWN message.
 void reset()
          Resets the component for being used anew.
 int setFlowspec(int handle_, long[] tos_, long[] tosmask_, SpecFlow fspec_)
          Set up flow pertaining data structure; Activate flow; Reply to Admission.
 
Methods inherited from class drcl.intserv.Scheduler
addFlowspec, addFlowspec, addFlowspec, addShaper, allocateBuffer, configure, dequeue, enqueue, freeBuffer, getAdmission, getAllFlowspecs, getAllRspecs, getAvailableBuffer, getAvailableBW, getAvailableCapacity, getAvailableQoSBuffer, getBufferRatio, getBW, getBWRatio, getCapacity, getCurrentLoad, getCurrentLoadByPercentage, getFlowspec, getFlowspec, getMTU, getObject, getPktLossRate, getPropDelay, getRspec, getRspec, getSize, getToSMask, isDegradedQoSEnabled, isEmpty, isFull, releaseBW, releaseQoSBuffer, removeAllFlowspecs, removeShaper, resvBW, resvinfo, resvQoSBuffer, setAdmission, setBufferRatio, setBW, setBWRatio, setCapacity, setDegradedQoSEnabled, setMTU, setPktLossRate, setToSMask
 
Methods inherited from class drcl.inet.core.Queue
getMode, info, setMode
 
Methods inherited from class drcl.comp.queue.ActiveQueue
enqueueAt, firstElement, getAvailableSize, increaseEnqueCount, lastElement, peekAt, retrieveAt
 
Methods inherited from class drcl.comp.Component
addComponent, addComponent, addEventPort, addEventPort, addForkPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addServerPort, addServerPort, cancelFork, connect, containsComponent, containsComponent, containsPort, debug, disconnectAll, disconnectAllPeers, disconnectAllPorts, drop, drop, error, error, expose, exposeEventPorts, exposePort, exposePort, exposePort, exposePort, exposePort, findAvailable, findAvailable, findAvailable, fork, forkAt, getAllComponents, getAllPorts, getAllPorts, getAllWiresInside, getAllWiresInsideOut, getAllWiresOut, getComponent, getComponentFlag, getComponentFlag, getContract, getContractHT, getContractHT, getDebugFlagsInBinary, getDebugLevelNames, getID, getName, getParent, getPort, getPort, getRoot, getTime, iduplicate, isAncestorOf, isContainer, isDebugEnabled, isDebugEnabledAt, isDirectlyRelatedTo, isDirectOutputEnabled, isEnabled, isErrorNoticeEnabled, isEventExportEnabled, isGarbageDisplayEnabled, isGarbageEnabled, isPortRemovable, isStarted, isStopped, isTraceEnabled, lock, notify, notifyAll, operate, reboot, removeAll, removeAllComponents, removeAllPorts, removeAllPorts, removeComponent, removeComponent, removePort, removePort, removePort, resume, run, sduplicate, send, sendAt, setComponentFlag, setComponentFlag, setDebugEnabled, setDebugEnabled, setDebugEnabledAt, setDebugEnabledAt, setDebugEnabledAt, setDirectOutputEnabled, setDirectOutputEnabled, setEnabled, setErrorNoticeEnabled, setErrorNoticeEnabled, setEventExportEnabled, setEventExportEnabled, setExecutionBoundary, setGarbageDisplayEnabled, setGarbageDisplayEnabled, setGarbageEnabled, setGarbageEnabled, setID, setID, setName, setPort, setPort, setTraceEnabled, setTraceEnabled, sleepFor, sleepUntil, stop, toString, unexpose, unlock, useLocalForkManager, useLocalForkManager, wait
 
Methods inherited from class drcl.DrclObj
clone
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

scheduler_SFQ

public scheduler_SFQ()

scheduler_SFQ

public scheduler_SFQ(java.lang.String id_)
Method Detail

reset

public void reset()
Description copied from class: Component
Resets the component for being used anew. All the internal variables must be set to the initial state. All the ports and child components are reset as well.

Overrides:
reset in class Scheduler

duplicate

public void duplicate(java.lang.Object source_)
Description copied from class: Component
Duplicates the content of source_, including ID, name, child components and connections among them, to this component. Subclasses need to override this method to copy its own variables.

Specified by:
duplicate in interface ObjectDuplicable
Overrides:
duplicate in class Scheduler

setFlowspec

public int setFlowspec(int handle_,
                       long[] tos_,
                       long[] tosmask_,
                       SpecFlow fspec_)
Set up flow pertaining data structure; Activate flow; Reply to Admission. Install reserved information in local database B. note: index according to the handle #.

Overrides:
setFlowspec in class Scheduler
Returns:
the handle.

removeFlowspec

public SpecFlow removeFlowspec(int handle_)
Event handler when the receive the FLOW_TEARDOWN message.

Overrides:
removeFlowspec in class Scheduler

info

public java.lang.String info()
Description copied from class: Component
Returns information regarding this component. Subclasses should override this method to provide useful information at run time.

Overrides:
info in class Scheduler

DRCL J-Sim API

Copyright © 1998-2003 Distributed Real-time Computing Lab (DRCL). All Rights Reserved.     ~ To J-Sim Home ~