Download presentation
Presentation is loading. Please wait.
1
Programming Assignment #3
Implementing a virtual network using Mininet controllers : POX(python) - Floodlight (Java) Due: 11:55PM Sunday Nov. 19th submit to Moodle site Hello everyone. Now I’m gonna introduce something about socket programming. First we will try to get a general idea about what socket is. Then we will introduce socket programming with Java and socket programming with Python. The corresponding reading material is the Section 2.7 in Chapter 2, and the project 1 description. Project III Description (here) CSci4211: Programming Assignment #3
2
CSci4211: Programming Assignment #3
What should we do? Install Mininet and do the walkthrough to get familiar with the commands and the environment Install a controller POX : cd ~/pox Then, start the hub: $ pox.py log.level –DEBUG forwarding.hub Floodlight Java-based intended to run with standard JDK tools cd ~/floodlight and run ant Java -jar target/floodlight.jar CSci4211: Programming Assignment #3
3
CSci4211: Programming Assignment #3
How to use the VM Download the image from here Install a virtualbox ( e.g. Oracle ) Run the virtualbox and import the image CSci4211: Programming Assignment #3
4
CSci4211: Programming Assignment #3
After Importing CSci4211: Programming Assignment #3
5
CSci4211: Programming Assignment #3
After Running username: mininet password: CSci4211: Programming Assignment #3
6
After Running run ‘ifconfig’ command on the virtual box and get the VM’s Ip address from eth0 using a terminal in your computer, run ssh -x IP address to connect the password is mininet easier for copying and pasting the output
7
How to have files in the VM?
use <scp> command if you can <ssh> to the VM scp <local file> <VM machine IP>:<VM path> scp ~/Desktop/Project3/upload/part2/simple_routing.py $ ifconfig -a The IP should be x.x which is a host-only interface Run the file $ cd pox $ ./pox.py samples.simple_routing CSci4211: Programming Assignment #3
8
Run the controller and topology code
Check the switch tables CSci4211: Programming Assignment #3
9
how to use the controller?
CSci4211: Programming Assignment #3
10
CSci4211: Programming Assignment #3
What controllers need? Implement the simplest way to add up entries to flow tables and learn the network How? when a packet is received at the controller for the first time, add an entry mapping <switch input port> to < src address> If there is no entry for the packet,tell the switch to flood it to all the ports If there exist a entry for the packet, install a flow entry on switch, setting the output port CSci4211: Programming Assignment #3
11
CSci4211: Programming Assignment #3
Topology CSci4211: Programming Assignment #3
12
CSci4211: Programming Assignment #3
what to measure? Link Latency and Throughput use ping and iperf for t = 20 and intervals of 1 second write down the results for each link Path Latency and Throughput between h1 and h5 use ping and iperf CSci4211: Programming Assignment #3
13
CSci4211: Programming Assignment #3
Build a topology CSci4211: Programming Assignment #3
14
some cool resources to check
Introduction to Mininet Mininet Remote Controller
15
Q&A CSci4211: Programming Assignment #3
16
Take Home Quiz 1 & Other Tidbits
Take-Home Quiz I: graded (rather leniently)! statistics: Max. 100, Median 80, Mean 75, Min. 36 Points # people [80-89] [70-79] [60-69] 4 [50-59] 4 [0-49] Total 75 Please feel free to talk to us if you have questions, especially if you didn’t do well Please check “Important Dates” for upcoming deadlines! CSci4211: Weekly Summary
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.