예제 #1
0
파일: NatTest.cs 프로젝트: pstjuste/brunet
    protected Result DoNatTest(Simulator sim, Node node0, Node node1)
    {
      sim.Complete(true);
//      SimpleTimer.RunSteps(3600000);
      SimpleTimer.RunSteps(600000);
      long throughput = Throughput(node0.EdgeListenerList) + Throughput(node1.EdgeListenerList);
      DateTime start = DateTime.UtcNow;

      ManagedConnectionOverlord mco = new ManagedConnectionOverlord(node0);
      mco.Start();
      node0.AddConnectionOverlord(mco);
      mco.Set(node1.Address);

      AreConnected connected = new AreConnected(node0, node1, null);
      connected.Start();
      connected.Run(120);

      long time = (DateTime.UtcNow - start).Ticks / TimeSpan.TicksPerMillisecond;
      double avg_throughput = 0;
      if(time > 0) {
        throughput = Throughput(node0.EdgeListenerList) +
          Throughput(node1.EdgeListenerList) - throughput;
        avg_throughput = (1.0 * throughput) / time / 1000;
      }

      sim.Disconnect();
      return new Result(connected.TATypeAsString, time, avg_throughput);
    }
예제 #2
0
 protected bool AreConnected(Node node0, Node node1)
 {
   Task connected = new AreConnected(node0, node1, null);
   connected.Start();
   connected.Run(120);
   return connected.Done;
 }