huawei technologies co., ltd. protocol oblivious forwarding: unleash the power of sdn through a...

16
HUAWEI TECHNOLOGIES CO., LTD. www.huawei.com Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song Networks Business Unit, Technology Strategy, IP Research Huawei Technologies, USA

Upload: aileen-james

Post on 18-Dec-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD.

www.huawei.com

Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane

Haoyu SongNetworks Business Unit, Technology Strategy, IP ResearchHuawei Technologies, USA

Page 2: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 2

What Happened to Your Mobile Phone: A Metaphor

Preloaded with all the features Get new models for new apps No way to customize

Download only the apps you need New features in new software release Write your own apps

Decoupling the platform and the apps is the key for smart phone’s success. The real value exists in services provided by software. Better hardware can carry and deliver the value better.

Past Now

Page 3: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 3

Network Device Programming Models

Control Plane

Data Plane

“Black Box”

Closed and proprietary design that meets the pre-defined service requirements

Device Vendor-driven Programmability

Man

ag

emen

t

I can only use the device as- is.

Device Vendor/Service Provider Split Programmability

Control Plane

Data Plane

OpenFlow 1.x

“Gray Box”

Open interface using existing technology building blocks for limited programmability

Co

ntro

l

I can do what the device has supported.

Service Provider-driven Programmability

Control Plane

Data Plane

Open interface using generic network programming model, enabling full programmability

“White Box”

Pro

gram

OpenFlow+

I can do whatever I want.

Page 4: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 4

Protocol-specific semantics forces the forwarding elements (FE) to understand the packet formats and retain the specific packet processing knowledge. The reactive evolving path needs incessant standard revisions to accommodate new features and new protocols.

Plane coupling Protocol/instruction explosion Stateless/Limited expressivity

Current OpenFlow-enabled Device is a “Gray Box”

New service required

Does the OF Spec. support it?

Wait for new revision of OF Spec.

Wait for the device upgrade to support the new spec.

Deploy the software to enable the service

Yes

No

Idea

l path

Not future-proof Slow innovation process

Page 5: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 5

SDN Computer System

APISys. Call

DriverInstruction Set

Computer system components have been decoupled from the vertical integration model. SDN is on the track to mimic this transition. But current OpenFlow still doesn’t embrace this model to the full extent.

SDN: Operate your Network Device like a PC

Simple & generic instruction set

Ultimate flexibility & extensibility

Upgrade only on performance

Service

Controller

Forwarding Element

Application

OperatingSystem

CPU systemPeripheral

Page 6: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 6

Protocol Oblivious Forwarding: Core Concept

OFPAT_COPY_TTL_OUTOFPAT_COPY_TTL_INOFPAT_SET_MPLS_TTLOFPAT_DEC_MPLS_TTLOFPAT_PUSH_VLANOFPAT_POP_VLANOFPAT_PUSH_MPLSOFPAT_POP_MPLSOFPAT_SET_NW_TTLOFPAT_DEC_NW_TTLOFPAT_PUSH_PBBOFPAT_POP_PBBand on and on and on …

POFAT_SET_FIELDPOFAT_ADD_FIELDPOFAT_DELETE_FIELDPOFAT_MOD_FIELDPeriod.

~40 matching header fields defined yet still many uncovered protocols/headers

{offset, length} covers any frame based formats

Packet field parsing and handling are abstracted as generic instructions to enable flexible and future proof forwarding elements. This is simple yet has profound implications to SDN.

Match

Action

Current OpenFlow POF

Table search keys are defined as {offset, length} tuples

Instructions/Actions access packet data or metadata using {offset, length} tuples

Include other math, logic, move, branching, and jump instructions

Page 7: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 7

Is this an IP packet?

Use destination IP to search FIB

Process TTL

Update Checksum

Data @ {12B, 2B} = 0x0800?

Extract Data @ {30B, 4B}; Use it as key to search LPM table x

Decrement Data @ {22B, 1B}; If result is 0, drop the packetClear Data @ {24B, 2B};Use algorithm y to calculate checksum over Data @ {14B, 20B}; Write result @ {24B, 2B}

DMAC SMAC Type Payload FCS

Conventional FE

Forwarding Flow

POF Forwarding Flow

Ethernet/IPv4 Packet Format

OpenFlow’s high level semantics (“what”) is simple in communication but demands forwarding plane intelligence; POF’s low level semantics (“how”) moves all the intelligence up to the controller

How to Ask a Dumb FE to Do Smart Things

The fine-grained bit-level manipulations used to be hardcoded or micro-coded in the FE are now explicitly described by controller

Page 8: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 8

Other POF Features to Enhance OpenFlow

key metadata

instructions

Flow Entry

Table Update

Table Search

FlowTable

InstructionExecutionModule

The flow metadata and data-path table manipulation instructions enrich the forwarding plane programmability and flexibility

Enable active & stateful data-path

• Add general flow-based metadata beyond counters• Statistics • Time stamps• Anomaly• Flow states

• Add data-path instructions that can create and modify flow tables• MAC learning• Active firewall• Dynamic load balancing• Controller offloading

Page 9: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 9

Other POF Features to Enhance OpenFlow (cont’d)

These new features facilitate the efficient hardware implementation, otherwise it would be difficult or even impossible for FE to figure out the optimization opportunities.

Add entry-specific parameters and allow multiple flow entries share the same instruction block• Save instruction memory and enable fast updates

