Network Names in Content-Centric Networking ACM ICN 2016 1 CCN - - PDF document

network names in content centric networking
SMART_READER_LITE
LIVE PREVIEW

Network Names in Content-Centric Networking ACM ICN 2016 1 CCN - - PDF document

9/27/16 Network Names in Content-Centric Networking ACM ICN 2016 1 CCN Names Expressed as URIs /a/b/foo /us/edu/uci/cs/tsudik/papers/acm-icn16.pdf Encoded as TLVs 1 2 3 0 1 2 3 4 5 6 7 8 9


slide-1
SLIDE 1

9/27/16 1

Network Names in Content-Centric Networking

ACM ICN 2016 1

CCN Names

  • Expressed as URIs

– /a/b/foo – /us/edu/uci/cs/tsudik/papers/acm-icn16.pdf

  • Encoded as TLVs

ACM ICN 2016 2

1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +---------------+---------------+---------------+---------------+ | T_NAME | Length | +---------------+---------------+---------------+---------------+ / Name segment TLVs / +---------------+---------------+---------------+---------------+

slide-2
SLIDE 2

9/27/16 2

Names in CCN Applications

ACM ICN 2016 3

Consumer Producer /a/b Network Request /a/b/foo Publish+Serve /a/b/foo Serve /a/b/foo

  • r forward request

Router

Names in the Network

ACM ICN 2016 4

ROUTER

CS PIT FIB

(1) Exact name in CS? (2) Exact name in PIT? (3) Prefix in FIB?

slide-3
SLIDE 3

9/27/16 3

Dual Roles for Names

  • Applications use names to meaningfully express and

identify content

– Human readability is nice!

  • Network entities (routers) use names as sequences
  • f binary strings

– A router doesn’t care about readability or arbitrarily long components

Q: Why is the same representation used at both layers & in both contexts?

ACM ICN 2016 5

Outline

  • CCN Network Names
  • Name Translation and Its Implications
  • Translation Analysis
  • Related & Future Work

ACM ICN 2016 6

slide-4
SLIDE 4

9/27/16 4

CCN Network Names

Goal: translate application names into a format that:

  • Facilitates standard

network processing (exact match and LPM searches)

  • Removes arbitrarily long

names from the network

  • Removes all location-

irrelevant information from the name (as seen by routers)

ACM ICN 2016 7

be a bijec&on or very close to one map arbitrarily long strings to fixed-length output

  • nly apply to loca&on-

specific parts of a name.

Translation should:

Cryptographic Hash Func&on?

Name Translation Example

ACM ICN 2016 8

T

/a/b/foo/version=0x00/chunk=0x01/PID=0x02 payload: <bar>

/H(a)/H(a,b)/H(a,b,foo)/version=0x00/chunk=0x01/PID=0x02/NP=0xFF payload: <bar>

NP=H’(/a/b/foo/version=0x00/chunk=0x01/PID=0x02)

T_NAME locator components possibly contained in FIBs ApplicaTon-specific components not Contained in FIBs Unique Name Fingerprint

slide-5
SLIDE 5

9/27/16 5

Name Encoding

ACM ICN 2016 9

1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +---------------+---------------+---------------+---------------+ | T_NAME | Length | +---------------+---------------+---------------+---------------+ | T_MAPPED_SHA256/32 | Length | +---------------+---------------+---------------+---------------+ | H(a), H(a, b), H(a, b, foo) | +---------------+---------------+---------------+---------------+ | T_NP | 32 (silly example) | +---------------+---------------+---------------+---------------+ / < name fingerprint = 0xFF > / +---------------+---------------+---------------+---------------+ | T_VERSION | 0x01 | +---------------+---------------+---------------+---------------+ | 0x00 | T_CHUNK | +---------------+---------------+---------------+---------------+ | 0x01 | 0x01 | +---------------+---------------+---------------+---------------+ | T_PID | 0x01 | +---------------+---------------+---------------+---------------+ | 0x02 | +---------------+---------------+

Compressed Unmodified

Application Processing

  • Consumer:

– Maps application names to network names for outgoing interests – Inverts mapping for incoming content

  • Producer:

– Pre-computes network names for all its locator prefixes

  • Stores in “inversion table”

– Looks up content corresponding to incoming interests based

  • n this inversion table

– Signed content objects contain Np

  • might also carry app name

ACM ICN 2016 10

slide-6
SLIDE 6

9/27/16 6

Current Network Processing

ACM ICN 2016 11

hdr name (optional fields) Interest pkt (1) decode_pkt (2) decode_name (3) compute_hash x n (4) HT_lookup x (2+n)

CS PIT FIB FIB FIB

We obviate the need to hash in order to perform: FIB, CS and PIT lookups

Processing Summary

En&ty: Impact:

Consumer Increased online processing Producer Increased offline computaTon & storage of inversion table Router Faster FIB lookup with pre-computed name-prefix hashes Faster PIT and CS lookups with NP (Poten&al) benefits due to fixed-size NP

ACM ICN 2016 12

slide-7
SLIDE 7

9/27/16 7

Analysis Setup

Questions:

  • How big should a hash digest be?

– What is the impact on packet sizes? – What are the resulting collision properties?

  • What’s consumer processing overhead?

Unibas URI data set: http://www.icn-names.net/

ACM ICN 2016 13

Name Properties

ACM ICN 2016 14

slide-8
SLIDE 8

9/27/16 8

Name Properties

ACM ICN 2016 15

Name Size Impact (for interests)

ACM ICN 2016 16

RaTo of “network name” to “standard name” as size of T()/H() grows

slide-9
SLIDE 9

9/27/16 9

Np Size Overhead (for Content)

ACM ICN 2016 17

Collision Assessment (32-bit hash)

ACM ICN 2016 18

slide-10
SLIDE 10

9/27/16 10

Processing Overhead (consumer)

Per-name costs (µs):

  • Average: 1,029.279 (≈1ms)
  • Minimum: 3.812
  • Maximum: 2,474.567

à Reasonable compared to network I/O Throughput (c/b):

  • Average: 1,577.688
  • Minimum: 1,218.037
  • Maximum: 3,494.538

ACM ICN 2016 19

Experimental seOng:

  • Intel 2.8 GHz Core i7
  • Un-opTmized implementaTon

based on PARC Libparc libraries Ideal seOng:

  • Use Intel intrinsics for hashing

(~9 c/b)

  • Work on wire-encoded packets

Wrap-up

  • Motivated separating CCN application and

network names

  • A concrete mechanism for name translation

function

  • Assessed quality of name translation function

and performance implications for all CCN entities

ACM ICN 2016 20

slide-11
SLIDE 11

9/27/16 11

Related Work*

q CCN names

q Requirements [Ghodsi et al., ICN’11] q Location-agnostic names [Van Adrichem et al., Nomen’13]

q Focus on FIB algorithm improvements

q FIB algorithm modifications based on tries, hash tables, Bloom Filters, etc. [Quan et al., Networking’13], [Perino et al., ANCS’14], [So et al., ANCS’13], [Fukushima et al., Nomen’13] q Several rely on lexicographical name ordering

q Our scheme breaks this!

q Hop-by-hop optimizations, e.g., passing length of previously matched name in FIB

… but not on FIB inputs

ACM ICN 2016 21

*See paper for references

Future Work

  • Compare performance of current FIB

techniques with and without network names

  • Play with various hash functions & sizes
  • Explore further uses for translation

function T()

ACM ICN 2016 22

slide-12
SLIDE 12

9/27/16 12

23 ACM ICN 2016

/this/is/the/end/version=0x00/chunk=0x01/PID=0x02