rebook: a network resource booking algorithm draft-montessoro-rebook-00 pier luca montessoro,...

24
REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini [email protected], [email protected] Multimedia Networking and Applications lab DIEGM - University of Udine, Italy ICNRG Meeting @ IETF-84, August 1st, 2012

Upload: violet-newton

Post on 16-Dec-2015

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

REBOOK: a Network Resource Booking Algorithmdraft-montessoro-rebook-00

Pier Luca Montessoro, Riccardo [email protected], [email protected]

Multimedia Networking and Applications labDIEGM - University of Udine, Italy

ICNRG Meeting @ IETF-84, August 1st, 2012

Page 2: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

The research groupThe research group (a multidisciplinary approach)(a multidisciplinary approach)

Pier Luca Montessoro, coordinator, full professor in Pier Luca Montessoro, coordinator, full professor in computer science (networking and software computer science (networking and software development)development)

Franco Blanchini, full professor in controls (distributed Franco Blanchini, full professor in controls (distributed control functions)control functions)

Mirko Loghi, assistant professor in computer science Mirko Loghi, assistant professor in computer science (networking, hardware and software development)(networking, hardware and software development)

Riccardo Bernardini, assistant professor in Riccardo Bernardini, assistant professor in telecommunications (multimedia encoding and telecommunications (multimedia encoding and networking)networking)

Daniele Casagrande, assistant professor in controls Daniele Casagrande, assistant professor in controls (distributed control functions)(distributed control functions)

Stefan Wieser, research assistant in computer science Stefan Wieser, research assistant in computer science (networking and software development)(networking and software development)

Page 3: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

REBOOKREBOOK Deterministic, dynamic and scalable resource reservation to Deterministic, dynamic and scalable resource reservation to

guaranteeguarantee maximum delivery time for generic NDOsmaximum delivery time for generic NDOs adequate transport performance for multimedia streaming servicesadequate transport performance for multimedia streaming services

REBOOKREBOOK IS NOTIS NOT another reservation protocol another reservation protocol ISIS a distributed algorithm for efficient status information handling within a distributed algorithm for efficient status information handling within

intermediate nodesintermediate nodes provides an open framework for congestion avoidance/control, fast provides an open framework for congestion avoidance/control, fast

packet forwarding and other featurespacket forwarding and other features can be applied to existing or new protocolscan be applied to existing or new protocols provides interaction and feedbacks between the network and the provides interaction and feedbacks between the network and the

hosts/applicationshosts/applications provides circuit performance for packet forwarding, for freeprovides circuit performance for packet forwarding, for free High degree of flexibility (IPv4, IPv6, multicast)High degree of flexibility (IPv4, IPv6, multicast)

We are looking for feedbacks and possible applicationsWe are looking for feedbacks and possible applications

Page 4: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

REBOOK and ICNREBOOK and ICN REBOOK: new paradigmREBOOK: new paradigm

routers, senders and receivers cooperate and handle per-flow state routers, senders and receivers cooperate and handle per-flow state informationinformation

ICN: new architectureICN: new architecture routers, senders and receivers are mergedrouters, senders and receivers are merged

cooperation becomes naturalcooperation becomes natural they can trust each otherthey can trust each other

could REBOOK be useful to improve the transport services for ICN could REBOOK be useful to improve the transport services for ICN based on packet switching?based on packet switching?

DeploymentDeployment REBOOK is designed for incremental deploymentREBOOK is designed for incremental deployment it works even along partially rebook-aware routesit works even along partially rebook-aware routes we guess ICN represents an ideal environment for its implementation we guess ICN represents an ideal environment for its implementation

and deploymentand deployment

Page 5: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

The QuestionThe Question

Is it still true with today’s technology?Is it still true with today’s technology?

““Packet switching is a scalable technique Packet switching is a scalable technique because it does not keep information for because it does not keep information for each connection (flow) traversing a node.each connection (flow) traversing a node.

Stateful approaches are not.”Stateful approaches are not.”

