Git Product home page Git Product logo

isdx's People

Contributors

agupta13 avatar agupta80 avatar ankscircle avatar ggardner42 avatar guptaank23 avatar jacobq avatar marcpucci avatar rbirkner avatar robertmacdavid avatar rporter1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

isdx's Issues

`./launch.sh test-ms 2` throws error -- caused by packages not being installed?

I'm having trouble getting this running (trying to follow instructions to for the test-ms example).

I run the following (on Debian 9.x, x86_64 system w/ 32GB of RAM)

ssh -X [email protected] # password: vagrant
# or --> ssh -X vagrant@localhost -p 2222
cd iSDX 
./launch.sh test-ms 1 &

Output is:

++ case $2 in
++ '[' '!' -d /home/vagrant/iSDX/xrs/ribs ']'
++ mkdir /home/vagrant/iSDX/xrs/ribs
++ cd /home/vagrant/iSDX
++ sh pctrl/clean.sh
python: no process found
exabgp: no process found
++ rm -f SDXLog.log
++ python logServer.py SDXLog.log

So far, so good, but when I run ./launch.sh test-ms 2 I get the following output:

++ cd /home/vagrant
++ sudo python /home/vagrant/iSDX/examples/test-ms/mininet/sdx_mininet.py /home/vagrant/iSDX/examples/test-ms/mininet/mininet.cfg
a1
b1
c1
c2
*** Creating network
*** Adding controller
Unable to contact the remote controller at 127.0.0.1:6633
*** Adding hosts:
Traceback (most recent call last):
  File "/home/vagrant/iSDX/examples/test-ms/mininet/sdx_mininet.py", line 121, in <module>
    net = Mininet(topo=topo, controller=RemoteController, switch=OVSSwitch)
  File "/usr/lib/python2.7/dist-packages/mininet/net.py", line 164, in __init__
    self.build()
  File "/usr/lib/python2.7/dist-packages/mininet/net.py", line 357, in build
    self.buildFromTopo( self.topo )
  File "/usr/lib/python2.7/dist-packages/mininet/net.py", line 331, in buildFromTopo
    self.addHost( hostName, **topo.nodeInfo( hostName ) )
  File "/usr/lib/python2.7/dist-packages/mininet/net.py", line 186, in addHost
    h = cls( name, **defaults )
  File "/home/vagrant/iSDX/examples/test-ms/mininet/sdnip.py", line 115, in __init__
    self.generateConfig()
  File "/home/vagrant/iSDX/examples/test-ms/mininet/sdnip.py", line 140, in generateConfig
    self.generateQuagga()
  File "/home/vagrant/iSDX/examples/test-ms/mininet/sdnip.py", line 144, in generateQuagga
    configFile = open(self.quaggaConfFile, 'w+')
IOError: [Errno 2] No such file or directory: '/var/run/quagga/quaggaa1.conf'

It seems that something is missing. For example, the Dockerfile shows that quagga along with other tools should be installed. However, searching the file system for quagga only returned results in the /home/vagrant/iSDX/ directory. Manually re-rerunning the apt-get commands from the Dockerfile seems to correct this (now searches show results in /etc, /usr/lib, /var/lib, etc.) Output of apt-get update && apt-get install ... was:

