def run(self): # parameters Sim.scheduler.reset() Sim.set_debug(True) # setup network n1 = Node() n2 = Node() l = Link(address=1,startpoint=n1,endpoint=n2,queue_size=self.queue_size,bandwidth=10000000,propagation=0.01,loss=self.loss, printOut=True) n1.add_link(l) n1.add_forwarding_entry(address=2,link=l) l = Link(address=2,startpoint=n2,endpoint=n1,queue_size=self.queue_size,bandwidth=10000000,propagation=0.01,loss=self.loss) n2.add_link(l) n2.add_forwarding_entry(address=1,link=l) # setup transport t1 = Transport(n1) t2 = Transport(n2) # setup application a = AppHandler("2_1-" + self.filename) # setup connection c1 = My_RTP(t1,1,1,2,1,a) c2 = My_RTP(t2,2,1,1,1,a) # setup application a = AppHandler("2_2-" + self.filename) # setup connection c3 = My_RTP(t1,1,2,2,2,a) c4 = My_RTP(t2,2,2,1,2,a) # send a file with open(self.filename,'r') as f: while True: data = f.read(1000) if not data: break c1.load_buffer(data) c3.load_buffer(data) c1.set_file_prefix("2_1") c2.set_file_prefix("2_1") c3.set_file_prefix("2_2") c4.set_file_prefix("2_2") c1.open_window_file() c3.open_window_file() Sim.scheduler.add(delay=0, event="window_init", handler=c1.window_init) Sim.scheduler.add(delay=0, event="window_init", handler=c3.window_init) # run the simulation Sim.scheduler.run() n1.links[0].myfile.close() c1.close_window_file() c3.close_window_file() Sim.close_rate_file()
def run(self): # parameters Sim.scheduler.reset() Sim.set_debug(False) # setup network n1 = Node() n2 = Node() l = Link(address=1,startpoint=n1,endpoint=n2,loss=self.loss,bandwidth=100000000,propagation=0.01) if self.experiments: l = Link(address=1,startpoint=n1,endpoint=n2,loss=self.loss,bandwidth=100000000,propagation=0.01, queue_size=100) n1.add_link(l) n1.add_forwarding_entry(address=2,link=l) l = Link(address=2,startpoint=n2,endpoint=n1,loss=self.loss,bandwidth=100000000,propagation=0.01) if self.experiments: l = Link(address=2,startpoint=n2,endpoint=n1,loss=self.loss,bandwidth=100000000,propagation=0.01, queue_size=100) n2.add_link(l) n2.add_forwarding_entry(address=1,link=l) # setup transport t1 = Transport(n1) t2 = Transport(n2) # setup application a = AppHandler(self.filename) # setup connection c1 = ReliableTransport(t1,1,1,2,1,self.window_size,a) c2 = ReliableTransport(t2,2,1,1,1,self.window_size,a) # send a file with open(self.filename,'r') as f: c1.stats.set_size(os.path.getsize(self.filename)) while True: data = f.read(1000) if not data: break Sim.scheduler.add(delay=0, event=data, handler=c1.send) # run the simulation Sim.scheduler.run() print "Average queueing delay =", c1.stats.average() print "Throughput =", c1.stats.throughput(Sim.scheduler.current_time())
def run(self): # parameters Sim.scheduler.reset() Sim.set_debug(True) # setup network n1 = Node() n2 = Node() l = Link(address=1,startpoint=n1,endpoint=n2,loss=self.loss, bandwidth=10000000.0,propagation=0.01,queue_size=self.queue) n1.add_link(l) n1.add_forwarding_entry(address=2,link=l) l = Link(address=2,startpoint=n2,endpoint=n1,loss=self.loss, bandwidth=10000000.0,propagation=0.01,queue_size=self.queue) n2.add_link(l) n2.add_forwarding_entry(address=1,link=l) # setup transport t1 = Transport(n1) t2 = Transport(n2) # setup application a = AppHandler(self.filename) # setup connection c1 = TCP(t1,1,1,2,1,app=a,window=self.window) c2 = TCP(t2,2,1,1,1,app=a,window=self.window) # send a file with open(self.filename,'r') as f: while True: data = f.read(1000) if not data: break Sim.scheduler.add(delay=0, event=data, handler=c1.send) # run the simulation Sim.scheduler.run() print "Total queuing delay: ", a.total_queuing_delay print "Total packets sent: ", a.total_packets_sent
def run(self): # parameters Sim.scheduler.reset() Sim.set_debug(True) # setup network n1 = Node() n2 = Node() l = Link(address=1,startpoint=n1,endpoint=n2,queue_size=self.queue_size,bandwidth=10000000,propagation=0.01,loss=self.loss) n1.add_link(l) n1.add_forwarding_entry(address=2,link=l) l = Link(address=2,startpoint=n2,endpoint=n1,queue_size=self.queue_size,bandwidth=10000000,propagation=0.01,loss=self.loss) n2.add_link(l) n2.add_forwarding_entry(address=1,link=l) # setup transport t1 = Transport(n1) t2 = Transport(n2) # setup application a = AppHandler(self.filename) # setup connection c1 = My_RTP(t1,1,1,2,1,a) c2 = My_RTP(t2,2,1,1,1,a) # send a file with open(self.filename,'r') as f: while True: data = f.read(1000) if not data: break c1.load_buffer(data) c1.window_init(self.window_size) # run the simulation Sim.scheduler.run()
def run(self): # parameters Sim.scheduler.reset() Sim.set_debug(True) # setup network n1 = Node() n2 = Node() l = Link(address=1,startpoint=n1,endpoint=n2,loss=self.loss) n1.add_link(l) n1.add_forwarding_entry(address=2,link=l) l = Link(address=2,startpoint=n2,endpoint=n1,loss=self.loss) n2.add_link(l) n2.add_forwarding_entry(address=1,link=l) # setup transport t1 = Transport(n1) t2 = Transport(n2) # setup application a = AppHandler(self.filename) # setup connection c1 = StopAndWait(t1,1,1,2,1,a) c2 = StopAndWait(t2,2,1,1,1,a) # send a file with open(self.filename,'r') as f: while True: data = f.read(1000) if not data: break Sim.scheduler.add(delay=0, event=data, handler=c1.send) # run the simulation Sim.scheduler.run()