1st SDN Interest Group Seminar - Session3 (121017)

18
ktds openflow controller October 17, 2012 Version 1.0 Contact : Seung Jae Lee, Assistant Manager, sDSP Team ktds, [email protected] Mi Ju Lee, Assistant Manager, sDSP Team ktds, [email protected]

description

2012년 10월 16일 진행된 제1차 SDN Interest Group Seminar의 발표 자료 입니다.

Transcript of 1st SDN Interest Group Seminar - Session3 (121017)

Page 1: 1st SDN Interest Group Seminar - Session3 (121017)

ktds openflow controller October 17, 2012 Version 1.0

Contact : Seung Jae Lee, Assistant Manager, sDSP Team ktds, [email protected] Mi Ju Lee, Assistant Manager, sDSP Team ktds, [email protected]

Page 2: 1st SDN Interest Group Seminar - Session3 (121017)

ktds

Controller

1. About Controller

5. Demonstration

4. Scenario

2. NOX tutorial

3. ktds controller

목차

Page 3: 1st SDN Interest Group Seminar - Session3 (121017)

Open Flow Projects

Name Language Platform(s) License Original Author

OpenFlow C Linux OpenFlow License

Stanford/Nicira

NOX Python, C++ Linux GPL Nicira

POX Python Any GPL

Floodlight Java Any Apache-licensed BigSwitch, based on Beacon

Beacon Java Win, Mac,

Linux, Android

GPL (core) David Erickson (Stanford)

RouteFlow C++, Python Linux Apache CPqD (Brazil)

Maestro Java Win, Mac,

Linux LGPL Zheng Cai (Rice)

Trema Ruby, C Linux GPL NEC

MORE…

Page 4: 1st SDN Interest Group Seminar - Session3 (121017)

• NOX Classic NOX was programmable in C++ and Python

• NOX [NEW fork] C++ Only

Remove Python from NOX: “New”NOX

• POX Python only

Build a new platform in pure Python

Target Linux, Mac OS, and Windows

Good for research

NOX & POX CONTROLLER

About NOX & POX

4

Page 5: 1st SDN Interest Group Seminar - Session3 (121017)

• NOX was the first SDN controller

• Linux

• C++ and Python

• Component system

• Event-based programming model

• OpenFlow interface

• Packet construction/dissection libraries

• Applications:

Forwarding (reactive), topology discovery, host tracking,…

NOX

• A Java-based OpenFlow Controller(forked from Beacon)

• Apache Licensed

• REST API

• Pure java(no OSGI know how required)

• Dead simple to build and run

• Tested and hardened in real environmets

Physical OpenFlow switches and real networks

Code included in commercial product from Big Switch Networks

Floodlight

About NOX & Floodlight

5

Page 6: 1st SDN Interest Group Seminar - Session3 (121017)

Setup

1. Download VirtualBox

https://www.virtualbox.org/wiki/Downloads

2. $ unzip OpenFlowTutorial-101311.zip

3. http://www.openflow.org/wk/index.php/OpenFlow_Tutorial

NOX Tutorial

6

Developing a Network Topology

Customizing by MININET

Developing a custom controller

Run NOX controller

./nox_core –v –I ptcp: pyswitch

Example Controllers

Basic NOX Controller

~/noxcore/src/nox/coreapps/examples/pyswitch.py

Page 8: 1st SDN Interest Group Seminar - Session3 (121017)

8

OS, Kernel ARCHITECTURE LANGUAGE PART LAYER

NOX GUI

NOX CONTROLLER APPLICATION

NOX I/F

NOX CONTROLLER COMPONENT

OPEN FLOW PROTOCOL (SERVER)

OPEN FLOW VISOR

OPEN FLOW PROTOCOL

MININET

USER I/F

ENVI

LINUX

UBUNTU 11.10

JAVA 1.6

PERL

PYTHON 4.7

LINUX

UBUNTU 11.10

PERL

PYTHON 4.7

Open Flow Over TCP/IP

Open Flow Over TCP/IP

PROTOCOL

CONTROL

DATA PLAN

CONTROL

GUI JAVA, Python

C, C++, Python

JAVA

C ,PERL

C ,PERL

C++ Python

Python

C, C++, Python

