Scheduling Time Constrained Communication in Linear Networks

Preview:

DESCRIPTION

Scheduling Time Constrained Communication in Linear Networks. Micah Adler, Arnold L. Rosenberg, Ramesh K. Sitaraman and Walter Unger. The Problem – A Formal Definition. The underlying graph is a linear array. - PowerPoint PPT Presentation

Citation preview

Scheduling Time Constrained Communication in Linear

Networks

Micah Adler, Arnold L. Rosenberg, Ramesh K. Sitaraman and

Walter Unger

The Problem – A Formal Definition

The underlying graph is a linear array. The problem consists of a set packets,

each with a source node + destination node has a release time + deadline.

The objective is to maximize the number of packets delivered in time.

This Problem vs. the Former One

Each packet has a source+destination, release time+deadline

The objective is to deliver all packets; a schedule is feasible if it does so.

– A schedule either succeeds or fails

The objective is to maximize the number of delivered packets

Each packet has a source+destination and a deadline.

– Single release time

Some More Formal Definitions

Formally, a massage is represented by a quadruple .

Its span is defined to be – The distance between source to dest.

Its slack is defined to be – The number of steps the message may

“rest”.

m)()( ,,, d

mr

mmm ttds

mmm sd

mr

md

ms

m ttt )()()(

A Geometric View of the Problem

For a set of messages M and a linear array with n nodes, let

Each row represents a “time-instance”

Each column represents a node of the linear array

10 and 0|, nvtvtM n

A Geometric View of the Problem(Cont)

A massage is represented by a parallelogram.

Its left vertical side lies between rows

within column Its right vertical side lies

between rows

within column

md

mr

m tt )()( ,

ms

)()( , dmm

rm tt

md

A Geometric View of the Problem(Cont)

Some possible paths for the massages.– Recall: each

massage is represented by a parallelogram

What is the different between the green paths and the blue paths?

Buffer Vs. Bufferless Routing

In the Buffered model messages may be buffered in transmit.

In the Bufferless they may not.

What does a Buffered solution look like? And a Bufferless one?

The Bufferless Algorithm - Preliminaries

A scan-line of is the relevant segment of the function x-y=c, for some relevant c.

In what follows, assume these scan- lines are ordered from right to left.

nM

The Bufferless Algorithm Preliminaries (cont)

A massage (parall.) m is relevant to a scan-line if:– A path has not been

assigned to m, yet.– The intersection

between m to is not empty.

– The segment of relevant to m has not been assigned yet.

il

il

il

The Bufferless Algorithm – BFL

For each scan-line , from left to right:– Scan it from bottom to top; as long as there

are parallelograms relevant to assign the relevant segment of to the parall. with the lowest end-point among the relevant parallelograms.

• Note that this is an offline algorithm.

il

ilil

The Bufferless Algorithm – an Operation Example.

The Bufferless Algorithm – an Operation Example.

The Bufferless Algorithm – an Operation Example.

The Bufferless Algorithm – an Operation Example.

The Bufferless Algorithm – an Operation Example.

The Bufferless Algorithm – an Operation Example.

BFL is Nearly Optimal

Theorem: for every set M of massages |OPTBL(M)| 2 • |BFL(M)|

Proof: we will prove that a 1:1 mapping

exists, and the Theorem will follow.

)BFL()BFL(\)OPT(1:1

MMM

BFL is Nearly Optimal –the Proof

Consider a massage– Let pm be the segment assigned to it under

OPT.• The right corner of a segment assigned to a

massage must be in pm. (why?) – (If there is more than one such massage, choose

one arbitrarily).

• Map m’ to m.

As OPT produce a valid schedule, the mapping is indeed 1:1 (why?)

)BFL(\)OPT( MMm

)BFL(' Mm

Buffered vs. Bufferless Scheduling

Theorem: If all massages in the set M have the same span or the same release time then

|OPTB(M)| 2 • |OPTBL(M)|

Theorem: If all massages in the set M have the same slack then

|OPTB(M)| 3 • |OPTBL(M)|

Buffered vs. Bufferless Scheduling

Theorem: for any message set M |OPTB(M)| 4 • (log(M) +1) • |OPTBL(M)|– When

)( max)( , )( max)(

||),(),(1 min)(

^)(

^)(

^^)(

MMMtMt

MMMtM

ss

s

The Buffered Algorithm

The Buffered algorithm, BUF, mimics the bufferless algorithm, BFL, and achieves the same performances. Thus we have:

|OPTB(M)| = ((log(M) ) • |OPTBL(M)|)

– And in the cases mentioned above

|OPTB(M)| = ( |OPTBL(M)|)

– So, what do we need the buffers for?

The Buffered algorithm (cont)

The buffers are used to convert the offline algorithm BFL to an – Distributed

• Only the source node of a massage m receives information about m.

– Online• The information about m is received only at time .

– Local• All routing decisions made by a node are derived only by

information the node received.

algorithm, BUF.

)(rmt

The Buffered algorithm (cont)

Preliminaries: for a massage m let lbuf[m]

(lbfl[m] ) be the scan line in which m reaches

its destination. The invariant: for any message set M,

for every lbuf[m] =lbfl[m] .– Yet, the algorithm is distributed, online and local.

What obstacles must the algorithm overcome?

Mm

Possible problems of the Buffered Algorithm

Premature Preemptive

The Buffered Algorithm, BUF, Preliminaries

Fact: for node v at time t there is a single relevant scan-line, lv-t.

Each node v maintain a list of relevant packets in time t, Ev[v-t].– Can solve the premature problem.– What about the preemptive problem?

Let MRE[v-t] be the endpoint closest (from the left) to node v on lv-t .

The Buffered Algorithm, BUF.

At time t each node v forwards to node v+1 along scan line lv-t

i. The information MRE[v-t].

ii. A massage from Ev[v-t] with the nearest destination of any massage in Ev[v-t] whose source node is MRE[v-t].

• (of course, only if such a massage exists).

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

The Buffered Algorithm – an Operation Example.

BUF Compared With BFL

Questions?

Recommended