390 likes | 527 Views
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.
E N D
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 problemconsists 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.
Each packet has a source+destination, release time+deadline The objective is to deliver allpackets; a schedule is feasible if it does so. A schedule either succeeds or fails This Problem vs. the Former One • Each packet has a source+destination and a deadline. • Single release time • The objective is to maximize the number of delivered packets
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”.
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
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
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 Bufferedmodel messages may be buffered in transmit. • In the Bufferlessthey may not. • What does a Buffered solution look like? And a Bufferless one?
The Bufferless Algorithm - Preliminaries • A scan-lineof 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.
A massage (parall.) m is relevant to a scan-lineif: 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. The Bufferless Algorithm Preliminaries (cont)
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.
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 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?)
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
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.
The Buffered algorithm (cont) • Preliminaries: for a massage m let lbuf[m] (lbfl[m] ) be the scan linein 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?
Premature Preemptive Possible problems of the Buffered Algorithm
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 • The information MRE[v-t]. • 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).