ZMPST 08 Multicast

background image

Multicast Flows

background image

Lecture Outline

• Introduction
• Integer Programming Formulations
• Cost Problem
• Network Design Problem
• Maximum Delay Problem
• Throughput Problem
• Multicast Packing Problem
• Concluding Remarks

background image

Lecture Outline

Introduction

• Integer Programming Formulations
• Cost Problem
• Network Design Problem
• Maximum Delay Problem
• Throughput Problem
• Multicast Packing Problem
• Concluding Remarks

background image

Introduction (1)

• In traditional networks two basic techniques

are used for routing:

– Unicast (one-to-one)
– Broadcast (one-to-all)

• Both routing methods are not sufficient when

information is to be delivered to a relatively large

group of users, geographically separated and

with similar interest on content

• This situation has triggered development

multicast routing defined as one-to-many

transmission

background image

Introduction (2)

Example application of multicasting:
• IP TV
• Video on Demand (VoD)
• Radio Streaming
• Content Delivery Networks (CDN)
• Distance learning
• Software updates
• Monitoring
• Result distribution (computing systems)

background image

Introduction (3)

Multicast modeling can use two classical network

problems:

Steiner tree problem. Given a set V of points

(network nodes), interconnect them by a subgraph

of shortest length (sum of the lengths of all edges)

Minimum Spanning Tree (MST) problem is a

subgraph of the orginal graph (network) which is a

tree (no loops) and connects all the vertices

together

• The difference between both problems is that, in the

Steiner tree problem, extra intermediate vertices

(Steiner vertices) and edges may be added to the

graph in order to reduce the length of the spanning

tree

background image

Introduction (4)

Multicasting can be divided into two categories:
Traditional IP multicast is a method to send

packets to a group of interested receivers in a

single transmission. The multicasting is in layer 3

and IP routers are responsible to create the

delivery tree. End hosts (receivers) are leafs of

the tree

Overlay multicast (P2P multicast, application-

layer multicast) is realized in layer 7. End hosts

can also upload the stream to other peers

background image

Traditional IP multicast (1)

Protocol-Independent Multicast (PIM) is a

family of IP multicast protocols that provide one-to-

many and many-to-many distribution of data over

an IP network. PIM is protocol-independent, since it

does not include its own topology discovery

mechanism, but instead uses routing information

supplied by other traditional routing protocols (e.g.,

BGP)

Internet Group Management Protocol (IGMP) is

a protocol used to manage the membership of IP

multicast groups. IGMP is used by hosts and

adjacent multicast routers to establish multicast

group memberships

background image

Traditional IP multicast (2)

2

1

3

4

11

8

7

6

9

Root
node

IP Router

Multicast
tree

12

5

10

1

End host
(receiver
)

background image

P2P Multicast

1

2

3

4

5

6

7

background image

Lecture Outline

• Introduction

Integer Programming Formulations

• Cost Problem
• Network Design Problem
• Maximum Delay Problem
• Throughput Problem
• Multicast Packing Problem
• Concluding Remarks

background image

Formulations

• Canonical Formulation
• Flow Formulation
• Level Formulation
• Candidate Tree Formulation

background image

Canonical Formulation (1)

• Multicast is modeled using Steiner tree problem
• For each edge e, there is a variable x

e

indicating

whether e is in the Steiner tree (x

e

= 1) or not (x

e

= 0)

• The formulation uses cuts of the original network

graph G=(V,E), where V denotes set of nodes and

E set of links

• Set T denotes set of terminals (receivers)

(W) denotes the cut induced by WV, i.e., the set

of edges with the source node in W and the

destination node in its complement (V \ W)

background image

Canonical Formulation (2)

2

1

3

4

11

8

7

6

9

Root
node

Terminal
(receiver)

Multicast
tree

8

9

12

5

10

1

7

Cut

background image

Canonical Formulation (3)

sets
V

network nodes

E

links (directed edges)

T

terminals (receivers)

constants

(W) cut induced by WV, including edges with the

source node in W and end node in its

complement

(V \ W)

s

root node of multicast tree

h

volume (bandwidth requirement) of multicast

