I used to pox controller's forwarding.hub function in order to measure the effect of network latency on throughput of a ring topology with 10M bandwidth.
However, per my experiments, the effect of network latency changes seems have little impact on throughput(I used 0ms, 2ms,4ms,6ms,10ms). Theoretically, it should significantly impact the network throughput. So i wonder if Pox controller uses a different forwarding rules?
here are the code i used to generate the topology.
fSwitch = None #the first switch
lSwitch = None #the last switch
for i in range(n):
switch = self.addSwitch('s%s' % (i+1))
host = self.addHost('h%s' % (i+1))
self.addLink(host, switch,**lconfig)
if lSwitch:
self.addLink(switch, lSwitch,**lconfig)
if i == 0:
fSwitch = switch
lSwitch = switch
if n > 0:
self.addLink(lSwitch, fSwitch,**lconfig)