Stability of Adversarial Queues via Fluid Models David Gamarnik T.J. Watson Research Center, IBM Yorktown Heights, NY 10598
[email protected]
Abstract
time period. One natural necessary condition for stability, called the load condition, is that the arrival rate of packets with paths containing any individual edge is not bigger than the processing rate of this edge (as in [1], [3], we will assume that all the processing rates are equal to the unity). It was discovered, however, that this condition is not sufficient and in general deciding stability of any given network is a very nontrivial problem. One direction of stability research has been conducted within the framework of adversarial queueing networks. In such networks an adversary injects packets for processing arbitrarily (no probabilistic assumptions on the arrival of packets), subject only to the load condition constraint, described above. It was shown by Andrews, et al., [1], that certain policies like Furthest-To-Go (FTG), ShortestIn-System (NIS) and Longest-In-System are stable in all networks, but First-In-First-Out (FIFO) and Nearest First (NF) policies could be unstable. Acyclic graphs and unidirectional rings were proven to be stable for all greedy policies in [3] and [1], and a complete characterization of graphs which are stable under all arrival rates smaller than one, was given by Goel [15]. In general, however, it is not known which networks are stable under all greedy policies for specific values of arrival rates. A parallel and almost independent stream of research in the area of stability of queueing networks has been stochastic queueing networks, which are used for modeling various manufacturing processes. Stability of a stochastic queueing network is usually defined as finiteness of the expected number of parts (customers) in steady state. Stability results, similar to the ones for adversarial queues, have been established for stochastic queues: acyclic networks and unidirectional rings are stable for all greedy (usually called work conserving in manufacturing) policies. Most of these stability results can be established via constructing an associated deterministic fluid model. It was proven by Dai [8] that stability of fluid queueing network implies the stability of the underlying stochastic queueing network. Partial converse results were proven by Dai [9] and Meyn [16]. The two directions in stability research naturally lead to
The subject of this paper is stability properties of adversarial queueing networks. Such queueing systems are used to model packet switch communication networks, in which packets are generated and routed dynamically, and have become a subject of research focus recently. Adversarial queueing networks are defined to be stable, if the number of packets stays bounded over time. A central question is determining which adversarial queueing networks are stable, when an arbitrary greedy packet routing policy is implemented. In this paper we show how stability of a queueing network can be determined by considering an associated fluid models. Our main result is that the stability of the fluid model implies the stability of an underlying adversarial queueing network. This opens an opportunity for analyzing stability of adversarial networks, using established stability methods from continuous time processes, for example, the method of Lyapunov function or trajectory decomposition. We demonstrate the use of these methods on several examples.
1 Introduction In this paper we investigate the behavior of communication networks, in which packets are generated dynamically and are routed from sources to destinations. Such communication networks are usually modeled as graphs, in which source and destination are represented as a pair of nodes, and each packet travels via a specific simple path connecting these nodes. A surge of research activity in the area of packet routing in communication networks has been motivated by ATM technology and, in particular, requirements for providing certain levels of performance quality. These requirements translate into the questions of stability and performance of packet routing schedules in communication networks. A packet routing schedule is defined to be stable if the number of packets stays finite, as the system runs over a long 1
path P . For each P 2 P and e 2 P , let D(e;P ) (t1 ; t2) be the total number of packets, following path P , that traversed edge e during the time interval [t1; t2]. In particular, D(e;P ) (t; t + 1) takes value 0 or 1, for each t = 0; 1; 2; : ::: Finally, let Q(e;P ) (t) be the total number of packets following path P that are waiting to traverse edge e at time t. Let also, Q(t) be the vector (Q(e;P ) (t))e2P;P 2P of all queue lengths at time t and let jQ(t)j denote the total number of packets in the network, at time t:
the question whether there exists a single technique, which can be used for the stability analysis of both stochastic and adversarial queues. In this paper we demonstrate, that fluid models of queueing networks is such a technique. We will show how to check stability properties of an adversarial queueing network by constructing an associated fluid network. The fluid network we construct is very similar to the ones used for stochastic queueing analogues. Our main result is that the stability of a fluid model implies the stability of an underlying adversarial queueing network. This parallels the result by Dai [8], for stochastic networks. However, the proof technique is different and the result is stated in a worst case as opposed to an expected sense. Our theorem opens an opportunity for analyzing the stability of adversarial networks, using established methods from continuous time continuous state processes, for example, the method of Lyapunov function (see [10],[11],[13]) or trajectory decomposition (see [2], [14]). As an example, we show that the stability of an adversarial unidirectional ring follows from a corresponding “fluid” version of this result by Dai and Weiss [11], which was proven by constructing a piecewise linear Lyapunov function. Applying recent Bramson’s result [4], we prove that First-In-First-Out policy is stable in adversarial queueing networks with arrival rates constant within each path.
jQ(t)j =
X
e2P;P 2P
Q(e;P ) (t):
For simplicity we denote AP (0; t) by AP (t) and D(e;P ) (0; t) by D(e;P ) (t). Also let A(t) = (AP (t))P 2P denote the vector of arrivals up to time t, and let D(t) = (D(e;P ) (t))e2P;P 2P denote the vector of departures up to time t. The dynamics of the network is described as follows. For each t = 0; 1; 2; : :: and each path P 2 P
Q(eP ;P ) (t) = Q(eP ;P ) (0) + AP (t) ? D(eP ;P ) (t); 0
0
0
(1)
and
Q(ePi ;P ) (t) = Q(ePi ;P ) (0) + D(ePi? ;P ) (t) ? D(ePi ;P ) (t); 1
for all i = 1; 2; : : :; k(P): For each edge e 2 E and each time interval have the following feasibility constraint.
2 Definitions and assumptions
X
The definitions and assumptions of this paper are adopted from [1]. An adversarial queueing network is represented as an undirected graph (V; E), where V is the set of vertices, G is the set of edges. An adversary injects packets into the graph for processing. Each packet has a preassigned path that it needs to follow. Although it is not necessary for our analysis, we will assume that all the preassigned paths are simple. Thus no packet traverses any given edge more than once. Once the end point of the path (the destination) is reached, the packet leaves the network. Each packet takes a unit of time to traverse a single edge, and only one packet can traverse any given edge at a time (in either direction). Packet processing occurs at integer time epochs t = 0; 1; 2; : : : : Packets that need to be processed at edge e accumulate into a queue at the vertex of e, until chosen to traverse. In order to fully describe the dynamics of our network, we introduce some additional notations. Let P = fP1; P2; : : :; PM g be a set of simple paths in the graph (V; E). This is the set of paths that will eventually be followed by some packets. It might coincide with the set of all simple paths, or might be just a subset of it. For each P P path P 2 P , let feP 0 ; e1 ; : : :; ek (P ) g be the set of consecutive edges in P . Let AP (t1 ; t2) be the total number of packets injected during time interval [t1; t2], that required
P :e2P
(2)
[t1; t2] we
D(e;P ) (t1 ; t2) t2 ? t1 :
(3)
In particular, for each t = 0; 1; 2; : :: and each e 2 E X
P :e2P
D(e;P ) (t; t + 1) 1:
Equation (1) states that, for each path P , the total number of packets following P , that are waiting to cross the first edge of P at time t is the initial number of packets at time 0 plus the number of new packets following P that arrived during [0; t], minus the number of packets that have crossed the initial edge already by the time t. Equation (2) is explained the same way. Inequality (3) simply states that the total number of packets that crossed any given edge e during the time interval [t1; t2] cannot be bigger than t2 ? t1. The packets are injected into the system by an adversary in a restricted manner. There exists a positive real number r, thereafter called rate, and an integer w with the following property. For each edge e, the total number of packets, injected during any interval of length w, that have assigned path containing this edge, is at most [rw]. Formally, for each e 2 E and t = 0; 1; 2; : : : X
P :e2P 2
AP (t; t + w) rw:
(4)
3 Fluid models of adversarial queueing networks
This is a generalization of the assumptions considered by Cruz in [7], where for each path P the associated arrival process was assumed to be sublinear:
AP (t) rP t + bP (5) for some P ; bP and for all t 0. We will say that the net-
In this section we introduce a fluid model as a continuous time, continuous state approximation of an adversarial queueing network. Given an adversarial queueing network (V; E; r; w) we define an associated fluid model as follows. For each path P 2 P there is an external arrival of flow that needs to be processed through the path P . For each positive real t the total amount of flow that follows path P and arrived during the time interval [0; t] is some nonnegative real value and is denoted by AP (t) 2 R+ . The flow that requires to cross an edge e forms a queue at one of the vertices of e until processed. The flow arrival process AP (t) is an arbitrary continuous non-decreasing function subject to the following load constraint. For each edge e and each pair of positive reals t1 < t2, the total amount of flow that arrived during [t1; t2] and requires edge e is not more than r(t2 ? t1 ). Namely,
work has path-wise constant arrival rates if [7] is satisfied. We will be interested in networks, for which the queue sizes at each edge stay finite over time. For that to hold the necessary condition is
r 1:
(6)
As in [1] we will concentrate only on the subcritical case r < 1 throughout the paper. A quadruple (V; E; r; w) will be called an adversarial queueing network with parameters r and w. Any feasible solution (Q(t); A(t); D(t)) to (1)-(4) will be called a realization in the network (V; E; r; w). So far we have not discussed the rules by which packets are chosen to cross edges - scheduling policies. In this paper we will discuss the behavior of adversarial queueing networks network for the family of greedy (work conserving) policies, the definition of which is given below.
X
P :e2P
Definition 1 A realization (Q(t); A(t); D(t)) in an adversarial queueing network (V; E; r; w) is defined to be greedy (work conserving) if whenever there is a positive amount of packets waiting to cross any given edge e at time t, at least one of these packets will cross e during interval [t; t + 1]. Formally, for each e 2 E and t = 0; 1; 2; : ::; X
P :e2P implies
X
P :e2P
(8)
for all e 2 E and t1 < t2 2 R+ : In particular, the arrival process is Lipschitz continuous. The total amount of flow that follows path P and crossed an edge e 2 P during the (e;P ) (t), which is also time interval [0; t] is denoted by D a continuous non-decreasing function. The flow processing rate is equal to one for all edges. In particular, for each edge e 2 E and each pair of nonnegative reals t1 < t2
Q(e;P ) (t) > 0
D(e;P ) (t; t + 1) = 1:
AP (t2 ) ? AP (t1) r(t2 ? t1 );
X
P :e2P
D (e;P ) (t2 ) ? D (e;P ) (t1 ) t2 ? t1:
(9)
The total amount of flow following path P and waiting to cross edge e at time t 2 R+ is some nonnegative real and is denoted by Q(e;P ) (t). The following dynamic equations are then satisfied. For each P 2 P and t 2 R+
(7)
A focus of this paper is understanding in which networks work conserving realizations have bounded queue sizes. Such networks are called stable. The formal definition of stability is given below.
Q (eP ;P ) (t) = Q (eP ;P ) (0) + AP (t) ? D (eP ;P ) (t); 0
Definition 2 A realization (Q(t); A(t); D(t)) in an adversarial queueing network (V; E; r; w) is defined to be stable if the total number of packets in the system stays bounded over time. Namely,
0
0
(10)
and
Q (ePi ;P ) (t) = Q(ePi ;P ) (t) + D (ePi? ;P ) (t) ? D (ePi ;P ) (t); 1
(11)
= 1; 2; : : :; k(P): We put A(t) = (AP (t))P 2P ; Q(t) = (Q (e;P ) (t))e2P;P 2P ; D(t) = (D (e;P ) (t))e2P;P 2P . Any feasible solution A(t); D(t)) (Q(t); to the system of equalities and in-
sup jQ(t)j < 1:
for all
t2Z+
An adversarial queueing network (V; E; r; w) is defined to be universally stable, if every work conserving realization is stable.
i
equalities (8)-(11) will be called a fluid solution or a fluid trajectory. If the fluid solution is such that each edge e processes the fluid as long as there is some fluid waiting to cross e, then the solution is called work conserving. This parallels the corresponding definition of work conservation in adversarial queueing networks. Thus
Remark. Note, that unlike in [3], [1], [15], the universal stability in our definition depends on specific values of the arrival rate r and on the set of paths P which are eventually requested by packets. Thus, our definition is more general. 3
Q21(t) = Q21(0) + A21(t) ? D21 (t):
Definition 3 A vector valued continuous function t ! A(t); D(t)) is called a fluid solution or a fluid (Q(t); trajectory of the fluid model (V; E; r) if it satisfies A(t); D(t)) is (8),(9),(10),(11). A fluid solution (Q(t); called work conserving if for any pair of nonnegative reals t1 < t2 and for any edge e 2 E X
P :e2P
Q (e;P ) (t) > 0
Let be the first emptying time (possibly equal to infinity). Then from work conservation constraint (12), for any t
Q12(t)+Q21 (t) = Q12(0)+Q21 (0)+A12 (t)+A21 (t) ? t: But from the load condition (8)
for all t 2 [t1; t2]
A12 (t) + A21(t) rt: Therefore the total fluid level Q12(t)+Q21 (t) must become zero by the time = (Q12(0)+Q21 (0))=(1 ? r) = 1=(1 ? r) < 1. Thus this simple network is globally stable.
implies
t2 ? t1 =
X
P :e2P
D (e;P ) (t2 ) ? D (e;P ) (t1 ) :
(12)
We also introduce the following definition of a weak stability.
The fluid network (V; E; r) can be viewed as a continuous time, continuous state analogue of the discrete adversarial queueing network (V; E; r; w). Note the absence of the parameter w in the fluid model. The continuous arrival process in a fluid model is sub-linear, as implied by (8), and is not allowed to be bursty. We now introduce the stability definition for fluid models. As we will see later, the stability of a fluid model implies stability of an underlying adversarial queueing network.
A(t); D(t)) is defined Definition 5 A fluid solution (Q(t); = 0 and Q(t) > 0 for some to be weakly unstable if Q(0) t > 0. A fluid network (V; E; r) is defined to be weakly stable if there does not exist a weakly unstable solution. 4 Main result In this section we state and prove the main result of the paper. We show that global stability of a fluid network implies universal stability of an underlying adversarial queueing network.
A(t); D(t)) is defined Definition 4 A fluid solution (Q(t); to be stable if there exists some time , such that fluid network becomes empty after :
Theorem 1 Given an adversarial queueing network (V; E; r; w), suppose the associated fluid network (V; E; r) is globally stable. Then the network (V; E; r; w) is universally stable.
= 0; for t : Q(t) A fluid network (V; E; r) is defined to be globally stable if there exists some time , such that any work conserving Q(t); D(t)) with initial vector of queue fluid solution (A(t); j = 1, satisfies Q(t) having jQ(0) = 0, for all lengths Q(0) t .
Remark. This theorem parallels the result by Dai [8], which states that if a fluid model of a stochastic queueing network is globally stable, then the stochastic queueing network converges to a steady state and the steady state queue lengths have finite expectations. Our result is a worst case deterministic analogue of Dai’s theorem: if the fluid model is globally stable, then queue lengths are deterministically bounded. The assumptions and proof techniques for these two results are however, different. Main assumptions in [8] are that interarrival and service times are randomly distributed, with independent and identical distribution. Our adversarial queueing model does not assume any fixed distribution on arrival processes and does not assume fixed arrival rates. We first establish several auxiliary results.
As we see, the definition of stability for fluid models is somewhat different from the one for adversarial queues. Instead of requiring a bounded number of packets in the network, the fluid stability requires the network to become empty after some finite time. The reason for such definition will become more intuitive in the following section, when we discuss how fluid solutions are obtained as limits of realizations in adversarial queueing networks. The following simple example illustrates global stability in fluid networks. Consider a fluid network with only two vertices 1; 2 and one edge e = f1; 2g. There are only two simple paths in this network: f1; 2g and f2; 1g. The arrival rate parameter r is assumed to be less than one. We now show that this simple network is globally stable. Let Q(0) = (Q12(0); Q21(0)) be the initial state of the network such that Q12(0)+Q21(0) = 1. We have from (10), for any
t0
Lemma 2 Let (Q(t); A(t); D(t)) be any realization in an adversarial queuing network (V; E; r; w). Then for any time t = 0; 1; 2; : : : and any edge e X
Q12(t) = Q12(0) + A12(t) ? D12 (t);
P :e2P
4
Q(e;P ) (t+1) ?
X
P :e2P
Q(e;P ) (t) w + jPj;
(13)
and
limits (14) exist for t = q1. Applying Lemma 2 to the differences Q(tk +1) ? Q(tk ); Q(tk +2) ? Q(tk +1); : : :; Q(tk + q1k) ? Q(tk + q1k ? 1), we obtain
jQ(t + 1)j ? jQ(t)j (w + jPj)jE j:
jQ(tk + q1k)j k + C + q1k(w + jPj)jE j =
Proof: Note that left-hand side of (13) is equal to the difference between the total number of packets that arrived into edge e and departed from e during [t; t + 1]. The total number of packets that arrived externally is not bigger than rw < w by constraint (4). The total number of packets that arrived internally (departed from a previous edge in a path) is not bigger than the number of paths containing edge e, which in its order is not bigger than jPj. The total number of packets that departed is not bigger than 1 since at most one packet can cross any given edge at a time. We conclude that the maximal change of the number of packets in edge e during time interval [t; t + 1] is not bigger than maxfw + jPj; 1g = w + jPj: This proves (13). The total change of the number of packets in the network then satisfies
jQ(t + 1)j ? jQ(t)j (w + jPj)jE j:
k
k
1 + q1(w + jPj)jE j + Ck :
Also note from the constraints (4) and (3) that for each P and e 2 P
P2
AP (tk + q1k) ? AP (tk ) rd qwk ew r( qwk + 1)w = k k k rq1 + rw k; 1
1
and
D(e;P ) (tk + q1k) ? D(e;P ) (tk ) q1k k = q1 : k
2
Since all the ratios are bounded, there exists a sequence kn(1); n = 0; 1; 2; : : : such that the limits
We now state and prove a proposition which is a key result for proving Theorem 1. This proposition provides a general technique of building solutions to fluid models from realizations in the underlying adversarial network. Then, in order to prove Theorem 1, we will show that unstable realizations correspond to unstable fluid solutions.
A(tkn + q1kn(1) ) ? A(tkn ); Q(tkn + q1kn(1) ) ; nlim lim !1 n!1 kn(1) kn(1) (15) D(tkn + q1 kn(1)) ? D(tkn ) lim n!1 kn(1) 1); A(q 1); D(q 1) reexist. We denote these limits by Q(q
Proposition 1 Given a realization (Q(t); A(t); D(t)) in an adversarial queueing network (V; E; r; w), suppose a nondecreasing sequence of integer times t1 ; t2; : : :; tk ; : : : is such that jQ(tk )j k+C for some constant C . Then, there exists a sequence of positive integers k1; k2; : : :; kn; : : : with the following properties:
(1)
(1)
(1)
(1)
(1)
spectively. By a similar argument, we can construct a subsequence kn(2) of the sequence kn(1) such that the limits
1. The limits
A(tkn + tkn) ? A(tkn ) ; lim Q(tknk+ tkn) ; nlim n!1 !1 kn n (14) ) + tk ) ? D(t D(t n k k n n lim n!1 kn exist for each nonnegative real number t. These limits will be called “fluid limits” and will be denoted by A(t) and D(t) respectively. Q(t); A(t); D(t)) is a fluid 2. The vector valued function (Q(t); solution of the fluid model (V; E; r). If the realization (Q(t); A(t); D(t)) is work conserving, then the fluid A(t); D(t)) is also work conserving. solution (Q(t);
lim n!1
Q(tkn + q2kn(2) ) A(tkn + q2kn(2) ) ? A(tkn ) ; lim ; n!1 kn(2) kn(2) (2)
(2)
(2)
(16)
D(tkn + q2 kn(2)) ? D(tkn ) lim n!1 kn(2) 2); A(q 2); D(q 2 ). exist. We denote these limits by Q(q (2) (1) Since kn is a subsequence of kn then the limit (15) exists (2) (1) when kn is substituted for kn . Continuing, we build a (m) series of sequences kn ; m = 1; 2; : : : with the following (2)
(2)
properties
m) is a subsequence of k(m?1) , n
1. for each m, kn (
2. for each l and each m l the limits
Proof of Proposition 1: Let Q+ = fq1; q2; : : :; qn; : : :g denote the countable set of nonnegative rational numbers. (1) (1) (1) We first find a sequence k1 ; k2 ; : : :; kn ; : : : such that
Q(tknm + ql kn(m) ) lim ; n!1 kn(m) (
5
)
on the domain of This proves Lipschitz continuity of D(t) nonnegative rationals. Finally, using (1) we have for each path P
A(tknm + ql kn(m) ) ? A(tknm ); kn(m) D(tknm + ql kn(m) ) ? D(tknm ) lim n!1 kn(m) exist and are independent of m. These limits are de l ); A(q l ); D(q l ). noted by Q(q nlim !1
(
)
(
)
(
(
)
Q(eP ;P ) (tkn +t00 kn) = Q(eP ;P ) (tkn +t0 kn)+AP (tkn +t00kn )?
)
AP (tkn +t0 kn)?(D(eP ;P ) (tkn +t00 kn)?D(eP ;P ) (tkn +t0 kn)); and using (2), for all k = 1; 2; : : :; k(P) Q(ePi ;P ) (tkn + t00kn) = Q(ePi ;P ) (tkn + t0 kn)+
n
( )
D(ePi? ;P ) (tkn + t00kn) ? D(ePi? ;P ) (tkn + t0 kn)? (D(ePi ;P ) (tkn + t00kn ) ? D(ePi ;P ) (tkn + t0 kn)): Dividing by kn we obtain Q (eP ;P ) (t00) = Q (eP ;P ) (t0 ) + AP (t00) ? AP (t0 )? (19) (D (eP ;P ) (t00 ) ? D (eP ;P ) (t0 ));
n
lim D(tkn + ql kkn) ? D(tkn ) n!1 n l ); A(q l ); D(q l ) respectively. exist and are equal to Q(q
0
Q (ePi ;P ) (t00) = Q (ePi ;P ) (t0)+D (ePi? ;P ) (t00)?D (ePi? ;P ) (t0 )? (20) (D (ePi ;P ) (t00 ) ? D (ePi ;P ) (t0 )): for i = 1; 2; : : :; k(P). From the Lipschitz continu and D(t) , the Lipschitz continuity of Q(t) ity of A(t) follows. From the Lipschitz continuity of the functions A(t); D(t) on the domain of nonnegative rationals Q(t); 1
AP (t00) ? AP (t0 ) =
= lim A(q); = lim Q(q); A(t) Q(t) q!t;q2Q q!t;q2Q = lim D(q); D(t) q!t;q2Q +
for all t 2 R+ : Since for any nonnegative real t and any pair of rationals t0 ; t00 such that t0 t t00 , we have
AP (tkn + t0 kn) AP (tkn + tkn) AP (tkn + t00kn) ; kn kn kn
AP (t00 )?AP (t0) r(t00 ?t0 );
and
and AP (t) is a Lipschitz continuous function on the domain of nonnegative rationals. Also, using (3) we have that for each e 2 P X
P :e2P
(21)
+
+
nondecreasing function. Therefore
P :e2P
1
Q+ , it follows that there exists a unique Lipschitz continuous extension of these functions onto the domain of nonnegative reals R+ . The extension is such that
AP (tkn + t00kn) ? AP (tkn + t0kn) lim n!1 kn P :e2P 00 0 d (t ?wt )kn erw r(t00 ? t0) + lim rw = (17) lim n!1 kn n!1 kn 00 0 r(t ? t ); where the first inequality follows from (4). But AP (t) is a X
0
and
X
AP (t00)?AP (t0 )
0
0
We have proven the existence of limits (14) for the sequence kn and for all nonnegative rational values of t. Let (e;P ) (t); AP (t); D (e;P ) (t) us now prove that the functions Q are Lipschitz continuous on the domain of nonnegative rational numbers Q+ . Fix a pair of nonnegative rational numbers t0 < t00 . We have for each edge e
P :e2P
1
1
Q(tkn + ql kn) ; lim A(tkn + ql kn) ? A(tkn ); lim n!1 n!1 k k
X
0
0
Now we consider a diagonal sequence kn = kn ; n = 0; 1; 2; : ::. Since kn is a subsequence of every sequence kn(m) , apart from finite number of terms, it follows that for each rational ql the limits
n
0
0
D (e;P ) (t00) ? D (e;P ) (t0) =
D(e;P ) (tkn + t0 kn) D(e;P ) (tkn + tkn) kn kn D(e;P ) (tkn + t00kn) ; kn
then the limits (14) hold for any nonnegative real value of t. This completes the proof of the first part of Proposition 1.
D(e;P ) (tkn + t00kn) ? D(e;P ) (tkn + t0 kn) lim n!1 kn P :e2P (t00 ? t0)kn = t00 ? t0 : (18) lim n!1 kn X
To prove the second part, we need to show that the con A(t); D(t)); t 2 R+ satisfies constructed process (Q(t); straints (8),(9),(10),(11) of the fluid model (V; E; r). 6
From (21) and (17), (18), (19), (20) it follows that for any e 2 E and for all nonnegative reals t1 < t2 X
AP (t2 ) ? AP (t1 ) r(t2 ? t1 );
P :e2P X
(22)
X
P :e2P
D (e;P ) (t2) ? D (e;P ) (t1 ) t2 ? t1 ;
P :e2P
From the work conservation constraint (7) for the underlying adversarial queueing network, it follows that for each n, ^n; tk^n + t2k^n] such that there exists zn 2 [tk^n + t1k
0
(24)
0
0
0
and
Q (ePi ;P ) (t2) = Q (ePi ;P ) (t1 )+D (ePi? ;P ) (t2 )?D (ePi? ;P ) (t1 )? 1
1
X
(25)
(D (ePi ;P ) (t2 ) ? D (ePi ;P ) (t1 )); for i = 1; 2; : : :; k(P). In particular, (8), (9), (10) and (11) A(t); D(t)) is a fluid solution of are satisfied. Thus, (Q(t); the fluid model (V; E; r).
P :e2P
P :e2P
Q (e;P ) (t) > 0;
X
P :e2P
P :e2P
We now have the necessary tools for proving our main result. Proof of Theorem 1: We will prove the result by contradiction. Suppose there exists a realization (Q(t); A(t); D(t)); t = 0; 1; 2; : :: in the adversarial network (V; E; r; w) which is unstable. Let be the emptying time specified by the second part of Definition 4. In particu j = 1, there holds lar, for all fluid solutions satisfying jQ(0) = 0. We will construct a particular fluid solution Q() 6= 0, thereby obtaining A(t); D(t)) satisfying Q() (Q(t); a contradiction.
D(e;P ) (tkn + t2kn) ? D(e;P ) (tkn + t1kn ) = (t2 ? t1 )kn;
then
D (e;P ) (t2 ) ? D (e;P ) (t1 ) = t2 ? t1;
and we are done. Otherwise, there exists an infinite subse^n; n = 1; 2; : : : , of the sequence kn, for which quence k
P :e2P
Lemma 3 Given
X
jtk^n + z0 k^n ? zn j(w + jPj):
where the P last equality follows from the choice of z0 . We (e;P ) (z0 ) = 0, which contradicts (26). conclude, P :e2P Q A(t); D(t)); t 2 R+ Thus, the constructed solution (Q(t); is work conserving. This completes the proof of Proposition 1. 2
D(e;P ) (tkn + t2kn) ? D(e;P ) (tkn + t1kn ) : lim n!1 P :e2P kn If for all large enough n there holds
P :e2P
P :e2P
Q(e;P ) (zn )
X
D (e;P ) (t2) ? D (e;P ) (t1 ) =
X
X
lim n!1
X
P :e2P
Q(e;P ) (tk^n + z0 k^n) ?
Q(e;P ) (tk^n + z0 k^n) k^n P :e2P jtk^n + z0 k^n ? zn j(w + jPj) = 0; lim n!1 k^n
(26)
X
Q(e;P ) (tk^n + z0 k^n ) : k^n P :e2P X
From (27)
for all t 2 [t1; t2]. We have X
Q (e;P ) (z0 ) = nlim !1
Applying Lemma 2 we have
We now show that this solution is work conserving if the realization (Q(t); A(t); D(t)) is work conserving. Suppose, for given t1 < t2 and e 2 E , there holds X
(27)
^(n) is contained in Note that the sequence (zn ? tk^n )=k [t1; t2] and therefore has some limit point in [t1; t2], which we denote by z0 . Without the loss of generality, assume ^(n) actually converges to z0 . We now arthat (zn ? tk^n )=k P (e;P ) (z0 ) = 0. This would contradict gue that P :e2P Q (26) and prove the work conservation of our process. We have
(23)
Q (eP ;P ) (t2 ) = Q (eP ;P ) (t1 ) + AP (t2 ) ? AP (t1 )? (D (eP ;P ) (t2 ) ? D (eP ;P ) (t1 ));
Q(e;P ) (zn ) = 0:
D(e;P ) (tk^n + t2k^n) ? D(e;P ) (tk^n + t1k^n )
0. But > 0; Q(t 0 ) = lim Q(0 + t0 kn) : Q(t n!1 kn
Proof: We have for some t0
D (eP ;P ) (t + Q eP (t)) = Q (eP ;P ) (0) + AP (t); 0
8
0
0
(30)
0
D (ePi ;P ) (t + Q eP (t)) = Q (ePi ;P ) (0) + D (ePi? ;P ) (t); 0
for all i = for each e.
D(eP ;P ) tk + tk + QeP (tk + tk) lim : k!1 k
and (31)
1
0
Since FIFO policy is used, we have from (28)
1; 2; : : :; k(P); where Q e(t) = P :e2P Q e (t), P
D(eP ;P ) tk + tk + QeP (tk + tk) = 0
0
(35)
AP (tk + tk) + Q(eP ;P ) (0): Finally, D(eP ;P ) (tk ) = AP (tk ) + Q(eP ;P ) (0) ? Q(eP ;P ) (tk ): Combining this with (33)-(35), we obtain D (eP ;P ) (t + Q eP (t)) =
Theorem 5 Given an adversarial queueing network (V; E; r; w) and an associated fluid model (V; E; r), suppose that all the FIFO fluid trajectories are stable. Then FIFO policy is stable in the adversarial queueing network (V; E; r; w).
0
0
0
0
0
We first prove FIFO version of Proposition 1. The proof of Theorem 5 is then identical to the one of Theorem 1.
lim k!1
Proposition 2 Under the same conditions that Proposition 1, suppose, in addition, that the realization (Q(t); A(t); D(t)) corresponds to a FIFO policy. Then, the limits (14) satisfy equations (30) and (31). In particular, the A(t); D(t)) is a FIFO fluid trajectory. fluid trajectory Q(t);
0
AP (tk + tk) ? AP (tk ) + Q(eP ;P ) (tk )) = k AP (t) + Q (eP ;P ) (0); 0
0
and (30) is proven. We prove (31) similarly. This completes the proof of Proposition 2 and of Theorem 5.2
(32)
Consider now adversarial queueing networks with pathwise constant arrival rates. Namely forPeach path P there exists a nonnegative value rP such that P :e2P rP < 1 for each edge e, and (5) is satisfied. Bramson [4] proved that FIFO trajectories in fluid networks with path-wise constant arrival rates are stable. Combining this result with Theorem 5 we obtain
k ! 1: For any path P 2 P
Theorem 6 FIFO scheduling policy is stable in adversarial queueing networks with path-wise constant arrival rates.
Proof:
Consider the sequence of positive integers k1; k2; : : :; kn; : : : , from Proposition 1, for which limits (14) exist. From now on we denote the sequence tkn by tk for simplicity. Fix t 2