c

e

capacity of link e

background image

Canonical Formulation (4)

variables
x

e

= 1, if multicast tree uses link e; 0, otherwise

(binary)

constraints
x(

(W))  1, for all WV, sW, (V \ W)T  0

x(

(W)) = 

e

(W)

x

e

,

x

e

h

c

e

e = 1,2,…,E.

background image

Flow Formulation (1)

• Node-Link formulation developed for unicast flows

can be modified to be used in multicast flows

• For easy of reference this formulation is named

flow

• The flow to each receiver of the multicasting is

modeled as unicast path

• Additional variable associated with each link is in

the model to assure that the flow goes through

the link at most one time

background image

Flow Formulation (2)

2

1

3

4

11

8

7

6

9

Root
node

Receiver
(leaf) node

7

Unicast
path
Multicast
tree

8

9

12

5

10

1

background image

Flow Formulation (3)

indices
v = 1,2,…,V

network nodes

e = 1,2,…,Elinks
k = 1,2,…,K(terminals) receivers
constants
a

ev

= 1, if link e originates at node v; 0, otherwise

b

ev

= 1, if link e terminates in node v; 0,

otherwise

s

root node of multicast tree

h

volume (bandwidth requirement) of multicast

c

e

capacity of link e

background image

Flow Formulation (4)

variables
x

ek

= 1, if multicast flow to receiver k uses link e; 0,

otherwise (binary)

x

e

= 1, if multicast tree uses link e; 0, otherwise

(binary)

constraints

e

 a

ev

x

ek

 – 

e

 b

ev

x

ek

 = 1,   if v = s

v = 1,2,…,V

k =

1,2,…,K

e

 a

ev

x

ek

 – 

e

 b

ev

x

ek

 = –1,   if v = k

v = 1,2,…,V

k = 1,2,

…,K

e

 a

ev

x

ek

 – 

e

 b

ev

x

ek

 = 0,  if v  s,k

v = 1,2,…,V k = 1,2,

…,K

x

ek

x

e

, e = 1,2,…,E

k = 1,2,…,K

x

e

h

c

e

, e = 1,2,…,E.

background image

Level Formulation (1)

• We assume that the root of the tree is located on

level 1

• All children of the root (nodes that have a direct

link from the root) are located on level 2

• If a father node of v is on level l, then v is located on

level (l + 1)

• For easy of reference this formulation is named level
Variable x

wvl

is 1 if the link (w,v) is used in multicast

tree and w is located on level l of the tree t

• In the literature this formulation is also called

Layered Graphs (Gouveia et al.)

background image

Level Formulation (2)

2

1

3

4

11

8

7

6

9

Root
node

Receiver
(leaf) node

Multicast
tree

8

9

12

5

10

1

Level 1
node

Level 2
node

7

Level 3
node

background image

Level Formulation (3)

indices
v,w,b = 1,2,…,V network nodes
k = 1,2,…,K

receivers

l = 1,2,…,L

levels (parent nodes)

constants
s

root node of multicast tree

e(w,v)

=1, if there is a direct link (w,v) in

graph; 0, otherwise

h

volume (bandwidth requirement) of multicast

c

wv

capacity of link (w,v)

background image

Level Formulation (4)

variables
x

wvl

= 1, if the link (w,v) is used in multicast tree

and w is located on level l of the tree; 0,
otherwise (binary)

x

wv

= 1, if multicast tree uses link (w,v); 0

otherwise

(binary)

background image

Level Formulation (5)

constraints

w:e(w,v)=1

l

 x

wvl

 = 0,   v = s v = 1,2,…,V

w:e(w,k)=1

l

 x

wkl

 = 1,    k = 1,2,…,K

v:e(w,v)=1

x

wv1

 = 0, ws w = 1,2,…,V

x

wv(l+1)

  

b

 x

bwl

,   e(w,v) = 1 w = 1,2,…,V v = 1,2,

…,V l = 1,2,…,L - 1

l

x

wvl

  x

wv

e(w,v) = 1 w = 1,2,…,V  v = 1,2,…,V

x

wv

  

l

x

wvl

