Пример #1
0
    def setDIOtimer(self):
        """(Re)set the DIO timer"""
        try:
            self.DIOtimer.cancel()
        except:
            pass

        self.DIOtimer = trickleTimer(self.sendDIO, {}, \
                                         Imin=0.001 * 2 ** self.DIOIntMin, \
                                         Imax=self.DIOIntDoublings, \
                                         k=self.DIORedundancyConst)
        self.DIOtimer.start()
Пример #2
0
    def setDIOtimer(self):
        """Broadcast DIO after Trickle timer
        Called by: creation of the DODAG object
        """
        try:
            self.DIOtimer.cancel()
        except:
            pass

        self.DIOtimer = trickleTimer(self.sendDIO, {}, \
                                         Imin=0.001 * 2 ** self.DIOIntMin, \
                                         Imax=self.DIOIntDoublings, \
                                         k=self.DIORedundancyConst)
        self.DIOtimer.start()
Пример #3
0
    def __init__(self, port, peers):
        super(Node, self).__init__()            
        self.port = port
        self.peers = peers
        self.msg_store = {}
        self.acked_messages = {}

        self.generate_messages()

        # node's server part
        self.server_thread = Thread(target=self.server, args=(self.port, ))
        self.server_thread.daemon = True
        self.server_thread.start()


        self.gossip_timer = trickleTimer(self.gossip_process, \
                                    Imin=0.1, \
                                    Imax=16, \
                                    k=3)
        self.gossip_timer.start()
Пример #4
0
from trickle import trickleTimer
import time


def broadcast_dio (dodags):
    i = 0 
    for d in dodags:
        print i, d
        i+=1

x = [0]

DIOtimer = trickleTimer(broadcast_dio, \
                                    {'dodags': x}, \
                                    Imin=1, \
                                    Imax=2, \
                                    k=3)


print "hello"

DIOtimer.start()    

x.append(1)

time.sleep(10) # delays for 5 seconds

for i in range(10):
    x.append(i)