A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik...

15
A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology

Transcript of A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik...

Page 1: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet

Andrej Brodnik

Andreas Nilsson

CSEE Luleå University of Technology

Page 2: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Introduction• Differentiated services

• Quality of service (QoS)

• Bandwidth brokers

Page 3: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Bandwidth brokers• Manages the bandwidth reservations on one

link

N etw o rk 1 N e tw o rk 2

B an d w id th b ro k e r

Page 4: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Interaction between bandwidth brokers

• Usually the route between two computers consists of several links

• Entire route has to be reserved

B an d w id th b ro k e r

N e tw o rk 4

B an d w id th b ro k e r

N e tw o rk 3

B an d w id th b ro k e r

N e tw o rk 1 N e tw o rk 2

B an d w id th b ro k e r

N e tw o rk 5

Page 5: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Definitions

• A reservation R is a time interval during which constant amount of bandwidth B is allocated throughout the entire interval I

• In the data structure D we use slotted time, that is fixed granularity g to gain aggregation

• Bounded universe, maximum interval size |M| has the interval of the root M

Page 6: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Operations

• Insert(D,R) increases the reserved bandwidth during the interval I for B

• Delete(D,R) decreases the reserved bandwidth during the interval I for B

• MaxReserved(D,I) returns the maximum reserved bandwidth during the interval I

Page 7: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Advanced Segment Tree (AST)

• Modified segment tree• The tree is static, i.e. it is

– only built once, and in advance, no nodes are added or deleted and therefore the tree is always perfectly balanced

• All nodes on a level l – have the same number of children– represents a time interval– cover intervals of the same size– have intervals that mutually don't intersect– have intervals which’s union is M– have an interval that is contained within one interval on

level l’, where l’<l

Page 8: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Nodes in the AST

• Each node n– has a pointer to each child– has a value nv – the amount of bandwidth

reserved exactly the interval covered by n– has a value mv – the maximum amount of

bandwidth reserved on the interval covered by n

Page 9: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Tim e

n o d e v a lu e = 0m ax v a lu e = = 2 2 0m a x(0 + 3 0 ,2 0 + 2 0 0 )

n o d e v a lu e = 6 0m ax v a lu e = 9 0

9 00

00

00

00

00

3 00

2 0 00

n o d e v a lu e = 0m ax v a lu e = 3 0

n o d e v a lu e = 2 0m ax v a lu e = 2 0 0

n o d e v a lu e = 1 0m ax v a lu e = = 2 5 0m a x(5 0 + 2 0 0 ,0 + 2 2 0 )

n o d e v a lu e = 5 0m ax v a lu e = = 2 0 0m a x(6 0 + 9 0 ,1 2 0 + 8 0 )

n o d e v a lu e = 1 2 0m ax v a lu e = 8 0

8 00

Nodes and their values

Page 10: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Insert(D,R)

nOspace

nOtime

log

5 0RB =

Tim e

n v = 1 0m v = = 3 0 0m a x(1 00 + 2 0 0 ,0 + 2 2 0 )

n v = 5 0 +m v = = 2 0 0

50m a x(6 0+ 90 ,1 2 0 + 8 0 )

n v = 0m v = = 2 2 0m a x(5 0+ 30 ,2 0 + 2 0 0 )

n v = 6 0m v = 9 0

n v = 1 2 0m v = 8 0

n v = 9 0m v = 0

0 +0

5000

00

00

3 00

2 0 00

8 00

n v = 0 +m v = 3 0

50 n v = 2 0m v = 2 0 0

Page 11: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

MaxReserved(D,I)

QI

nOspace

nOtime

log

QI

Tim e

n v = 1 0m v = 3 0 0

n v = 1 0 0m v = 2 0 0

n v = 0m v = 8 0

n v = 6 0m v = 9 0

t0

t1

t2

t3

t 4 t5 t6 8t

M ax R ese rv ed = 0 + M ax R ese rv ed (t ,t ))= 0 + 8 0 = 8 0

M ax R ese rv ed = 5 0 + (3 0 + 0 )= 8 0

M ax R ese rv ed = 1 0 + m ax (1 0 0 + 2 0 0 , M ax R ese rv ed (t ,t ))= 1 0 + m ax (3 0 0 ,8 0 )= 1 0 + 3 0 0 = 3 1 054

54

t7

n v = 1 2 0m v = 8 0

n v = 9 0m v = 0

5 00

00

00

00

3 00

2 0 00

8 00

n v = 2 0m v = 2 0 0

n v = 5 0m v = 3 0

Page 12: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Implicit data structure

LlX

ll

j

j

ii

l 11

11

2

1

1

3 l

L

l+1

1

x

x

l

nOspace

nOtime

log

Page 13: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Implicit data structuren v = 1 0m v = 2 5 0

n v = 5 0m v = 2 0 0

n v = 0m v = 2 2 0

n v = 6 0m v = 9 0

n v = 1 2 0m v = 8 0

n v = 0m v = 3 0

n v = 2 0m v = 2 0 0

n v = 9 0m v = 0

n v = 0m v = 0

n v = 8 0m v = 0

n v = 0m v = 0

n v = 3 0m v = 0

n v = 0m v = 0

n v = 0m v = 0

n v = 2 0m v = 2 0 0

n v = 0m v = 0

n v = 0m v = 0

n v = 2 0m v = 2 0 0

n v = 1 0m v = 2 5 0

n v = 5 0m v = 2 0 0

n v = 0m v = 2 2 0

n v = 6 0m v = 9 0

n v = 1 2 0m v = 8 0

n v = 0m v = 3 0

n v = 2 0m v = 2 0 0

n v = 9 0m v = 0

n v = 0m v = 0

n v = 8 0m v = 0

n v = 0m v = 0

n v = 3 0m v = 0

Page 14: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Conclusions

• Easily implemented as an implicit data structure

• AST is generic solution• Worst case time complexity for all

operations is O(log n) (where n is the number of leaves)

• The solution is used in the real world

Page 15: A Static Data Structure for Discrete Advance Bandwidth Reservations on the Internet Andrej Brodnik Andreas Nilsson CSEE Luleå University of Technology.

Time for questions

[email protected]@sm.luth.se

http://www.sm.luth.se/~andreas/publications/

Thank you