, e(w,v) = 1 w = 1,2,…,V  v = 1,2,…,V

x

wv

h

c

wv

, e(w,v) = 1 w = 1,2,…,V  v = 1,2,…,V.

background image

Candidate Tree Formulation

(1)

• Analogy to Link-Path unicast formulation
• There are candidate trees (topologies) with the

same root node and connecting all terminals
(receivers)

background image

Candidate Tree Formulation

(2)

2

1

4

11

8

7

6

9

Root
node

Terminal
(receiver)

Candidate
tree

8

9

12

5

10

7

Candidate
tree

Candidate
tree

1

3

background image

Candidate Tree Formulation

(3)

indices
e = 1,2,…,Elinks
p = 1,2,…,Pcandidate trees
constants

ep

= 1, if link e belongs to tree p; 0, otherwise

h

volume (bandwidth requirement) of multicast

c

e

capacity of link e

background image

Candidate Tree Formulation

(4)

variables
x

p

flow allocated to tree p (continuous non-

negative)

constraints

p

x

p

= h

p

ep

x

p

c

e

, e = 1,2,…,E.

background image

Lecture Outline

• Introduction
• Integer Programming Formulations

Cost Problem

• Network Design Problem
• Maximum Delay Problem
• Throughput Problem
• Multicast Packing Problem
• Concluding Remarks

background image

Cost Problem (1)

FA (Flow Allocation) problem
• The stream is split and multiple trees are used

to deliver the content to receivers

• Each tree has the same root
• Objective is to minimize overall cost of the

streaming

• Level limit to improve QoS and reliability
Level formulation

background image

Cost Problem (2)

Given: network topology, link capacity, location of

root, set of receivers, volume of each trees, level
limit, link cost

Minimize: cost

Over: multicast routing

background image

Cost Problem (3)

indices
v,w,b = 1,2,…,V network nodes
k = 1,2,…,K

receivers

t = 1,2,…,T

trees

l = 1,2,…,L

levels (parent nodes)

background image

Cost Problem (4)

constants
s

root node of multicast tree

e(w,v)

=1, if there is a direct link (w,v) in

graph; 0, otherwise

h

t

volume (bandwidth requirement) of tree t

c

wv

capacity of link (w,v)

wv

routing cost of link (w,v)

background image

Cost Problem (5)

variables
x

wvtl

= 1, if the link (w,v) is used in multicast tree t

and w is located on level l of the tree; 0,

otherwise (binary)

x

wvt

= 1, if multicast tree t uses link (w,v); 0

otherwise

(binary)

objective
minimize F = 

w

v

t

x

wvt

h

t

wv

background image

Cost Problem (6)

constraints

w:e(w,v)=1

l

 x

wvtl

 = 0,

v = s v = 1,2,…,V t = 1,2,

…,T

w:e(w,k)=1

l

 x

wktl

 = 1,     k = 1,2,…,K t = 1,2,…,T

v:e(w,v)=1

x

wvt1

 = 0,

ws w = 1,2,…,V

t = 1,2,…,T

x

wvt(l+1)

  

b

 x

bwtl

,  

e(w,v) = 1 w = 1,2,…,V

v = 1,2,…,V l = 1,2,…,L - 1

t = 1,2,…,T

l

x

wvtl

  x

wvt

e(w,v) = 1

w = 1,2,…,V  v = 1,2,

…,V

t = 1,2,…,T

x

wvt

  

l

x

wvtl

, e(w,v) = 1

w = 1,2,…,V  v = 1,2,

…,V

t = 1,2,…,T

t

x

wvt

h

t

c

wv

, e(w,v) = 1 w = 1,2,…,V   v = 1,2,…,V.

background image

Optimization

• The problem is linear, integer (binary) and

NP-complete (equivalent to Steiner tree
problem)

• To find optimal solutions solvers like CPLEX and

GuRoBi can be used

Heuristics can be used, e.g., construction

algorithms, greedy approach, evolutionary
algorithm, etc.

background image

Lecture Outline

• Introduction
• Integer Programming Formulations
• Cost Problem

Network Design Problem

