Lecture 3 - SDN Part 2 Flashcards

1
Q

Give some examples of where wildcards can be used.

A
  • IPv4 traffic to a certain machine (e.g., result of a routing algo)
  • Traffic of a certain VLAN from a certain port
  • All traffic to a certain web server (p80)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the limitations of OpenFlow?

A

“One” Specification
- No switch supports all features
- Not all switch features are supported by OF

Protocol/Action bounded
- Fixed set of Protocols and Match Fields
- Fixed set of “allowed actions”

“Too Complex”

No interest of market dominant vendors*

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is NETCONF and its specifications?

A

NETCONF - Network Configuration Protocol

Southbound Protocol
- Initially: Management Plane Southbound

Transport layer & Operations
- TCP/TLS encrypted
- RPC like operations
– Connect/Disconnect
– Read config
– Overwrite/Update config

Data Representation
- JSON
- XML
- YANG

NETCONF doesn’t specify
- Type of Data
- Compared to OF - any protocol/function supported
- Difficult - How to realize “packet-in”/”packet-out”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Name some further OF and netconf alternatives

A
  • RESTCONF: basically NETCONF but based on REST
  • gRPC: often used in industry, vendor specific protobuf files
  • SNMP (management only): ~100% support in commercial hardware
  • PFCP: Used in 5g
  • P4Runtime: Unused & “no future”
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

In a controller, name what comes through north, south and east/west bound interactions

A

Northbound - Programs and API

East/West - Other controllers

Southbound - Interact with Data Plane

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Name controller functionalities.

A
  • Routing - e.g. shortest path forwarding
  • Notification manager - Receive, process, forward from/to app events
  • Security mechanisms - Isolation and security enforcement, between apps and services
  • Topology mngr - builds and maintains topology
  • Statistics mngr - Collects data on traffic through the switches
  • Device mngr - Configures switch parameters and attributes, manages flow tables
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does a SDN Controller (=Networked Operating System (NOS)) provide?

A

A SDN Controller provides:
- Essential services
- Common APIs
- Abstraction of lower-layer elements to developers
- Orchestration
- Application coordination
- Resource Abstraction

It’s between the application and resource layer connected by app control and resource control interfaces

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Give some OpenSource and Commercial SDN controllers as example.

A

OpenSource
- ONOS
- OpenDaylight
- RYU
- OVS (by Linux F.)

Commercial
- CloudVision (Arista)
- Central (Aruba)
- CNC and ThousandEyes (Cisco)
- NSX-V (VMWare)
- …

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the northbound interface?

A

Interface between controller and application-specific control logic
- “API” to program the network

Controller
- Exposes information about the network to the application
– Network topology
– Traffic stats
- Translates application requests to e.g. OpenFlow requests
- Sends Data Plane (e.g. OpenFlow) events to application
– packet_in events for reactive routing

Northbound interface is on top of the controller towards the control plane

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Is there a single standard northbound interface?

A

There is no standard for the northbound interface
Every controller defines its own interfaces
We focus on one specific interface of OpenDaylight
- REST interface
Further possible Protocols:
- Java/OSGi interface
- gRPC
- …

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are REST interfaces?

A

REST interfaces are popular for web services
- Many programmers already know web technologies
- Can expose network configuration as a web service

Based on common web technologies
- HTTP: No problems with firewalls
- XML, JSON: Simple and intuitive markup languages

Drawback: events not supported
- HTTP based on request/response paradigm
- Restricted to proactive routing!!!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How is REST used with controllers?

A

REST is resource-oriented

Unique identifiers to identify resources (URI)
- Employees of a company: http://foo.bar/employees/
- One employee: http://foo.bar/employees/170974d
- Relevant SDN resources: flows, topology, hosts, etc.

Client/Server architecture
- Server manages resources (-> controller implements server)
- Client manipulates resources (-> control logic/applications)

Uniform interface: well-defined methods to manipulate resources

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What HTTP methods exist to manipulate resources (you should know this without studying)

A

GET - retrieve a resource
POST - create resource
PUT - update resource
DELETE - remove resource
HEAD - retrieve metadata on resource
OPTIONS - methods that can be executed on resource

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What kind of protocol is used between client and server and what format are resource representations in between them.

A

Stateless protocol between client and server

Formats:
- XML
- JSON
- binary
- etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How are flows/added deleted using REST?

A

Simple API call using PUT to update a certain switch (update switch with new flow), pass the flow details as the payload in JSON or XML format

To remove send DELETE request, no payload

To retrieve call GET (default (all), specific node (switch), specificflow) just change the URI of the request

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Why would we want to use something besides REST?

A

Rest interfaces are request/response
- Client - control application (implementing control logic)
- Server - SDN controller

Reactive flow programming requires event interface between controller and control application
- packet_in events sent from controller to control application

No REST interface for sending packets

16
Q

What does Java/OSGi northbound interface provide over REST interfaces?

A
  • Event interface (callback functions)
  • Service for sending packets
17
Q

What are the 2 examples of OpenDaylight northbound interfaces we named? Is there a standard northbound interface?

A

RESTful interface
- Remote access to controller via HTTP
- Only proactive flow programming

Java/OSGi interface
- Full power of OpenFlow due to event support
– Proactive & Reactive flow programming
– Pushing packets

More interfaces are possible - THERE IS NO STANDARD FOR NORTHBOUND INTERFACES!!!!

Standard for southbound - OpenFlow