Author: mrogers
Date: 2006-10-31 14:32:55 +0000 (Tue, 31 Oct 2006)
New Revision: 10752
Added:
trunk/apps/load-balancing-sims/phase7/sim/generators/
Modified:
trunk/apps/load-balancing-sims/phase7/sim/Node.java
trunk/apps/load-balancing-sims/phase7/sim/Peer.java
trunk/apps/load-balancing-sims/phase7/sim/Sim.java
Log:
Hangs mysteriously
Modified: trunk/apps/load-balancing-sims/phase7/sim/Node.java
===================================================================
--- trunk/apps/load-balancing-sims/phase7/sim/Node.java 2006-10-31 11:35:46 UTC
(rev 10751)
+++ trunk/apps/load-balancing-sims/phase7/sim/Node.java 2006-10-31 14:32:55 UTC
(rev 10752)
@@ -408,23 +408,23 @@
public void handleEvent (int type, Object data)
{
switch (type) {
- case GENERATE_CHK_REQUEST:
+ case REQUEST_CHK:
generateChkRequest ((Integer) data);
break;
- case GENERATE_CHK_INSERT:
+ case INSERT_CHK:
generateChkInsert ((Integer) data);
break;
- case GENERATE_SSK_REQUEST:
+ case REQUEST_SSK:
generateSskRequest ((Integer) data);
break;
- case GENERATE_SSK_INSERT:
+ case INSERT_SSK:
generateSskInsert ((Integer) data, 0);
break;
- case GENERATE_SSK_COLLISION:
+ case SSK_COLLISION:
generateSskInsert ((Integer) data, 1);
case CHECK_TIMEOUTS:
@@ -434,10 +434,10 @@
}
// Each EventTarget class has its own event codes
- public final static int GENERATE_CHK_REQUEST = 1;
- public final static int GENERATE_CHK_INSERT = 2;
- public final static int GENERATE_SSK_REQUEST = 3;
- public final static int GENERATE_SSK_INSERT = 4;
- public final static int GENERATE_SSK_COLLISION = 5;
+ public final static int REQUEST_CHK = 1;
+ public final static int INSERT_CHK = 2;
+ public final static int REQUEST_SSK = 3;
+ public final static int INSERT_SSK = 4;
+ public final static int SSK_COLLISION = 5;
private final static int CHECK_TIMEOUTS = 6;
}
Modified: trunk/apps/load-balancing-sims/phase7/sim/Peer.java
===================================================================
--- trunk/apps/load-balancing-sims/phase7/sim/Peer.java 2006-10-31 11:35:46 UTC
(rev 10751)
+++ trunk/apps/load-balancing-sims/phase7/sim/Peer.java 2006-10-31 14:32:55 UTC
(rev 10752)
@@ -310,7 +310,7 @@
public void log (String message)
{
- Event.log (node.net.address + ":" + address + " " + message);
+ // Event.log (node.net.address + ":" + address + " " + message);
}
public String toString()
Modified: trunk/apps/load-balancing-sims/phase7/sim/Sim.java
===================================================================
--- trunk/apps/load-balancing-sims/phase7/sim/Sim.java 2006-10-31 11:35:46 UTC
(rev 10751)
+++ trunk/apps/load-balancing-sims/phase7/sim/Sim.java 2006-10-31 14:32:55 UTC
(rev 10752)
@@ -1,11 +1,13 @@
package sim;
+import sim.generators.SimplePublisher;
class Sim
{
private final int NODES = 100; // Number of nodes
private final int DEGREE = 4; // Average degree
private final double SPEED = 20000; // Bytes per second
- private final double LATENCY = 0.1; // Seconds
+ private final double LATENCY = 0.1; // Latency of all links in seconds
+ private final double RATE = 0.01; // Inserts per second
private Node[] nodes;
public Sim()
@@ -20,17 +22,16 @@
// Connect the nodes
makeKleinbergNetwork();
- int key = Node.locationToKey (Math.random());
- Event.schedule (nodes[0], 0.0,
- Node.GENERATE_CHK_INSERT, key);
- Event.schedule (nodes[NODES/4], 30.0,
- Node.GENERATE_CHK_REQUEST, key);
- Event.schedule (nodes[NODES/2], 60.0,
- Node.GENERATE_CHK_INSERT, key);
- Event.schedule (nodes[3*NODES/4], 90.0,
- Node.GENERATE_CHK_REQUEST, key);
+ // One publisher, ten randomly chosen readers
+ SimplePublisher pub = new SimplePublisher (RATE, nodes[0]);
+ int readers = 0;
+ while (readers < 10) {
+ int index = (int) (Math.random() * NODES);
+ if (pub.addReader (nodes[index])) readers++;
+ }
// Run the simulation
+ Event.duration = 3600.0;
Event.run();
}