Ign http://archive.ubuntu.com trusty InRelease
Hit http://security.ubuntu.com trusty-security InRelease
Hit http://archive.ubuntu.com trusty-updates InRelease
Hit http://security.ubuntu.com trusty-security/main Sources             
Hit http://archive.ubuntu.com trusty-backports InRelease        
Hit http://security.ubuntu.com trusty-security/universe Sources          
Hit http://archive.ubuntu.com trusty Release.gpg
Hit http://security.ubuntu.com trusty-security/main amd64 Packages
Hit http://archive.ubuntu.com trusty-updates/main Sources           
Hit http://archive.ubuntu.com trusty-updates/restricted Sources     
Hit http://security.ubuntu.com trusty-security/universe amd64 Packages
Hit http://archive.ubuntu.com trusty-updates/universe Sources       
Hit http://security.ubuntu.com trusty-security/main Translation-en
Hit http://archive.ubuntu.com trusty-updates/multiverse Sources           
Hit http://security.ubuntu.com trusty-security/universe Translation-en    
Hit http://archive.ubuntu.com trusty-updates/main amd64 Packages
Hit http://archive.ubuntu.com trusty-updates/restricted amd64 Packages
Hit http://archive.ubuntu.com trusty-updates/universe amd64 Packages
Hit http://archive.ubuntu.com trusty-updates/multiverse amd64 Packages
Hit http://archive.ubuntu.com trusty-updates/main Translation-en
Hit http://archive.ubuntu.com trusty-updates/multiverse Translation-en
Hit http://archive.ubuntu.com trusty-updates/restricted Translation-en
Hit http://archive.ubuntu.com trusty-updates/universe Translation-en
Hit http://archive.ubuntu.com trusty-backports/main Sources
Hit http://archive.ubuntu.com trusty-backports/restricted Sources
Hit http://archive.ubuntu.com trusty-backports/universe Sources
Hit http://archive.ubuntu.com trusty-backports/multiverse Sources
Hit http://archive.ubuntu.com trusty-backports/main amd64 Packages
Hit http://archive.ubuntu.com trusty-backports/restricted amd64 Packages
Hit http://archive.ubuntu.com trusty-backports/universe amd64 Packages
Hit http://archive.ubuntu.com trusty-backports/multiverse amd64 Packages
Hit http://archive.ubuntu.com trusty-backports/main Translation-en
Hit http://archive.ubuntu.com trusty-backports/multiverse Translation-en
Hit http://archive.ubuntu.com trusty-backports/restricted Translation-en
Hit http://archive.ubuntu.com trusty-backports/universe Translation-en
Hit http://archive.ubuntu.com trusty Release      
Hit http://archive.ubuntu.com trusty/main Sources
Hit http://archive.ubuntu.com trusty/restricted Sources
Hit http://archive.ubuntu.com trusty/universe Sources
Hit http://archive.ubuntu.com trusty/multiverse Sources
Hit http://archive.ubuntu.com trusty/main amd64 Packages
Hit http://archive.ubuntu.com trusty/restricted amd64 Packages
Hit http://archive.ubuntu.com trusty/universe amd64 Packages
Hit http://archive.ubuntu.com trusty/multiverse amd64 Packages
Hit http://archive.ubuntu.com trusty/main Translation-en
Hit http://archive.ubuntu.com trusty/multiverse Translation-en
Hit http://archive.ubuntu.com trusty/restricted Translation-en
Hit http://archive.ubuntu.com trusty/universe Translation-en
Ign http://archive.ubuntu.com trusty/main Translation-en_US                    
Ign http://archive.ubuntu.com trusty/multiverse Translation-en_US              
Ign http://archive.ubuntu.com trusty/restricted Translation-en_US              
Ign http://archive.ubuntu.com trusty/universe Translation-en_US                
Reading package lists... Done                                                  
Reading package lists... Done
Building dependency tree       
Reading state information... Done
autoconf is already the newest version.
automake is already the newest version.
build-essential is already the newest version.
debhelper is already the newest version.
fakeroot is already the newest version.
libtool is already the newest version.
psmisc is already the newest version.
python-all is already the newest version.
python-paramiko is already the newest version.
python-twisted-conch is already the newest version.
tmux is already the newest version.
dos2unix is already the newest version.
feh is already the newest version.
libstring-crc32-perl is already the newest version.
mongodb is already the newest version.
git is already the newest version.
graphviz is already the newest version.
libssl-dev is already the newest version.
python-sphinx is already the newest version.
ssh is already the newest version.
uuid-runtime is already the newest version.
vim is already the newest version.
python-pip is already the newest version.
The following extra packages will be installed:
  iproute libexpat1-dev libpython-dev libpython2.7-dev python-repoze.lru
  python-webob python2.7-dev
Suggested packages:
  python-paste python-webob-doc snmpd
The following NEW packages will be installed:
  iproute libexpat1-dev libpython-dev libpython2.7-dev python-dev
  python-repoze.lru python-routes python-webob python2.7-dev quagga