• Maximum Delay Problem
• Throughput Problem
• Multicast Packing Problem
• Concluding Remarks

background image

Network Design Problem (1)

CFA (Capacity and Flow Allocation) problem for

multicast flows

A number of multicast demands, each is

defined by the root node, set of receivers and
volume

Modular links
Flow formulation of multicast flows

background image

Network Design Problem (2)

Given: network topology, link capacity, multicast

demands (root, receivers and volume)

Minimize: network cost

Over: multicast routing, link allocation

background image

Network Design Problem (3)

indices
v = 1,2,…,V

network nodes

e = 1,2,…,Elinks
d = 1,2,…,D

multicast demands (multicast

group)

k = 1,2,…,K

d

receivers in multicast demand d

background image

Network Design Problem (4)

constants
a

ev

= 1, if link e originates at node v; 0, otherwise

b

ev

= 1, if link e terminates in node v; 0,

otherwise

s

d

root node of multicast demand d

h

d

volume of multicast demand d

e

cost of one capacity module on link e

M

size of the link capacity module

background image

Network Design Problem (5)

variables
x

edk

= 1, if multicast flow of multicast demand d to

receiver k uses link e; 0, otherwise (binary)

x

ed

= 1, if multicast demand d uses link e; 0,

otherwise (binary)

y

e

capacity of link e expressed in the number of
modules (non-negative integer)

objective
minimize F = 

e

e

y

e

background image

Network Design Problem (6)

constraints

e

 a

ev

x

edk

 – 

e

 b

ev

x

edk

 = 1,   

if v = s

d

v = 1,2,…,V

d = 1,2,…,D

k = 1,2,…,K

d

e

 a

ev

x

edk

 – 

e

 b

ev

x

edk

 = –1,    if v = k

v = 1,2,…,V

d = 1,2,…,D

k = 1,2,…,K

d

e

 a

ev

x

edk

 – 

e

 b

ev

x

edk

 = 0, 

if v  s

d

,k

v = 1,2,…,V

d = 1,2,…,D

k = 1,2,…,K

d

x

edk

x

ed

, e = 1,2,…,E d = 1,2,…,D

k = 1,2,…,K

d

d

x

ed

h

t

My

e

, e = 1,2,…,E.

background image

Optimization

• The problem is linear, integer, and NP-

complete (equivalent to Steiner tree problem)

• To find optimal solutions solvers like CPLEX and

GuRoBi can be used

Heuristics can be used

background image

Lecture Outline

• Introduction
• Integer Programming Formulations
• Cost Problem
• Network Design Problem

Maximum Delay Problem

• Throughput Problem
• Multicast Packing Problem
• Concluding Remarks

background image

Maxium Delay Problem (1)

FA (Flow Allocation) problem
• Objective is to minimize the maximum (worst)

delay to receiver (QoS requirement)

Flow formulation, since the level formulation

does not include the path to receiver

background image

Maxium Delay Problem (2)

Given: network topology, link capacity, location of

root, set of receivers, tree volume, link delays

Minimize: maximum delay

Over: multicast routing

background image

Maxium Delay Problem (3)

indices
v = 1,2,…,V

network nodes

e = 1,2,…,Elinks
k = 1,2,…,Kreceivers
constants
a

ev

= 1, if link e originates at node v; 0, otherwise

b

ev

= 1, if link e terminates in node v; 0,

otherwise

s

root node of multicast tree

background image

Maxium Delay Problem (4)

constants
h

volume of multicast transmission t

e

delay of link e

c

e

capacity of link e

variables
x

ek

= 1, if multicast flow to receiver k uses link e;

0, otherwise (binary)

x

e

= 1, if multicast tree uses link e; 0, otherwise

(binary)

x

maximum delay (non-negative continuous)

background image

Maxium Delay Problem (5)

objective
minimize x
constraints

e

 a

ev

x

ek

 – 

e

 b

ev

x

ek

 = 1,   

if v = s

v = 1,2,…,V

k = 1,2,…,K

e

 a

ev

x

ek

 – 

e

 b

ev

x

ek

 = –1,

if v = k

v = 1,2,…,V

k = 1,2,…,K

