UNIVERSITY OF CAGLIARI

Similar documents
Cisco Extensible Network Controller

Software-Defined Networking (SDN) Overview

UNIVERSITY OF CAGLIARI

ONOS OVERVIEW. Architecture, Abstractions & Application

Taxonomy of SDN. Vara Varavithya 17 January 2018

UNIVERSITY OF CAGLIARI

BTEC Level 3 Extended Diploma

Lecture 10.1 A real SDN implementation: the Google B4 case. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Internet Technology. 15. Things we didn t get to talk about. Paul Krzyzanowski. Rutgers University. Spring Paul Krzyzanowski

Top-Down Network Design

DCFabric: An Open Source SDN Controller for Cloud Computing Data Centers. White Paper. Shanghai Engineering Research Center for Broadband Networks

Chapter 17: Distributed Systems (DS)

Routing Protocols. Autonomous System (AS)

Top-Down Network Design, Ch. 7: Selecting Switching and Routing Protocols. Top-Down Network Design. Selecting Switching and Routing Protocols

Why dynamic route? (1)

Introduction to Segment Routing

CSC 4900 Computer Networks: Routing Protocols

Ending the Confusion About Software- Defined Networking: A Taxonomy

Routing Basics ISP/IXP Workshops

Software Defined Networking(SDN) Wireless application

Accelerating SDN and NFV Deployments. Malathi Malla Spirent Communications

Network Layer: The Control Plane

Service Graph Design with Cisco Application Centric Infrastructure

Chapter 5 Network Layer: The Control Plane

Routing Basics. Routing Concepts. IPv4. IPv4 address format. A day in a life of a router. What does a router do? IPv4 Routing

Routing Basics ISP/IXP Workshops

The Interconnection Structure of. The Internet. EECC694 - Shaaban

Cloud Networking (VITMMA02) Software Defined Networking (SDN) in the Cloud

OpenStack and OpenDaylight, the Evolving Relationship in Cloud Networking Charles Eckel, Open Source Developer Evangelist

Planning for Information Network

Impact Analysis in MPLS Networks

Communication System Design Projects

Software Defined Networking

Enable Infrastructure Beyond Cloud

OpenADN: Service Chaining of Globally Distributed VNFs

Lecture 14 SDN and NFV. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

Thinking Architecturally (80 Minutes Inside Scott s Head)

lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00

