Opendaylight Aluminium with mininet torus - sdn

I am trying to connect my custom topology to the ODL controller using the command:
sudo mn --topo torus,3,3 --controller=remote,ip=$OPENDAYLIGHTIP,port=6653 --switch ovsk,protocols=OpenFlow13
However, it gives 100% dropped on the ping test;
I have installed these features:
feature:install odl-openflowplugin-flow-services-rest odl-openflowplugin-app-table-miss-enforcer
Could you help me please which features do I need to install? I'm able to run these steps with ODL 0.5.3. I need to update my SDN controller.

As far as I know, the L2Switch feature which was responsible for L2 switching is not supporting after the Fluorine version. There is no module for arp handling l2 switching. It may visible to write a code to do L2 forwarding.
P.S Regarding your topo
"This topology has LOOPS and WILL NOT WORK with the default controller or any Ethernet bridge without STP turned on! It can be used with STP, e.g"

Related

vulkan is not avaible in lxc / lxd container but opengl is

I am using ubuntu 18:04 with an lxc / lxd steam container. It works great, I followed this tutorial and did some changes to the network stuff.
https://blog.simos.info/running-steam-in-a-lxd-system-container/
Steam works for opengl games but not for vulkan games. Same for lutris.
Host side:
===========
VULKAN INFO
===========
Vulkan Instance Version: 1.1.70
Instance Extensions:
====================
Instance Extensions count = 16
Container side:
ubuntu#steam:~$ vulkaninfo
===========
VULKAN INFO
===========
Vulkan Instance Version: 1.1.70
ERROR: setupLoaderTermPhysDevs: Failed to detect any valid GPUs in the current config
ERROR: setupLoaderTrampPhysDevs: Failed during dispatch call of 'vkEnumeratePhysicalDevices' to lower layers or loader to get count.
/build/vulkan-UL09PJ/vulkan-1.1.70+dfsg1/demos/vulkaninfo.c:2700: failed with VK_ERROR_INITIALIZATION_FAILED
OpenGL works just fine, games run fast, so it must find my only gpu in the system. Do I have to separately enable vulkan for the container?
The host has no problems with the vulkan smoketest either:
user#host:~$ vulkan-smoketest
7223 presents in 5.00039 seconds (FPS: 1444.49)
That guide adds manually the necessary OpenGL shared libraries in the LXD container, and by doing so, does not add the Vulkan shared libraries.
LXD now supports the NVidia container runtime (provided by NVidia), therefore you can use it instead. Follow the more recent guide at https://blog.simos.info/running-x11-software-in-lxd-containers/
A reddit user named zakk wrote a solution in the comments of https://blog.simos.info/running-steam-in-a-lxd-system-container/.
After doing some traces, I noticed it is failing to open files in
/dev/dri The container has the wrong permissions; on the host those
files have an ACL set that lets the current user access them, the
container does not. So to fix: in the container run
sudo setfacl -m "u:ubuntu:rw-" /dev/dri/*
You have to execute the setfacl command every time you start lxc.

Can't see custom topology mininet on OpendayLight

I made a topology in miniedit, I saved it with the name topo2.py, when I called it in the mininet the topology didn't appear as I made it,
I have tried solutions from Can't see custom topology on DLUX but still can't see it
sudo mn --custom ~/mininet/custom/topo2.py --controller=remote,ip=192.168.56.103
I faced the same problem month ago, then I found my topology created on mininet on Opendaylight DLUX using the following way:
sudo mn --custom testbed.py --topo testbed --controller=remote --switch ovsk,protocols=OpenFlow13
You've to mention the protocols and topology name according to your setup.

How do I build and run the code from github for NS3 in the link provided

How do I build and run the code from github for NS3 in the link provided below
https://github.com/mkheirkhah/mptcp
it has already ns3 installation steps with mptcp
https://github.com/mkheirkhah/mptcp
this is the Installations steps go according to it ul get to know
We have tested this code on Mac (with llvm-gcc42 and python 2.7.3-11) and several Linux distributions (e.g. Red Hat with gcc4.4.7 or Ubuntu16.4 with gcc5.4.0).
Clone the MPTCP's repository
git clone https://github.com/mkheirkhah/mptcp.git
Configure and build
CXXFLAGS="-Wall" ./waf configure build
Run a simulation
./waf --run "mptcp"
https://github.com/Kashif-Nadeem/ns-3-dev-git is the more recent fork of https://github.com/teto/ns-3-dev-git/wiki which started as mkheirkhah's fork.
It should work with the latest ns-3. Compared to mkheirkhah's approach (I haven't checked if it is still valid), it tries to reuse the TCP socket code so that it can use TCP socket application. You can read more details from https://www.researchgate.net/publication/313623789_An_Implementation_of_Multipath_TCP_in_ns3

pox openflow - host_tracker not executing

I am new to pox and I don't know how to run the components in pox. Currently I'm stuck with the host_tracker.py taken from https://github.com/CPqD/RouteFlow/blob/master/pox/pox/host_tracker/host_tracker.py
I've tried something like this:
./debug-pox.py host_tracker
And got the output as
POX 0.3.0 (dart) / Copyright 2011-2014 James McCauley, et al.
DEBUG:core:POX 0.3.0 (dart) going up...
DEBUG:core:Running on CPython (2.7.6/Mar 22 2014 22:59:56)
DEBUG:core:Platform is Linux-3.13.0-53-generic-x86_64-with-Ubuntu-14.04-trusty
DEBUG:core:host_tracker still waiting for: openflow
WARNING:core:Still waiting on 1 component(s)
INFO:core:POX 0.3.0 (dart) is up.
Not sure what it means :( Kindly tell me how to run components in pox.
Thanks :)
Assuming that you have mininet up and running you should use the host_tracker along with the openflow.discovery module. In addition you should load an example controller (stock component) included in your pox version.
First load a sample mininet
sudo mn --controller remote
Then run pox like this
python pox.py forwarding.l2_pairs host_tracker openflow.discovery
When all is up and running in the terminal you launched mininet issue a
pingall
and monitor the terminal in which you run pox to observe host_tracker info
forwarding.l2_pairs is a sample controller (stock component) that will handle the network and flows modifications. host_tracker is the host tracker module and the openflow.discovery is the discovery module of pox.
To find more stock components go to https://openflow.stanford.edu/display/ONL/POX+Wiki#POXWiki-StockComponents
To read more about host_tracker https://openflow.stanford.edu/display/ONL/POX+Wiki#POXWiki-host_tracker

Kinect / Primesense (Xtion) ROS Ubuntu through Virtual Machine (VMware)

Since it took me quite some time to figure out how to get Xtion (Primesense) to work on VMware I thought to share it here with you. (with Kinect I have a problem to let ROS see the device even though VMware has successfully connected it).
roslaunch openni2_launch openni2.launch
Running the above command gave me the error:
Warning: USB events thread - failed to set priority. This might cause loss of data...
I either got a single frame or no frame when running "rviz" and Add --> Image --> Image topic --> /camera/rgb/image_raw
So how do I get video frames in Ubuntu from a Primesense device while using a Virtual Machine (VMware)?
My specs
Windows 7 running VMware 10.0.4 build-2249910
Ubuntu 12.04.5 Precise in VMware
ROS Hydro
The following question pointed me in the right direction: http://answers.ros.org/question/77651/asus-xtion-on-usb-30-ros-hydro-ubuntu-1210/?answer=143206#post-id-143206
In the answer of blizzardroi (not selected answer) he/she mentions that USBInterface should be 0. I reasoned that since my main Machine is Windows, I should set UsbInterface to 1, which indeed solved it.
Solution
Go to /etc/openni2/ (from system folder, not Home) and open PS1080.ini with administrator rights (e.g. sudo gedit PS1080.ini). Search for UsbInterface, remove the ; and change the value to 1. It should look like below:
; USB interface to be used. 0 - FW Default, 1 - ISO endpoints (default on Windows), 2 - BULK endpoints (default on Linux/Mac/Android machines)
UsbInterface=1
Additional
From previous experience it may also be related that your Windows system may need the kinect drivers as well. If the above not works, try to install the following:
(Kinect SDK) https://www.microsoft.com/en-us/download/details.aspx?id=34808
(OpenNI2 Windows) http://structure.io/openni
p.s. Don't forget your drivers for Ubuntu (replace hydro with your ROS version)
sudo apt-get install ros-hydro-openni*
Important
It doesn't solve the error below, but rviz returns video, which means that we can read the data the Primesense device publishes!
Warning: USB events thread - failed to set priority. This might cause loss of data...
Got the same warning from opennni (issued at start by a binary located at Tools/PSLinkConsole) with another sensor.
Solved by starting process as sudo - my guess: to set priority to USB event threads you need root access. :)