Top Banner
| | ACN: Network virtualization Patrick Stüdi, Ankit Singla, Desislava Dimitrova 12.04.2016 1 Advanced Computer Networks Control and Data plane D. Dimitrova
27

Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

Jul 09, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Patrick Stüdi, Ankit Singla, Desislava Dimitrova

12.04.2016 1

Advanced Computer Networks Control and Data plane

D. Dimitrova

Page 2: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization 12.04.2016 D. Dimitrova 2

Distributed control plane

http://aryaka.com/

Page 3: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization 12.04.2016 D. Dimitrova 3

Centralized control plane

http://aryaka.com/

Page 4: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Fast reaction time (Efficiency)

Quick behaviour updates (Scale)

Flexible flow management (Innovation)

12.04.2016 D. Dimitrova 4

SDN is better

Page 5: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization 12.04.2016 D. Dimitrova 5

SDN vs Virtual Networks

Source: VMWare

Page 6: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization 12.04.2016 D. Dimitrova 6

SDN layer cake

Control applications

Controller

Infrastructure

Page 7: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization 12.04.2016 D. Dimitrova 7

SDN layer cake

SDN Controller

Open Flow protocol

Local CPU/NPU

Switching fabric

Control applications

Controller

Infrastructure

Page 8: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Control plane: Management functionality that provides instructions on

how traffic should be handled.

12.04.2016 D. Dimitrova 8

SDN

Page 9: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Data plane: Forwarding functionality that moves traffic and forms a topology.

12.04.2016 D. Dimitrova 9

SDN

Page 10: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

It needs as input … It provides as output …

12.04.2016 D. Dimitrova 10

SDN: Control plane

Source: bavaria.travel.com

Page 11: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

It needs as input Discovery messages Topology changes Flow stats

It provides as output Flow handling instructions

12.04.2016 D. Dimitrova 11

SDN: Control plane

SDN Controller

Open Flow protocol

Local CPU/NPU

Switching fabric

Page 12: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

aka Network Operating System (NOS)

Implements control functionality Topology discovery & abstraction Rule conflict avoidance

Communicates with the data plane Open Flow protocol P4 Platform-secific protocols

12.04.2016 D. Dimitrova 12

SDN: Control plane

SDN Controller

Open Flow protocol

Local CPU/NPU

Switching fabric

Page 13: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Implementation: Single- vs multi-threaded

Deployment Centralized Physically distributed [KoT10, ToA10] Logically distributed [ShR10] Hierarchical controllers [YaS12]

Flow management mode Proactive mode [ReJ10] Reactive mode [CaM07]

12.04.2016 D. Dimitrova 13

SDN: Control plane

Page 14: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Implements the OpenFlow protocol [OF14] Messages, incl. flow rules and corresponding actions Switch & controller behaviour

12.04.2016 D. Dimitrova 14

SDN: Control channel

Page 15: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Parser: header state machine

Control program: table graph

Actions

12.04.2016 D. Dimitrova 15

P4: Programming Protocol-independent Packet Processors

Source: J. Rexford, Princeton

Page 16: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Protocol independent

Target independent

Reconfigurable

12.04.2016 D. Dimitrova 16

P4: Programming Protocol-independent Packet Processors

Source: J. Rexford, Princeton

Page 17: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Streaming algorithms on packets Matching on some headers (40 fields) Perform some actions

Wide range of functionality Mapping header fields Buffering and marking Forwarding Traffic monitoring Access control …

12.04.2016 D. Dimitrova 17

SDN: Data plane

Local CPU/NPU

Switching fabric

match action

OF rules = (match,action)

Page 18: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Packet handling Based on (match,action) pairs Multi-stage matching tables

Installed flow

12.04.2016 D. Dimitrova 18

SDN: Data plane

Local CPU/NPU

Switching fabric

OF rule = (match XYZ, fwd)

action = fwd

Table X SRAM

Table Y TCAM

Table Z TCAM

Action fwd = 2

Page 19: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

New flow

12.04.2016 D. Dimitrova 19

SDN: Data plane

Local CPU/NPU

Switching fabric

OF rule = (match XYZ, fwd)

action = fwd

Table X SRAM

Table Y TCAM

Table Z TCAM

Action fwd = 2

SDN Controller

Buffer

Pkt to controller

Page 20: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