What is the difference between unicast and multicast? (P# 114)

COMP211 Chapter 5 Network Layer: The Control Plane

Routing Concepts. IPv4 Routing Forwarding Some definitions Policy options Routing Protocols

VXLAN Overview: Cisco Nexus 9000 Series Switches

Routing Overview for Firepower Threat Defense

Configuring BGP. Cisco s BGP Implementation

Software-Defined Networking. Daphné Tuncer Department of Computing Imperial College London (UK)

Chapter 5 Network Layer: The Control Plane

GRE and DM VPNs. Understanding the GRE Modes Page CHAPTER

Application Delivery Using Software Defined Networking

Routing Basics. ISP Workshops. Last updated 10 th December 2015

Compatibility of Border Meeting of Two Layers Protocol (BGP Version 4) With IPV6 Yashpal Yadav 1, Madan singh 2, Vikas Kumar 3

Seven Criteria for a Sound Investment in WAN Optimization

Cross-subnet roaming in ABB broadband wireless mesh networks

Cybersecurity was nonexistent for most network data exchanges until around 1994.

To contain/reduce broadcast traffic, we need to reduce the size of the network (i.e., LAN).

Routing, Routing Algorithms & Protocols

Modeling an Application with Cisco ACI Multi-Site Policy Manager

MPLS/Tag Switching. Background. Chapter Goals CHAPTER

OpenADN: Mobile Apps on Global Clouds Using OpenFlow and SDN

ACI Terminology. This chapter contains the following sections: ACI Terminology, on page 1. Cisco ACI Term. (Approximation)

ProgrammableFlow White Paper. March 24, 2016 NEC Corporation

ONOS: TOWARDS AN OPEN, DISTRIBUTED SDN OS. Chun Yuan Cheng

MPLS Multi-protocol label switching Mario Baldi Politecnico di Torino (Technical University of Torino)

Overview. Information About Layer 3 Unicast Routing. Send document comments to CHAPTER

A Software-Defined Networking Security Controller Architecture. Fengjun Shang, Qiang Fu

Chapter 7: Routing Dynamically. Routing & Switching

Network Virtualization and Application Delivery Using Software Defined Networking

Virtualization of the MS Exchange Server Environment

Introduction to Dynamic Routing Protocols

Chapter 4: Manipulating Routing

Multi-Domain Service Optimization

Chapter 7 Routing Protocols

Overview. Overview. OTV Fundamentals. OTV Terms. This chapter provides an overview for Overlay Transport Virtualization (OTV) on Cisco NX-OS devices.

A Routing Infrastructure for XIA

SDN: A Brief Anatomy and History. Jason Gintert Co-Founder/CTO, WAN Dynamics

End-To-End Signaling and Routing for Optical IP Networks

Unicast Routing. Information About Layer 3 Unicast Routing CHAPTER

Chapter 5 Network Layer: The Control Plane

Routing Basics. Campus Network Design & Operations Workshop

OpenADN: A Case for Open Application Delivery Networking

TEN ESSENTIAL NETWORK VIRTUALIZATION DEFINITIONS

HY436: Network Virtualization

Networking TCP/IP routing and workload balancing

Deployment Scenarios for Standalone Content Engines

Tag Switching. Background. Tag-Switching Architecture. Forwarding Component CHAPTER

WCCPv2 and WCCP Enhancements

SDN TO BE OR NOT TO BE. Uwe Richter SE Director Russia/CIS, East and South East Europe

Routing. Info 341 Networking and Distributed Applications. Addresses, fragmentation, reassembly. end-to-end communication UDP, TCP

End to End SLA for Enterprise Multi-Tenant Applications

SEMESTER 2 Chapter 3 Introduction to Dynamic Routing Protocols V 4.0

Active source routing for ad-hoc network: seamless integration of wireless environment

Virtual Security Gateway Overview

SDN Technologies Primer: Revolution or Evolution in Architecture?

ONUG SDN Federation/Operability

Module 15: Network Structures

Configuring IP SLAs LSP Health Monitor Operations

Introduction to IP Routing. Geoff Huston

Optical network virtualization. Optical network virtualization. Transport SDN for cloud-centric networking

MPLS in the DCN. Introduction CHAPTER

Agilio OVS Software Architecture

Transcription:

UNIVERSITY OF CAGLIARI DIEE - Department of Electrical and Electronic Engineering Infrastrutture ed Applicazioni Avanzate nell Internet SDN: Control Plane ACK: content taken from Foundations of Modern Networking, SDN, NFV, QoE, IoT, and Cloud, William Stallings, Addison Wesley 1

SDN comparison with tradition 3

Easier programability SDN - advantages All applications can take advantage of the same network information The applications can take actions (i.e., reconfigure forwarding devices) from any part of the network Easier integration of applications 4

Architecture: different views Plane-oriented view Layered view System design perspective 5

Southbound interfaces It fosters interoperability: very good for manufacturers Openflow event-based messages from the devices Link or port change Flow statistics Packet-in messages (don t know what to do, explicit request for communicating with the controller) Some competitors exist ForCES IETF proposal not need for changing the current architecture 6

Openflow competitors OVSDB Advanced functionalities for Open vswitch Multiple virtual switch instances, set QoS levels, configure tunnels POF (major one) With openflow need for understand the headers V1.3 already 40 header fields It introduces generic flow instruction set (FIS) Not need to know in advance the headers Forwarding devices seen as white boxes Packet parsing is a controller task Generic keys and table lookup instructions are installed in the devices Data plane devices are under the complete control of controllers 7

Network Hypervisors Virtualization is already consolidated in computers Hypervisors enable distinct virtual machines on the same hardware Reduction of CAPEX without great increase in OPEX Still not used in networks It is difficult for a single physical infrastructure to support diverse tenants demands Address space is difficult to be changed They have to work in the same physical address space Virtual machines cannot migrate to arbitrary locations 8

Slicing the network: FlowVisor FlowVisor: first technology for SDN virtualization Multiple logical networks sharing the same resources Five slices dimensions Bandwidth, topology, traffic, CPU, and forwarding table Each controller acts on its own slice A slice is defined as a set of flows Flowvisor is a transparent proxy that intercepts OF messages between controllers and devices It partitions the link bandwidth and flow tables Each slice has a minimum data rate 9

NOS/Controllers Traditional operating systems: High-level programming APIs to access lower level devices Opposite for networks E.g.: Cisco IOS, JunOS Operating system abstracting is far from being realized Problems solved over and over again Abstracting the network functions Network state, network topology information, device discovery, distribution of configuration data The control platform abstracts the lower level details of connecting and interacting with forwarding devices 10

11

NOS: centralized vs distributed Centralized Single point of failure and may not scale well Designed as highly concurrent systems Multithread design -> multicore architectures Beacon solution: more than 12Mlns flows per second using cloud computing platforms (Amazon) Distributed Scale well with the increase of forwarding nodes It could be Centralized cluster of nodes Physically distributed set of elements 12

NOS: centralized vs distributed Distributed Data consistency Data updates on all controller nodes All controller nodes read the same information Fault tolerance Neighbor support is usually assured Two approaches Each controller focuses on a small network All controllers spread all over the network 13

A number of different initiatives, both commercial and open source, have resulted in SDN controller implementations: OpenDaylight Open Network Operating System (ONOS) POX Beacon Floodlight Ryu Onix 14

Routing The routing function comprises a protocol for collecting information about the topology and traffic conditions of the network, and an algorithm for designing routes through the network There are two categories of routing protocols: Concerned with discovering the topology of routers within an AS and then determining the best route to each destination based on different metrics Interior router protocols (IRPs) that operate within an autonomous system (AS) Exterior router protocols (ERPs) that operate between autonomous systems Need not collect as much detailed traffic information Primary concern is to determine reachability of networks and end systems outside of the AS 18

Routing Traditionally the routing function is distributed among the routers in a network In an SDN controlled network, it makes sense to centralize the routing function within the SDN controller The controller can develop a consistent view of the network state for calculating shortest paths and can implement application aware routing policies The data plane switches are relieved of the processing and storage burden associated with routing, leading to improved performance 19

Routing The centralized routing application performs two distinct functions: Link discovery The routing function needs to be aware of links between data plane switches Must be performed between a router and a host system and between a router in the domain of this controller and a router in a neighboring domain Discovery is triggered by unknown traffic entering the controller s network domain either from an attached host or from a neighboring router Topology manager Maintains the topology information for the network and calculates routes in the network Route calculation involves determining the shortest path between two data plane nodes or between a data plane node and a host 20

REpresentational State Transfer (REST) An architectural style used to define APIs This has become a standard way of constructing northbound APIs for SDN controllers A REST API, or an API that is RESTful is not a protocol, language, or established standard It is essentially six constraints that an API must follow to be RESTful The objective of these constraints is to maximize the scalability and independence/interoperability of software interactions, and to provide for a simple means of constructing APIs 28

REST Constraints The six REST constraints are: 1 Client-server 2 Stateless 3 Cache 4 Uniform interface 5 Layered system 6 Code on demand 29

Client Server This simple constraint dictates that interaction between application and server is in the client-server request/response style The principle defined for this constraint is the separation of user interface concerns from data storage concerns This separation allows client and server components to evolve independently and supports the portability of server-side functions to multiple platforms 30

2 Stateless Constraint Dictates that each request from a client to a server must contain all the information necessary to understand the request and cannot take advantage of any stored context on the server Similarly, each response from the server must contain all the desired information for that request One consequence is that any memory of a transaction is maintained in a session state kept entirely on the client Another consequence is that if the client and server reside on different machines, and therefore communicate via a protocol, that protocol need not be connection oriented REST typically runs over Hypertext Transfer Protocol (HTTP), which is a stateless protocol 31

3 Cache Constraint Requires that the data within a response to a request be implicitly or explicitly labeled as cacheable or noncacheable If a response is cacheable, then a client cache is given the right to reuse that response data for later, equivalent requests Therefore, subsequent requests for the same data can be handled locally at the client, reducing communication overhead between client and server 32

4 Uniform Interface Constraint REST emphasizes a uniform interface between components, regardless of the specific client-server application API implemented using REST To obtain a uniform interface, REST defines four interface constraints: Identification of resources Manipulation of resources through representations Self-descriptive messages Hypermedia as the engine of the application state The benefit of this constraint, for an SDN environment is that different applications can invoke the same controller service via a REST API 33

5 Layered System Constraint A given function is organized in layers, with each layer only having direct interaction with the layers immediately above and below This is a fairly standard architecture approach for protocol architectures, OS design, and system services design 34

6 Code-on-Demand Constraint REST allows client functionality to be extended by downloading and executing code in the form of applets or scripts This simplifies clients by reducing the number of features required to be pre-implemented Allowing features to be downloaded after deployment improves system extensibility 35

Table 5.2 Ryu REST APIs for Retrieving Switch and Updating Switch Statistics and Parameters /stats/group/<dpid> GET http://localhost:8080/ Stats/group/1 (a) Retrieve Switch Statistics using GET

Table 5.2 Ryu REST APIs for Retrieving Switch and Updating Switch Statistics and Parameters (b) Update Switch Statistics Filtered by Fields using POST

High-Availability Clusters The primary node is responsible for answering all traffic that is sent to the cluster s external IP address and holds a read/write copy of the configuration data The second node operates as a standby, with a read-only copy of the configuration data, which is kept current with the primary s copy The secondary node monitors the state of the external IP If the secondary node determines that the primary node is no longer answering the external IP, it triggers a failover, changing its mode to that of primary node It assumes the responsibility for answering the external IP and changes its copy of configuration data to be read/write If the old primary reestablishes connectivity, there is an automatic recovery process trigger to convert the old primary to secondary status so that configuration changes that are made during the failover period are not lost 39

Border Gateway Protocol (BGP) Was developed for use in conjunction with internets that use the TCP/IP suite Has become the preferred exterior router protocol (ERP) for the Internet Enables routers, called gateways in the standard, in different autonomous systems to cooperate in the exchange or routing information The protocol operates in terms of messages, which are sent over TCP connections The current version of BGP is BGP-4 41

BGP Three functional procedures are involved in BGP: Neighbor acquisition Neighbor reachability Network reachability The term neighbor refers to two routers that share the same network Once a neighbor relationship is established this procedure is used to maintain the relationship Each router maintains a database of the networks that it can reach and the preferred route for reaching each network Occurs when two neighboring routers in different autonomous systems agree to exchange routing information regularly Each partner needs to be assured that the other partner still exists and is still engaged in the neighbor relationship Whenever a change is made to this database, the router issues an Update message that is broadcast to all other routers for which it has a neighbor relationship 42

End of Chapter 5 45