Scalable Name-Based Packet Forwarding: From Millions to Billions Tian - - PowerPoint PPT Presentation

scalable name based packet forwarding from millions to
SMART_READER_LITE
LIVE PREVIEW

Scalable Name-Based Packet Forwarding: From Millions to Billions Tian - - PowerPoint PPT Presentation

Scalable Name-Based Packet Forwarding: From Millions to Billions Tian Song , songtian@bit.edu.cn, Beijing Institute of Technology Haowei Yuan, Patrick Crowley, Washington University Beichuan Zhang, The University of Arizona 1 A


slide-1
SLIDE 1

Scalable Name-Based Packet Forwarding: From Millions to Billions

Tian Song, songtian@bit.edu.cn, Beijing Institute of Technology Haowei Yuan, Patrick Crowley, Washington University Beichuan Zhang, The University of Arizona

slide-2
SLIDE 2

Millions Billions

FIB Size

A longest-prefix-matching (LPM) algorithm:

Built on binary Patricia trie

Speculative Data Plane:

Providing longest prefix classification (LPC)

A LPC algorithm:

Built on dual Patricia tries

1 2 3

slide-3
SLIDE 3

IP vs. Name-based Forwarding

IP Forwarding Name Forwarding Behavior LPM LPM Prefix IP, less than 4 Bytes unbounded length Scheme 4-byte string / word Hierarchy & flat FIB Size O(105) [~ 500 K] O(108) Performance wire speed wire speed Memory SRAM/TCAM DRAM (mainly)

slide-4
SLIDE 4

Challenges

  • The large FIB with unbounded-length names

requires a large amount of memory, cross the boundary of the range of SRAM/TCAM.

  • i.e. 100 M name prefixes, w/ avg. length 32 B

3.2 GB is required for directly storing prefixes.

DRAM SRAM TCAM 50 ns read latency / access 0.47 ns / access; # access / lookup 2.7 ns / lookup ## GiB <135 MiB <10 MiB

slide-5
SLIDE 5

Challenges

  • A scalable and fast forwarding solution

Millions Billions

FIB Size

Compact data structure for fast memory Scalable friendly data structure for parallel lookups

slide-6
SLIDE 6

Millions Billions

FIB Size

A longest-prefix-matching (LPM) algorithm:

Built on binary Patricia trie

Speculative Data Plane:

Providing longest prefix Classification (LPC)

A LPC algorithm:

Built on dual Patricia Tries

1

slide-7
SLIDE 7

Compact Data Structure

  • Designed for the scenario of a few million prefixes
  • SRAM is considered, which has about 135 MiB
  • Avoid assumptions on naming schemes.
  • Three potential directions:

– Hash table –based solutions – Component-encoding –based solutions – Trie –based solutions

slide-8
SLIDE 8

Patricia Trie

prefix port /a/b /ab/c /ac/d /c/d 1 2 3 4

Patricia Trie

is a sub-string.

slide-9
SLIDE 9

Binary Patricia Trie

prefix port /a/b /ab/c /ac/d /c/d 1 2 3 4

Binary Patricia Trie

slide-10
SLIDE 10

Binary Patricia-based LPM

  • Binary representative is used

instead of components.

  • Prefixes are decoupled into

tokens along the search path.

  • Full binary tree can easily be
  • ptimized in memory layout.

also, Tokenized binary Patricia

slide-11
SLIDE 11

Binary Patricia-based LPM

1 2 1 2

  • Comparison Results

for real sets

~ 3x memory efficiency

slide-12
SLIDE 12

Millions Billions

FIB Size

A longest-prefix-matching (LPM) algorithm:

Built on binary Patricia trie

Speculative Data Plane:

Providing longest prefix Classification (LPC)

A LPC algorithm:

Built on dual Patricia Tries

2

slide-13
SLIDE 13

Tokenized Binary Patricia

  • Memory Composition

Trie: information differences Token: prefix-specific verification Memory = Trie Memory + Token Memory

slide-14
SLIDE 14

Tokenized Binary Patricia

1 2 3 4 5 1 2 3 4 5

  • Results

1 M to 1 G URL names

Tokens contribute more to memory in terms of scalability.

slide-15
SLIDE 15

Longest Prefix Classification

Longest Prefix Matching Longest Prefix Classification

discrimination bit positions tokens

LPM = LPC + Verification

slide-16
SLIDE 16

Speculative Forwarding

Question: How to make name-based packet be correctly forwarded by using LPC? Solution: Speculative forwarding is presented, which is defined as a forwarding policy that relays packets by LPC instead of LPM.

slide-17
SLIDE 17

Forwarding Behaviors

LPC drops no packets, so no default path exists.

slide-18
SLIDE 18

Speculative Data Plane

name-based packets known-prefix names unknown-prefix names

slide-19
SLIDE 19

Speculative Data Plane

  • Loop Handling for unknown-prefixes:

– NDN: stateful data plane, loop free in nature – Restricted TTL in speculative forwarding – Quick feedback (NACK) to remove in-path overhead – Other approaches can be applied…

  • Practicability

– DFZ routers are performance-critical. LPC helps. – Edge routers are function variety. LPM guarantees.

slide-20
SLIDE 20

Millions Billions

FIB Size

A longest-prefix-matching (LPM) algorithm:

Built on binary Patricia trie

Speculative Data Plane:

Providing longest prefix Classification (LPC)

A LPC algorithm:

Built on dual Patricia Tries

3

slide-21
SLIDE 21

Speculative Binary Patricia

prefix port /a/b /ab/c /ac/d /c/d 1 2 3 4

Speculative Patricia = Tokenized Patricia - Tokens

Speculative Patricia only supports classification instead of LPC. For proper prefixes, speculative Patricia cannot distinguish them. i.e. /a/b is the proper prefix of /a/b/c.

slide-22
SLIDE 22

Dual Binary Patricia

Dual Patricia (DuBP)

Tokenized Patricia Speculative Patricia

Dual Patricia supports longest prefix classification.

slide-23
SLIDE 23

Dual Binary Patricia

1 2 3 4 5 1 2 3 4 5

  • Results

1 M to 1 G URL names

Dual Patricia is scale mainly to the size of FIB.

slide-24
SLIDE 24

Dual Binary Patricia

  • Results

from LPM to LPC

~ 2.6x memory efficiency

slide-25
SLIDE 25

Discussions

  • Scalability from millions to billions

Average Depth in Patricia Given : 1 M to 100 G FIB Size 3.4 more depths for 10x size

Patricia trie scales humbly in its depth.

slide-26
SLIDE 26

Discussions

  • Trie lookup speed: also related to trie depths

A load-balancing hash with hundreds of buckets can reduce depth to 10 to 15. Therefore, SRAM / DRAM can be well optimized.

slide-27
SLIDE 27

Millions Billions

FIB Size

A longest-prefix-matching (LPM) algorithm:

Built on binary Patricia trie

Speculative Data Plane:

Providing longest prefix Classification (LPC)

A LPC algorithm:

Built on dual Patricia Tries

1 2 3

Summary

~ 3x memory efficiency than other solutions for SRAM and DRAM Novel data plane for fast forwarding 2.6x memory efficiency than 142 MSPS on SRAM (284 Gbps) 20 MSPS on DRAM (62 Gbps)

1

slide-28
SLIDE 28

Q & A!

28