DRCL J-Sim API

drcl.inet.protocol.cbt
Class CBTTimingPack

java.lang.Object
  extended bydrcl.inet.protocol.cbt.CBTTimingPack

public class CBTTimingPack
extends java.lang.Object

Defines all the timing parameters used by CBT. Refer to draft-ietf-idmr-cbt-spec-v3-01.txt for the default values and formula. The values that are defined in the draft but not defined here are [HelloInterval], [HelloPreference] and [DrTransTimer].


Constructor Summary
CBTTimingPack()
          See all the getter methods for the default values.
CBTTimingPack(double holdTime_, int maxRtx_, double rtxInterval_, double echoIntervalBase_)
          Default formula for other values: [JoinTimeout] = 3.5 * [RtxInterval] [TransientTimeout] = [JoinTimeout] [ChildDelTimer] = 1.5 * [HoldTime] [UpstreamExpireTime] = [MaxRtx] * [RtxInterval] + [HoldTime] [DownStreamExpireTimeBase] = [UpstreamExpireTime] +[EchoIntervalBase]
CBTTimingPack(double holdTime_, int maxRtx_, double rtxInterval_, double joinTimeout_, double transientTimeout_, double childDelTimer_, double upstreamExpireTime_, double downstreamExpireTimeBase_, double echoIntervalBase_)
           
 
Method Summary
 double getChildDelTimer()
          Remove child interface from forwarding cache.
 double getDownstreamExpireTime()
          Not heard from child, time to remove child interface.
 double getDownstreamExpireTimeBase()
          Not heard from child, base time to remove child interface.
 double getEchoInterval()
          Interval between sending ECHO_REQUEST to parent routers.
 double getEchoIntervalBase()
          Base interval between sending ECHO_REQUEST to parent routers.
 double getEchoRtxTime()
          Echo request rtx timer.
 double getHoldtime()
          Generic response interval.
 double getJoinTimeout()
          Raise exception deu to tree join failure.
 int getMaxRtx()
          Default maximum number of retransmissions.
 double getRtxInterval()
          Message retransmission time.
 double getTransientTimeout()
          delete (unconfirmed) transient state.
 double getUpstreamExpireTime()
          Time to send a QUIT-NOTIFICATION to the non-responding parent.
 java.lang.String info()
           
 void setChildDelTimer(double v_)
           
 void setDownstreamExpireTimeBase(double v_)
           
 void setEchoIntervalBase(double v_)
           
 void setHoldtime(double holdtime_)
           
 void setJoinTimeout(double v_)
           
 void setMaxRtx(int v_)
           
 void setRandomSeed(long seed_)
          Random seed for generating rnd for [EchoInterval].
 void setRtxInterval(double v_)
           
 void setTransientTimeout(double v_)
           
 void setUpstreamExpireTime(double v_)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CBTTimingPack

public CBTTimingPack()
See all the getter methods for the default values.


CBTTimingPack

public CBTTimingPack(double holdTime_,
                     int maxRtx_,
                     double rtxInterval_,
                     double echoIntervalBase_)
Default formula for other values:


CBTTimingPack

public CBTTimingPack(double holdTime_,
                     int maxRtx_,
                     double rtxInterval_,
                     double joinTimeout_,
                     double transientTimeout_,
                     double childDelTimer_,
                     double upstreamExpireTime_,
                     double downstreamExpireTimeBase_,
                     double echoIntervalBase_)
Method Detail

getHoldtime

public double getHoldtime()
Generic response interval. Default: 3 seconds.


getMaxRtx

public int getMaxRtx()
Default maximum number of retransmissions. Default: 3.


getRtxInterval

public double getRtxInterval()
Message retransmission time. Default: 5 seconds.


getJoinTimeout

public double getJoinTimeout()
Raise exception deu to tree join failure. Default: (3.5 * [RtxInterval]) seconds.


getTransientTimeout

public double getTransientTimeout()
delete (unconfirmed) transient state. Default: [JoinTimeout] seconds.


getChildDelTimer

public double getChildDelTimer()
Remove child interface from forwarding cache. Default: (1.5*[HoldTime]) seconds.


getUpstreamExpireTime

public double getUpstreamExpireTime()
Time to send a QUIT-NOTIFICATION to the non-responding parent. Default: ([MaxRtx]*[RtxInterval] + [HoldTime]) seconds.


getDownstreamExpireTimeBase

public double getDownstreamExpireTimeBase()
Not heard from child, base time to remove child interface. Default: ([EchoIntervalBase] + [UpstreamExpireTime]) seconds.


getEchoIntervalBase

public double getEchoIntervalBase()
Base interval between sending ECHO_REQUEST to parent routers. Default: 60 seconds.


getDownstreamExpireTime

public double getDownstreamExpireTime()
Not heard from child, time to remove child interface. Default: ([EchoInterval] + [UpstreamExpireTime]) seconds.


getEchoInterval

public double getEchoInterval()
Interval between sending ECHO_REQUEST to parent routers. Default: (60 + rnd) seconds, where rnd is between 0 and [HoldTime] seconds.


getEchoRtxTime

public double getEchoRtxTime()
Echo request rtx timer. Default: [HoldTime] seconds.


setRandomSeed

public void setRandomSeed(long seed_)
Random seed for generating rnd for [EchoInterval].

See Also:
getEchoInterval()

setHoldtime

public void setHoldtime(double holdtime_)

setMaxRtx

public void setMaxRtx(int v_)

setRtxInterval

public void setRtxInterval(double v_)

setJoinTimeout

public void setJoinTimeout(double v_)

setTransientTimeout

public void setTransientTimeout(double v_)

setChildDelTimer

public void setChildDelTimer(double v_)

setUpstreamExpireTime

public void setUpstreamExpireTime(double v_)

setDownstreamExpireTimeBase

public void setDownstreamExpireTimeBase(double v_)

setEchoIntervalBase

public void setEchoIntervalBase(double v_)

info

public java.lang.String info()

DRCL J-Sim API

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