The Impact of Storage Capacity on End to end p g p y Delay in - - PowerPoint PPT Presentation

the impact of storage capacity on end to end p g p y
SMART_READER_LITE
LIVE PREVIEW

The Impact of Storage Capacity on End to end p g p y Delay in - - PowerPoint PPT Presentation

The Impact of Storage Capacity on End to end p g p y Delay in Time Varying Networks George Iosifidis and Georgios Smaragdakis Iordanis Koutsopoulos T Labs/TU Berlin, Germany University of Thessaly, Greece Introduction: Motivation


slide-1
SLIDE 1

The Impact of Storage Capacity on End‐to‐end p g p y Delay in Time Varying Networks

George Iosifidis and Georgios Smaragdakis Iordanis Koutsopoulos University of Thessaly, Greece T – Labs/TU Berlin, Germany

slide-2
SLIDE 2

Introduction: Motivation Introduction: Motivation

  • Observation #1: Storage is a cheap and at large scale

available resource: <10 cents/gigabyte

slide-3
SLIDE 3

Observation #1: Cost of Storage Observation #1: Cost of Storage

The cost of the Hard Drive per Gigabyte decreases and now it is l h less than 10 USD cents.

slide-4
SLIDE 4

Introduction: Motivation Introduction: Motivation

  • Observation #1: Storage is a cheap and at large scale

available resource, which means that:

ll bl d h f b l – Small, portable devices can have significant storage capability – Central communication nodes can store enormous amount of data

  • Observation #2: In networks, very often, links capacity varies

with time with time

slide-5
SLIDE 5

Introduction: Motivation Introduction: Motivation

  • Observation #1: Storage is a cheap and at large scale

available resource, which means that:

ll bl d h f b l – Small, portable devices can have significant storage capability – Central communication nodes can store enormous amount of data

  • Observation #2: In networks, very often, links capacity varies

with time: with time:

– Link temporal failures, wireless channel impairments, etc – Price of capacity changes , e.g. links capacity is expensive in the rush hours .

slide-6
SLIDE 6

Introduction: Motivation Introduction: Motivation

  • Observation #1: Storage is a cheap and at large scale

available resource.

  • Observation #2: In networks, very often, links capacity varies

ith ti with time. Gi h b b i k

  • Given the above observations we ask:

– Can we use storage in order to improve the end‐to‐end delay Can we use storage in order to improve the end to end delay in time varying (dynamic) networks?

slide-7
SLIDE 7

Introduction: Motivation Introduction: Motivation

  • Observation #1: Storage is a cheap and at large scale

available resource.

  • Observation #2: In networks, very often, links capacity varies

ith ti with time Gi h b b i k

  • Given the above observations we ask:

– Can we use storage in order to improve the end‐to‐end delay Can we use storage in order to improve the end to end delay in time varying (dynamic) networks?

slide-8
SLIDE 8

Introduction: Motivation Introduction: Motivation

  • Observation #1: Storage is a cheap and at large scale

available resource.

  • Observation #2: In networks, very often, links capacity varies

ith ti with time Gi h b b i k

  • Given the above observations we ask:

– Can we use storage in order to improve the end‐to‐end delay Can we use storage in order to improve the end to end delay in time varying (dynamic) networks?

  • r, equivalently, to increase the amount of conveyed data

, q y, y within a given time interval?

slide-9
SLIDE 9

Introduction: A Simple Example

d d l ( d ) k

Introduction: A Simple Example

  • Consider a 3‐nodes linear (tandem) network:

A B C

  • Slotted Time: n={1, 2, 3, ….., T}, Link Traversal time = 1 slot
  • CAB= (D, D, 1, 1, D, D, 1, 1,…. ), CBC= (D, 1, 1, D, D, 1, 1, D, D, …. )

How many slots are required for the transfer of D packets?

slide-10
SLIDE 10

Introduction: A Simple Example

d d l ( d ) k

