GNS3 is another tool for emulating a network. It is a graphical tool where you draw network diagrams, and nodes are emulated with Qemu/VirtualBox , Dynamips (Cisco hardware), or another emulator.
Very very interesting. I had somehow not heard about OpenFlow before, which looks very promising (software + hardware based implementations), and network simulation is the easiest way to learn about all the tech. How does Mininet compare to GNS3?<p>Also, could you run virtualization software like Dynamips inside Mininet?
I read some documentation and I don't think I entirely get the whole "emulate a network" thing. What can be done with that? What exactly is a network? What this project makes me think of is as if one would replace the internet with another substitute internet or intranet, but I don't think thats the case. Something that it makes me think of is the idea of downloading a website with something like sitesucker and then changing your host file so that you can browse the internet via saved pages on your computer. But I don't think that this Mininet project has anything to do with that. I'm interested in trying to "get-it" if anyone has a clearer more non-obscure definition of what this project entails.
When I was studying networking we used a network simulation tool called cnet[0], which has the nice property that it can do network simulation at different protocol <i>layers</i> as well as having different topologies. It can also simulate things like wide-area networks, noisy connections and so on.<p>Most of the assignments built around cnet were of the form of "Here is a network protocol that is half-completed. Write the transport layer", or "here is a fully completed network protocol that works with this topology. Now we introduce wireless nodes, modify the protocol to support wireless mobility".<p>[0] <a href="http://www.csse.uwa.edu.au/cnet/" rel="nofollow">http://www.csse.uwa.edu.au/cnet/</a>
It seems to be a good tool for teaching networking. Back in school we used to do that with VDN (which is still maintained <a href="http://opale.u-clermont1.fr/vdn/wiki/doku.php" rel="nofollow">http://opale.u-clermont1.fr/vdn/wiki/doku.php</a>).
I've used this for classes at Stanford. We used it in conjunction with EC2 and it was very handy for creating specific topologies that could be accessed from anywhere.
Is this based on FreeBSD's dummynet? I use to use that a long time ago and it was really cool.<p>I was kind of sad when Linux didn't really have anything close to it.
I kind of want to use this to build a hacking game. You get to use real world tools to uncover bits of story scattered across a virtual network. You could even write little "agents" that run on the nodes that cause traffic to happen between nodes, or react to things happening on the network.
Another cool project that Mininet uses to do some heavy lifting is this.<p><a href="http://openvswitch.org/" rel="nofollow">http://openvswitch.org/</a>