65
ENDN: An Enhanced NDN Architecture with a P4-programmable Data Plane Ouassim Karrakchou, Nancy Samaan, Ahmed Karmouch School of Electrical Engineering and Computer Science PRESENTED BY: Ouassim Karrakchou

ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

ENDN: An Enhanced NDN Architecture with aP4-programmable Data Plane

Ouassim Karrakchou, Nancy Samaan, Ahmed Karmouch

School of Electrical Engineering and Computer Science

PRESENTED BY:

Ouassim Karrakchou

Page 2: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Agenda

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Page 3: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Agenda

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Page 4: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Motivation

• Current Internet:

video1

Page 5: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Motivation

• Current Internet:

Network

video1

• Content Generation and Hosting

Page 6: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Motivation

• Current Internet:

Network

video1

• Content Generation and Hosting

• Best-Effort Forwarding

• Congestion Control• Firewall• Bitrate Adjustment• Geo-Fencing

Page 7: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Motivation

• Current Internet:

Network

video1Intelligence in

the application• Content Generation and Hosting

• Best-Effort Forwarding

• Congestion Control• Firewall• Bitrate Adjustment• Geo-Fencing

Page 8: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Motivation

Network

video1

• Content Generation and Hosting

• Congestion Control• Firewall• Bitrate Adjustment• Geo-Fencing

Page 9: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Motivation

Network

video1

• Content Generation and Hosting

• Congestion Control• Firewall• Bitrate Adjustment• Geo-Fencing

More intelligence

in the network?

Page 10: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Transition to an application-centric network:

Provider

Motivation

ApplicationsApplications

CurrentNetwork

Adapt to

Configure

Page 11: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Transition to an application-centric network:

Provider

Motivation

ApplicationsApplications

CurrentNetwork

Applications

ApplicationCentricNetwork

ApplicationCentricNetwork

Adapt to

Adapt to

Configure

Configure

Page 12: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Transition to an application-centric network:

Provider

Motivation

Applications

ApplicationCentricNetwork

ApplicationCentricNetwork

Adapt to

Advantages:• Optimization of network resources• Better network manageability• Faster resolution of network issues

Configure

Page 13: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Transition to an application-centric network:

Provider

Motivation

Applications

ApplicationCentricNetwork

ApplicationCentricNetwork

Adapt to

Advantages:• Optimization of network resources• Better network manageability• Faster resolution of network issues

Configure

Netflix, Google, etc…

Page 14: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Existing Solutions

• NDN, a first step towards an application-centric network:

– The network is aware of contents shared by applications.

– Optimize the delivery of contents to requesters.

• Network Programmability:

– Allow providers to completely specify their custom forwarding behaviors.

– SDN: programmability in the control plane.

– P4: a language to program the data plane.

Page 15: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Existing Challenges

• NDN:

– NDN suitable for pull traffic, but challenges in other content delivery patterns (e.g., pub/sub or push).

• P4:

– Current P4 data planes allow a single large P4 program to run on a switch. Hence, downtime is needed for updates.

– P4 has limitations when processing string-based protocols as in the case of NDN.

=> Application-centric network architecture still missing

Page 16: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Design ENDN, a novel NDN architecture with the following features:

Contributions

Extensible

Catalog of

Network

Services

New Content

Delivery

Patterns

Custom

Forwarding

Functions

Zero

Downtime

Function

Configuration

Control Plane

Data Plane

Page 17: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Overview of ENDN

ApplicationsApplications

Control Plane

Programmable Data Plane

Extensible Catalog of Network Services

Namespaces and selected Services

Manage and Configure

Examples:

• Pub/Sub

• Congestion

Control

• Adaptive

Forwarding

• Monitoring

ENDN

Main Focus

of the Paper

++

Page 18: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Agenda

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Page 19: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Proposed Data Plane Architecture

Page 20: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Proposed Data Plane Architecture

Add support for new content delivery patterns

Page 21: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Proposed Data Plane Architecture

CS outside of the fast path for easier control

of caching decisions using next-hops

Page 22: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Proposed Data Plane Architecture

Configure complex stateful forwarding behaviors per namespace.

Examples: telemetering, geo-fencing, and stateful firewall.

Page 23: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Proposed Data Plane Architecture

1. Associate namespaces to P4 functions

2. Prepare packets for P4

Page 24: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Agenda

Page 25: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

EPIT and EFIB entries

Name

Prefix

Next-Hop

ListType Timer

Timer Expiry

Function

Name

Prefix

Next-Hop

List

EPIT

Parameters

Forwarding

Function

EPIT entry:

EFIB entry:

Forwarding

Function

Page 26: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

EPIT and EFIB entries

Name

Prefix

Next-Hop

ListType Timer

Timer Expiry

Function

Name

Prefix

Next-Hop

List

EPIT

Parameters

Forwarding

Function

EPIT entry:

EFIB entry:

Forwarding

Function

PIT promoted

as a routing

table for Data