Page 6: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

A tale of space and time…A tale of space and time…

Available memoryAvailable memory

Computation timeComputation time

Page 7: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

SpaceSpace

In 4 GB of memory:In 4 GB of memory:

~86 millions of flow information~86 millions of flow information@ 50 bytes per flow@ 50 bytes per flow

86 millions of flows means:86 millions of flows means:

~688 Gbps @ 8 kbps per flow~688 Gbps @ 8 kbps per flow

~33 Tbps @ 384 kbps per flow~33 Tbps @ 384 kbps per flow

Not an issue for the control plane Not an issue for the control plane of ICN nodes routing modules of ICN nodes routing modules

Page 8: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Time: here comes REBOOKTime: here comes REBOOK

The enabling algorithm: The enabling algorithm: DLDS (Distributed Linked Data Structure)DLDS (Distributed Linked Data Structure)

During setupDuring setup store resource reservation information in routersstore resource reservation information in routers

ANDAND keep track of pointerskeep track of pointers (memory addresses or indexes (memory addresses or indexes

in tables) along the pathin tables) along the path

AfterwardsAfterwards use the pointers to access status information use the pointers to access status information without without

searchingsearching

Page 9: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Routing

Cache

NetInf

Application

Resource reservationResource reservationand pointers collectionand pointers collection

N1 (sender)

N4 (receiver)

Resource reservation message

4

Resource reservation message

4 2

Resource reservation ACK message

4 2

Resource Reservation Table

1

2

3

4

5

6

2 Mb/s

req=2, res=2

req=2, res=1

Resource Reservation Table

1

2

3

4

5

6

1 Mb/s

req=2, res=1

Routing

Cache

NetInf Routing

Cache

NetInf

Application

Routing

Cache

NetInf

N2

N3

Page 10: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Routing

Cache

NetInf

Application

Resource reservationResource reservationand pointers collectionand pointers collection

Routing

Cache

NetInf Routing

Cache

NetInf

Application

Routing

Cache

NetInfN1 (sender)

N4 (receiver)

N2

N3

Resource Reservation Table

Reservation Info

Local Index

Next Index

Forwarding Table

Destination Output Port

Data Packet

Rr index IP dest

Page 11: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

A few problemsA few problems

route changes, disappearing flows, end nodes or route changes, disappearing flows, end nodes or routers faultsrouters faults high speed consistency checkhigh speed consistency check highly efficient, low priority table cleanup processhighly efficient, low priority table cleanup process

need to dynamically change assigned resource need to dynamically change assigned resource amountsamounts partial releasepartial release distributed control function for optimality and fairnessdistributed control function for optimality and fairness

Page 12: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

DoesDoesit work?it work?

0

50

100

150

200

250

300

0

2

4

6

8

10

12 T1: route change T2: route change

number of booked flowsper sender node

total packet rate per sender

Rtr1 Rtr2 Rtr3 Rtr4 Rtr5 Rtr6 Rtr7

Snd1

Rcv1

Snd7

Rcv7Rcv3 Rcv5

Snd3 Snd5

this link is down between T1 and T2

650 650 650 650 650 650 650

10 UDP “flows”, Rmin=15 Rreq=25

Page 13: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Does it work?Does it work?(cont’d)(cont’d)

receiver 0sender 0

receiver 1sender 1

R0 R2

R1 R3

sender 2 sender 3

receiver 2 receiver 3

0

50

10

0

15

0

20

0

25

0

30 0

R0

0

0.2

0.4

0.6

0.8

1

0 50

10

0

15

0

20

0

25

0

30 0

R1

0

0.2

0.4

0.6

0.8

1

0 50

10

0

15

0

20

0

25

0 30 0

R2

0

0.2

0.4

0.6

0.8

1

0 50

10

0

15

0

20

0

25

0

30 0

R3

0

0.2

0.4

0.6

0.8

1

time

time

time

time

direct access

lookup

direct access

lookup

