Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[mininet-discuss] Link creation time

Bob Lantz rlantz at cs.stanford.edu
Thu Apr 10 21:26:26 PDT 2014


Code/pull requests are good - then we can build on each other's work and also discuss things more.

Usually there's a lot of work between a proof of concept and something that works in all cases, but getting the ball rolling is a good idea.

-Bob

On Apr 10, 2014, at 3:32 PM, Sukhbir Singh <sukhbir.in at gmail.com> wrote:

> Hi Bob,
> 
> * Bob Lantz:
> 
>> This is something that certainly worth looking at. We should be able to
>> create 1000s of links in a second, but currently it's dog slow. This problem
>> is definitely fixable but it requires effort by some enterprising folks. ;-)
> 
> That would be amazing! I am quite interested in doing this.
> 
>> I think we need async link and switch creation; we can also batch link
>> creation and/or extend mnexec to create links. I think we will also find that
>> there are some kernel issues (for example a hard timeout or sleep on link
>> creation) that need to be fixed.
> 
> I tried asynchronous switch creation (OVSSwitch) and I think it is working
> fine; I can start 100 switches in under two seconds (note: start, not add. add
> already seems to be doing a fairly decent job). I had be happy to submit a pull
> request once I have tested it and perhaps you can have a look to confirm?  For
> the record, I am not doing anything fancy, just using multiprocessing to
> parallelize the switch creation. (I asked Ben in a thread on ovs-discuss and he
> told me that the bottleneck is Mininet and not OVS, so I decided to try this.)
> 
>> One thing that puzzles me is that in my own experiments I can create tons of
>> links very quickly, but it seems to be slower in the context of Mininet,
>> which is puzzling. I don't think we're sleeping or timing out, although we
>> used to do that. Further investigation is definitely required.
> 
> By the experiments, do you mean calling `ip link add' manually and not using
> Mininet? If that is the case, then this is a good lead.
> 
>> Since Mininet startup shows only about 10% system utilization, that means
>> that we're idling 90% of the time, and we should be able to improve startup
>> speed by a factor of 10 or so, even on a single CPU, so it's very clear that
>> we have only scratched the surface of performance improvement.
> 
> Yup. I feel a lot can be done here. In my other experiments with this
> (trying-to-make-Mininet-faster), I tried to parallelize clean.py. It does seem
> to work but there were certain "weird" error messages. But hey, it does clean
> up ... parallely!
> 
> So, any suggestions for the above (link creation)? I can submit a pull
> request if that works better.
> 
> -- 
> Sukhbir



More information about the mininet-discuss mailing list