Example #1
0
def oneRoundDelay(step = 10000):
    injectRate = 0.9
    factory = GridNetworkFactory(makeSimpleNode(),Queues)
    factory.constructNetwork(6,6)\
        .setFlow(Flow((0,0),(0,5),injectRate))\
        .setFlow(Flow((5,0),(5,5),injectRate))\
        .setFlow(Flow((2,0),(3,5),injectRate))

    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
        Simulator(network,step,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    #simulator.printNetwork()
    stat = simulator.getStaticsInfo()
    print stat['aveDelay']
    packetPool = sorted(stat['packetPool'],key=lambda p: p.getID)


    
    py.subplot(211)
    py.vlines([p.getCreateTime() for p in packetPool],[1],[p.getDelay() for p in packetPool],'r')
    py.xlabel('Packet create time(bp with $\lambda$ = 0.9)')
    py.ylabel('delay')
    py.grid(True)




    injectRate = 0.9
    factory = GridNetworkFactory(makeMNode(2),Queues)
    factory.constructNetwork(6,6)\
        .setFlow(Flow((0,0),(0,5),injectRate))\
        .setFlow(Flow((5,0),(5,5),injectRate))\
        .setFlow(Flow((2,0),(3,5),injectRate))

    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
        Simulator(network,step,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    #simulator.printNetwork()

    stat = simulator.getStaticsInfo()
    print stat['aveDelay']
    packetPool = sorted(stat['packetPool'],key=lambda p: p.getID)

    py.subplot(212)
    py.vlines([p.getCreateTime() for p in packetPool],[1],[p.getDelay() for p in packetPool],'b')
    py.xlabel('Packet create time (m=2 with $\lambda$ = 0.9)')
    py.ylabel('delay')
    py.grid(True)
    py.savefig('packetDelayInOneRound_09')
    py.show()
Example #2
0
def oneRoundDelay(step=10000):
    injectRate = 0.9
    factory = GridNetworkFactory(makeSimpleNode(), Queues)
    factory.constructNetwork(6,6)\
        .setFlow(Flow((0,0),(0,5),injectRate))\
        .setFlow(Flow((5,0),(5,5),injectRate))\
        .setFlow(Flow((2,0),(3,5),injectRate))

    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
        Simulator(network,step,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    #simulator.printNetwork()
    stat = simulator.getStaticsInfo()
    print stat['aveDelay']
    packetPool = sorted(stat['packetPool'], key=lambda p: p.getID)

    py.subplot(211)
    py.vlines([p.getCreateTime() for p in packetPool], [1],
              [p.getDelay() for p in packetPool], 'r')
    py.xlabel('Packet create time(bp with $\lambda$ = 0.9)')
    py.ylabel('delay')
    py.grid(True)

    injectRate = 0.9
    factory = GridNetworkFactory(makeMNode(2), Queues)
    factory.constructNetwork(6,6)\
        .setFlow(Flow((0,0),(0,5),injectRate))\
        .setFlow(Flow((5,0),(5,5),injectRate))\
        .setFlow(Flow((2,0),(3,5),injectRate))

    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
        Simulator(network,step,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    #simulator.printNetwork()

    stat = simulator.getStaticsInfo()
    print stat['aveDelay']
    packetPool = sorted(stat['packetPool'], key=lambda p: p.getID)

    py.subplot(212)
    py.vlines([p.getCreateTime() for p in packetPool], [1],
              [p.getDelay() for p in packetPool], 'b')
    py.xlabel('Packet create time (m=2 with $\lambda$ = 0.9)')
    py.ylabel('delay')
    py.grid(True)
    py.savefig('packetDelayInOneRound_09')
    py.show()
Example #3
0
def OrdTest():
    injectRate = 0.5
    factory = GridNetworkFactory(makeMNode(1), ShadowQueues)
    factory.constructNetwork(8,8)\
        .setFlow(Flow((2,0),(2,7),injectRate),Flow((4,0),(4,7),injectRate),\
                     Flow((0,2),(7,2),injectRate),Flow((0,4),(7,4),injectRate),\
                     Flow((1,1),(5,1),injectRate),Flow((6,1),(6,6),injectRate),\
                     Flow((5,6),(1,6),injectRate),Flow((1,5),(1,2),injectRate))
    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
    Simulator(network,gobalMaxStep,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    stat = simulator.getStaticsInfo()
    print stat
Example #4
0
def CounterTest(step=10000):
    injectRate = 1
    factory = GridNetworkFactory(makeCNode(0), Queues)
    factory.constructNetwork(8,8)\
        .setFlow(Flow((0,0),(0,7),injectRate))\
        .setFlow(Flow((7,0),(7,7),injectRate))

    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
    Simulator(network,step,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    #simulator.printNetwork()
    stat = simulator.getStaticsInfo()
    print stat
Example #5
0
def CounterTest(step = 10000):
    injectRate = 1
    factory = GridNetworkFactory(makeCNode(0),Queues)
    factory.constructNetwork(8,8)\
        .setFlow(Flow((0,0),(0,7),injectRate))\
        .setFlow(Flow((7,0),(7,7),injectRate))
                                
    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
    Simulator(network,step,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    #simulator.printNetwork()
    stat = simulator.getStaticsInfo()
    print stat
Example #6
0
def OrdTest():
    injectRate = 0.5
    factory = GridNetworkFactory(makeMNode(1),ShadowQueues)
    factory.constructNetwork(8,8)\
        .setFlow(Flow((2,0),(2,7),injectRate),Flow((4,0),(4,7),injectRate),\
                     Flow((0,2),(7,2),injectRate),Flow((0,4),(7,4),injectRate),\
                     Flow((1,1),(5,1),injectRate),Flow((6,1),(6,6),injectRate),\
                     Flow((5,6),(1,6),injectRate),Flow((1,5),(1,2),injectRate))
    network = factory.getNetwork()

    packetFactory = PacketFactory()
    simulator = \
    Simulator(network,gobalMaxStep,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()
    stat = simulator.getStaticsInfo()
    print stat
Example #7
0
    def __statProcess(self, packets, **params):

        for packet in packets:
            packet.addHopNum()
            #print 'params', params
            if packet.getDst() == params['nbr']:
                #print '----recved'
                self.packetPool.append(packet.setDelay(self.currentStep))


if __name__ == "__main__":
    factory = GridNetworkFactory(Node, Queues)
    factory.constructNetwork(8,8)\
        .setFlow(Flow((0,0),(2,2),1),\
                     Flow((0,1),(2,1),1))
    network = factory.getNetwork()
    packetFactory = PacketFactory()


    network[(0,0)].queues[(1,1)] = \
        [packetFactory.getPacket(currentTime=0, src=(0,0),dst=(1,1)),\
             packetFactory.getPacket(currentTime=0, src=(0,0),dst=(1,1)),\
             packetFactory.getPacket(currentTime=0, src=(0,0),dst=(1,1))]
    network[(0,1)].queues[(0,2)] = \
        [packetFactory.getPacket(currentTime=0,src=(0,1),dst=(0,2)),\
             packetFactory.getPacket(currentTime=0,src=(0,1),dst=(0,2))]

    simulator = Simulator(network, 100, ConstLinkRateGenerator(1),
                          packetFactory)
    simulator.run()
Example #8
0
        for packet in packets:
            packet.addHopNum()
            #print 'params', params
            if packet.getDst() == params['nbr']:
                #print '----recved'
                self.packetPool.append(packet.setDelay(self.currentStep))




            
if __name__ == "__main__":
    factory = GridNetworkFactory(Node,Queues)
    factory.constructNetwork(8,8)\
        .setFlow(Flow((0,0),(2,2),1),\
                     Flow((0,1),(2,1),1))
    network = factory.getNetwork()
    packetFactory = PacketFactory()


    network[(0,0)].queues[(1,1)] = \
        [packetFactory.getPacket(currentTime=0, src=(0,0),dst=(1,1)),\
             packetFactory.getPacket(currentTime=0, src=(0,0),dst=(1,1)),\
             packetFactory.getPacket(currentTime=0, src=(0,0),dst=(1,1))]
    network[(0,1)].queues[(0,2)] = \
        [packetFactory.getPacket(currentTime=0,src=(0,1),dst=(0,2)),\
             packetFactory.getPacket(currentTime=0,src=(0,1),dst=(0,2))]
    
    simulator = Simulator(network,100,ConstLinkRateGenerator(1),packetFactory)
    simulator.run()