packets

Page 27: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Persistent: EPIT entry not deleted after a Data packet is forwarded

EPIT and EFIB entries

Name

Prefix

Next-Hop

ListType Timer

Timer Expiry

Function

Name

Prefix

Next-Hop

List

EPIT

Parameters

Forwarding

Function

EPIT entry:

EFIB entry:

Forwarding

Function

Persistent or

Non-Persistent

Page 28: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

EPIT and EFIB entries

Name

Prefix

Next-Hop

ListType Timer

Timer Expiry

Function

Name

Prefix

Next-Hop

List

EPIT

Parameters

Forwarding

Function

EPIT entry:

EFIB entry:

Forwarding

Function

Garbage

Collection

Page 29: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

EPIT and EFIB entries

Name

Prefix

Next-Hop

ListType Timer

Timer Expiry

Function

Name

Prefix

Next-Hop

List

EPIT

Parameters

Forwarding

Function

EPIT entry:

EFIB entry:

Forwarding

Function

P4 Function

Name

Page 30: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

New Content DeliveryPatterns

• The modifications to the NDN PIT and FIB tables allow ENDN to support new content delivery patterns:

– Publish/Subscribe:

• The EFIB route is configured to create persistent EPIT entries when Interest packets are forwarded.

– Push:

• Persistent EPIT routes are proactively configured by the control plane along the desired push route.

Page 31: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

EProcessing Module

• Construction of the EPacket:

Page 32: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

EProcessing Module

• Construction of the EPacket:

String Processing:

done outside of P4

Page 33: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Agenda

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Page 34: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Forwarding Logic Module

Page 35: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Forwarding Logic Module

Isolated P4 Code

Page 36: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Forwarding Logic Module

• Examples of output actions: forward to next-hop, drop, notify the controller, modify header field, execute metering functionalities.

Page 37: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

P4 Function Target

Page 38: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

P4 Function Target

Lightweight P4 code Execution Environment

Page 39: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

P4 Function Target

String processing is done through extern

functions outside of P4

Page 40: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

P4 Function Target

Stateful

Objects

Page 41: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

P4 Function Target

No P4 Parser

or Deparser

Page 42: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Agenda

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Page 43: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Implementation Feasibility

• Software Feasibility: we implemented ENDN by modifying the NDN Forwarding Daemon (NFD) to use libraries from the P4 Behavioral Model software target (BMv2). Our experiments were then simulated using ndnSIM.

• Hardware Feasibility: FPGA-based P4 hardware like the NetFPGA-SUME card can be used where string-processing is done in HDL (e.g., EProcessing and extern functions).

Page 44: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

Page 45: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

Region-

specific

content

• Geo-Fencing:

Page 46: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

Tag Interests

from Region 1

Tag Interests

from Region 2

• Geo-Fencing:

Page 47: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

Forward tagged Interests to Regional

Producer until traffic exceeds a threshold

• Geo-Fencing:

Page 48: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

Load-Balancer

• Geo-Fencing:

Page 49: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

Page 50: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

NDN: Geo-Fencing managed

at the central producers

Page 51: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

NDN: Some consumers can

access the regional producers

by querying the correct

namespace

Page 52: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

NDN: Some consumers can

access the regional producers

by querying the correct

namespace

NDN: Geo-Fencing using

available routes

Page 53: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

ENDN: Geo-Fencing

managed by the network

Page 54: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:

ENDN: Excess traffic offloaded

to central producers

Page 55: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 1

• Geo-Fencing:Delay

Reduction

Page 56: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

• Application-aware congestion avoidance:

Page 57: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

Congested Link

• Application-aware congestion avoidance:

Page 58: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

Congestion

Detection

• Application-aware congestion avoidance:

Page 59: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

• Application-aware congestion avoidance:

Page 60: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

Congestion

Detected

• Application-aware congestion avoidance:

Page 61: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

Network notifies

producer to

reduce bitrate

• Application-aware congestion avoidance:

Page 62: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Experiment 2

Network notifies

producer to

reduce bitrate

Congestion Avoided

• Application-aware congestion avoidance:

Page 63: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Agenda

➢Motivation

➢Proposed Architecture

✓ EProcessing Module

✓ Forwarding Logic Module

➢Proof of Concept Experiments

➢Conclusion and Future Work

Page 64: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

• Contributions:

– A new Enhanced NDN (ENDN) architecture.

– Extensible catalog of network services to applications.

– New delivery patterns with modifications to the PIT and FIB tables.

– Programmability in the NDN data plane using isolated P4 functions.

• Future Work:

– Control Plane: Northbound Interface, Consistency and Scalability.

– Security: Vulnerabilities and Mitigation.

Conclusion and Future Work

Page 65: ENDN: An Enhanced NDN Architecture with a P4-programmable …conferences.sigcomm.org/acm-icn/2020/assets/1-1... · 2020. 9. 23. · Existing Challenges •NDN: –NDN suitable for

Thank you