Introduction: A Simple Example

  • Consider a 3‐nodes linear (tandem) network:

A B C

  • Slotted Time: n={1, 2, 3, ….., T}, Link Traversal time = 1 slot
  • CAB= (D, D, 1, 1, D, D, 1, 1,…. ), CBC= (D, 1, 1, D, D, 1, 1, D, D, …. )

How many slots are required for the transfer of D packets?

slide-11
SLIDE 11

Introduction: A Simple Example

d d l ( d ) k

Introduction: A Simple Example

  • Consider a 3‐nodes linear (tandem) network:

A B C

  • Slotted Time: n={1, 2, 3, ….., T}, Link Traversal time = 1 slot
  • CAB= (D, D, 1, 1, D, D, 1, 1,…. ), CBC= (D, 1, 1, D, D, 1, 1, D, D, …. )

How many slots are required for the transfer of D packets?

slide-12
SLIDE 12

Introduction: A Simple Example Introduction: A Simple Example

  • How many slots are required for the transfer of D packets?

A B C

Capacity

In each slot node A is able to push only

D

CAB In each slot, node A is able to push only as many packets as node B is capable to forward in the next time slot.

Time

1

CBC The “end‐to‐end” capacity is limited by the lowest link’s capacity:

Time

by the lowest link s capacity:

)} 1 ( ), ( min{ ) ( + = n C n C n C

BC AB AC

Answer : D+1 slots

slide-13
SLIDE 13

Introduction: A Simple Example Introduction: A Simple Example

  • How many slots are required for the transfer of D packets?

A B C

Capacity

In each slot node A is able to push only

D

CAB In each slot, node A is able to push only as many packets as node B is capable to forward in the next time slot.

Time

1

CBC The “end‐to‐end” capacity is limited by the lowest link’s capacity:

Time

by the lowest link s capacity:

)} 1 ( ), ( min{ ) ( + = n C n C n C

BC AB AC

Answer : D+1 slots

slide-14
SLIDE 14

Introduction: A Simple Example Introduction: A Simple Example

  • How many slots are required for the transfer of D packets?

Assume that node B has storage capability of SB > D packets A S B C

Capacity

SB Excess data received from node A is

CAB

D

Excess data received from node A is stored in node B.

Time

CBC

1

Answer : 2 slots

Time

slide-15
SLIDE 15

Introduction: A Simple Example Introduction: A Simple Example

  • How many slots are required for the transfer of D packets?

Assume that node B has storage capability of SB > D units A S B C

Capacity

SB

CAB

D

Excess data received from node A is

Time

CBC

1

Excess data received from node A is stored in node B.

Time

Answer : 2 slots Storage decreases the required transfer time

slide-16
SLIDE 16

Related Work Related Work

  • Delay Tolerant Networks: to alleviate intermittent connectivity

problems.

– S. Jain et. Al, “Routing in a Delay Tolerant Network”, ACM SIGCOMM, 2004

  • S. Jain et. Al, Routing in a Delay Tolerant Network , ACM SIGCOMM, 2004
  • Cost Minimization for Bulk Data Transfer: to minimize the monetary

transfer cost.

– N. Laoutaris, G. Smaragdakis, et. Al. “ Delay Tolerant Bulk Data Transfers on the Internet”, ACM SIGMETRICS, 2009. , ,

  • Theoretical Models where storage is consider as a routing option.

– A. Orda, et. al., “Minimum Delay Routing in Stochastic Networks”, IEEE/ACM ToN, 1993.

slide-17
SLIDE 17

Contributions Contributions

  • These related works:

– Do not focus on the impact of storage on the network performance p g p – The performance metric is not the delay (delay tolerant nets). – Solutions are not distributed.

  • In this paper:

– We study the storage management problem in linear networks – We extend the study in general network graphs – We define and solve the joint storage management and routing problem

slide-18
SLIDE 18

Storage Management for Linear Networks g g

slide-19
SLIDE 19

Impact of Storage Capacity in Linear Networks

  • Q: What is the optimal storage policy and how much we can

benefit from storage?

P li P h k t ibl d t th t

A SB B C

– Policy: Push as many packets as possible and store the rest. – End‐to‐end capacity in each slot, without storage: E d t d it i h l t ith t

)} 1 ( ), ( min{ ) ( + = n C n C n C

BC AB AC

– End‐to‐end capacity in each slot, with storage:

)} 1 ( ), 1 ( min{ ) ( + + = n X n C n C

B BC S AC

slide-20
SLIDE 20

Impact of Storage Capacity in Linear Networks

  • Q: What is the storage policy and how much we can benefit

from storage?

P li P h k t ibl d t th t

A SB B C

– Policy: Push as many packets as possible and store the rest. – End‐to‐end capacity in each slot, without storage: E d t d it i h l t ith t

)} 1 ( ), ( min{ ) ( + = n C n C n C

BC AB AC

– End‐to‐end capacity in each slot, with storage:

)} 1 ( ), 1 ( min{ ) ( + + = n X n C n C

B BC S AC

The available data at the last node before the last node before the destination

slide-21
SLIDE 21

Impact of Storage Capacity in Linear Networks

  • Conclusion: The actual delay reduction or throughput increase,

depends on the relative variation pattern of the links capacities.

– We define the Dissimilarity Index L to quantify this variation – We define the Dissimilarity Index L to quantify this variation.

CAB

Capacity

CAB

Capacity

CAB CBC CAB CBC

Time

> L = L

Time

slide-22
SLIDE 22

Impact of Storage Capacity in Linear Networks

  • Conclusion: The actual delay reduction or throughput increase,

depends on the relative variation pattern of the links capacities.

– We define the Dissimilarity Index L to quantify this variation – We define the Dissimilarity Index L to quantify this variation.

Storage is useless when L=0. That is, when:

– Both links capacities do not change, or they change following the same pattern.

Th li k iti h b t th d li k i l th – The links capacities change but the second link is always the bottleneck.

slide-23
SLIDE 23

Storage Management Policy for General Network g g y Graphs

slide-24
SLIDE 24

Storage Management Policy for General Networks

  • Optimal Storage Management Policy: In which nodes, when and

how much to store.

  • Performance upper bound of a network: Capacity of the Min‐Cut
  • Performance upper bound of a network: Capacity of the Min‐Cut

C(Qmin)

– E.g. Transferred amount in T slots: TxC(Qmin)

Min Cut: Qmin=[W, N\W]

  • Observation #3: For many networks, it is possible to know or predict

the future values of their links capacities.

slide-25
SLIDE 25

Storage Management Policy for General Networks

  • Time‐Expanded Graphs: Incorporate the notion of time in the

network graph

Initial Graph G Expanded Graph GT for T=7 slots

Expansion:

‐ For every node in G we add T nodes ‐ For every arc (i j) in G we add T‐1 links (i(t) j(t+1)) For every arc (i,j) in G we add T 1 links (i , j )

slide-26
SLIDE 26

Storage Management Policy for General Networks

  • Time‐Expanded Graphs: Incorporate the notion of time in the

network graph

Initial Graph G Expanded Graph GT for T=7 slots Minimum Cut of the GT : C(QT) is the maximum amount of data that can be conveyed from source to destination in T slots Min Cut: Q=[WT, N\WT]

slide-27
SLIDE 27

Storage Management Policy for General Networks

  • Goal: Increase the min cut by adding links of special type storage

links

Min Cut: Q=[WT, N\WT]

slide-28
SLIDE 28

Storage Management Policy for General Networks

  • Goal: Increase the min cut by adding links of special type storage

links

Min Cut: Q=[WT, N\WT] Observation: If the time instance (t) of a node belongs to the set WT and the time instance (t+1) belongs to the set N\WT, then we can add a link to connect these 2 nodes.

slide-29
SLIDE 29

Storage Management Policy for General Networks

  • Goal: Increase the min cut by adding links of special type storage

links

Min Cut: Q=[WT, N\WT] Observation: If the time instance (t) of a node belongs to the set W and the time instance (t+1) belongs to the set N\W, then we can add a link to connect these 2 nodes

slide-30
SLIDE 30

Storage Management Policy for General Networks

  • Goal: Increase the min cut by adding links of special type storage

links

We add a storage link of Sc3 units

C3 C4 Sc

Observation: If the time instance (t) of a node belongs to the set W and the time instance (t+1) belongs to the set N\W, then we can add a link to connect these 2 nodes

slide-31
SLIDE 31

Storage Management Policy for General Networks

  • Algorithm 1: Storage Management Policy – Iteratively Increasing the

Min Cut

New Min Cut Q2=Q+Sc3 Q2=Q+Sc3

slide-32
SLIDE 32

Storage Management Policy for General Networks

  • Algorithm 1: Storage Management Policy – Iteratively Increasing the

Min Cut

We add a storage link of Sc4 units Storage link C4 ‐ C5

slide-33
SLIDE 33

Storage Management Policy for General Networks

  • Algorithm 1: Storage Management Policy – Iteratively Increasing the

Min Cut

New Min Cut Q3=Q+Sc3 +Sc4 Q3=Q+Sc3 +Sc4

slide-34
SLIDE 34

Storage Management Policy for General Networks

  • Algorithm 1: Storage Management Policy – Iteratively Increasing the

Min Cut

We add a storage link of SD3 units

slide-35
SLIDE 35

Storage Management Policy for General Networks

  • Algorithm 1: Storage Management Policy – Iteratively Increasing the

Min Cut

Final Storage Enhanced Min Cut Q Q S S S QF=Q+Sc3 +Sc4 + SD3

slide-36
SLIDE 36

Joint Storage Management and Routing Policy g g g y

slide-37
SLIDE 37

Joint Storage and Routing Policy Joint Storage and Routing Policy

  • Joint Storage Managment and Routing Problem:

g g g

– Given a dynamic network G=(V,E) with a single source and a single destination, and with nodes that have time varying storage capacity, find how much data should be stored in each node and how much data should be routed over each s ou d be sto ed eac

  • de a d
  • uc

data s ou d be outed o e eac link, in every time slot, in order to maximize the amount of transferred data within a certain time period of T slots. Red arrows: Storage Links Black arrows: Communication Links Black arrows: Communication Links Green arrow: Artificial feedback Link ‐ Xds is the flow that reaches the Xds is the flow that reaches the destination node {s} during the T slots

slide-38
SLIDE 38

Joint Storage and Routing Policy Joint Storage and Routing Policy

  • Joint Storage and Routing Problem

– Max Flow Problem in the Time – Expanded Graph

} min{ x } min{

ds

x − . .t s

∑ ∑

∈ ∈

∈ + = +

i i

F j B j T mi ji in ij

V i y x y x ,

i i

j j i T ij ij

F j V i C x ∈ ∈ ≤ ≤ , ,

) 1 ( +

≤ ≤

t

i n V i S y

) 1 (

, ,

+

= ∈ ≤ ≤

t T in in

i n V i S y ‐ { Fi } is the set of downstream communication neighbors of node {i}

‐ { Bi } is the set of upstream communication neighbors of node {i} ‐ { Bi } is the set of upstream communication neighbors of node {i} ‐ { Cij } is the capacity of the communication links ‐ { Sin } is the capacity of the storage links

  • Solution method: ε‐relaxation distributed primal – dual algorithm
slide-39
SLIDE 39

Numerical Results

slide-40
SLIDE 40

Numerical Results Numerical Results

  • Simulation Set up:

– Linear network with 3 nodes

A B C D E

– Linear network with 5 nodes

SB SC SD C

– general graph

A SB B SC C D SE E F

  • Objective

SB SD D SE

Objective

– Demonstrate the Impact of Storage on achieved Delay, for different values of L

slide-41
SLIDE 41

Numerical Results Numerical Results

  • For a given amount of data, the delay improvement is analogous to the

value of L

slide-42
SLIDE 42

Numerical Results Numerical Results

  • General Network: The benefit from storage has an upper limit. After a

certain amount of storage we don’t get any further improvement.

slide-43
SLIDE 43

Conclusions Co c us o s

slide-44
SLIDE 44

Conclusions Conclusions

  • Storage under certain conditions can improve network

performance:

For fixed time interval: increase the amount of transferred data – For fixed time interval: increase the amount of transferred data – For fixed amount of data: decrease the incurred transfer delay

St t t b id d i j ti ith

  • Storage management must be considered in conjunction with

routing, i.e. JSR policies.

  • What are the applications ?

– Inter‐data center communication Inter‐data center communication, – Intra‐data center networking. – Overlays performance enhancement. – Reduction of network infrastructure cost: storage instead of capacity.

slide-45
SLIDE 45

Thank you! Thank you!

George Iosifidis: www GeorgeIosifidis net George Iosifidis: www.GeorgeIosifidis.net Iordanis Koutsopoulos: www.inf.uth.gr/~jordan Georgios Smaragdakis: www.Smaragdakis.net

slide-46
SLIDE 46

Back up Slides ac up S des

slide-47
SLIDE 47

Observation #1: Cost of Storage Observation #1: Cost of Storage

The storage capacity increases with an exponential rate.

slide-48
SLIDE 48

Impact of Storage Capacity in Linear Networks (3)

  • Q1: How many slots do we need to transfer D units of data?

Z S AC

D T n C Z ) ( :

  • Q2: Which is the amount of data that is transferred in T time slots?

= n AC 1

) (

The available data at the last node before

− =

=

2 1

) (

T n S AC

T n C D

Where the end‐to‐end capacity in each slot n, is:

the destination

)} 1 ( ) ( i { ) ( C C C )} 1 ( ), 1 ( min{ ) ( + + = n X n C n C

B BC S AC

)} 1 ( ), ( min{ ) ( + = n C n C n C

BC AB AC

)} ( ) ( { ) (

B BC AC

slide-49
SLIDE 49

Numerical Results (3) Numerical Results (3)

  • 5 nodes: The same conclusion. The improvement is analogous to the value
  • f L.
slide-50
SLIDE 50

Joint Storage and Routing Policy (3) Joint Storage and Routing Policy (3)

  • Joint Storage and Routing Problem

– Max Flow Problem in the Time – Expanded Graph

} min{ x } min{

ds

x − . .t s

∑ ∑

∈ ∈

∈ + = +

i i

F j B j T mi ji in ij

V i y x y x ,

i i

j j i T ij ij

F j V i C x ∈ ∈ ≤ ≤ , ,

) 1 ( +

≤ ≤

t

i n V i S y

) 1 (

, ,

+

= ∈ ≤ ≤

t T in in

i n V i S y ‐ { Fi } is the set of downstream communication neighbors of node {i}

‐ { Bi } is the set of upstream communication neighbors of node {i} ‐ { Cij } is the capacity of the communication links ‐ { Sin } is the capacity of the storage links

slide-51
SLIDE 51

Joint Storage and Routing Policy (6) Joint Storage and Routing Policy (6)

  • Solution method: ε‐relaxation primal – dual method

– Primal Variables: routing and storage decisions (/link, /node) Primal Variables: routing and storage decisions (/link, /node) – Dual Variables: prices (/node) – 1. Nodes Decisions: data to route/ data to admit/ data to store.

– 2. Nodes Communication: msg exchange with these vars. – 3. Nodes Coordination: comparison and update of the vars.