RICE: Remote Method Invocation in ICN Micha Krl, Karim Habak, David - - PowerPoint PPT Presentation

rice remote method invocation in icn
SMART_READER_LITE
LIVE PREVIEW

RICE: Remote Method Invocation in ICN Micha Krl, Karim Habak, David - - PowerPoint PPT Presentation

RICE: Remote Method Invocation in ICN Micha Krl, Karim Habak, David Oran, Dirk Kutscher, Ioannis Psaras Its NOT about RPC, CORBA, Java RMI Tightly-coupled system from (not so) long time ago 2 Static data retrieval Give me data


slide-1
SLIDE 1

RICE: Remote Method Invocation in ICN

Michał Król, Karim Habak, David Oran, Dirk Kutscher, Ioannis Psaras

slide-2
SLIDE 2

2

It’s NOT about

  • RPC, CORBA, Java RMI
  • Tightly-coupled system from (not so)

long time ago

slide-3
SLIDE 3
slide-4
SLIDE 4

4 Give me data

Static data retrieval

slide-5
SLIDE 5

5 Compute this for me c

In-network computation

slide-6
SLIDE 6

6

In-network computation

  • Multiple use-cases

– edge/fog computing, IoT, VR/AR

  • Multiple existing frameworks: NFN,

NFaaS, CCNxServe, SCN, NextServe

  • Migrate functions where they’re

needed the most

  • Populate FIB tables with routes to

services

slide-7
SLIDE 7

7 No need for a DNS/SDN server

Anycast

slide-8
SLIDE 8

8

Load control

slide-9
SLIDE 9

9 c c

Result caching

slide-10
SLIDE 10

10

Issues

slide-11
SLIDE 11

11

Client Authorization

slide-12
SLIDE 12

12

Large Parameter Passing

slide-13
SLIDE 13

13

Accommodating non-trivial computations

PIT expires

slide-14
SLIDE 14

14

Accommodating non-trivial computations

slide-15
SLIDE 15

15

RICE Design

slide-16
SLIDE 16

16

Design Goals

  • Consumer authentication and authorization
  • Large parameter passing
  • Accommodating non-trivial computations
  • Allow result caching
  • Adhere to ICN principles

– Pull model – Avoid revealing permanent client identifers – Support client mobility

  • Make minimal changes to ICN protocols and

forwarder behaviour

slide-17
SLIDE 17
slide-18
SLIDE 18

Naming

slide-19
SLIDE 19

19

4-way Handshake

  • Enable 2-way communication between

producers and consumers

  • Shared Secret Derivation
  • Client Authentication
  • Large Input Parameters Submission
slide-20
SLIDE 20

4-way Handshake

slide-21
SLIDE 21

21

Dynamic Content Retrieval

slide-22
SLIDE 22

22

Network and Application Timescale

  • PIT entries use timeouts
  • When requesting static content

Interest Satisfaction Time equals RTT

  • Generating dynamic content adds a

delay that is unknown to the network

  • PIT entries can expiry before

returning the results

slide-23
SLIDE 23

Network Timescale Application Timescale

  • Fast recovery
  • No assumption on

execution time

  • Huge overhead
  • Challenging

bandwidth allocation

  • Low overhead
  • Regular Bandwidth

allocation

  • Slow Recovery
  • Requires a lot of

knowledge

We want to decouple application timescale from network timescale

slide-24
SLIDE 24

Thunks

slide-25
SLIDE 25

Network Timescale

slide-26
SLIDE 26

Application Timescale

slide-27
SLIDE 27

Acknowledgements

slide-28
SLIDE 28

29

Results

slide-29
SLIDE 29

30

Handshake

slide-30
SLIDE 30

31

Thunks

slide-31
SLIDE 31

32

Thunks

slide-32
SLIDE 32

33

Referentially opaque function

slide-33
SLIDE 33

34

Referentially transparent function

slide-34
SLIDE 34

Thunks

slide-35
SLIDE 35

36

Prototype

slide-36
SLIDE 36

37

Limitations

  • Thunks require accurate computation

time estimation

– Overestimation increases the delay – Underestimation increases overhead

  • Referentially transparent functions

can be cached under diferent names

– Can be solved by using forwarding hints

slide-37
SLIDE 37

38

Conclusion and Future Work

  • Client authentication, large parameter

passing, accommodating non-trivial computation using a 4-way handshake + thunks

  • Generic API for function invocation
  • RICE can be a basis for many NFN-

inspired systems.

  • Prototype and demo
slide-38
SLIDE 38

39

In the future

  • Integration with routing hints and NACKs
  • Implement highly-scalable server
  • Developing higher-layer abstractions on

top of RICE.

– pushing data (for custodial transfer, re-publishing,

storing)

– support for more pervasive in-network computing – rethinking and re-engineering existing

applications, especially web

slide-39
SLIDE 39

40

Thank you