Hi everyone,

In CTP router, I have the following questions regarding the adaptive
beaconing, please see comments inline.

    void chooseAdvertiseTime() {
       t = currentInterval;
       t /= 2;
       t += call Random.rand32() % t;      * // t is within [currentInterval
/ 2, currentInterval * 3 / 2]*
       tHasPassed = FALSE;
       call BeaconTimer.stop();
       call BeaconTimer.startOneShot(t);
    }

    void remainingInterval() {
       uint32_t remaining = currentInterval;
       remaining -= t;                           *   //overflow if t is
within (currentInterval, currentInterval * 3 / 2]. **Will this overflow
occur? Is it desired?*
       tHasPassed = TRUE;
       call BeaconTimer.startOneShot(remaining);
    }

*
*

    event void BeaconTimer.fired() {
      if (radioOn && running) {
        if (!tHasPassed) {                        *//What does "tHasPassed"
mean? What's it's function?*
          post updateRouteTask(); //always send the most up to date info
          post sendBeaconTask();
          dbg("RoutingTimer", "Beacon timer fired at %s\n",
sim_time_string());
          remainingInterval();
        }
        else {
          decayInterval();
        }
      }
    }

Thanks in advance.
-- 
-Xiaohui Liu
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to