SODA: Enhancing the Data Plane Functionality of Software Defined Networking

10

Transcript of SODA: Enhancing the Data Plane Functionality of Software Defined Networking

Page 3: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

SODA: Enhancing the Data Plane

Functionality of Software Defined

Networking

Dan Li, Tsinghua University

Yirong Yu, Tsinghua University

Kang Li, Kaiwang Technology

1

Page 4: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

OpenFlow Protocol

2

Global Network View

Network Virtualization

Packet Forwarding Packet

Forwarding

Packet Forwarding

Packet Forwarding

Abstract Network View

Control

Programs

Control

Programs

Control

Programs

firewall.c

if( pkt->tcp->dport == 22)

dropPacket(pkt);

Packet Forwarding

Network OS 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6.… 7.…

1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6.… 7.…

1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6.… 7.…

1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6.… 7.…

1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6.… 7.…

Page 5: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

Data Plane of OpenFlow

OpenFlow’s basic data functionality

Flexibly setting the matching keys from the fields in the

packet header

Flexibly choosing the routing paths for flows

Group table allows limited more operations

Multicast, broadcast, multipath routing

What if more advanced requirements?

User-defined packet formats

More intelligent packet forwarding behavior

Deep packet investigation for security

In-network processing for big data applications

3

Page 6: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

SODA: Enhancing SDN Data Plane

User-defined protocols

Defining user-customizable byte fields (not only standard

protocol fields) as matching keys

Advanced packet forwarding behavior

Fast rerouting, traffic engineering

Payload aware processing

Processing the whole packet, not only packet header

Stateful processing

Statefully processing a sequence of packets, not only a single

packet

4

Page 7: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

SODA Implementation

5

Page 8: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

SODA Demo

6

Page 9: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

Comparing SODA with Other Network Systems

7

System Programming

Environment Programmability Performance

SODA (SDN) Network-wide programming,

software programming

User-defined protocols,

payload processing,

stateful processing

>50Gbps (with

GPU)

OpenFlow (SDN) Network-wide programming,

software programming Flexible routing paths 100s Gbps

PoF switch (SDN) Network-wide programming User-defined protocols

Regular routers Device-level programming,

simple configuration Simple configuration

100s Gbps -

Tbps

Click Device-level programming,

software programming

Customizable

configuration Several Gbps

NetFPGA Device-level programming,

hardware programming

Limited by hardware

logic 4 10G ports

Page 10: SODA: Enhancing the Data Plane Functionality of Software Defined Networking

Thanks!

8