Mininet and Openflow Labs. Install Mininet (do not do this in class) Download VirtualBox Download Xming for windows (X11) Download Mininet VM for linux-ubuntu.

Slides:



Advertisements
Similar presentations
Static Routing Exercise AFNOG 2003/ Track 2 # 1 Static Routing Exercise u Unix network interface configuration u Cisco network interface configuration.
Advertisements

Router Implementation Project-2
 WAN uses Serial ports  Ethernet Ports:  Straight through  Cross over.
Ryu Book Chapter 1 Speaker: Chang, Cheng-Yu Date: 25/Nov./
Copyright 2014 Kenneth M. Chipps Ph.D. Software Defined Networking Lab Using Mininet and the Floodlight Controller Last Update
Workshop on Software Defined Networks
Copyright 2014 Kenneth M. Chipps Ph.D. Software Defined Networking Lab Using Mininet and the POX Controller Last Update
Ver 1,12/09/2012Kode :CIJ 340,Jaringan Komputer Lanjut FASILKOM Routing Protocols and Concepts – Chapter 2 Static Routing CCNA.
SYSTEM ADMINISTRATION Chapter 19
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Static Routing Routing Protocols and Concepts – Chapter 2.
1 Linux Networking and Security Chapter 2. 2 Configuring Basic Networking Describe how networking devices differ from other Linux devices Configure Linux.
Common network diagnostic and configuration utilities A ‘toolkit’ for network users and managers when ‘troubleshooting’ is needed on your network.
TCP/IP Tools Lesson 5. Objectives Skills/ConceptsObjective Domain Description Objective Domain Number Using basic TCP/IP commands Understanding TCP/IP3.6.
Click to edit Master subtitle style Chapter 17: Troubleshooting Tools Instructor:
Virtual LANs. VLAN introduction VLANs logically segment switched networks based on the functions, project teams, or applications of the organization regardless.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Static Routing Routing Protocols and Concepts – Chapter 2.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Static Routing Routing Protocols and Concepts – Chapter 2.
Managing Network connections. Network Cabling Ethernet Topology Bus topology – Connects each node in a line – Has no central connection point Star topology.
Connecting LANs, Backbone Networks, and Virtual LANs
CCNA – Cisco Certified Network Associates Routing and Static Routes By Roshan Chaudhary Lecturer Islington College.
Lab How to Use WANem Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
NOX an OpenFlow controller. Role of Controller in OpenFlow Environments Push forwarding logic to switches Give developers a high-level API to develop.
Sponsored by the National Science Foundation Tutorial: An Introduction to OpenFlow using POX GENI Engineering Conference 20 June 2014.
Cisco S2 C4 Router Components. Configure a Router You can configure a router from –from the console terminal (a computer connected to the router –through.
Hour 7 The Application Layer 1. What Is the Application Layer? The Application layer is the top layer in TCP/IP's protocol suite Some of the components.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Introduction to Routing and Packet Forwarding Routing Protocols and.
Routing and Routing Protocols
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Static Routing Routing Protocols and Concepts – Chapter 2.
NET 324 D Networks and Communication Department Lec1 : Network Devices.
ERICSON BRANDON M. BASCUG Alternate - REGIONAL NETWORK ADMINISTRATOR HOW TO TROUBLESHOOT TCP/IP CONNECTIVITY.
Course Project for CS Objective Simulate the FatTree datacenter network using Mininet and MinEdit. With controller: spamming tree, link failures.
CS440 Computer Networks 1 Packet Switching Neil Tang 10/6/2008.
+ Routing Concepts 1 st semester Objectives  Describe the primary functions and features of a router.  Explain how routers use information.
Introduction to Mininet, Open vSwitch, and POX
Jennifer Rexford Princeton University MW 11:00am-12:20pm Data-Plane Verification COS 597E: Software Defined Networking.
11 ROUTING IP Chapter 3. Chapter 3: ROUTING IP2 CHAPTER INTRODUCTION  Understand the function of a router.  Understand the structure of a routing table.
Copyright © 2010, Install OpenFlow Mininet 指導教授:王國禎 學生:洪維藩 國立交通大學資訊科學與工程研究所 行動計算與寬頻網路實驗室.
Static Routing Routing Protocols and Concepts – Chapter 2.
CHAPTER 3 Router CLI Command Line Interface. Router User Interface User and privileged modes User mode --Typical tasks include those that check the router.
© 2002, Cisco Systems, Inc. All rights reserved..
Programming Assignment 2 Zilong Ye. Traditional router Control plane and data plane embed in a blackbox designed by the vendor high-seed switching fabric.
Chapter 5e.  Upon completion of this chapter, you should be able to:  Find IP configuration settings on Windows & Linux  Troubleshoot IP configuration.
Cisco Routers Routers collectively provide the main feature of the network layer—the capability to forward packets end-to-end through a network. routers.
Software OpenFlow Solutions using Open vSwitch
Luis Gomez, Principal SW Test Engineer, Brocade
SDN controllers App Network elements has two components: OpenFlow client, forwarding hardware with flow tables. The SDN controller must implement the network.
Mininet and Openflow Labs
6. The Open Network Lab Overview and getting started
What I Learned From Mininet
Troubleshooting ip Chapter 5e.
Software defined networking: Experimental research on QoS
CompTIA Network+ N Authorized Cert Guide
Switch Commands Exec Commands Switch#? exec Commands
Programming Assignment
ECE 544: Middlebox lab Abhigyan Sharma.
Programming Assignment
Port Forwarding and Shell Login Essentials
Chapter 4: Routing Concepts
Chapter 2: Static Routing
© 2002, Cisco Systems, Inc. All rights reserved.
Introduction to Networking
Chapter 2: Basic Switching Concepts and Configuration
ECE544: Software Assignment 3
Programming Assignment #3
2018 Huawei H Real Questions Killtest
Chapter 2: Static Routing
Connecting LANs, Backbone Networks,
Adaptive Flow Control using OpenFlow
Routing Protocols and Concepts – Chapter 2
Troubleshooting ip Chapter 5e.
Presentation transcript:

Mininet and Openflow Labs

Install Mininet (do not do this in class) Download VirtualBox Download Xming for windows (X11) Download Mininet VM for linux-ubuntu Start VirtualBox Create a new VM for linux-ubuntu and the Mininet VM as the disk image Start the VM Set network device forwarding :2222 to virtual machine port 22. – This allows you to ssh to :2222 to login to the Mininet VM Login with mininet:mininet – this is just like any other Linux machine.

Lab 1: Mininet Walkthrough Perform the steps at Objective: – Understand how to use mininet – How to run a command on each host – Learn how to change network parameters in mininet Link bandwidth, latency, topology, etc – Learn how to write python code for new topologies Make sure that you understand the custom topology example

Lab 1: Mininet Walkthrough Login to crux (enable X11 forwarding). crux>ssh –p 2222 (3333, 4444, …) password: mininet Follow the walk through.

Lab 2: Manually configure Openflow switches with dpctl Objectives Understand how an Openflow switch behaves Understand what an Openflow controller supposes to do to enable communication. Dpctl: a command-line utility that sends openflow messages to a switch View switch configuration and capability View flow table entries Add, delete, and modify flow table entries – Useful tool for learning and debugging Human faking an openflow controller – ‘man dpctl’ for more details

Lab 2: Manually configure Openflow switches with dpctl $ sudo mn --topo single,3 --mac --switch ovsk --controller remote This creates a simple host with 3 switches, the mac addresses are assigned in a certain way, the switch is an Open vSwitch (software OpenFlow switch), controller is supposed to be at local host with port number Mininet> net Mininet> h1 ifconfig Mininet> h2 ifconfig The switch can be controlled at tcp: :6634 Mininet>pingall This fails as the switch has nothing in its flow table – Start another window do ‘man dpctl’ and ‘man ovs-dpctl’ – $ dpctl show tcp: :6634 Tcp: :6634 is the switch port for control – $dpctl dump-flows tcp: :6634 The flow table is empty

Lab 2: Manually configure Openflow switches with dpctl $dpctl add-flow tcp: :6634 in_port=1,idle_timeout=1000,actions=output:2 $dpctl add-flow tcp: :6634 in_port=2,idle_timeout=1000,actions=output:1 $dpctl dump-flows tcp: :6634 Mininet> pingall H1 and h2 are now connected. – $dpctl dump-flows tcp: :6634 Check the statistics – Mininet> s1 dpctl dump-flows tcp: :6634 – Continue the exercise to completely install flow table for all hosts. – Try the following: $dpctl add-flow tcp: :6634 dl_dst=0:0:0:0:0:1,idle_timeout=1000,actions=output:1 $dpctl add-flow tcp: :6634 dl_dst=0:0:0:0:0:2,idle_timeout=1000,actions=output:2 $dpctl add-flow tcp: :6634 dl_dst=0:0:0:0:0:3,idle_timeout=1000,actions=output:3 $dpctl dump-flows tcp: :6634 Mininet> pingall

Lab 2: Manually configure Openflow switches with dpctl – Try the following: – $dpctl add-flow tcp: :6634 idle_timeout=1000,actions=flood – Mininet> pingall $dpctl add-flow tcp: :6634 dl_dst=ff:ff:ff:ff:ff:ff,idle_timeout=1000,actions=flood Mininet>pingall dpctl del-flows tcp:127:0.0.1:6634 dpctl dump-flows tcp: :6634 $dpctl add-flow tcp: :6634 dl_dst=ff:ff:ff:ff:ff:ff,idle_timeout=1000,actions=flood $dpctl add-flow tcp: :6634 dl_dst=0:0:0:0:0:1,idle_timeout=1000,actions=output:1 Mininet>pingall how to make the ping successful for one pair of hosts?

Lab 2: manually setup openflow switches with dpctl Set up a network with the following topology such that all communication can be realized between each pair of hosts: using destination based routing. s1 s2 s3 h1 h2 h4 h3

Lab 3: a naïve POX controller Objectives – Moving commands from dpctl to a POX controller – Understand how the POX controller interacts with switches POX document – See POX controller examples forwarding/hub.py at pox/forwarding/hub.py – See the flow_mod message that add one flow table entry to flood all packets – turning each connected switch to a hub. – To use the controller: $ sudo mn --topo linear,4 --mac --switch ovsk --controller remote – The default controller is at the same machine with port number – Different switches are at tcp: :6634{6635, 6636,…} $./pox.py forwarding.hub – Create a controller running on local machine port 6633, will connect with the openflow switches. – Pay attention to how the flow table entries are created – Pay attention to the connectionup event $dpctl dump-flows tcp: :6634 $dpctl dump-flows tcp: :6635 Mininet> pingall

Lab3: A naïve POX controller See lab3.py and lab3_controller.py Put lab3_controller.py under pox/ext Run lab3.py with ‘$sudo./lab3.py’ Use dpctl to see the flow-table on each switch. s1 s2 s3 h1 h3 h2

Lab3: A naïve POX controller Modify lab3.py and lab3_controller.py to setup the network with the following topology s1 s2 s3 H1 ( ) H2( ) H4 ( ) H3( ) s4 H5( ) H5( )

Lab4: Shortest path forwarding Try my_lab4.py (‘sudo./my_lab4.py’) Read the code for topology discovery and path calculation in forwarding/l2_multi.py Homework: Write a topology-oblivious code with shortest path forwarding for the following topology: s1 s2 s3 h1 h3 h2