SlideShare a Scribd company logo
1 of 85
Download to read offline
SDN 테스트베드 구축
라즈베리파이를 이용하여 이더넷 스위치를 제작,
ON.Lab의 ONOS/OVX SDN 컨트롤러로 제어
Programmable Network 구축
한국정보과학회 단기강좌
경희대학교 이성원 교수
Email : drsungwon@khu.ac.kr
Web : http://mobilelab.khu.ac.kr
경희대학교 컴퓨터공학과 모바일컨버전스Lab 한상윤
Email : sangyun0628@khu.ac.kr
Mobile Convergence Laboratory 2
목차
A Table of Contents
ONOS
ONOS(Open Network Operating System) 소개, 아키텍처 분석, 설치 및 데모
Keyword : Distributed core, Hazelcast, Intent Framework, maven, karaf
OpenVirteX
OVX 소개, Network Hypervisor와 가상화 플랫폼의 기능, 설치 및 데모
Keyword : Hypervisor, 네트워크 가상화 플랫폼, Resilient, elastic
Pi Stack Switch
Raspberry Pi와 Open vSwitch를 이용한 SDN 테스트베드 구축
Keyword : Raspberry Pi, Open vSwitch, OpenFlow 스위치
Q&A
질의응답
Pi Stack Switch
ONOS
SDN Network Operating System & SDN Control Platform
Mobile Convergence Laboratory 3
Mobile Convergence Laboratory 4
• Service Provider를 위한 캐리어급 SDN 네트워크 운영체제
• 이 주도한 프로젝트
Mobile Convergence Laboratory 5
• Service Provider를 위한 캐리어급 SDN 네트워크 운영체제
• 이 주도한 프로젝트
Mobile Convergence Laboratory 6
Mobile Convergence Laboratory 7
Non-profit
Tools/Platforms for SDN community
Mobile Convergence Laboratory 8
Mobile Convergence Laboratory 9
Mobile Convergence Laboratory 10
Mobile Convergence Laboratory 11
Mobile Convergence Laboratory 12
Supporting members
Mobile Convergence Laboratory 13
Projects
• Service Provider를 위한 캐리어급 SDN 네트워크 운영체제
• 이 주도한 프로젝트
Mobile Convergence Laboratory 14
15Mobile Convergence Laboratory
ONOS의 목표는
뭘까?
기존의 수많은
SDN controller
Mobile Convergence Laboratory 16
Mobile Convergence Laboratory 17
commercial
products
Mobile Convergence Laboratory 18
commercial
products
Mobile Convergence Laboratory 19
commercial
products
Mobile Convergence Laboratory 20
High Availability
• Multiple Instance Clustering
• Fault tolerance using Distributed Core
• Five Nines 수준의 가용성
Mobile Convergence Laboratory 21
High Availability High Performance
• High Throughput
• ~500K-1M path setups/second
• High Volume
• ~500GB-1TB state data
• Low Latency
• 10~100ms
Mobile Convergence Laboratory 22
High Availability High Performance Scalability
• OSGi 기반의 오픈소스 Karaf
 쉽고 빠른 배포
• 분산 클러스터링 지원
 Sync, Share
