SDN For IoT Tutorial
SDN For IoT Tutorial
SDN For IoT Tutorial
Sunyoung Han
Konkuk University
syhan@cclab.konkuk.ac.kr
14 July 2016
WUNCA33, Chulalongkorn University, Thailand
Contents
1. SDN
- OpenFlow, Open vSwitch, Controller, OpenStack, NFV
2. IoT
- IoTivity, CoAP, 6LoWPAN, Raspberry Pi & Arduino, Security
OpenFlow
8
What is OpenFlow?
• “OpenFlow is based on an Ethernet switch, with an internal flow-
table, and a standardized interface to add and remove flow entries.”
– Nick Nckeown, et al., “OpenFlow: enabling innovation in campus networks,”
ACM SIGCOMM Computer Communication Review, Vol. 38, Issue 2, pp.69-74,
April 2008.
Control Function
ForwardingEngine
Forwarding Engine
Flow table
9
OpenFlow
• OpenFlow allows direct access to and manipulation of the
forwarding plane of network devices such as switches and
routers, both physical and virtual (hypervisor-based).
Control plane
OpenFlow Controller
Flow Table
Packet OpenFlow Switch Packet
Data plane
Drop
OpenFlow
Ref.[3] http://www.slideshare.net/ireri339/sdndstw-ryu-developing
11
OpenFlow Switching
Controller
Software
Layer
OpenFlow Switch
OpenFlow
Protocol
OpenFlow Table
MAC MAC IP IP TCP TCP
Action
src dst Src Dst sport dport
Hardware
* * * 5.6.7.8 * * port 1
Layer
5.6.7.8 1.2.3.4
Ref.[37] http://cleanslate.Stanford.edu, The Stanford Clean Slate Program
12
OpenFlow Protocol
• Controller with Switches
• Maintains flow tables in OFS
– Create
– Delete
– Modify
• Notify unknown packet to OFC
• Gather information and statistics
14
OpenFlow Specification
• Current OpenFlow specification is v1.4
• Components
– Secure Channel
– Controller
– Switch
• Flow table
15
Components
• Switch
– Forwarding received packets according to flow tables
– If unmatched packets are received, send packet-in message to
controller
• Controller
– Handles packet-in event from switches
– Communicates via TCP port 6633
– Create flow table
– Modify flow table
– Delete flow table
16
Flow Table
Matching
• Forwarding the packet to the controller when the packet
came in unknown
Matching Process
Ref.[4] OpenFlow Specification 1.3, ONF
19
Open vSwitch
20
Open vSwitch
• OpenvSwitch is Open Source Software for OpenFlow Switch
• Network interface devices connect to Open vSwitch bridge’s
ports, and the ports can be configured like a physical switch’s
port
VM VM VM
vNIC vNIC vNIC
Virtual vSwitch
Network
Hypervisor
SERVER
vNIC
Physical Network
Open vSwitch
• Features
– Multicast snooping
– IETF Auto-Attach SPBM and rudimentary required LLDP support
– Fine-grained QoS control
– OpenFlow protocol support (including many extensions for
virtualization)
– IPv6 support
– Multiple tunneling protocols (GRE, VXLAN, STT, and Geneve, with IPsec
support)
– Remote configuration protocol with C and Python bindings
• Download Link
– http://openvswitch.org/download/
22
Controller
ovsdb-server ovs-vswitchd
User
Kernel
Management Protocol (6632/TCP)
OpenFlow (6633/TCP) OVS Kernel Module
Netlink
23
Controller
(OpenDaylight / ONOS)
24
Controller
C / C++
C++ / Python
Python
JAVA
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
25
Opendaylight
OpenDaylight
• OpenDaylight is Open Source Software for SDN/NFV
• OSGi framework support
• REST support for Northbound API
• Supported protocols (Southbound Interface)
– OpenFlow, NETCONF, OVSDB, CoAP, etc…
• Download Link
– https://www.opendaylight.org/software/release-archives
27
OpenDaylight
• Membership
28
OpenDaylight
• Release
Name Date
Hydrogen (Service Provider) February 4, 2014
Hydrogen (Virtualization) February 4, 2014
Hydrogen (Base) February 4, 2014
Helium September 29, 2014
Helium-SR1 November 10, 2014
Helium-SR1.1 December 18, 2014
Lithium June 29, 2015
Helium-SR4 August 11, 2015
Helium-SR2 January 27, 2015
Helium-SR3 March 17, 2015
Lithium-SR1 August 18, 2015
Lithium-SR2 October 8, 2015
Lithium-SR3 December 3, 2015
Beryllium February 22, 2016
Lithium-SR4 March 4, 2016
Beryllium-SR1 March 22, 2016
29
OpenDaylight
• ‘PUT’ operation cycle
– 'POST' request in XML or JSON format is to use the ‘Config’ datastore.
Ref.[7] https://wiki.opendaylight.org/view/Main_Page
30
OpenDaylight
• AD(API-Driven)-SAL
– Plugins can be data providers or data consumers or both
– SAL APIs request routing between consumers and providers, and data adaptations are all statically
defined at compile/build time
– Translation between SB plugin API and abstract NB API is done in the abstraction module in AD-SAL
– AD-SAL has both NB and SB APIs
• MD(Model-Driven)-SAL
– SAL APIs request routing between consumers and providers are defined from models, and data
adaptation are provided by internal adaptation plugins
– API code is generated from models when a plugin is compile
• API code is loaded into the controller along with the rest of the plugin containing the model
when the plugin OSGi bundle is loaded into the controller
– Service adaptation is provided by plugin
• An adaptation plugin is a regular plugin
• Model to model translation between two APIs
– Provider and consumer plugins can exchange data through the MD-SAL storage
– MD-SAL allows both NB plugins and SB plugins to use the same API generated form a model
Ref.[9] https://github.com/opendaylight/docs/blob/master/manuals/developer-guide/src/main/asciidoc/controller/md-
sal-faq.adoc
31
ONOS
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
32
ONOS
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
33
ONOS
ONOS community
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
34
ONOS
• OSGi based OSS Karaf
• Deploy, Config • Multiple Instance Clustering
• Distributed Clustering
• Sync, Share • Fault tolerance using Distributed Core
• Dynamic Clustering
• High Throughput
• ~500K - 1M path setups/second
• High Volume
• ~500GB – 1TB state data
• Low Latency
• 10 ~ 100ms
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
35
ONOS
• Architectural Tenets
– High availability, scalability and performance
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
36
ONOS
ONOS Overall Architecture
Application layer for
specific services
Transfer network
information to the
application layer,
The key role of
provides interface
ONOS, distributed
for the control sub-
Provideclustering
an interface for
components
capabilities
network for HA
infrastructure
andcontrol,
Scalability
Network
Element abstraction
Protocol for the
Network Element Set
OpenFlow : SDN
NetConf : Legacy
Ref.[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
37
OpenStack
38
What is OpenSource?(1/8)
• The Open Source Definition
1. Free Redistribution
2. Source Code
• The program must include source code
3. Derived Works
• The license must allow modifications and derived works
4. Integrity of The Author’s Source Code
5. No Discrimination Against Persons or Groups
6. No Discrimination Against Fields of Endeavor
7. Distribution of License
8. License Must Not Be Specific to a Product
9. License Must Not Restrict Other Software
10. License Must Be Technology-Neutral
What is OpenSource?(2/8)
What is OpenSource?(3/8)
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
41
What is OpenSource?(4/8)
• OCF Memberships
+180 Members
Members of Board of Directors
What is OpenSource?(5/8)
• OCF Architecture
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
43
What is OpenSource?(6/8)
• OCF Protocols
– OCF Protocol
• Supporting CoAP (Constrained Application Protocol)
• Supporting Wi-Fi, BT, BLE (ZigBee, Z-Wave – TBD)
– CoAP
• UDP based (TCP for Remote/Cloud Connection)
• Multicast (for Discovery)
• IETF CoRE Working Group Standards (RFC7252)
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
44
What is OpenSource?(7/8)
• OCF - IETF Collaboration
OCF
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
45
What is OpenSource?(8/8)
• IoTivity Resource
• Resource registration (server) • Property attributes (get/ set/ observe) (client/ server)
• Resource discovery (client) • Resource tree (resources with sub-resources)
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
46
2015
2015.10.15 Liberty Release
2015.04.30 Kilo Release
2014
2014.10.16 Juno Release
2014.04.17 IceHouse Release
2013
2013.10.17 Havana Release
2013.04.04 Grizzly Release
2012
2012.09.27 Folsom Release
2012.04.05 Essex Rlease
2011.09.21 Diablo Release
2011 2011.04.15 Cactus Release
2011.02.03 Bexar Release
2010 2010.10.21 Austin Release
Ref.[10] HyeonJeong Jang, “Openstack_in_OpenSource”, OpenStack Korea Community
48
OpenStack(3/4)
OpenStack
• Compute Service – Nova • Authentication Service – Keystone
• Object Storage Service – Swift • Network Service – Neutron
• Image Service – Glance • Block Storage Service – Cinder
• Dashboard Service – Horizon
NFV
(Network Function Virtualization)
51
Network Function
• 4G Network… EPC(MME, S/P-GW,..), Middle Boxes at SGi-LAN)
Creates
competitive Creates network
Software
supply of Open abstractions to
Defined
innovative Innovation Networks
enable faster
applications by innovation.
third parties.
Network
Functions Reduces CAPEX, OPEX,
Virtualization Space & Power
Consumption.
Ref.[13] Sungwon Lee, “SDN/NFV foundation, technology evolution and development”, Kyunghee University
54
Ref.[12] Insun Jang and Sangheon Pack, "NFVRG" Technology Trends Updates”, IETF mirror forum technology
workshop
55
OPNFV
• OPNFV(Open Platform for NFV)
– Open source project
– To accelerate the introduction of new NFV products and services
– Releases : Arno(June 4, 2015), Brahmaputra(February 25, 2016)
– Goals
• Develop an integrated and tested open source platform that can be used
to build NFV functionality, accelerating the introduction of new products
and services
• Include participation of leading end users to validate OPNFV meets the
needs of user community
• Contribute to and participate in relevant open source projects that will be
leveraged in the OPNFV platform; ensure consistency, performance and
interoperability among open source components
• Establish and ecosystem for NFV solutions based on open standards and
software to meet the needs of end users
Ref.[32] https://www.opnfv.org/about
56
Brahmaputra
• Brings rich platform-level testing of NFV functionality and use cases to the industry
• Enhanced stability, system and unit testing and integration, infrastructure and
documentation
Ref.[33] https://www.opnfv.org/software
57
Introduction
(Internet of Things)
58
Management integration
• Management integration includes:
• Lifecycle Management
• Peer to Peer
Network Side
New Considerations
DevOps(CI,CD)
• Device Management
• Information Management
Continuous Integration
• Continuous Integration is a software development
practice where members of a team integrate their
work frequently, usually each person integrates at
least daily – leading to multiple integrations per day.
• Code Quality
Measureable and visible code quality
Continuous automatic regression unit test
Ingredients of DevOps
• Tools
– Source Code Management, e.g. Git
– Artifact repository, e.g. maven
– Review Management System, e.g. Gerrit
– Integration Engine, e.g. Jenkins
– Configuration management system, e.g. Ansible, Chef
– Test Harness, e.g rally, tempest, yardstick
– Flexible System Deployment, e.g Vagrant
Jenkins – Fitting in
Jenkins Features
• Trigger a build
• Get source code from repository
• Automatically build and test
• Generate report & notify
• Deploy
• Distributed build
Infrastructure as code
• Configuration management on steroid
• Core tenet of DevOps
• Bring tried and tested practices from software engineering
into infrastructure operations
• Revision control
– Use git tools
– Track both what was changed and why
– Audit all changes to the cluster
– See precisely what has changed between two points in time
Discussion
• Standards vs OpenSource Project ?
• Protocol vs API ?
• KR Position in IoT ?
IoTivity
89
• Interoperability
• Collaborative deployment
• Cost efficiency
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
90
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
91
IoTivity Framework
Additional REST Control/Controllee
Service Framework Manager
IoTivity Base 2
Resource Manager
(C++ SDK)
(Registration, Discovery, Attribute GET/SET/OBSERVE)
IoTivity Base 1
JSON OCStack
(C API Stack/
Encoder/Decoder OCCoAP (Transport)
Internal)
OCSocket Connectivity libcoap-4.1.1 ocrandom ocmalloc
Logger
Transport
TCP/IP Future PAN
Protocol UDP/IP
(Future) (Future)
IoTivity Stack
Application
CoAP CoAP
UDP / IP UDP / IP
AllJoyn Stack
Application
AllJoyn Router
AllJoyn Software
Frameworks
IoTivity AllJoyn
1. Resource
Registration
Registering a Resource
ISV Server
OCStack
Server SDK Wrapper
(internal)
App (internal)
[1]Platform.registerResource(…)
[2]InProcServer.registerResource(…)
[3]OCCreateResource(…)
OCStackResult
Failure / Success
Failure / Success
Discovering a Device/Resource
OIC Client
(Smartphone)
Application
C++ API
(SDK)
OIC Server
(IoT Devices)
IoTivity IoTivity IoTivity IoTivity
C API Device Device Device Device
(Stack/Internal)
[1]resource.get(callback)
[2]InProcClient.get(callback)
[3]OCDoResource()
Failure / pending
[4] GET /light/1
[7] InProcClient.get()
Failure / pending
[4] PUT /light/1
[1]resource.observe()
[2]InProcClient.observe()
[3]OCDoResource()
Failure / pending
[4] GET /light/1
Cancellation
[20] [21]
[22] OCCancel()
[23] GET /light/1
Installation (1/5)
• How You Can Use
– Use the code from IoTivity.org
• Open to any individual or company
• Code is available at IoTivity.org under the Apache v2.0 license
Ref.[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop
106
Installation (2/5)
• Install
– https://www.iotivity.org/documentation/linux/getting-started
Installation (3/5)
• Download Libraries
$ tar xzvf boost_1_55_0.tar.gz
$ cd boost_1_55_0/
$ ./bootstrap.sh --with-
libraries=system,filesystem,date_time,thread,regex,log,iostreams,
program_options --prefix=/usr/local
Installation (4/5)
$ sudo ./b2 install
$ sudo ldconfig
Installation (5/5)
• Download IoTivity source code.
Demonstration
CoAP
114
CoAP
• Constrained Application Protocol (CoAP)
– IETF Standard in CoRE Working Group: RFC 7252
– CoAP is one of the open standards communication protocols for IoT
– CoAP use a Web-based model, HTTP-like but based on UDP
– URI and content-type support
Application
– Asynchronous message exchanges
– DTLS for Secure Request /
Responses
– CoAP defines 4-type Messages CoAP
Message
using a 4-byte, binary, and base
header format with binary options. UDP / DTLS
CoAP
• CoAP Message Format
0 8 16 24 32
Ver T TKL Code Message ID
Token (if any, TKL bytes) …
Options (if any) …
0xff Payload (if any) …
CoAP
• 2 Types of Transmission
– Confirmable : The recipient sends the sender an ACK message with the
same Message ID for the confirmable message.
– Non-Confirmable : A message that does not require reliable
transmission can be sent as a Non-confirmable message.
Client Server Client Server
CON [0x7d34]
NON [0x01a0]
ACK [0x7d34]
CoAP Architecture
Rest
C
Server
C
HTTP
CoAP
Proxy
Server
C
C C
6LoWPAN
119
6LoWPAN
• IPv6 over Low-Power Wireless Personal Area Networks
– N/W Adaptation Layer between IPv6 Protocol & IEEE 802.15.4
– Encapsulation (RFC 4944) and Header Compression (RFC 6282)
– Neighbor Discovery Optimizations (RFC 6775)
IPv6
IP Network
6LoWPAN
6LoWPAN
• IPv6 over Low-Power Wireless Personal Area Networks
– Sensor nodes use 6LoWPAN over 802.15.4 to create a mesh network
that is connected to an Ethernet-equipped gateway node.
6LoWPAN Network
Gateway
Internet
Raspberry Pi
& Arduino
122
Ref.[28] https://en.wikipedia.org/wiki/Raspberry_Pi
123
10/100
Mbit/s
On- Ethernet,
10/100 Mbit/s Ethernet (8P8C)
board None 802.11n None
USB adapter on the USB hub
network wireless,
Bluetoot
h 4.1
Target
25 US$ 20 US$ 35 US$ 25 US$ 35 US$ 35 US$ 5 US$
price
Ref.[28] https://en.wikipedia.org/wiki/Raspberry_Pi
125
• Arduino
– A hardware and software company, project, and
user community that designs and manufactures
computer open-source hardware, open-source
software, and microcontroller-based kits for building
digital devices and interactive objects that can sense
and control physical devices.
Ref.[29] https://en.wikipedia.org/wiki/Arduino
126
Security
127
Ref.[18] NamHui Kang, “Internet of Things Security-IETF Standard trends”, IETF mirror forum technology workshop
128
Ref.[19] NamHui Kang, “Internet of Things Security-IETF standard technology”, Duksung University
129
Application(CoAP, XML)
Security(DTLS)
Transport(UDP)
Network(IPv6)
PHY/MAC(IEEE 802.15.4)
Ref.[20] Kenny Paterson, “TLS and DTLS : A Tale of Two Protocols”, Royal Holloway University, London
Ref.[21] Raj Jain, “Constrained Application Protocol for Internet of Things”
130
Introduction
International
Research Network
131
TEIN4
• Trans-Eurasia Information Network
– Increase direct Internet connectivity for research and education between
Europe and Asia
– Improve intra-regional connectivity within Asia
– Act as a catalyst for the development of national research networking in
the developing countries in the Asia-Pacific region
Ref.[26] www.tein4.net
119
APAN/TEIN4
Ref.[25] http://www.koren.kr/koren/eng/net/natworkmap.html?cate=3&menu=1
121
KOREN
• KOREN : KOREA Advanced REsearch Network
– A non-profit testbed network infrastructure established for facilitating
research and development and international joint research cooperation.
– provide quality broadband network testbed for domestic and international
research activities to the industry, academia, and research institutions,
enabling testing of future network technologies and supporting R&D on
advanced applications..
– Cooperate with many international research network such as APII, TEIN.
• Advantages of KOREN
– Establishment of high-capacity and high-quality research testbed and
internetworking with international research networks
– Test and verify next generation network application technologies
– Provide infrastructure for validation test(sensors, future networks)
122
KOREN Topology
Ref.[25] http://www.koren.kr/koren/eng/net/natworkmap.html?cate=3&menu=1
123
KREONET
- KREONET (Korea Research Environment
Open Network) is a R&D network of Korea
supported by Korean government.
Introduction
• Centralized IoT host management is needed
– IoT hosts are connected through autonomous network
– Hart to control one by one because of the diversity and huge number
of the IoT hosts
Experiment Environment
• Network Topology
Switch
Controller
Switch Switch
Experiment Environment
• The real testbed equipment
– install Opendaylight controller in PC
– using webcam
Switch
Web
Switch Camera
Switch
OVS
OpenDaylight
OVS OVS
I hope Host 1!
I sent Host 3…
Host1 Host3 Host2
146
Introduction
• Rising popularity of multimedia applications with high
requirements , so high and new requirements on QoS routing
other than best effort approach.
• QoS routing requires an awareness of dynamic network status
and application QoS requirement as well.
• Classification flows according to the application QoS
requirements and find the best satisfied path.
149
- Implementation Environments
- Dynamic QoS Routing Controller Application
95
Experiment Result
• Dynamic QoS routing algorithm application test
– Streaming video from H1 to H2, if current path are lack of available bandwidth
because of network condition changes, then it will automatically send video to
another path which is satisfy the video transmission requirement.
95
Experiment Result
155
Mobility Support
in SDN IoT networks
156
Process:
①: Packet from CN to MN
②: S1 sends the packet to MN’s home
network
③: S2 sends packet_in to controller.
Because MN’s flow entries on S2 were
deleted when controller detected new
attach point of MN.
④: Controller sends flow_mod to S1, S2,
and S3 S1: Map MN’s IP/Port to S3’s IP/Port
S3: Map S3’s IP/Port back to MN’s IP/Port S2:
Map MN’s IP/Port to S3’s IP/Port
⑤: Packet is redirected from S2 to S3 ⑥: S3
translates to the original packet as from CN
⑦: Subsequent packets exchange directly
between S1 and S3.
160
Testbed Environment
• Implement the OVS using Raspberry Pi
– Main OVS : Connect to Controller and APs
– OVS AP : Also implement the AP using Raspberry Pi
– IoT Devices : Raspberry Pi
161
Real testbed
• Simulation using Mininet-WiFi
16
2
Introduction
• Collecting Temperature, Illumination and Humidity sensor
data to detect forest fire.
• Once forest fire is detected, turn on the camera
• All sensor data and web streaming will be sent to the DB
server and Web server which is located in OpenStack
• We can see the real-time video streaming and sensor data
online
164
System Design
165
OVS
OVS
Camera
OVS OVS
OVS
OVS
OVS
• Classification
• Calculation
OVS OVS
OVS
168
Server Layer
OpenStack
( Data for Service )
Wired data
Communications
Network Layer
- Wired
( Data Analyses )
Wireless data
Communications
Sensing Layer
- Wireless
( Data Collection )
169
Temperature-humidity sensor
Arduino Uno
Illumination sensor
170
Illumination sensor
LED sensor
Temperature-humidity sensor
171
Demo
177
Reference
[1] https://www.opennetworking.org/about/onf-overview
[2] http://www.tta.or.kr/index.jsp
[3] http://www.slideshare.net/ireri339/sdndstw-ryu-developing
[4] OpenFlow Specification 1.3, ONF
[5] https://www.openvswitch.org/
[6] http://www.frank-durr.de/?p=75
[7] https://wiki.opendaylight.org/view/Main_Page
[8] http://docs.inocybe.com/dev-guide/content/_opendaylight_controller_md_sal_faqs.html
[9] https://github.com/opendaylight/docs/blob/master/manuals/developer-guide/src/main/asciidoc/controller/md-sal-faq.adoc
[10] HyeonJeong Jang, “Openstack_in_OpenSource”, OpenStack Korea Community, 2015
[11] HyeonJeong Jang, “Billing_for_OpenStack_Solution”, OpenStack Korea Community
[12] Insun Jang and Sangheon Pack, "NFVRG" Technology Trends Updates”, IETF mirror forum technology workshop, 2016
[13] Sungwon Lee, “SDN/NFV foundation, technology evolution and development”, Kyunghee University, 2016
[14] Bhavna Singh, “How Internet of Things(IoT) Are Going To Impact Your Business?”
[15] Younghan Kim, “IoT, Openstack, DevOps”, Soongsil University, 2016
[16] Jaehoon Jeong, “IoTivity:OFC_Open_Source_Project”, KRnet, 2016
[17] John Wiley & Sons, “6LoWPAN: The Wireless Embedded Internet Companion Lecture Slides”
[18] NamHui Kang, “Internet of Things Security-IETF Standard trends”, IETF mirror forum technology workshop, 2015
[19] NamHui Kang, “Internet of Things Security-IETF standard technology”, Duksung University
[20] Kenny Paterson, “TLS and DTLS : A Tale of Two Protocols”, Royal Holloway University, London
178
Reference
[21] Raj Jain, “Constrained Application Protocol for Internet of Things”
[22] Zach Shelby, “Lightweight Device Management for IoT”, http://community.arm.com/groups/internet-of-things/blog/2014/02/24
[23] Suhas Rao et al., “Implementing LWM2M in constrained IoT devices”, ICWiSe, 2015
[24] “CoAP, OMA LWM2M, and IPSO Smart Objects”, ARM, 2014
[25]http://www.koren.kr/koren/eng/net/natworkmap.html?cate=3&menu=1
[26] www.tein4.net
[27] JaeSeok An, “OpenStack”, KRnet, 2016
[28] https://en.wikipedia.org/wiki/Raspberry_Pi
[29] https://en.wikipedia.org/wiki/Arduino
[30] Soohong Daniel Park, Ph.D., “Samsung OpenSource & IETF”, IETF mirror forum technology workshop, 2016
[31] Younghan Kim, “NFV”, Soongsil University, 2016
[32] https://www.opnfv.org/about
[33] https://www.opnfv.org/software
[34] http://opensource.org , Open Source Initiative
[35] SangYun Han, “ONOS SDN Controller”, Kyunghee Univ. MOBILE CONVERGENCE LAB.
[36] OpenFlow Switch Speciifcation version 1.4.0
[37] http://cleanslate.Stanford.edu, The Stanford Clean Slate Program
[38] Srini Seetharaman et al., “OpenFlow/SDN tutorial”, Deutsche Telekom, Silicon Valley Innovation Center
179
Thank You!