ON Controller

Nox 0.9.1

Switch, Router

KTDS Architecture

Page 9: 1st SDN Interest Group Seminar - Session3 (121017)

9

1. Displays and Refresh Network status

2. Display NOX Console log

3. Show Switch status (Flow , table, Aggregate statistics)

4. FlowManager

A. Add/Del/Change Flow Table

B. Get Switch info

C. Get Flow table list

D. Profile list

5. Flow Trace

6. OpenFlow Switch Specification Version 1.0.0

ktds Open Flow Controller Support

Page 10: 1st SDN Interest Group Seminar - Session3 (121017)

10

1. Test 환경구성 (MININET) 3 hosts – 4 switch topology

2. Ping test

A. H1 ping H7

B. H2 ping H7

3. Packet 경로 및 Flow table 확인

4. Change H2 <-> H7 path by Flow modification

5. ADD Flow table on Switch 3 (change outport! Which IP is H2)

6. Check H2 ping H7 ping status!

7. Add flow table on switch 5, and switch 6

8. Now ping works!

We will change Data path by Flow modification

Test Scenario

Page 11: 1st SDN Interest Group Seminar - Session3 (121017)

11

H1 : 10.0.0.1

S4

S5

S6

1

2

4

3

S3

1 2

2

2 1

1

Open Flow Protocol

controller Openflow GUI

NOX

Controller

OpenFlow

Vitual

Network

OpenFlow

NOX GUI

OpenFlow

3 hosts – 4 switch topology

H2 : 10.0.0.2

H7 : 10.0.0.7

3

Page 12: 1st SDN Interest Group Seminar - Session3 (121017)

12

H1 : 10.0.0.1

S5

S4

S6

1

2

3

4

S3

1 2

2

2 1

1

Open Flow Protocol

controller Openflow GUI

NOX

Controller

OpenFlow

Vitual

Network

OpenFlow

NOX GUI

OpenFlow

H1 ping H7

H2 : 10.0.0.2

H7 : 10.0.0.7

3

Page 13: 1st SDN Interest Group Seminar - Session3 (121017)

13

H1 : 10.0.0.1

S5

S4

S6

1

2

3

4

S3

1 2

2

2 1

1

3

Open Flow Protocol

controller Openflow GUI

NOX

Controller

OpenFlow

Vitual

Network

OpenFlow

NOX GUI

OpenFlow

H2 ping H7

H2 : 10.0.0.2

H7 : 10.0.0.7

Page 14: 1st SDN Interest Group Seminar - Session3 (121017)

14

H1 : 10.0.0.1

S5

S4

S6

1

2

3

4

S3

1 2

2

2 1

1

Open Flow Protocol

controller Openflow GUI

NOX

Controller

OpenFlow

Vitual

Network

OpenFlow

NOX GUI

OpenFlow

Add Flow on Switch 3

H2 : 10.0.0.2

H7 : 10.0.0.7

ADD

FLOW

( IP : 10.0.0.2 inport: 2 outport 4 ->3)

3

Page 15: 1st SDN Interest Group Seminar - Session3 (121017)

15

H1 : 10.0.0.1

S5

S4

S6

1

2

3

4

S3

1 2

2

2 1

1

Open Flow Protocol

controller Openflow GUI

NOX

Controller

OpenFlow

Vitual

Network

OpenFlow

NOX GUI

OpenFlow

H2 PING H7

H2 : 10.0.0.2

H7 : 10.0.0.7

ADD

FLOW

ADD

FLOW ADD

FLOW 3

Page 16: 1st SDN Interest Group Seminar - Session3 (121017)

16

H1 : 10.0.0.1

S5

S4

S6

1

2

3

4

S3

1 2

2

2 1

1

3

Open Flow Protocol

controller Openflow GUI

NOX

Controller

OpenFlow

Vitual

Network

OpenFlow

NOX GUI

OpenFlow

H2 PING H7

H2 : 10.0.0.2

H7 : 10.0.0.7

ADD

FLOW

ADD

FLOW ADD

FLOW

Page 17: 1st SDN Interest Group Seminar - Session3 (121017)

17

Demonstration

Page 18: 1st SDN Interest Group Seminar - Session3 (121017)

www. ktds.co.kr