0 upgraded, 10 newly installed, 0 to remove and 1 not upgraded.
Need to get 23.7 MB of archives.
After this operation, 42.5 MB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/main libexpat1-dev amd64 2.1.0-4ubuntu1.4 [115 kB]
Get:2 http://archive.ubuntu.com/ubuntu/ trusty-updates/main libpython2.7-dev amd64 2.7.6-8ubuntu0.3 [22.0 MB]
Get:3 http://archive.ubuntu.com/ubuntu/ trusty-updates/main iproute all 1:3.12.0-2ubuntu1 [2,392 B]
Get:4 http://archive.ubuntu.com/ubuntu/ trusty-updates/main quagga amd64 0.99.22.4-3ubuntu1.3 [1,178 kB]
Get:5 http://archive.ubuntu.com/ubuntu/ trusty/main libpython-dev amd64 2.7.5-5ubuntu3 [7,078 B]
Get:6 http://archive.ubuntu.com/ubuntu/ trusty-updates/main python2.7-dev amd64 2.7.6-8ubuntu0.3 [269 kB]
Get:7 http://archive.ubuntu.com/ubuntu/ trusty/main python-dev amd64 2.7.5-5ubuntu3 [1,166 B]
Get:8 http://archive.ubuntu.com/ubuntu/ trusty/main python-repoze.lru all 0.6-4 [11.3 kB]
Get:9 http://archive.ubuntu.com/ubuntu/ trusty/main python-routes all 2.0-1build1 [76.6 kB]
Get:10 http://archive.ubuntu.com/ubuntu/ trusty/main python-webob all 1.3.1-1 [57.9 kB]
Fetched 23.7 MB in 8s (2,694 kB/s)                                             
Preconfiguring packages ...
Selecting previously unselected package libexpat1-dev:amd64.
(Reading database ... 83306 files and directories currently installed.)
Preparing to unpack .../libexpat1-dev_2.1.0-4ubuntu1.4_amd64.deb ...
Unpacking libexpat1-dev:amd64 (2.1.0-4ubuntu1.4) ...
Selecting previously unselected package libpython2.7-dev:amd64.
Preparing to unpack .../libpython2.7-dev_2.7.6-8ubuntu0.3_amd64.deb ...
Unpacking libpython2.7-dev:amd64 (2.7.6-8ubuntu0.3) ...
Selecting previously unselected package iproute.
Preparing to unpack .../iproute_1%3a3.12.0-2ubuntu1_all.deb ...
Unpacking iproute (1:3.12.0-2ubuntu1) ...
Selecting previously unselected package quagga.
Preparing to unpack .../quagga_0.99.22.4-3ubuntu1.3_amd64.deb ...
Unpacking quagga (0.99.22.4-3ubuntu1.3) ...
Selecting previously unselected package libpython-dev:amd64.
Preparing to unpack .../libpython-dev_2.7.5-5ubuntu3_amd64.deb ...
Unpacking libpython-dev:amd64 (2.7.5-5ubuntu3) ...
Selecting previously unselected package python2.7-dev.
Preparing to unpack .../python2.7-dev_2.7.6-8ubuntu0.3_amd64.deb ...
Unpacking python2.7-dev (2.7.6-8ubuntu0.3) ...
Selecting previously unselected package python-dev.
Preparing to unpack .../python-dev_2.7.5-5ubuntu3_amd64.deb ...
Unpacking python-dev (2.7.5-5ubuntu3) ...
Selecting previously unselected package python-repoze.lru.
Preparing to unpack .../python-repoze.lru_0.6-4_all.deb ...
Unpacking python-repoze.lru (0.6-4) ...
Selecting previously unselected package python-routes.
Preparing to unpack .../python-routes_2.0-1build1_all.deb ...
Unpacking python-routes (2.0-1build1) ...
Selecting previously unselected package python-webob.
Preparing to unpack .../python-webob_1.3.1-1_all.deb ...
Unpacking python-webob (1.3.1-1) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Processing triggers for ureadahead (0.100.0-16) ...
Setting up libexpat1-dev:amd64 (2.1.0-4ubuntu1.4) ...
Setting up libpython2.7-dev:amd64 (2.7.6-8ubuntu0.3) ...
Setting up iproute (1:3.12.0-2ubuntu1) ...
Setting up quagga (0.99.22.4-3ubuntu1.3) ...
Loading capability module if not yet done.
Starting Quagga daemons (prio:10):.
Setting up libpython-dev:amd64 (2.7.5-5ubuntu3) ...
Setting up python2.7-dev (2.7.6-8ubuntu0.3) ...
Setting up python-dev (2.7.5-5ubuntu3) ...
Setting up python-repoze.lru (0.6-4) ...
Setting up python-routes (2.0-1build1) ...
Setting up python-webob (1.3.1-1) ...
Processing triggers for ureadahead (0.100.0-16) ...
Processing triggers for libc-bin (2.19-0ubuntu6.13) ...

