bamboo.sim
Class TransitStub

java.lang.Object
  extended by bamboo.sim.CachingNetworkModel
      extended by bamboo.sim.TransitStub
All Implemented Interfaces:
NetworkModel

public class TransitStub
extends CachingNetworkModel

Code to use transit-stub graphs in the simulator. Unlike soss.network.TransitStub, we don't do any fancy shortest path algorithm here. Instead, we cache shortest path computations, on the assumption that most nodes only talk to a small set of other nodes most of the time, which should be true of Bamboo. One advantage of doing things this way is that simulation startup time is shorter, making this technique more appropriate for short debugging cycles. It might also be faster when the size of the graph is much larger than the number of Bamboo instances.

Version:
$Id: TransitStub.java,v 1.7 2004/01/16 23:13:33 srhea Exp $
Author:
Sean C. Rhea

Nested Class Summary
static class TransitStub.DomainId
           
static class TransitStub.Edge
           
static class TransitStub.Node
           
 
Nested classes/interfaces inherited from class bamboo.sim.CachingNetworkModel
CachingNetworkModel.SrcDst
 
Nested classes/interfaces inherited from interface bamboo.sim.NetworkModel
NetworkModel.RouteInfo
 
Field Summary
protected  TransitStub.Node[] G
           
static double INV_BW_1_Mbps
           
protected static org.apache.log4j.Logger logger
           
 
Fields inherited from class bamboo.sim.CachingNetworkModel
cache
 
Constructor Summary
TransitStub(String filename)
           
TransitStub(String filename, int cache_size, long ss_lat, long st_lat, long tt_lat, long id_lat, double ss_beta, double st_beta, double tt_beta, double id_beta)
           
 
Method Summary
protected  NetworkModel.RouteInfo the_real_compute_route_info(int src, int dst)
           
 
Methods inherited from class bamboo.sim.CachingNetworkModel
compute_route_info
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static org.apache.log4j.Logger logger

G

protected TransitStub.Node[] G

INV_BW_1_Mbps

public static final double INV_BW_1_Mbps
See Also:
Constant Field Values
Constructor Detail

TransitStub

public TransitStub(String filename)
            throws IOException
Throws:
IOException

TransitStub

public TransitStub(String filename,
                   int cache_size,
                   long ss_lat,
                   long st_lat,
                   long tt_lat,
                   long id_lat,
                   double ss_beta,
                   double st_beta,
                   double tt_beta,
                   double id_beta)
            throws IOException
Throws:
IOException
Method Detail

the_real_compute_route_info

protected NetworkModel.RouteInfo the_real_compute_route_info(int src,
                                                             int dst)
Specified by:
the_real_compute_route_info in class CachingNetworkModel