Named Function Networking Service chaining, big picture, division of - - PowerPoint PPT Presentation

named function networking service chaining big picture
SMART_READER_LITE
LIVE PREVIEW

Named Function Networking Service chaining, big picture, division of - - PowerPoint PPT Presentation

Named Function Networking Service chaining, big picture, division of labor boundaries IRTF ICNRG interim meeting, Boston, Jan 13+14, 2015 Christian Tschudin, University of Basel Named Function Networking Session overview Part I Service


slide-1
SLIDE 1

Named Function Networking Service chaining, big picture, division of labor boundaries

IRTF ICNRG interim meeting, Boston, Jan 13+14, 2015 Christian Tschudin, University of Basel

slide-2
SLIDE 2

Named Function Networking – Session overview

Part I – Service chaining (Dirk Kutscher) Part II – Gentle/general introduction Part III – NFN in one sentence plus * some rants about layers and engines * packet format implications

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (2/21)

slide-3
SLIDE 3

Part I

Service chaining (Dirk Kutscher)

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (3/21)

slide-4
SLIDE 4

Part II

Gentle/general introduction to NFN

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (4/21)

slide-5
SLIDE 5

Named-Data knowledge gap – Network intelligence

network gap location knowledge (URL), replica location (CND), security (https, certificates) replica/version control, "pipe abstraction" "data obj abstraction" network

Raising the semantic level of the network API means: filling the gap

New answers necessary, different answers possible: – redesign transport fabric to handle names – new name-to-FIB mapping – “name space operations” – from publish to exploration, mgmt and removal

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (5/21)

slide-6
SLIDE 6

From Named-Data to Named-Functions

  • Raw data in abundance, but clients want cooked data . . .

for which there are arbitrarily many recipies

  • Examples:

/downScale( /this/video ) /getAverage( /sunShineHours/in/CA, 2014 ) /geoFence( /my/heart/rate, /my/gps/location, 10ft )

  • The goal of Named Function Networking (NFN):

– clients name the desired result, server-agnostically – network is in charge of finding execution places – network optimizes execution graph, caches the results

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (6/21)

slide-7
SLIDE 7

From Name-Lookup to Expression-Reduction

Realm Instances Network Semantics Named Data “classic” ICN, “name resolution” (access to data) key–value store, (= lookup) DNS Named Functions “new” ICN “expression resolution” (access to results) (= processing)

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (7/21)

slide-8
SLIDE 8

How: a) Locate data, fct and exec place, b) Run, c) Collect

REMOTE EVAL beats “download and process locally”: find a server close to the DB! cpu data repo

cpu

repo code byte

interest("/getAvg") result 1 2 3

information centric network

5 4 interest("/getAvg(/big/data)") interest("/big/data")

Network does not execute: NFN only orchestrates the computation by juggling around names and triggering exec, later returning the collected result.

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (8/21)

slide-9
SLIDE 9

“Routing”: Named-Data as a special NFN Case

D = data bits F = byte code, binaries @ = execution site Data Pull f(d) f(d) NDN f(d)

D

d Data + Code Pull Computation Push

D

NFN

F D F D F

Note: execution can, but does not have to be done in-network

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (9/21)

slide-10
SLIDE 10

Results as Names as Programs

“name the result . . . the network recognizes named results” – how?

  • Lambda-expressions: most general approach, probably not your cup of tea

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (10/21)

slide-11
SLIDE 11

Results as Names as Programs

“name the result . . . the network recognizes named results” – how?

  • Lambda-expressions: most general approach, probably not your cup of tea
  • Other ways of expressing results. NFN enables choice:

/iFeelLucky( Hotel Sonesta Boston ) /yahoo( Hotel Sonesta Boston )

  • NFN for network tasks:

NFV /kvsLookup( /DPI( /loadBalance( /name ))) IoT /mapReduce(/sensors(/my/house, temp, 2014), /avg) Mgmt /keepInCS = /mapReduce(/topTenNames(/my/neighbor/CS), /sort)

  • NFN also for CCN/NDN semantics variety:

/rightMostChild( /a/node/name ) /exists( /a/node/name )

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (11/21)

slide-12
SLIDE 12

Results as Names as Programs

The search of the good “expression language” . . .

  • exact match
  • selective match
  • . . .
  • DB query languages
  • Datalog
  • intentional naming
  • Prolog, λ expressions

. . . just started!

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (12/21)

slide-13
SLIDE 13

Part III

NFN in one sentence – and some rants – implications for packet formats, layering

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (13/21)

slide-14
SLIDE 14

Named Functions Networking in one sentence

A purposefully minimal definition:

Named Function Networking is an ICN style where a requests carries at least two names in order to be satisfied.

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (14/21)

slide-15
SLIDE 15

Examples where more than one name is needed

  • Application – compute(/name/of/fct, /name/of/arg)

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (15/21)

slide-16
SLIDE 16

Examples where more than one name is needed

  • Application – compute(/name/of/fct, /name/of/arg)
  • Quantifiers – retrieveAnyOf(/node/prefix, /pattern/star)

– also known as selectors (NDN) – also known as restrictions (CCNx’ ObjHash, KeyID)

  • Validation (based on references to keys = names)

In this “NFN intepretation” of CCN/NDN: Where are the fct names? – sometimes not choosable: functions are “named” in the specs – for “real NFN”: packet fmt to provide hooks for run-time-nameables

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (16/21)

slide-17
SLIDE 17

Rant slide: Stupid networks, redux?

“Extremist rant” on the ICNRG email list: Extreme contexts (high speed networking and the IoT) dominate the forwarding semantics discussion.

“The rise of stupid networks” Isenberg’s meme from 1997 – resurging?

Contrarian view, from CES’2015 slides of Yu-Ting Yu, Qualcom, Mario Gerla et al.:

“ICNs are network architectures allowing the network to be aware of content semantics.”

Concern that “in-network processing” becomes off-topic, is pushed to edge or app

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (17/21)

slide-18
SLIDE 18

A gradual spectrum – complementary

↑ stupid networks ↑ CCN ← “domesticated NFN” → λ calculus ↑ Division of labor, catenet model:

  • High speed or IoT forwarding substrate is a base level, not a base layer:

– envisage nodes with different “semantic height”

  • Catenet model: heterogeneous forwarding domains, routers

– Interest might hit a CS or not – Interest might hit a NFN-enabled node or not, . . .

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (18/21)

slide-19
SLIDE 19

A gradual spectrum – implications for packet fmts

“Role-based architecture” (Braden/ Faber/Handly, Hotnets 2002): provides header space for more than

  • ne “network function”
  • Roles in CCN (would be nice if NDN could add this, too):

Interest name – is for the forwarder, partly the CS Interest payload and opt header space – for the rest of us

  • Not all role parameters are generated at the edge:

– in-network generated hints, routing diversion, name rewriting

  • Organize the Interest payload and/or opt header space

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (19/21)

slide-20
SLIDE 20

A gradual spectrum – implications for “layering”

CCN’s exactCSlookup/PITcheck/LPMfwd is a function, NDN’s LpmCSlookup/PITcheck/LPMfwd is yet another function . . .

NFN NFN

NDN

NFN

NDN NDN

NDN

NFN

  • Once you make these “namable”, NFN becomes the core
  • ICN as assembly of several “engines”:

– name space/expr engine (CCN style, pub/sub, Datalog, λ expr) – forwarder engine, policy engine, charging engine

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (20/21)

slide-21
SLIDE 21

Click to exit

Christian Tschudin, U of Basel IRTF ICNRG, Boston, Jan 14, 2015 (21/21)