e

 a

ev

x

ek

 – 

e

 b

ev

x

ek

 = 0, if v  s,k

v = 1,2,…,V

k = 1,2,…,K

e

e

x

ek

x,

k = 1,2,…,K

x

ek

x

e

,

e = 1,2,…,E

k = 1,2,…,K

x

e

h

c

e

, e = 1,2,…,E.

background image

Optimization

• The problem is linear, integer, and NP-

complete (equivalent to Steiner tree problem)

• To find optimal solutions solvers like CPLEX and

GuRoBi can be used

Heuristics can be used

background image

Lecture Outline

• Introduction
• Integer Programming Formulations
• Cost Problem
• Network Design Problem
• Maximum Delay Problem

Throughput Problem

• Multicast Packing Problem
• Concluding Remarks

background image

Throughput Problem (1)

FA (Flow Allocation) problem
• Objective is to maximize the throughput

(streaming rate)

Multiple trees are used for streaming
• Level limit to improve QoS and reliability
Level formulation of multicast flows

background image

Throughput Problem (2)

Given: network topology, link capacity, location of

root, set of receivers, number of trees

Maximize: throughput

Over: multicast routing

background image

Throughput Problem (3)

indices
v,w,b = 1,2,…,V network nodes
k = 1,2,…,K

receivers

t = 1,2,…,T

trees

l = 1,2,…,L

levels (parent nodes)

background image

Throughput Problem (4)

constants
s

root node of multicast tree

e(w,v)

=1, if there is a direct link (w,v) in

graph; 0, otherwise

c

wv

capacity of link (w,v)

M

large number

background image

Throughput Problem (5)

variables
x

wvtl

streaming rate on an overlay link (w,v) (no

other

peer nodes in between) in multicast tree

t and w is

located on level l of tree t;

(continuous, non-

negative)

x

wvt

= 1, if multicast tree t uses link (w,v); 0

otherwise

(binary)

q

t

throughput (bandwidth requirement) of tree t
(continuous, non-negative)

objective
maximize F = 

t

q

t

background image

Throughput Problem (6)

constraints

w:e(w,v)=1

l

 x

wvtl

 = 0,

v = s v = 1,2,…,V t = 1,2,

…,T

w:e(w,k)=1

l

 x

wktl

 = q

t

,     k = 1,2,…,K t = 1,2,…,T

v:e(w,v)=1

x

wvt1

 = 0,

ws w = 1,2,…,V

t = 1,2,…,T

x

wvt(l+1)

  

b

 x

bwtl

,  

e(w,v) =1 w = 1,2,…,V

v = 1,2,…,V l = 1,2,…,L - 1

t = 1,2,…,T

l

x

wvtl

  Mx

wvt

e(w,v) = 1 w = 1,2,…,V

v = 1,2,…,V t = 1,2,…,T

x

wvt

  

l

x

wvtl

,

e(w,v) = 1 w = 1,2,…,V

v = 1,2,…,V t = 1,2,…,T

t

l

x

wvtl

c

wv

, e(w,v) = 1 w = 1,2,…,V   v = 1,2,…,V.

background image

Optimization

• The problem is linear, integer, and NP-

complete (equivalent to Steiner tree problem)

• To find optimal solutions solvers like CPLEX and

GuRoBi can be used

Heuristics can be used

background image

Lecture Outline

• Introduction
• Integer Programming Formulations
• Cost Problem
• Network Design Problem
• Maximum Delay Problem
• Throughput Problem

Multicast Packing Problem

• Concluding Remarks

background image

Multicast Packing Problem

(1)

FA (Flow Allocation) problem
• Objective is to minimize maximum link

congestion

Classical problem related to multicasting
Flow formulation is used
• Level formulation can also be used

background image

Multicast Packing Problem

(2)

Given: network topology, link capacity, location of

root, set of receivers, number of trees

Minimize: maximum link congestion

Over: multicast routing

background image

Multicast Packing Problem

(3)

indices
v = 1,2,…,V

network nodes

e = 1,2,…,Elinks
d = 1,2,…,D

multicast demands (multicast

group)