ASIC fast packet processing slow & expensive updates

FPGA and NPU fast, reconfigurable hard to program

CPU slow packet processing easy to program

12.04.2016 D. Dimitrova 20

SDN: Data plane

Source: Altera

Page 21: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

References for the interested [CaM07] M. Casado, M.J. Freedman, J. Pettit, J. Luo, N. McKeown, and S. Shenker. Ethane: Taking

control of the enterprise. In SIGCOMM Computer Commun. Review. 2007. [KoT10] T. Koponen, M. Casado, N. Gude, J. Stribling, L. Poutievski, M. Zhu, R. Ramanathan, Y.

Iwata, H. Inoue, T. Hama, et al. Onix: A distributed control platform for large-scale production networks. OSDI. 2010.

[OF14] OpenFLow Specification v1.4. Open Networking Foundation [ReJ10] Rexford, M.J. Freedman, and J. Wang. Scalable flow-based networking with DIFANE. In

SIGCOMM 2010 [ShR10] R. Sherwood, M. Chan, A. Covington, G. Gibb, M. Flajslik, N. Handigol, T.Y. Huang, P.

Kazemian, M. Kobayashi, J. Naous, et al. Carving research slices out of your production networks with openflow. In SIGCOMM Computer Commun. Review. 2010.

[ToA10] A. Tootoonchian and Y. Ganjali. Hyperflow: A distributed control plane for openflow. In INM. 2010.

[YaS12] S.H. Yeganeh and Y. Ganjali. Kandoo: a framework for efficient and scalable offloading of control applications. In HotSDN. 2012.

N. Kang, Z. Liu, J. Rexford, D. Walker. Optimizing the "one big switch" abstraction in software-defined networks. In CoNEXT 2013

12.04.2016 D. Dimitrova 21

SDN: Control plane

Page 22: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

References for the interested G. Lu, R. Miao, Y. Xiong, and Ch. Guo. Using CPU as a traffic co-processing unit in commodity

switches. In HotSDN. 2012. J. Naous, D. Erickson, G.A. Covington, G. Appenzeller, and N. McKeown. Implementing an OpenFlow

switch on the NetFPGA platform. In ANCS. 2008. Charalampos Rotsos, Nadi Sarrar, Steve Uhlig, Rob Sherwood, and Andrew W. Moore. OFLOPS: an

open framework for openflow switch evaluation. In PAM. 2012. M. Kuzniar, P. Peresini and D. Kostic. What You Need to Know About SDN Flow Tables. In PAM.

2015 D.Y. Huang, K. Yocum, and A.C. Snoeren. High-fidelity switch models for software-defined

network emulation. In HotSDN. 2013. P. Bosshart, G. Gibb, H.-S. Kim, G. Varghese, N. McKeown, M. Izzard, F. Mujica, and M.

Horowitz. Forwarding metamorphosis: fast programmable match-action processing in hardware for SDN. In SIGCOMM. 2013.

E. Kohler, R. Morris, B. Chen, J. Jannotti, and M.F. Kaashoek. The click modular router. In ACM Trans. Comput. Syst. 2000.

12.04.2016 D. Dimitrova 22

SDN: Data plane

Page 23: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

SDN in practice

12.04.2016 D. Dimitrova 23

Page 24: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Scalability Decision elements responsible for many routers

Response time Delays between decision elements and routers

Reliability Surviving failures of decision elements and routers

12.04.2016 D. Dimitrova 24

Software Defined Networking: Challenges

Page 25: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Consistency Ensuring multiple decision elements behave consistently

Security Network vulnerable to attacks on decision elements

Interoperability Legacy routers and neighboring domains

12.04.2016 D. Dimitrova 25

Software Defined Networking: Challenges

Page 26: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Above the control plane

12.04.2016 D. Dimitrova 26

Page 27: Advanced Computer Networks - Systems Group1... · 2016-04-18 · Software Defined Networking: Challenges . ACN: Network virtualization | | Consistency Ensuring multiple decision elements

| | ACN: Network virtualization

Implement diverse control functionality Routing Bandwidth provisioning Load balancing Packet inspection Monitoring …..

12.04.2016 D. Dimitrova 27

Software Defined Networking: Control applications

SDN Controller

Open Flow protocol

Local CPU/NPU

Switching fabric

Control applications