direct access

lookup

direct access

lookup

optimal and fair!

Page 14: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

“… “… and running code”and running code” Current prototypeCurrent prototype

Extremely lightweight hosting protocolExtremely lightweight hosting protocol Add-on modules for applications and routing enginesAdd-on modules for applications and routing engines C/C++ static or dynamic link libraryC/C++ static or dynamic link library Multi-platform (Linux gcc, Microsoft Visual Studio)Multi-platform (Linux gcc, Microsoft Visual Studio)

Under development:Under development: Embedding in Linux kernelEmbedding in Linux kernel Usage of unassigned IP Option Alert flag valuesUsage of unassigned IP Option Alert flag values

Module Router 30 KB Sender 20 KB Receiver 8 KB

Object code size (gcc compiler, Intel Core 2)Size

Page 15: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

PrototypePrototype

handle REBOOK message

get currently available resourcenotify available resource increasenotify available resource reductionsend rebook message

ROUTER REBOOK ENGINE

reservation requestreservation upgrade requestreservation removal request

handle rebook message

notify reservation ACKnotify reduction ACKnotify resetsend rebook message

handle rebook messagepartial reservation release request

notify reservation eventsend rebook message

SENDER REBOOK ENGINE

RECEIVER REBOOK ENGINE

Page 16: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

PerformancePerformance

Activity configurationsetup (incl. res. reserv.) 10,000 flows 200 ns once per flowsetup (incl. res. reserv.) 10,000,000 flows 250 ns once per flowKeepalive message handling 10,000 flows 100 ns every 5 secondsKeepalive message handling 10,000,000 flows 190 ns every 5 secondsRR table entries release 10,000 flows 25 ns per flowRR table entries release 10,000,000 flows 48 ns per flowRR table cleanup 10,000,000 entries 100 ms every 15 seconds

Activity configurationDLDS forwarding table access 1,000,000 routes 10.57 ns per packetDLDS forwarding table access 100,000,000 routes 10.65 ns per packet

CPU times (DLDS and resource reservation management)CPU time

CPU timeCPU times (direct access forwarding, including consistency check)

Traffic Overhead (relative to a 10-minutes 384 kb/s multimedia flow)0.002 %0.08 %0.6 %

Keepalive messageAlert option, pointer and hop counter in data packets

Distributed linked data structure setup

CPU times have been measured on a 1.6 GHz Intel® Core 2 computer

Page 17: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

PerformancePerformance(access to the forwarding table)(access to the forwarding table)

Reference configurationART-16-8-8 ~50 K routesART ~50 K routesSMART ~50 K routesCPE ~50 K routesBSD Radix ~50 K routesBinary trie 5,000 routesLC-trie 5,000 routesModified LC-trie 5,000 routesPrefix-tree 5,000 routesDTBM 5,000 routes7-FST 5,000 routes2-MPT 5,000 routes

239

13847

191114

131

246

Speedup

(REBOOK-DLDS handling 10,000,000 routes, one flow each)

99

speedup3

4.74.75.3

Page 18: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

DeploymentDeployment

No interaction with (nor change in) the underlying routing protocols is required

Autonomous recovery of errors, faults and route changes If information stored in the DLDS becomes obsolete,

packet handling is reverted to best-effort, lookup-driven forwarding

Packets are never dropped nor misrouted It works even on partially REBOOK/DLDS-unaware paths It works across multiple Autonomous Systems It does not require any agreement between network

managers It can be implemented in an extremely lightweight protocol

Page 19: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Other scenariosOther scenarios

Outside the cloud:Outside the cloud:Overlay NetworkOverlay Network

Page 20: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Other scenarios Other scenarios (cont’d)(cont’d)

Inside the cloud:Inside the cloud:REBOOK/DLDS-REBOOK/DLDS-aware routersaware routers

Page 21: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Other scenarios Other scenarios (cont’d)(cont’d)

REBOOK-aware client

REBOOK-aware server

REBOOK-unaware server

