Changes between Version 1 and Version 2 of GENIExperimenter/Tutorials/NFV/Ryu
- Timestamp:
- 10/25/16 13:35:09 (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GENIExperimenter/Tutorials/NFV/Ryu
v1 v2 1 1 = NFV Tutorial using Ryu = 2 2 == Overview == 3 We provide another version of the NFV tutorial using the Ryu controller (besides the POX controller). The differences of the instructions comparing to the POX version are included in this wiki page, and you need to refer to the [wiki:GENIExperimenter/Tutorials/NFV POX version] tutorial when finishing this Ryu version tutorial.3 We provide another version of the NFV tutorial using the Ryu controller (besides the POX controller). The differences in the instructions compared to the POX version are included in this wiki page, and you may be referred to the [wiki:GENIExperimenter/Tutorials/NFV POX version] of the tutorial while doing this Ryu version. 4 4 5 5 == Tools == … … 8 8 ---- 9 9 == Part I: !Design/Setup == 10 - First finish step1-3 in this [wiki:GENIExperimenter/Tutorials/NFV/DesignSetup page].11 - Then ssh to the VM for controller (reserved in Step 3.1), run the following to setupRyu controller on this VM:10 - First complete steps 1-3 in this [wiki:GENIExperimenter/Tutorials/NFV/DesignSetup page]. 11 - Then ssh to the VM for the controller (reserved in Step 3.1), and run the following to setup the Ryu controller on this VM: 12 12 - '''cd ~''' 13 13 - '''wget !http://csr.bu.edu/rina/grw-bu2016/nfv_ryu/install_ryu.sh''' 14 14 - '''chmod 755 install_ryu.sh ''' 15 15 - '''./install_ryu.sh''' 16 - Run the following: '''~/ryu/bin/ryu-manager --verbose ~/ryu/ryu/app/simple_switch.py''' [[BR]] and if Ryu is installed correctly, you should see the output as follows:16 - Run the following: '''~/ryu/bin/ryu-manager --verbose ~/ryu/ryu/app/simple_switch.py''' [[BR]] and if Ryu is installed correctly, you should see the following output: 17 17 18 18 {{{ … … 21 21 }}} 22 22 23 - Stop the Ryu controller by typing '''Ctrl + c'''. 23 24 24 25 ---- … … 44 45 1. Start a ping from s1 to VNF1 in the window of s1, which should timeout, since there is no controller running.[[BR]] 45 46 '''ping vnf1 -c 10''' 46 2. Run the following command to start the simple lea ning controller:47 2. Run the following command to start the simple learning controller: 47 48 '''~/ryu/bin/ryu-manager --verbose ~/ryu/ryu/app/simple_switch.py''' 48 49 3. Now ping again from s1 to VNF1, the ping should work. … … 50 51 ==== 2.2 NFV OVS controller ==== 51 52 52 Next we are going to run a different Ryu controller that will install !OpenFlow rules to support NFV load balancing as well as handling intrusion. With this controller, the traffic shall go from a source to destination, and duplicate packets are sent to one of the IDS nodes (VNF1 or VNF2) for Intrusion detection. The picture below shows a red line representing traffic going from source1 to destination, and the green line represents the duplicate traffic that is sent to VNF1 for intrusion detection.53 Next we are going to run a different Ryu controller that will install !OpenFlow rules to support NFV load balancing as well as handling intrusion. With this controller, the traffic shall go from a source to destination, and duplicate packets are sent to one of the IDS nodes (VNF1 or VNF2) for intrusion detection. The picture below shows a red line representing traffic going from source1 to destination, and the green line represents the duplicate traffic that is sent to VNF1 for intrusion detection. 53 54 54 55 {{{ … … 65 66 - '''./setup_nfv_ryu_controller.sh''' 66 67 67 3.2. Now you should have all files needed for the NFV Ryu controller. Open ''nfv.config'' file to configure the system parameters. You can use any editor to edit the file, and we luse nano here as an example.68 3.2. Now you should have all files needed for the NFV Ryu controller. Open ''nfv.config'' file to configure the system parameters. You can use any editor to edit the file, and we use nano here as an example. 68 69 - '''nano ~/ryu/ryu/app/nfv.config''' 69 70