jgroup.relacs.config
Class TransportConfig

java.lang.Object
  extended by jgroup.relacs.config.TransportConfig
All Implemented Interfaces:
ConfigurationObject

public final class TransportConfig
extends java.lang.Object
implements ConfigurationObject

The TransportConfig class contains the configuration parameters needed by the underlying transport protocol used in Relacs.

Since:
Jgroup 0.1
Author:
Alberto Montresor, Hein Meling, Marcin Solarski

Constructor Summary
TransportConfig()
          Constructs a TransportConfig object using the default values.
TransportConfig(int payload, int multicastTTL, int alfan, int alfad, int congestionTimeout, int routingTimeout, int startingWindow, int maxWindow, int minWindow, int maxTTL, int ttlWarning, int maxPathLength, int pathLengthWarning, int localPingTimeout, int retryNo, int retryDelay)
          Constructs a TransportConfig object from the given parameters.
 
Method Summary
 int getAlfad()
          Returns the alfan parameter, which is used for computing the average round-trip time (RTT), and it determines the weight to give to the old values.
 int getAlfan()
          Returns the alfan parameter, which is used for computing the average round-trip time (RTT), and it determines the weight to give to the old values.
 int getCongestionTimeout()
          Get the time interval between two routing messages sent by a daemon.
 int getDaemonSuspectTimeout()
          Get the timeout value used to by members to suspect the daemon.
 int getLocalPingRate()
          Get the time interval between two ping messages sent by the daemon to its associated members.
 int getMaxPathLength()
          Get the max path length.
 int getMaxTTL()
          Get the maximum TTL value acceptable before considering an endpoint as unreachable.
 int getMaxWindow()
          Get the maximum size of the window
 int getMinWindow()
          Get the minimum size of the window
 int getMulticastTTL()
          Get the value of the multicast TTL used to send the packets over the multicast sockets.
 int getPathWarning()
          Get the path length warning level.
 int getPayload()
          Get the size of the payload field of application packets.
 int getReachabilityThreshold()
          Returns the reachability threshold used to evaluate the reachability of hosts within a cluster for the purpose of selecting a cluster leader.
 int getRetryDelay()
          Get the delay [in ms] between the Jgroup daemon reachibility retries.
 int getRetryNo()
          Get the number of retries of checking the reachability of other Jgroup Daemons.
 int getRoutingTimeout()
          Get the time interval between two routing messages sent by a daemon.
 int getStartingWindow()
          Get the size of the starting window
 int getTTLWarning()
          Get the TTL warning level.
 void parse(org.w3c.dom.Element elm)
          Parses the specified element.
 void setRoutingTimeout(int rt)
          Set the time interval between two routing messages sent by a daemon.
 java.lang.String toString()
          Returns a string representation of this object
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TransportConfig

public TransportConfig()
Constructs a TransportConfig object using the default values.


TransportConfig

public TransportConfig(int payload,
                       int multicastTTL,
                       int alfan,
                       int alfad,
                       int congestionTimeout,
                       int routingTimeout,
                       int startingWindow,
                       int maxWindow,
                       int minWindow,
                       int maxTTL,
                       int ttlWarning,
                       int maxPathLength,
                       int pathLengthWarning,
                       int localPingTimeout,
                       int retryNo,
                       int retryDelay)
Constructs a TransportConfig object from the given parameters.

Method Detail

parse

public void parse(org.w3c.dom.Element elm)
           throws ConfigurationException
Parses the specified element.

Specified by:
parse in interface ConfigurationObject
Throws:
ConfigurationException

getPayload

public int getPayload()
Get the size of the payload field of application packets.


getMulticastTTL

public int getMulticastTTL()
Get the value of the multicast TTL used to send the packets over the multicast sockets. The TTL determines the administrative scope of the ip multicast used for group member communication. It can have value in range from 1 (scope of LAN) to 16 (world-wide scope). Use this param with care. The default value is set to 2 which allows for deploying group memebers in adjacent networks (connected to the same router).

Since:
Jgroup 2.1

getAlfan

public int getAlfan()
Returns the alfan parameter, which is used for computing the average round-trip time (RTT), and it determines the weight to give to the old values. The formula used is given in updateTimeout.

See Also:
MssHost.updateTimeout(int)

getAlfad

public int getAlfad()
Returns the alfan parameter, which is used for computing the average round-trip time (RTT), and it determines the weight to give to the old values. The formula used is given in updateTimeout.

See Also:
MssHost.updateTimeout(int)

getRoutingTimeout

public int getRoutingTimeout()
Get the time interval between two routing messages sent by a daemon.


setRoutingTimeout

public void setRoutingTimeout(int rt)
Set the time interval between two routing messages sent by a daemon.


getCongestionTimeout

public int getCongestionTimeout()
Get the time interval between two routing messages sent by a daemon.


getDaemonSuspectTimeout

public int getDaemonSuspectTimeout()
Get the timeout value used to by members to suspect the daemon. This value is related to the ping frequency of the members. It is a factor two longer than the local ping frequency.

See Also:
getLocalPingRate()

getLocalPingRate

public int getLocalPingRate()
Get the time interval between two ping messages sent by the daemon to its associated members.


getStartingWindow

public int getStartingWindow()
Get the size of the starting window


getMaxWindow

public int getMaxWindow()
Get the maximum size of the window


getMinWindow

public int getMinWindow()
Get the minimum size of the window


getReachabilityThreshold

public int getReachabilityThreshold()
Returns the reachability threshold used to evaluate the reachability of hosts within a cluster for the purpose of selecting a cluster leader. Currently, the threshold is set to half the maxTTL value specified in the XML configuration. Note that this value should never exceed the maxTTL value.


getMaxTTL

public int getMaxTTL()
Get the maximum TTL value acceptable before considering an endpoint as unreachable.


getTTLWarning

public int getTTLWarning()
Get the TTL warning level.


getMaxPathLength

public int getMaxPathLength()
Get the max path length.


getPathWarning

public int getPathWarning()
Get the path length warning level.


getRetryNo

public int getRetryNo()
Get the number of retries of checking the reachability of other Jgroup Daemons. An example working value for a LAN environment with Intel Pentium II 333Mhz amounts to 6.

Since:
Jgroup 2.1

getRetryDelay

public int getRetryDelay()
Get the delay [in ms] between the Jgroup daemon reachibility retries. This parameter allows for tuning the speed of coming to a conclusion on suspecting other Jgroup daemons to be down. The optimal value of this parameter strongly depends on the CPU power of the hosts where the Jgroup daemons (and group memebers) run as well as the network characteristics of the links between them (max return trip time). An example working value for a LAN environment with Intel Pentium II 333Mhz amounts to 300 ms.

Since:
Jgroup 2.1

toString

public java.lang.String toString()
Returns a string representation of this object

Overrides:
toString in class java.lang.Object


Copyright © 1998-2006 The Jgroup/ARM development team. All Rights Reserved.