REBOOK-aware proxy server

REBOOK-unaware client

REBOOK-aware proxy server

REBOOK-unaware serverREBOOK-

unaware client

REBOOK-aware traffic-shaping

router

REBOOK-aware traffic-shaping

router

Page 22: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

ReferencesReferences Pier Luca Montessoro, Daniele De Caneva. "REBOOK: a deterministic, robust and scalable Pier Luca Montessoro, Daniele De Caneva. "REBOOK: a deterministic, robust and scalable

resource booking algorithm," DOI 10.1007/s10922-010-9167-8, Journal of Network and resource booking algorithm," DOI 10.1007/s10922-010-9167-8, Journal of Network and Systems Management (Springer), Pp. 1-29 ISSN: 1064-7570 (Print) 1573-7705 (Online) Systems Management (Springer), Pp. 1-29 ISSN: 1064-7570 (Print) 1573-7705 (Online)

Pier Luca Montessoro, "Distributed Linked Data Structures for Efficient Access to Information Pier Luca Montessoro, "Distributed Linked Data Structures for Efficient Access to Information within Routers", Proceedings of IEEE 2010 International Conference on Ultra Modern within Routers", Proceedings of IEEE 2010 International Conference on Ultra Modern Telecommunications, 18-20 October 2010, Moscow (Russia), ISBN 978-1-4244-7286-4Telecommunications, 18-20 October 2010, Moscow (Russia), ISBN 978-1-4244-7286-4

Pier Luca Montessoro, “Efficient Management and Packets Forwarding for Multimedia Pier Luca Montessoro, “Efficient Management and Packets Forwarding for Multimedia Flows,” Journal of Network and Systems Management (Springer), 2012, DOI: Flows,” Journal of Network and Systems Management (Springer), 2012, DOI: 10.1007/s10922-012-9232-610.1007/s10922-012-9232-6

Franco Blanchini, Daniele Casagrande, Pier Luca Montessoro, “A novel algorithm for Franco Blanchini, Daniele Casagrande, Pier Luca Montessoro, “A novel algorithm for dynamic admission control of elastic flows,” Proc. of 50th FITCE congress, Palermo, Italy, dynamic admission control of elastic flows,” Proc. of 50th FITCE congress, Palermo, Italy, August 31th – September 3rd, 2011, pp.110-115, ISBN: 978-1-4577-1208-1, DOI: August 31th – September 3rd, 2011, pp.110-115, ISBN: 978-1-4577-1208-1, DOI: 10.1109/FITCE.2011.613342110.1109/FITCE.2011.6133421

Pier Luca Montessoro, Pier Luca Montessoro, Stefan Wieser, Laszlo Böszörmenyi, Stefan Wieser, Laszlo Böszörmenyi, ““An Efficient and Scalable Data-An Efficient and Scalable Data-Structure for Resource Reservation and Fast Packet Forwarding in Large Scale Multimedia Structure for Resource Reservation and Fast Packet Forwarding in Large Scale Multimedia Overlay Networks,” IEEE CQR 2012, 15-17 May 2012, San Diego, CAOverlay Networks,” IEEE CQR 2012, 15-17 May 2012, San Diego, CA

Pier Luca Pier Luca Montessoro, international patent application on DLDS, UD2010A000178 Montessoro, international patent application on DLDS, UD2010A000178 (29/9/2011), PCT/IB2011/054281 (29/9/2011)(29/9/2011), PCT/IB2011/054281 (29/9/2011)

Page 23: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

In the articles…In the articles…

Distributed control function for fairness and Distributed control function for fairness and optimalityoptimality

DeploymentDeployment SecuritySecurity Fast packet forwardingFast packet forwarding Implementation detailsImplementation details

Page 24: REBOOK: a Network Resource Booking Algorithm draft-montessoro-rebook-00 Pier Luca Montessoro, Riccardo Bernardini montessoro@uniud.it, riccardo.bernardini@uniud.it

Thank you!Thank you!