ping issue in Mininet custom topology - networking

I have build custom network topology in mininet 105 switches connected with each other by speficied logic, and every switch has a node connected with that.
the problem is when i ping s2 --> s94 packet reaches to the destination but when i invoke ping from h2 --> h94 it shows total packet loss.
can anyone guide me why is that? its important since i have to generate traffic over network.
i am using Mininet Vm http://mininet.org/download/

For Mininet 2.0.0, the default controller for the mn command is ovs-controller (which can be installed automatically in Ubuntu.) Unfortunately ovs-controller only supports up to 16 switches. If you want to use more than 16 switches, you should use a controller that supports more than 16 switches .
Solution: Try POX controller!
GITHUB download link
Documentation

Use a pox controller. In the controller terminal,
$cd pox
$./pox.py openflow.discovery forwarding.l2_learning
Now try a pingall

If the topology contains loops I'm not sure if pox will do the job. Previously had a similar issue when I basically needed STP or similar. The Onos controller can do this for you.
What could be mentioned here is that switches in mininet are running in the host net namespace (as apposed to hosts that are running in their own namespaces). So pinging from s2 is likely to give you weird results anyway. If you for example would do s2 ifconfig you would see all interfaces of all switches. My point is, testing connectivity by using the switches can be misleading.
Also, as the other posts tell you, you obviously need a OF controller.

Related

Send 'hello' message between 2 PCs using mininet

I am trying to connect two external laptops to two different Mininet hosts in order to transfer a "hello" message from one laptop to another. Could you please assist me with the proper steps to accomplish this task?
Thank you for your time and expertise.
I use mininet in a Linux virtual machine and open daylight controller on another VM
I made some researches but they all fail

How to keep a track of packets at each interface in ONOS?

I have a one switch with four hosts connected to it. I want to keep a track of packets at each interface.
How can this be done using ONOS?
Keeping track of stats on OVS ports can be done through SNMP traps and off-host SNMP server. You don't need ONOS for that.
This wiki can be a good start.
Just type command "portstats" in ONOS CLI. And you can as well see in ONOS the GUI.

Raspberry Pi - run a program with specified internet connection

Is it possible without virtual machines to do the following on RPi (raspbian image) via console only?
I'll have 5 open vpn connections. I have a program that will be started in 5 instances too. Can I specify somehow what connection should each instance use? First of all I thought about 'screen' command, but I think that I'll have no luck.
The program is a client, which connects to a server with specified IP:port and sending USB hardware parameters.
For example:
openvpn --config "1"
start1.sh
openvpn --config "2"
start2.sh
...
openvpn --config "5"
start5.sh
I would like to have something like this. But I think that every started process will use only last established connection.
Thank you.
Well, it seems that I should use network namespaces. Here are the links, that may be helpfull to visitors of this question. I didn't find another ways how to do it.
link one
link two
link three

Testing Openflow/SDN Controller Application

Openflow/SDN networks gives a remote controller the ability to manage the behavior of network devices i.e. configurations. They can forward instruction sets to dynamically change network configuration. But there is always some room for bugs and failures in your SDN controller application. What i am getting is that i had to painstakingly dig through logs to find the one or two inputs that lead my controller software to break. What are the best testing practices for controller code i.e. traffic simulator, stress testing etc
Veryx PktBlaster is excellent for with following features
1.Simulating mix of OpenFlow switch versions
2.Throughput, Latency Measurement for both Fixed Load and Varying Load
and plenty more Features
Reference: http://sdn.veryxtech.com
there is a company called Ixia who provides Ethernet testing SW and HW. They have a comprehensive portfolio to test OpenFlow/SDN. They are also the chair of Openflow industry body.
http://www.ixiacom.com/solutions/sdn-openflow/index.php
Why not use Mininet for testing your controller/application. You can direct Mininet to not use its own controller and instead use the controller/application running on localhost..
You can use remote controllers with mininet.
For example,
Start a VM, start flood light controller
After the floodlight is up and running, you can go to your browser and type in a URL as follows http://192.168.110.2:8080/ui/index.html (Replace 192.168.110.2 with the proper inet address).
Start a VM, start mininet with following topology
sudo mn --topo linear,2 --controller=remote,ip=ip_floodlight_controller,port=6633
So now you can emulate any topology in mininet and test controller for bugs and failures.
In summary, you can use any other controller with mininet, emulate any topology in mininet and test your controller for bugs and failures in different scenarios.
Try the below link that contains a tutorial named as OpenFlowTutorial.
http://archive.openflow.org/wk/index.php/OpenFlow_Tutorial
It is one of the best tutorials for SDNs implementation.
It explains about setting up mininet,wireshark(for monitoring),which controller APIs are available, how to implement a controller and so on.

Router to handle multiple public IP addresses

I am presently running several websites and a mail server from my home network. I have a business DSL account with 8 public IP addresses (1 by itself, and 7 in a block). To handle routing/firewall/gateway, I am presently using RRAS, DNS, & DHCP from Windows 2003 running on a ancient (circa 2001) PC -- which I suspect is going to fail any time now.
What I would like to do is replace that with a simple router. Have a consumer model LinkSys Wifi-router, which I'm presently just using as an access point (don't have the model number handy, but it's one of their standard models). It seems to be able to handle all the NAT/firewall/DHCP tasks -- except for handling routing the multiple public addresses. (e.g., I need x.x.x.123, port 21 getting to one machine, but port 80 of x.x.x.123 & x.x.x.124 to going to another, and x.x.x.123, port 5000 to still another etc).
So my questions are:
Can this be done with standard Linksys router, which they just don't explain in the consumer manual?
Can this be done ... if I replace the firmware with a community/OS version (and if so, which one?)
If neither of the above, can someone recommend a profession router (preferably with wifi) that does do this, which is close to a consumer level price point.
Alternately, is there a reliable OS/3rd party replacement to RRAS which handles this (since RRAS is the part causing the most trouble)
Alternate-Alternately, can someone point to a VERY simple HOWTO to doing this (ie. follow these steps and forget about it), to installing a LINUX system to do this) (since I assume I can run Linux longer on the old machine)?
This can't be done on a Linksys router with stock firmware. It can be done if you load a third-party firmware, but there's no GUI (afaik) to accomplish it, so you'll be hacking system shell scripts which is pretty hairy. I would recommend getting a low-power or older PC and installing PFSense.
PFSense is an open-source router appliance OS distribution with a very easy to use web front end.
Install DD-wrt On your linksys box. I believe this will have everything you need link text

Resources