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();
        }



Reply via email to