Treat statistics counters and flow metadata as shared resource pool and assign the resource to flow entries on demand • Aggregated and multi-purpose counters for statistics• Message communication vehicle for flows

Distinguish logical tables and physical tables • The same physical table used by multiple logical tables (e.g. IP/RPF, MAC

Learning/forwarding)• One physical table resource shared by multiple unrelated logical tables (e.g

TCAM, Hash)

Page 10: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 10

POF-based SDN Architecture

Programming Languages

Compiler

Flow Instruction Set

Application API

• Programmable• Network

optimized

• Runtime & Remote reprogrammable

• Table driven & protocol blind

• Flow instruction set

• Flexible• Generic• Standard• Low level

instruction set

NPU

CPU

• High performance

Flex Flow Processor

ASIC

Novel Applications &Services

Protocol SpecificApplication

Protocol AgnosticTables/Instructions

Controller

FlowTables

POFInstructions

POF Data Path

OpenFlow+ Hardware Abstraction Layer

Driver

Con

trolle

rForw

ard

ing

Ele

men

ts

Page 11: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 11

Controller Forwarding Elements

Based on Floodlight with POF extension

Open source, cross platform, Apache licensed, and Java-based software

POF System Prototypes

NP-based hardware implementation on NE5000E or NE40E router platform

Open source software switch on Linux server

POFGUI

POFManager

PMDatabase

Bypass Manager Module

Floodlight Provider(Controller)

OtherOFMessage

Process Modules

ProtocolOblivious

Forwarding

Controller Controller

OpenFlow Connection Management

Forwarding Engine Driver

ForwardingEngine

OpenFlow Connection Management

OpenFlow Parse OpenFlow Encap

Resouce of POFSwitch

ForwardingEngine

MPU

LPU

Switch Control Module

Resouce Module

Datapath Module

HUAWEI Core Router

OpenFlow Parse OpenFlow Encap

HAL of POF

POFSwitch

Page 12: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 12

Using NPU to Implement POF

Proprietary NPU runs in RTC (Run To Completion) programming model Two modes for POF implementation

• Function Mode: Each FIS instruction is implemented in FE NPU as a function written in

micro-code. Each instruction is essentially a function call.

• Simple but has a performance hit

• Compiling Mode: Controller or the FE driver compiles the FIS instructions into NPU micro-

code directly and load the code to the program memory.

• Better performance but more complex

Current prototype used Function Mode and we are working on Compiling Mode• We see up to 30% performance loss

• Mainly due to table search key constructions

• Still satisfy typical application scenarios for the 40G line card

It is feasible to use NPU to implement POF, in the long run we prefer to have some POF-optimized silicon to reduce the cost and boost the performance.

Page 13: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 13

L2IPv4 IPv6 MPLS…

NVGRE VXLAN TRILLIPXFibre Channel…

User DefinedSource Routing NDNCCNSCN…

Network Service Enabling

VPLS, Stateful Firewall, DPI, L4~L7 Applications

Forwarding Protocol Enabling

Other innovation possibilities

Network processing simplification - reduce tunneling and transformation

User defined scratch space in packets for in-band info communication (OAM)

POF Use Cases

POF offers unmatched flexibility to the forwarding plane. With it, we can either deploy sophisticated network services or greatly simplify the network forwarding process.

Page 14: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 14

Define low-level instruction set FIS• Platform-independent generic primitives

• Expressive for a wide range of applications

• Programming in “assembly” style

• Allows layered abstraction and virtualization

• No need to be the same as the chip instruction set

Standardization is the key• Stabilize a future-proof OpenFlow specification (OpenFlow 2.0?)

• Need industry-wide collaboration involving all the player

• Many hard problems (technical and non-technical) to attack

• We publish the open-source website to advocate open research and

encourage contributions and adoptions

• POF has the potential to truly commoditize the forwarding elements while nourishing an independent controller/application software market.

How to realize POF

www.poforwarding.org

Page 15: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

HUAWEI TECHNOLOGIES CO., LTD. Huawei Confidential 15

POF thoroughly decouples the SDN control plane and the forwarding plane

• Controller-side software can construct flexible applications without any underlying

constraints

• Controller applies high level languages and compilers to program the FEs through the

standard instruction set

POF advocates a standard, flexible and future-proof forwarding plane• Allow FEs to focus on performance rather than functionality

• FE will become simpler and more flexible

POF calls for continuous research to improve• Standardize the interface and the FIS, leave the other details for innovation

Conclusions

Service providers will benefit from this technology through:(1) using standard, simple, and future-proof FEs to save CAPEX/OPEX (2) quickly deploying customized and innovative services in the form of application software to generate new revenues.

Page 16: HUAWEI TECHNOLOGIES CO., LTD.  Protocol Oblivious Forwarding: Unleash the Power of SDN through a Future-Proof Forwarding Plane Haoyu Song

Thank youwww.huawei.com

Copyright©2013 Huawei Technologies Co., Ltd. All Rights Reserved.The information in this document may contain predictive statements including, without limitation, statements regarding the future financial and operating results, future product portfolio, new technology, etc. There are a number of factors that could cause actual results and developments to differ materially from those expressed or implied in the predictive statements. Therefore, such information is provided for reference purpose only and constitutes neither an offer nor an acceptance. Huawei may change the information at any time without notice.

For more information, please go to www.poforwarding.org and subscribe ONF SDN-Future Discussion Group mailing list.