Mobile Convergence Laboratory 23
High Availability High Performance Scalability White Box (Open)
Reference : ONOS wiki
Mobile Convergence Laboratory 24
High Availability High Performance Scalability White Box (Open)
Mobile Convergence Laboratory 25
ONOS Framework(ONOSFW)
Mobile Convergence Laboratory 26
ONOS as an SDN
controller within the
VIM
Mobile Convergence Laboratory 27
ONOS Architecture
Mobile Convergence Laboratory 28
Mobile Convergence Laboratory 29
구체적인 서비스를
위한 Application 계층
Mobile Convergence Laboratory 30
Application 계층에
네트워크 정보 전달,
하위 컴포넌트 제어를
위한 인터페이스 제공
Mobile Convergence Laboratory 31
ONOS의 핵심적인 역할
을 하며,
HA와 Scalability를 위한
분산 클러스터링 기능
Mobile Convergence Laboratory 32
네트워크 인프라 제어를
위한 인터페이스 제공
Network Element 추상화
Mobile Convergence Laboratory 33
Network Element 설정
을 위한 프로토콜
OpenFlow : SDN
NetConf : Legacy
Mobile Convergence Laboratory 34
Distributed
Core
Instance 1
Scale-out by Distributed Core (1)
Network Graph
Global network view
Mobile Convergence Laboratory 35
Distributed
Core
Instance 1 Instance 2 Instance 3
Scale-out by Distributed Core (2)
Network Graph
Global network view
Mobile Convergence Laboratory 36
Distributed
Core
Instance 1 Instance 2 Instance 3
Network Graph
Global network view
HA by Distributed Core (1)
Mobile Convergence Laboratory 37
Distributed
Core
Instance 1 Instance 2 Instance 3
Network Graph
Global network view
HA by Distributed Core (2)
Mobile Convergence Laboratory 38
Distributed
Core
Instance 1 Instance 2 Instance 3
Network Graph
Global network view
HA by Distributed Core (3)
Mobile Convergence Laboratory 39
Clustering Synchronize Data
Sharing
ONOS - Install
1. Getting ONOS
2. Installing ONOS
3. Start ONOS
Mobile Convergence Laboratory 40
Prerequisites
• Ubuntu 14.04 LTS 64bits
• 2GB or more RAM
• 2 or more processors
• 8GB or more storage
• Java 8 JDK
• Apache Maven(3.0 and later)
• Apache Karaf(3.0.2 and later)
• Git
Mobile Convergence Laboratory 41
1. Install Java 8
$ sudo apt-get install software-properties-common -y
$ sudo add-apt-repository ppa:webupd8team/java -y
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer oracle-java8-set-default
Mobile Convergence Laboratory 42
1.1. Configure Java Path
• on Ubuntu
$ env | grep JAVA_HOME
JAVA_HOME=/usr/lib/jvm/java-8-oracle
$ export JAVA_HOME=/usr/lib/jvm/java-8-oracle
Mobile Convergence Laboratory 43
2. Install Git
$ sudo apt-get install git-core
$ git --version
Mobile Convergence Laboratory 44
3. Set Maven
$ cd; mkdir Downloads Applications
$ cd Downloads
$ wget http://archive.apache.org/dist/maven/maven-
3/3.3.1/binaries/apache-maven-3.3.1-bin.tar.gz
$ tar -zxvf apache-maven-3.3.1-bin.tar.gz -C ../Applications/
Mobile Convergence Laboratory 45
4. Set Karaf
$ cd Downloads
$ wget http://download.nextag.com/apache/karaf/3.0.3/apache-
karaf-3.0.3.tar.gz
$ tar -zxvf apache-karaf-3.0.3.tar.gz -C ../Applications/
Mobile Convergence Laboratory 46
5. Clone ONOS
$ git clone https://gerrit.onosproject.org/onos/
$ cd onos
if> getting specific ONOS version
$ git checkout <ver>
Mobile Convergence Laboratory 47
5.1. Configure ONOS Path
$ export ONOS_ROOT=~/onos
$ source $ONOS_ROOT/tools/dev/bash_profile
Mobile Convergence Laboratory 48
6. Build ONOS
$ cd ~/onos
$ mvn clean install
Mobile Convergence Laboratory 49
빌드 성공
7. Start ONOS CLI
$ karaf clean
Mobile Convergence Laboratory 50
8. Start ONOS GUI
• start ONOS (ONOS CLI)
• In web browser
• http://localhost:8181/onos/ui/index.html
Mobile Convergence Laboratory 51
Mobile Convergence Laboratory 52
<Network Graph>
토폴로지 GUI와 Host 정보
<Node Info>
해당 노드(스위치)의 정보
Protocol / Ports / Flow
버전 및 지리적 정보
<ONOS Summary>
Network Element의 수
링크의 수
호스트의 수
Flow의 수…
Mobile Convergence Laboratory 53
<ONOS Instance>
OpenVirteX
Network Virtualization Platform & Network Hypervisor
Mobile Convergence Laboratory 54
OpenVirteX (OVX)
• Network Virtualization Platform
• Network Hypervisor
Mobile Convergence Laboratory 55
Mobile Convergence Laboratory 56
주요 기능
• Topology Virtualization
• Address Space Virtualization
• Control Function Virtualization
Mobile Convergence Laboratory 57
주요 기능 - Topology Virtualization
• 가상화를 통해 물리적 네트워크를 분리
• 물리 계층을 추상화
• 다수의 스위치를 묶어서 하나의 스위치로 가상화(Big Switch)
Mobile Convergence Laboratory 58
주요 기능 - Address Space Virtualization
Mobile Convergence Laboratory 59
주요 기능 - Control Function Virtualization
Mobile Convergence Laboratory 60
SDN Controller
(NOS)
Big Switch
Controll Plane
(by OpenFlow Channel)
OVX
OpenVirteX - Install
Mobile Convergence Laboratory 61
Prerequisites
Recommended
• 4 Cores
• 4GB Java heap size
Minimum
• 2 Cores
• 1GB Java heap size
Mobile Convergence Laboratory 62
• Git
• Oracle Java7 (Not OpenJDK, Not Java8)
• Maven
• Python 2.7.x
1. Install Git & Maven
$ apt-get install git-core
$ apt-get install maven
Mobile Convergence Laboratory 63
2. Install Java7
$ sudo apt-get install software-properties-common -y
$ sudo add-apt-repository ppa:webupd8team/java -y
$ sudo apt-get update
$ sudo apt-get install oracle-java7-installer
Mobile Convergence Laboratory 64
3. Clone OpenVirteX
$ git clone https://github.com/OPENNETWORKINGLAB/OpenVirteX.git -b 0.0-MAINT
$ cd ~/OpenVirteX/scripts.
Mobile Convergence Laboratory 65
4. Start OVX
$ sh ovx.sh
ex> 가상 네트워크 생성 및 Big Switch 생성
$ python ovxctl.py -n createNetwork tcp:localhost:30000 10.0.0.0 16
$ python ovxctl.py -n createSwitch DPID_1,DPID_2,DPID_3,DPID_4
<Tutorial & API Doc>
http://ovx.onlab.us/getting-started/tutorial/
http://ovx.onlab.us/documentation/api/
Mobile Convergence Laboratory 66
Pi Stack Switch
Raspberry Pi를 이용한 SDN 테스트베드 개발
Mobile Convergence Laboratory 67
Raspberry Pi
• 영국의 라즈베리파이 재단이 만든 교육용 싱글 보드 컴퓨터
• Single Board Computer
• 대략 US$ 35
• Pi A/B, Pi B+, Pi2 출시
Mobile Convergence Laboratory 68
Raspberry Pi2의 스펙
• Single Board Computer(Micro Computer)
• CPU : 900MHz ARM Cortex-A7 쿼드코어
• RAM : 1GB
• USB 2.0 * 4 + HDMI * 1 + Micro USB전원
• 10/100 Mbit/s Ethernet
Mobile Convergence Laboratory 69출처 : Wikipedia(wikipedia.org/wiki/Raspberry_Pi)
Pi Stack Switch HW구성
Mobile Convergence Laboratory 70
Mobile Convergence Laboratory 71
Pi Stack Switch HW구성
메인 스위치 x 1개 x 1포트
+
서브 스위치 x 3개 x 3포트
= 10포트 스위치
Mobile Convergence Laboratory 72
Pi Stack Switch 완성
Mobile Convergence Laboratory 73
USB허브를 이용한 17포트 스위치
Mobile Convergence Laboratory 74
Raspbian OS
Software
Mobile Convergence Laboratory 75
Software
Mobile Convergence Laboratory 76
System
Architecture
USBtoEthernet
Bridge
eth1 eth2 eth3
eth0
Ethernet
Port
USBtoEthernet
USBtoEthernet
FlowTable
Pi Stack Switch - Install
• OpenvSwitch 설치
$ sudo apt-get install openvswitch-switch openvswitch-
controller openvswitch-common
$ sudo ovs-vsctl add-br <BridgeName>
$ sudo ovs-vsctl add-port <BridgeName> eth_n
$ sudo ovs-vsctl set-controller <BridgeName> tcp:Ctrl_IP:6633
https://github.com/MobileConvergenceLab/pi-switch
Mobile Convergence Laboratory 77
Pi Stack Switch와 ONOS 연결
Mobile Convergence Laboratory 78
메인 스위치
서브 스위치1
서브 스위치2
서브 스위치3
SDN Network 구축
SDN 테스트베드와 하이퍼바이저 그리고 SDN 컨트롤러
Mobile Convergence Laboratory 79
Mobile Convergence Laboratory 80
Pi Stack Switch
Mobile Convergence Laboratory 81
Network
Architecture
Network
Operating
System
Virtual Network
Physical Layer
OpenFlow Interface
Pi Stack Switch
OpenFlow Interface
Big Switch
Mobile Convergence Laboratory 82
Network Element Mapping
Mobile Convergence Laboratory 83
Big Switch
Network Element Mapping
Reference
• ONOS
• http://onosproject.org/
• https://wiki.onosproject.org/ 공식 Wiki
• https://wiki.onosproject.org/display/ONOS/ONOS+from+Scratch
• https://wiki.onosproject.org/display/ONOS/Installing+and+Running+ONOS
• https://www.youtube.com/watch?v=dWhtswhSpWE
• Pankaj Berde and others, “ONOS: Towards an Open, Distributed SDN OS”, HostSDN 2014
• OpenVirteX
• http://ovx.onlab.us/
• Ali Al-Shabibi and others, “OpenVirteX: Make Your Virtual SDNs Programmable”, HotSDN 2014
• OpenvSwitch
• http://www.openvswitch.org/
• Raspberry Pi
• https://www.raspberrypi.org/
• http://en.wikipedia.org/wiki/Raspberry_Pi
Mobile Convergence Laboratory 84
Q&A
Mobile Convergence Laboratory 85