Now when I run ./launch.sh test-ms 2 it succeed (error is gone and I get a mininet> command prompt instead).

BTW, this may be an upstream problem, but I noticed that the wireshark and wireshark-common packages don't appear to be installing correctly during vagrant up. I suspect this is caused by the prompt that they normally show (asking whether or not non-root users should be allowed to capture packets) not being able to get an answer when being run from a script.

Tail end of vagrant up output:

==> default: Package configuration┌─────────────────────┤ Configuring wireshark-common ├──────────────────────┐│││ Dumpcap can be installed in a way that allows members of the "wireshark"  ││ system group to capture packets. This is recommended over the││ alternative of running Wireshark/Tshark directly as root, because less    ││ of the code will run with elevated privileges.││││ For more detailed information please see││ /usr/share/doc/wireshark-common/README.Debian.││││ Enabling this feature may be a security risk, so it is disabled by││ default. If in doubt, it is suggested to leave it disabled.││││ Should non-superusers be able to capture packets?││││<Yes><No>│││└───────────────────────────────────────────────────────────────────────────┘
==> default: Failed to open terminal.debconf: whiptail output the above errors, giving up!
==> default: dpkg: error processing package wireshark-common (--configure):
==> default:  subprocess installed post-installation script returned error exit status 255
==> default: dpkg: dependency problems prevent configuration of wireshark:
==> default:  wireshark depends on wireshark-common (= 1.12.1+g01b65bf-4+deb8u11ubuntu0.14.04.1); however:
==> default:   Package wireshark-common is not configured yet.
==> default: dpkg: error processing package wireshark (--configure):
==> default:  dependency problems - leaving unconfigured
==> default: Setting up iperf (2.0.5-3) ...
==> default: Setting up libcgroup1 (0.38-1ubuntu2) ...
==> default: No apport report written because the error message indicates its a followup error from a previous failure.
==> default: Setting up cgroup-lite (1.9) ...
==> default: cgroup-lite start/running
==> default: Setting up socat (1.7.2.3-1) ...
==> default: Processing triggers for ureadahead (0.100.0-16) ...
==> default: Setting up cgroup-bin (0.38-1ubuntu2) ...
==> default: Setting up mininet (2.1.0-0ubuntu1) ...
==> default: Processing triggers for libc-bin (2.19-0ubuntu6.13) ...
==> default: Errors were encountered while processing:
==> default:  wireshark-common
==> default:  wireshark
==> default: E
==> default: : 
==> default: Sub-process /usr/bin/dpkg returned an error code (1)
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.

Pctrl not receiving BGP updates

On the master branch, we're simulating 500+ participants. After some time, roughly 300 updates (but this varies every time we run the test), some participant controllers are not receiving any BGP updates any more from the XRS. The number of pctrl's affected keep incrementing until no-one's receiving an update any more. We suspect this is caused by sharing the Listener/Client sockets between the the PctrlListener and the BGPlistener threads without implementing a mutex. I still want to verify whether the data is actually being transmitted at route_server.py#221. A debug statement after this line showed us that the XRS keeps running this code for all BGP updates. However, the start_eh_xrs in participant_controller.py never receives it. Probably a packetdump will give us some more insight in whether the packets are transmitted or not.

Run mininext in iSDX

How can I run mininext in iSDX?
I checked the vagrant and it is not configured to install mininext. What would be the correct way to add mininext to iSDX?
I need to run the test-ms such as mininext.

Error running test-ms 3

For what reason is this error when I run ryu controller both in the older version with the latest version:
[old version]*
erro no ryu
[new version]**
erro ryu new version

I believe that the problem must be related to the topology configuration in Mininet:
[old version]*
problema no mininet

[new version]*
mininet new version

  • Version without option of running examples in mininext
    ** Version with option of running examples in mininext

Issue on running RefMon (Fabric Manager) from test-ms example /Multiswitch

Traceback (most recent call last):
File "/usr/local/bin/ryu-manager", line 5, in
from pkg_resources import load_entry_point
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2749, in
working_set = WorkingSet._build_master()
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 444, in _build_master
ws.require(requires)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 725, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 628, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: ovs>=2.6.0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.