2
votes

I have been trying to simulate a network in mininet with different edges/links having different bandwidths. I am using a following command to add a link with a specific bw in mininet. In the following snippet I am setting the bandwidth of the edge (s1-s2) as 3mbps.

self.addLink(s1, s2, bw=3, delay='5ms', use_htb=True)

I am connecting the mininet topology to a remote OpenDaylight controller by doing following.

 net = Mininet( topo=topo,
                   host=CPULimitedHost, link=TCLink,
                   autoStaticArp=True, controller=partial( RemoteController, ip='127.0.0.1', port=6633 ) )

However, I am seeing 10Gbps bandwidth being set in open daylight controller APIs (and plugins). I tried to research a lot, but didn't find anything useful.

Similar post: https://mailman.stanford.edu/pipermail/mininet-discuss/2014-June/004629.html

Any help would be appreciated. Thanks

2

2 Answers

3
votes

I had similar issue. So basically the problem is that OVS(open V Switch, is the interface to communicate with controller) isn't aware of specifics of mininet, as bandwidth.

Additionally, we fight with OVS over the tc configuration.

OVS set always: "10GB-FD COPPER and speed: 10000 Mbps now, 0 Mbps max".

See below command, to confirm that:

mininet> dpctl dump-ports-desc
*** s1 ------
OFPST_PORT_DESC reply (xid=0x2):
1(s1-eth1): addr:36:71:79:5e:6e:e0
config: 0
state: 0
current: 10GB-FD COPPER
speed: 10000 Mbps now, 0 Mbps max

See references: https://lists.opendaylight.org/pipermail/controller-dev/2014-June/004896.html https://github.com/mininet/mininet/issues/421

0
votes

10Gbps is the maximum transmission ability, it depends on the psychical devices. But bandwidth you set on mininet is the result of traffic control. It is similar to the situation that your NIC on computer is 10Mbps but you can only access Internet much less than 10Mbps always.