More Related Content

What's hot

Interconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNsInterconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNsThomas Morin
 
OpenStack networking (Neutron)
OpenStack networking (Neutron) OpenStack networking (Neutron)
OpenStack networking (Neutron) CREATE-NET
 
SDN Training - Open daylight installation + example with mininet
SDN Training - Open daylight installation + example with mininetSDN Training - Open daylight installation + example with mininet
SDN Training - Open daylight installation + example with mininetSAMeh Zaghloul
 
Understanding Open vSwitch
Understanding Open vSwitch Understanding Open vSwitch
Understanding Open vSwitch YongKi Kim
 
Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitchSim Janghoon
 
VXLAN Integration with CloudStack Advanced Zone
VXLAN Integration with CloudStack Advanced ZoneVXLAN Integration with CloudStack Advanced Zone
VXLAN Integration with CloudStack Advanced ZoneYoshikazu Nojima
 
OpenvSwitch Deep Dive
OpenvSwitch Deep DiveOpenvSwitch Deep Dive
OpenvSwitch Deep Diverajdeep
 
Opendaylight SDN Controller
Opendaylight SDN ControllerOpendaylight SDN Controller
Opendaylight SDN ControllerSumit Arora
 
Openstack Neutron & Interconnections with BGP/MPLS VPNs
Openstack Neutron & Interconnections with BGP/MPLS VPNsOpenstack Neutron & Interconnections with BGP/MPLS VPNs
Openstack Neutron & Interconnections with BGP/MPLS VPNsThomas Morin
 
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking ShapeBlue
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDNOpenStack Korea Community
 
Open stack networking vlan, gre
Open stack networking   vlan, greOpen stack networking   vlan, gre
Open stack networking vlan, greSim Janghoon
 
OpenStack概要 ~仮想ネットワーク~
OpenStack概要 ~仮想ネットワーク~OpenStack概要 ~仮想ネットワーク~
OpenStack概要 ~仮想ネットワーク~Masaya Aoyama
 
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月VirtualTech Japan Inc.
 
