GetChunk();
  public void LoopOnce()  {    // clone the peers Vector and then process them    {      Vector peerConnectionsClone = (Vector) peerConnections.clone();      Iterator peeriter = peerConnectionsClone.iterator();      for ( ; peeriter.hasNext(); )      {        PeerConnection peer = (PeerConnection) peeriter.next();        peer.LoopOnce();      }    }    // reap disconnected peers    Iterator peeriter = peerConnections.iterator();    for ( ; peeriter.hasNext(); )    {      PeerConnection peer = (PeerConnection) peeriter.next();      if ( peer.disconnected )      {        System.out.println( "Reaping " + peer.id );        peeriter.remove();      }    }    Date now = new Date();    if ( lastTrackerUpdate == null || ( now.getTime() - lastTrackerUpdate.getTime() >= 20000 ) )    {      UpdateTrackers();      lastTrackerUpdate = new Date();    }  }