How to Use the I2RS Development VM Download the I2RS Development VM here (md5: af70741cd12b39a9644b0881df516a55). The download of only the config files for Mininet and MiniNExt are available here. Logging in to the VM needs: Login: mininet Password: mininet
For starting Open Daylight (ODL), open the terminal and change into the Open Daylight directory. The first command is for the Beryllium version of ODL. The second command for the Helium version, but here is maven integrated. cd ~/controller-Helium-SR1.1/distribution-karaf-0.2.1-Helium-SR1.1/ To start ODL then, type this command ./bin/karaf Now ODL runs and now the Karaf shell can be used in the terminal. There should be a warning because of the SLF4J bindings, this can be ignored. The problem occurs because there are more than one binding set in the class path. This can be changed in the pom.xml file, but in this VM we use a pre build Controller so changing is currently not possible. If the warning is ignored one of the bindings will be chosen randomly and it doesn«t produce any errors. For more information here a link for the SLF4J bindings: http://www.slf4j.org/codes.html#multiple_bindings . If there are problems starting ODL, try restarting the OVS Controller. sudo su /etc/init.d/openvswitch-switch start
After these Commands the OVS Controller is restarted and now try restarting ODL. Now ODL should work and after waiting 1-4 minutes we can start up the network. We have to wait bevor we open the network because the Controller needs some time be available by the network. To start the network open a new terminal and change into the directory, with the start.py use the command below: cd ~/i2rs/virtualNetwork sudo ./start.py
The last command starts the network which is shown in Òimage1Ó. If the network shows Òunable to connect to RemoteController 127.0.0.1:6633Ó then exit MiniNext and wait some time before restarting the network. If this doesn«t work, exit MiniNext, use: sudo mn -c And restart ODL. If there are no problems the network should run. At first try this command pingall In the miniNext shell. Pingall does an all pair ping. At first there are some pings which are failing because the routes not yet learned. After waiting 1~2 minutes the routes should be learned and using pingall again should show that all pings are now reaching the destination. (First ping shows that the routes are not learned yet. Second ping shows that everything works fine and the packages are now routed correctly) Now with the Command: xterm a1 The terminal from a1 will be open. With telnet localhost ospfd The quagga ospf shell will be open. Password: zebra Here we can use show ip ospf route To see the OSPF routing table. To see all other command type ? It will show the possible command and how they will be used. To Open the BGP shell use: telnet localhost bgpd Password: zebra Some BGP commands to get information about routing tables show ip bgp show ip bgp summary show ip bgp peer ? (for more information about commands) To access Dlux, use this link: http://127.0.0.1:8181/dlux/index.html Username: admin Password: admin
The router a1, d2, d3, d4 and d5 form AS 100. The router b7 is AS 200. The internal routers d2, d3, d4 and d5 run OSPF, the border router a1 runs BGP and OSPF and the border router for the second AS b7 runs BGP. (image1) To see the network in ODL all the routers are connected through switches. ODL connects to the switches and in the DLUX->topology we can now see the network as seem by OpenFlow. Òimage2Ó presents a screenshot of the Dlux topology. Here we see all of the routers and switches. The routers are represented by hosts, and for each interface of the router a host is presented in the image. For example, b7 has only one interface so it appears only one time and a1 has three, so it appears 3 times. In the middle of Òimage2Ó there is one switch and one host, these are dummy«s created by the topology generator, they are not connected to anything and show no information if the mouse points on them. (Image2) Below are some of the configuration files used to create this network. Example Config files from a1: bgpd.conf: ! path logfile for this daemon (BGPD) log file /var/log/quagga/bgpd.log ! the password to use for telnet authentication password zebra ! this routers AS number and BGP ID router bgp 100 !loopback address of the router bgp router-id 10.10.0.1
!connection between OSPF and BGP component of a1 (routing tables will be forwarded) redistribute connected redistribute ospf ! neighbor information of the route server neighbor 100.0.1.1 remote-as 200 ! the network this router will advertise network 10.10.0.1/32
ospfd.conf: log file /var/log/quagga/ospfd.log hostname ospfd password zebra enable password zebra router ospf !connection to the BGP component of a1 redistribute connected redistribute bgp !loopback address of a1 ospf router-id 10.10.0.1 ! 2 Interfaces witch are using OSPF network 10.0.1.0/24 area 0 network 10.0.5.0/24 area 0
debian.txt: !deamons witch a1 uses (zebra, ospf and bgp) zebra=yes bgpd=yes ospfd=yes ospf6d=no ripd=no ripngd=no isisd=no
Example Config files from b7: bgpd.conf: log file /var/log/quagga/bgpd.log password zebra router bgp 200 bgp router-id 10.10.0.7 neighbor 100.0.1.2 remote-as 100 network 10.10.0.7/32
deamons.txt: zebra=yes bgpd=yes ospfd=no ospf6d=no ripd=no ripngd=no isisd=no
Example Config files d4: ospfd.conf: log file /var/log/quagga/ospfd.log hostname ospfd password zebra enable password zebra router ospf router-id 10.10.0.4 network 10.0.3.0/24 area 0.0.0.0 network 10.0.4.0/24 area 0.0.0.0 !forwarding the routing table to the kernel redistribute connected redistribute kernel
deamons.txt zebra=yes bgpd=no ospfd=yes ospf6d=no ripd=no ripngd=no isisd=no
Link for the Original VM(This VM is based on the VM in the Link): https://wiki.opendaylight.org/view/CrossProject:Integration_Group:Test_VMs If you wish to contact us: Edwin Cordeiro: edwin@net.in.tum.de Kerem Saka: kerem.saka@tum.de
|
Chair for Network Architectures and Services (I8)
Boltzmannstr. 3
Tel.: +49 89 289 - 18032
|