k = 1,2,…,K

d

receivers in multicast demand d

constants
a

ev

= 1, if link e originates at node v; 0, otherwise

b

ev

= 1, if link e terminates in node v; 0,

otherwise

background image

Multicast Packing Problem

(4)

constants
s

d

root node of multicast demand d

h

d

volume of multicast demand d

M

size of the link capacity module

variables
x

edk

= 1, if multicast flow of multicast demand d to

receiver k uses link e; 0, otherwise (binary)

x

ed

= 1, if multicast demand d uses link e; 0,

otherwise

(binary)

maximum link congestion

background image

Multicast Packing Problem

(5)

objective
minimize

constraints

e

 a

ev

x

edk

 – 

e

 b

ev

x

edk

 = 1,   

if v = s

d

v = 1,2,…,V

d = 1,2,…,D

k = 1,2,…,K

d

e

 a

ev

x

edk

 – 

e

 b

ev

x

edk

 = –1,   

if v = k

v = 1,2,…,V

d = 1,2,…,D

k = 1,2,…,K

d

e

 a

ev

x

edk

 – 

e

 b

ev

x

edk

 = 0, 

if v  s

d

,k

v = 1,2,…,V

d = 1,2,…,D

k = 1,2,…,K

d

x

edk

x

ed

, e = 1,2,…,E d = 1,2,…,D

k = 1,2,…,K

d

d

x

ed

h

t

,

e = 1,2,…,E.

background image

Optimization

• The problem is linear, integer, and NP-

complete

• To find optimal solutions solvers like CPLEX and

GuRoBi can be used

Heuristics can be used

background image

Lecture Outline

• Introduction
• Integer Programming Formulations
• Cost Problem
• Network Design Problem
• Maximum Delay Problem
• Throughput Problem
• Multicast Packing Problem

Concluding Remarks

background image

Concluding Remarks

• Due to growing popularity of various streaming

services in the Internet, the multicast

transmission has been gaining much attention

recently

Modeling of multicasting makes use of traditional

unicast multicommodity flows, however new

models can be proposed

• Most of problems formulated in the context of

unicast flows can be also formulated for

multicast flows

background image

Further Reading

• Minoli D. , IP Multicast with Applications to IPTV and Mobile DVB-H,

John Wiley & Sons, 2008

• http://www.cisco.com/en/US/tech/tk828/technologies_white_paper09

186a0080092942.shtml

• Koch T. and  Martin A., Solving Steiner tree problems in graphs to

optimality, Networks, vol.32, no. 3, 1998, pp. 207-232

• Oliveira C.A.S., Pardalos P.M. and Resende M.G.C., Optimization

problems in multicast tree construction, Handbook of Optimization in

Telecommunications, Springer, 2006

• Wu C. and Li B., Optimal Rate Allocation in Overlay Content

Distribution, in Proc. of the 6th Networking Conf., 2007, pp. 678-690

• Allen J., Kubat P., Reliable Video Broadcast via Protected Steiner

Trees, IEEE Comm. Magazine, Vol. 48, No. 2, 2010, pp. 70-76

• Gouveia L., Luidi Simonetti L., Uchoa E., Modelling Hop-Constrained

and Diameter-Constrained Minimum Spanning Tree Problems as

Steiner Tree Problems over Layered Graphs, Mathematical

Programming, 2009


Document Outline


Wyszukiwarka

Podobne podstrony:
ZMPST 04 Multicommodity Flows
ZMPST Wstep
FP w 08
08 Elektrownie jądrowe obiegi
archkomp 08
02a URAZY CZASZKOWO MÓZGOWE OGÓLNIE 2008 11 08
ankieta 07 08
08 Kości cz Iid 7262 ppt
08 Stany nieustalone w obwodach RLCid 7512 ppt
2009 04 08 POZ 06id 26791 ppt
08 BIOCHEMIA mechanizmy adaptac mikroor ANG 2id 7389 ppt
depresja 08 09
W15 08 II
Szkol Ogólne 08 1pomoc
ZMPST 01 Introduction
08 NIEDZIELA ZWYKŁA B

więcej podobnych podstron