[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험NHN FORWARD
 
OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27Kentaro Ebisawa
 
Open vSwitch 패킷 처리 구조
Open vSwitch 패킷 처리 구조Open vSwitch 패킷 처리 구조
Open vSwitch 패킷 처리 구조Seung-Hoon Baek
 
CloudStack networking
CloudStack networkingCloudStack networking
CloudStack networkingShapeBlue
 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge MigrationJames Denton
 

What's hot (20)

Interconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNsInterconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNs
 
OpenStack networking (Neutron)
OpenStack networking (Neutron) OpenStack networking (Neutron)
OpenStack networking (Neutron)
 
SDN Training - Open daylight installation + example with mininet
SDN Training - Open daylight installation + example with mininetSDN Training - Open daylight installation + example with mininet
SDN Training - Open daylight installation + example with mininet
 
Understanding Open vSwitch
Understanding Open vSwitch Understanding Open vSwitch
Understanding Open vSwitch
 
Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitch
 
VXLAN Integration with CloudStack Advanced Zone
VXLAN Integration with CloudStack Advanced ZoneVXLAN Integration with CloudStack Advanced Zone
VXLAN Integration with CloudStack Advanced Zone
 
OpenvSwitch Deep Dive
OpenvSwitch Deep DiveOpenvSwitch Deep Dive
OpenvSwitch Deep Dive
 
Opendaylight SDN Controller
Opendaylight SDN ControllerOpendaylight SDN Controller
Opendaylight SDN Controller
 
Openstack Neutron & Interconnections with BGP/MPLS VPNs
Openstack Neutron & Interconnections with BGP/MPLS VPNsOpenstack Neutron & Interconnections with BGP/MPLS VPNs
Openstack Neutron & Interconnections with BGP/MPLS VPNs
 
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
 
Open stack networking vlan, gre
Open stack networking   vlan, greOpen stack networking   vlan, gre
Open stack networking vlan, gre
 
OpenStack Neutron behind the Scenes
OpenStack Neutron behind the ScenesOpenStack Neutron behind the Scenes
OpenStack Neutron behind the Scenes
 
OpenStack概要 ~仮想ネットワーク~
OpenStack概要 ~仮想ネットワーク~OpenStack概要 ~仮想ネットワーク~
OpenStack概要 ~仮想ネットワーク~
 
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
 
[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험
 
OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27
 
Open vSwitch 패킷 처리 구조
Open vSwitch 패킷 처리 구조Open vSwitch 패킷 처리 구조
Open vSwitch 패킷 처리 구조
 
CloudStack networking
CloudStack networkingCloudStack networking
CloudStack networking
 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
 

Viewers also liked

OVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider NetworksOVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider NetworksNAIM Networks, Inc.
 
Introduce to OpenVirteX
Introduce to OpenVirteXIntroduce to OpenVirteX
Introduce to OpenVirteXsangyun han
 
OpenStack Neutron Service Chaining and Insertion
OpenStack Neutron Service Chaining and InsertionOpenStack Neutron Service Chaining and Insertion
OpenStack Neutron Service Chaining and InsertionSumit Naiksatam
 
Virt july-2013-meetup
Virt july-2013-meetupVirt july-2013-meetup
Virt july-2013-meetupnvirters
 
ONOS-Based VIM Implementation
ONOS-Based VIM ImplementationONOS-Based VIM Implementation
ONOS-Based VIM ImplementationOPNFV
 
Open stack with_openflowsdn-torii
Open stack with_openflowsdn-toriiOpen stack with_openflowsdn-torii
Open stack with_openflowsdn-toriiHui Cheng
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A TutorialAPNIC
 
SDN, ONOS, and Network Virtualization
SDN, ONOS, and Network VirtualizationSDN, ONOS, and Network Virtualization
SDN, ONOS, and Network Virtualizationsangyun han
 

Viewers also liked (8)

OVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider NetworksOVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
 
Introduce to OpenVirteX
Introduce to OpenVirteXIntroduce to OpenVirteX
Introduce to OpenVirteX
 
OpenStack Neutron Service Chaining and Insertion
OpenStack Neutron Service Chaining and InsertionOpenStack Neutron Service Chaining and Insertion
OpenStack Neutron Service Chaining and Insertion
 
Virt july-2013-meetup
Virt july-2013-meetupVirt july-2013-meetup
Virt july-2013-meetup
 
ONOS-Based VIM Implementation
ONOS-Based VIM ImplementationONOS-Based VIM Implementation
ONOS-Based VIM Implementation
 
Open stack with_openflowsdn-torii
Open stack with_openflowsdn-toriiOpen stack with_openflowsdn-torii
Open stack with_openflowsdn-torii
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A Tutorial
 
SDN, ONOS, and Network Virtualization
SDN, ONOS, and Network VirtualizationSDN, ONOS, and Network Virtualization
SDN, ONOS, and Network Virtualization
 

Similar to Implementing SDN Testbed(ONOS & OpenVirteX)

ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발sangyun han
 
Introduction of ONOS and core technology
Introduction of ONOS and core technologyIntroduction of ONOS and core technology
Introduction of ONOS and core technologysangyun han
 
오픈소스 네트워킹
오픈소스 네트워킹오픈소스 네트워킹
오픈소스 네트워킹James Ahn
 
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDNSungman Jang
 
Automated Abstraction of Flow of Control in a System of Distributed Software...
Automated Abstraction of Flow of Control in a System of Distributed  Software...Automated Abstraction of Flow of Control in a System of Distributed  Software...
Automated Abstraction of Flow of Control in a System of Distributed Software...nimak
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDNSzilvia Racz
 
Onos overview meetup sdn paris - redux
Onos overview  meetup sdn paris - reduxOnos overview  meetup sdn paris - redux
Onos overview meetup sdn paris - reduxSDN_Paris
 
Summit 16: The Open Source NFV Eco-system and OPNFV's Role Therein
Summit 16: The Open Source NFV Eco-system and OPNFV's Role ThereinSummit 16: The Open Source NFV Eco-system and OPNFV's Role Therein
Summit 16: The Open Source NFV Eco-system and OPNFV's Role ThereinOPNFV
 
An Introduce of OPNFV (Open Platform for NFV)
An Introduce of OPNFV (Open Platform for NFV)An Introduce of OPNFV (Open Platform for NFV)
An Introduce of OPNFV (Open Platform for NFV)Mario Cho
 
SDN: Network Agility in the Cloud
SDN: Network Agility in the CloudSDN: Network Agility in the Cloud
SDN: Network Agility in the CloudSebastien Goasguen
 
Open stackdaykorea2016 wedge
Open stackdaykorea2016 wedgeOpen stackdaykorea2016 wedge
Open stackdaykorea2016 wedgeJunho Suh
 
DEVNET-1006 Getting Started with OpenDayLight
DEVNET-1006	Getting Started with OpenDayLightDEVNET-1006	Getting Started with OpenDayLight
DEVNET-1006 Getting Started with OpenDayLightCisco DevNet
 
DEVNET-1166 Open SDN Controller APIs
DEVNET-1166	Open SDN Controller APIsDEVNET-1166	Open SDN Controller APIs
DEVNET-1166 Open SDN Controller APIsCisco DevNet
 
Codecamp 2020 microservices made easy workshop
Codecamp 2020 microservices made easy workshopCodecamp 2020 microservices made easy workshop
Codecamp 2020 microservices made easy workshopJamie Coleman
 
Migration Effort in the Cloud - The Case of Cloud Platforms
Migration Effort in the Cloud - The Case of Cloud PlatformsMigration Effort in the Cloud - The Case of Cloud Platforms
Migration Effort in the Cloud - The Case of Cloud PlatformsStefan Kolb
 
OpenDaylight Integration with OpenStack Neutron: A Tutorial
OpenDaylight Integration with OpenStack Neutron: A TutorialOpenDaylight Integration with OpenStack Neutron: A Tutorial
OpenDaylight Integration with OpenStack Neutron: A Tutorialmestery
 

Similar to Implementing SDN Testbed(ONOS & OpenVirteX) (20)

ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
 
Introduction of ONOS and core technology
Introduction of ONOS and core technologyIntroduction of ONOS and core technology
Introduction of ONOS and core technology
 
오픈소스 네트워킹
오픈소스 네트워킹오픈소스 네트워킹
오픈소스 네트워킹
 
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
20151222_Interoperability with ML2: LinuxBridge, OVS and SDN
 
Demystifying openvswitch
Demystifying openvswitchDemystifying openvswitch
Demystifying openvswitch
 
Automated Abstraction of Flow of Control in a System of Distributed Software...
Automated Abstraction of Flow of Control in a System of Distributed  Software...Automated Abstraction of Flow of Control in a System of Distributed  Software...
Automated Abstraction of Flow of Control in a System of Distributed Software...
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDN
 
Onos overview meetup sdn paris - redux
Onos overview  meetup sdn paris - reduxOnos overview  meetup sdn paris - redux
Onos overview meetup sdn paris - redux
 
Summit 16: The Open Source NFV Eco-system and OPNFV's Role Therein
Summit 16: The Open Source NFV Eco-system and OPNFV's Role ThereinSummit 16: The Open Source NFV Eco-system and OPNFV's Role Therein
Summit 16: The Open Source NFV Eco-system and OPNFV's Role Therein
 
An Introduce of OPNFV (Open Platform for NFV)
An Introduce of OPNFV (Open Platform for NFV)An Introduce of OPNFV (Open Platform for NFV)
An Introduce of OPNFV (Open Platform for NFV)
 
CloudComp 2015 - SDN-Cloud Testbed with Hyper-convergent SmartX Boxes
CloudComp 2015 - SDN-Cloud Testbed with Hyper-convergent SmartX BoxesCloudComp 2015 - SDN-Cloud Testbed with Hyper-convergent SmartX Boxes
CloudComp 2015 - SDN-Cloud Testbed with Hyper-convergent SmartX Boxes
 
SDN: Network Agility in the Cloud
SDN: Network Agility in the CloudSDN: Network Agility in the Cloud
SDN: Network Agility in the Cloud
 
Beyond static configuration
Beyond static configurationBeyond static configuration
Beyond static configuration
 
Open stackdaykorea2016 wedge
Open stackdaykorea2016 wedgeOpen stackdaykorea2016 wedge
Open stackdaykorea2016 wedge
 
OVS-LinuxCon 2013.pdf
OVS-LinuxCon 2013.pdfOVS-LinuxCon 2013.pdf
OVS-LinuxCon 2013.pdf
 
DEVNET-1006 Getting Started with OpenDayLight
DEVNET-1006	Getting Started with OpenDayLightDEVNET-1006	Getting Started with OpenDayLight
DEVNET-1006 Getting Started with OpenDayLight
 
DEVNET-1166 Open SDN Controller APIs
DEVNET-1166	Open SDN Controller APIsDEVNET-1166	Open SDN Controller APIs
DEVNET-1166 Open SDN Controller APIs
 
Codecamp 2020 microservices made easy workshop
Codecamp 2020 microservices made easy workshopCodecamp 2020 microservices made easy workshop
Codecamp 2020 microservices made easy workshop
 
Migration Effort in the Cloud - The Case of Cloud Platforms
Migration Effort in the Cloud - The Case of Cloud PlatformsMigration Effort in the Cloud - The Case of Cloud Platforms
Migration Effort in the Cloud - The Case of Cloud Platforms
 
OpenDaylight Integration with OpenStack Neutron: A Tutorial
OpenDaylight Integration with OpenStack Neutron: A TutorialOpenDaylight Integration with OpenStack Neutron: A Tutorial
OpenDaylight Integration with OpenStack Neutron: A Tutorial
 

More from sangyun han

XOS in open CORD project
XOS in open CORD projectXOS in open CORD project
XOS in open CORD projectsangyun han
 
Introduction to CORD project
Introduction to CORD projectIntroduction to CORD project
Introduction to CORD projectsangyun han
 
OpenWRT/Hostapd with ONOS
OpenWRT/Hostapd with ONOSOpenWRT/Hostapd with ONOS
OpenWRT/Hostapd with ONOSsangyun han
 
KhuHub student guideline
KhuHub student guidelineKhuHub student guideline
KhuHub student guidelinesangyun han
 
KhuHub professor guideline
KhuHub professor guidelineKhuHub professor guideline
KhuHub professor guidelinesangyun han
 
ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)sangyun han
 
ONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and testONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and testsangyun han
 
[SoftCon]SDN/IoT 그리고 Testbed
[SoftCon]SDN/IoT 그리고 Testbed[SoftCon]SDN/IoT 그리고 Testbed
[SoftCon]SDN/IoT 그리고 Testbedsangyun han
 
RAFT Consensus Algorithm
RAFT Consensus AlgorithmRAFT Consensus Algorithm
RAFT Consensus Algorithmsangyun han
 
Hazelcast 소개
Hazelcast 소개Hazelcast 소개
Hazelcast 소개sangyun han
 
Git & Github Seminar-1
Git & Github Seminar-1Git & Github Seminar-1
Git & Github Seminar-1sangyun han
 
Git & Github Seminar-2
Git & Github Seminar-2Git & Github Seminar-2
Git & Github Seminar-2sangyun han
 

More from sangyun han (12)

XOS in open CORD project
XOS in open CORD projectXOS in open CORD project
XOS in open CORD project
 
Introduction to CORD project
Introduction to CORD projectIntroduction to CORD project
Introduction to CORD project
 
OpenWRT/Hostapd with ONOS
OpenWRT/Hostapd with ONOSOpenWRT/Hostapd with ONOS
OpenWRT/Hostapd with ONOS
 
KhuHub student guideline
KhuHub student guidelineKhuHub student guideline
KhuHub student guideline
 
KhuHub professor guideline
KhuHub professor guidelineKhuHub professor guideline
KhuHub professor guideline
 
ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)
 
ONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and testONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and test
 
[SoftCon]SDN/IoT 그리고 Testbed
[SoftCon]SDN/IoT 그리고 Testbed[SoftCon]SDN/IoT 그리고 Testbed
[SoftCon]SDN/IoT 그리고 Testbed
 
RAFT Consensus Algorithm
RAFT Consensus AlgorithmRAFT Consensus Algorithm
RAFT Consensus Algorithm
 
Hazelcast 소개
Hazelcast 소개Hazelcast 소개
Hazelcast 소개
 
Git & Github Seminar-1
Git & Github Seminar-1Git & Github Seminar-1
Git & Github Seminar-1
 
Git & Github Seminar-2
Git & Github Seminar-2Git & Github Seminar-2
Git & Github Seminar-2
 

Recently uploaded

Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 

Recently uploaded (20)

Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 

Implementing SDN Testbed(ONOS & OpenVirteX)

  • 1. SDN 테스트베드 구축 라즈베리파이를 이용하여 이더넷 스위치를 제작, ON.Lab의 ONOS/OVX SDN 컨트롤러로 제어 Programmable Network 구축 한국정보과학회 단기강좌 경희대학교 이성원 교수 Email : drsungwon@khu.ac.kr Web : http://mobilelab.khu.ac.kr 경희대학교 컴퓨터공학과 모바일컨버전스Lab 한상윤 Email : sangyun0628@khu.ac.kr
  • 2. Mobile Convergence Laboratory 2 목차 A Table of Contents ONOS ONOS(Open Network Operating System) 소개, 아키텍처 분석, 설치 및 데모 Keyword : Distributed core, Hazelcast, Intent Framework, maven, karaf OpenVirteX OVX 소개, Network Hypervisor와 가상화 플랫폼의 기능, 설치 및 데모 Keyword : Hypervisor, 네트워크 가상화 플랫폼, Resilient, elastic Pi Stack Switch Raspberry Pi와 Open vSwitch를 이용한 SDN 테스트베드 구축 Keyword : Raspberry Pi, Open vSwitch, OpenFlow 스위치 Q&A 질의응답 Pi Stack Switch
  • 3. ONOS SDN Network Operating System & SDN Control Platform Mobile Convergence Laboratory 3
  • 5. • Service Provider를 위한 캐리어급 SDN 네트워크 운영체제 • 이 주도한 프로젝트 Mobile Convergence Laboratory 5
  • 6. • Service Provider를 위한 캐리어급 SDN 네트워크 운영체제 • 이 주도한 프로젝트 Mobile Convergence Laboratory 6
  • 7. Mobile Convergence Laboratory 7 Non-profit Tools/Platforms for SDN community
  • 12. Mobile Convergence Laboratory 12 Supporting members
  • 14. • Service Provider를 위한 캐리어급 SDN 네트워크 운영체제 • 이 주도한 프로젝트 Mobile Convergence Laboratory 14
  • 15. 15Mobile Convergence Laboratory ONOS의 목표는 뭘까? 기존의 수많은 SDN controller
  • 17. Mobile Convergence Laboratory 17 commercial products
  • 18. Mobile Convergence Laboratory 18 commercial products
  • 19. Mobile Convergence Laboratory 19 commercial products
  • 20. Mobile Convergence Laboratory 20 High Availability • Multiple Instance Clustering • Fault tolerance using Distributed Core • Five Nines 수준의 가용성
  • 21. Mobile Convergence Laboratory 21 High Availability High Performance • High Throughput • ~500K-1M path setups/second • High Volume • ~500GB-1TB state data • Low Latency • 10~100ms
  • 22. Mobile Convergence Laboratory 22 High Availability High Performance Scalability • OSGi 기반의 오픈소스 Karaf  쉽고 빠른 배포 • 분산 클러스터링 지원  Sync, Share
  • 23. Mobile Convergence Laboratory 23 High Availability High Performance Scalability White Box (Open) Reference : ONOS wiki
  • 24. Mobile Convergence Laboratory 24 High Availability High Performance Scalability White Box (Open)
  • 25. Mobile Convergence Laboratory 25 ONOS Framework(ONOSFW)
  • 26. Mobile Convergence Laboratory 26 ONOS as an SDN controller within the VIM
  • 29. Mobile Convergence Laboratory 29 구체적인 서비스를 위한 Application 계층
  • 30. Mobile Convergence Laboratory 30 Application 계층에 네트워크 정보 전달, 하위 컴포넌트 제어를 위한 인터페이스 제공
  • 31. Mobile Convergence Laboratory 31 ONOS의 핵심적인 역할 을 하며, HA와 Scalability를 위한 분산 클러스터링 기능
  • 32. Mobile Convergence Laboratory 32 네트워크 인프라 제어를 위한 인터페이스 제공 Network Element 추상화
  • 33. Mobile Convergence Laboratory 33 Network Element 설정 을 위한 프로토콜 OpenFlow : SDN NetConf : Legacy
  • 34. Mobile Convergence Laboratory 34 Distributed Core Instance 1 Scale-out by Distributed Core (1) Network Graph Global network view
  • 35. Mobile Convergence Laboratory 35 Distributed Core Instance 1 Instance 2 Instance 3 Scale-out by Distributed Core (2) Network Graph Global network view
  • 36. Mobile Convergence Laboratory 36 Distributed Core Instance 1 Instance 2 Instance 3 Network Graph Global network view HA by Distributed Core (1)
  • 37. Mobile Convergence Laboratory 37 Distributed Core Instance 1 Instance 2 Instance 3 Network Graph Global network view HA by Distributed Core (2)
  • 38. Mobile Convergence Laboratory 38 Distributed Core Instance 1 Instance 2 Instance 3 Network Graph Global network view HA by Distributed Core (3)
  • 39. Mobile Convergence Laboratory 39 Clustering Synchronize Data Sharing
  • 40. ONOS - Install 1. Getting ONOS 2. Installing ONOS 3. Start ONOS Mobile Convergence Laboratory 40
  • 41. Prerequisites • Ubuntu 14.04 LTS 64bits • 2GB or more RAM • 2 or more processors • 8GB or more storage • Java 8 JDK • Apache Maven(3.0 and later) • Apache Karaf(3.0.2 and later) • Git Mobile Convergence Laboratory 41
  • 42. 1. Install Java 8 $ sudo apt-get install software-properties-common -y $ sudo add-apt-repository ppa:webupd8team/java -y $ sudo apt-get update $ sudo apt-get install oracle-java8-installer oracle-java8-set-default Mobile Convergence Laboratory 42
  • 43. 1.1. Configure Java Path • on Ubuntu $ env | grep JAVA_HOME JAVA_HOME=/usr/lib/jvm/java-8-oracle $ export JAVA_HOME=/usr/lib/jvm/java-8-oracle Mobile Convergence Laboratory 43
  • 44. 2. Install Git $ sudo apt-get install git-core $ git --version Mobile Convergence Laboratory 44
  • 45. 3. Set Maven $ cd; mkdir Downloads Applications $ cd Downloads $ wget http://archive.apache.org/dist/maven/maven- 3/3.3.1/binaries/apache-maven-3.3.1-bin.tar.gz $ tar -zxvf apache-maven-3.3.1-bin.tar.gz -C ../Applications/ Mobile Convergence Laboratory 45
  • 46. 4. Set Karaf $ cd Downloads $ wget http://download.nextag.com/apache/karaf/3.0.3/apache- karaf-3.0.3.tar.gz $ tar -zxvf apache-karaf-3.0.3.tar.gz -C ../Applications/ Mobile Convergence Laboratory 46
  • 47. 5. Clone ONOS $ git clone https://gerrit.onosproject.org/onos/ $ cd onos if> getting specific ONOS version $ git checkout <ver> Mobile Convergence Laboratory 47
  • 48. 5.1. Configure ONOS Path $ export ONOS_ROOT=~/onos $ source $ONOS_ROOT/tools/dev/bash_profile Mobile Convergence Laboratory 48
  • 49. 6. Build ONOS $ cd ~/onos $ mvn clean install Mobile Convergence Laboratory 49 빌드 성공
  • 50. 7. Start ONOS CLI $ karaf clean Mobile Convergence Laboratory 50
  • 51. 8. Start ONOS GUI • start ONOS (ONOS CLI) • In web browser • http://localhost:8181/onos/ui/index.html Mobile Convergence Laboratory 51
  • 52. Mobile Convergence Laboratory 52 <Network Graph> 토폴로지 GUI와 Host 정보 <Node Info> 해당 노드(스위치)의 정보 Protocol / Ports / Flow 버전 및 지리적 정보 <ONOS Summary> Network Element의 수 링크의 수 호스트의 수 Flow의 수…
  • 53. Mobile Convergence Laboratory 53 <ONOS Instance>
  • 54. OpenVirteX Network Virtualization Platform & Network Hypervisor Mobile Convergence Laboratory 54
  • 55. OpenVirteX (OVX) • Network Virtualization Platform • Network Hypervisor Mobile Convergence Laboratory 55
  • 57. 주요 기능 • Topology Virtualization • Address Space Virtualization • Control Function Virtualization Mobile Convergence Laboratory 57
  • 58. 주요 기능 - Topology Virtualization • 가상화를 통해 물리적 네트워크를 분리 • 물리 계층을 추상화 • 다수의 스위치를 묶어서 하나의 스위치로 가상화(Big Switch) Mobile Convergence Laboratory 58
  • 59. 주요 기능 - Address Space Virtualization Mobile Convergence Laboratory 59
  • 60. 주요 기능 - Control Function Virtualization Mobile Convergence Laboratory 60 SDN Controller (NOS) Big Switch Controll Plane (by OpenFlow Channel) OVX
  • 61. OpenVirteX - Install Mobile Convergence Laboratory 61
  • 62. Prerequisites Recommended • 4 Cores • 4GB Java heap size Minimum • 2 Cores • 1GB Java heap size Mobile Convergence Laboratory 62 • Git • Oracle Java7 (Not OpenJDK, Not Java8) • Maven • Python 2.7.x
  • 63. 1. Install Git & Maven $ apt-get install git-core $ apt-get install maven Mobile Convergence Laboratory 63
  • 64. 2. Install Java7 $ sudo apt-get install software-properties-common -y $ sudo add-apt-repository ppa:webupd8team/java -y $ sudo apt-get update $ sudo apt-get install oracle-java7-installer Mobile Convergence Laboratory 64
  • 65. 3. Clone OpenVirteX $ git clone https://github.com/OPENNETWORKINGLAB/OpenVirteX.git -b 0.0-MAINT $ cd ~/OpenVirteX/scripts. Mobile Convergence Laboratory 65
  • 66. 4. Start OVX $ sh ovx.sh ex> 가상 네트워크 생성 및 Big Switch 생성 $ python ovxctl.py -n createNetwork tcp:localhost:30000 10.0.0.0 16 $ python ovxctl.py -n createSwitch DPID_1,DPID_2,DPID_3,DPID_4 <Tutorial & API Doc> http://ovx.onlab.us/getting-started/tutorial/ http://ovx.onlab.us/documentation/api/ Mobile Convergence Laboratory 66
  • 67. Pi Stack Switch Raspberry Pi를 이용한 SDN 테스트베드 개발 Mobile Convergence Laboratory 67
  • 68. Raspberry Pi • 영국의 라즈베리파이 재단이 만든 교육용 싱글 보드 컴퓨터 • Single Board Computer • 대략 US$ 35 • Pi A/B, Pi B+, Pi2 출시 Mobile Convergence Laboratory 68
  • 69. Raspberry Pi2의 스펙 • Single Board Computer(Micro Computer) • CPU : 900MHz ARM Cortex-A7 쿼드코어 • RAM : 1GB • USB 2.0 * 4 + HDMI * 1 + Micro USB전원 • 10/100 Mbit/s Ethernet Mobile Convergence Laboratory 69출처 : Wikipedia(wikipedia.org/wiki/Raspberry_Pi)
  • 70. Pi Stack Switch HW구성 Mobile Convergence Laboratory 70
  • 71. Mobile Convergence Laboratory 71 Pi Stack Switch HW구성 메인 스위치 x 1개 x 1포트 + 서브 스위치 x 3개 x 3포트 = 10포트 스위치
  • 72. Mobile Convergence Laboratory 72 Pi Stack Switch 완성
  • 73. Mobile Convergence Laboratory 73 USB허브를 이용한 17포트 스위치
  • 74. Mobile Convergence Laboratory 74 Raspbian OS Software
  • 76. Mobile Convergence Laboratory 76 System Architecture USBtoEthernet Bridge eth1 eth2 eth3 eth0 Ethernet Port USBtoEthernet USBtoEthernet FlowTable
  • 77. Pi Stack Switch - Install • OpenvSwitch 설치 $ sudo apt-get install openvswitch-switch openvswitch- controller openvswitch-common $ sudo ovs-vsctl add-br <BridgeName> $ sudo ovs-vsctl add-port <BridgeName> eth_n $ sudo ovs-vsctl set-controller <BridgeName> tcp:Ctrl_IP:6633 https://github.com/MobileConvergenceLab/pi-switch Mobile Convergence Laboratory 77
  • 78. Pi Stack Switch와 ONOS 연결 Mobile Convergence Laboratory 78 메인 스위치 서브 스위치1 서브 스위치2 서브 스위치3
  • 79. SDN Network 구축 SDN 테스트베드와 하이퍼바이저 그리고 SDN 컨트롤러 Mobile Convergence Laboratory 79
  • 80. Mobile Convergence Laboratory 80 Pi Stack Switch
  • 81. Mobile Convergence Laboratory 81 Network Architecture Network Operating System Virtual Network Physical Layer OpenFlow Interface Pi Stack Switch OpenFlow Interface Big Switch
  • 82. Mobile Convergence Laboratory 82 Network Element Mapping
  • 83. Mobile Convergence Laboratory 83 Big Switch Network Element Mapping
  • 84. Reference • ONOS • http://onosproject.org/ • https://wiki.onosproject.org/ 공식 Wiki • https://wiki.onosproject.org/display/ONOS/ONOS+from+Scratch • https://wiki.onosproject.org/display/ONOS/Installing+and+Running+ONOS • https://www.youtube.com/watch?v=dWhtswhSpWE • Pankaj Berde and others, “ONOS: Towards an Open, Distributed SDN OS”, HostSDN 2014 • OpenVirteX • http://ovx.onlab.us/ • Ali Al-Shabibi and others, “OpenVirteX: Make Your Virtual SDNs Programmable”, HotSDN 2014 • OpenvSwitch • http://www.openvswitch.org/ • Raspberry Pi • https://www.raspberrypi.org/ • http://en.wikipedia.org/wiki/Raspberry_Pi Mobile Convergence Laboratory 84