Tutorials › Stochastic Processes › End-to-End Response Times in Jackson Networks

M/G/1 Queues and Networks · Tutorial 689 of 994

End-to-End Response Times in Jackson Networks

Calculate mean end-to-end response time by weighting each node’s mean sojourn time by the expected number of visits per external job.

Advanced 10 min read

What You'll Learn

  • Set up the assumptions and traffic equations for a stable open Jackson network.
  • Convert node arrival rates into expected visits per external job.
  • Obtain the mean sojourn time at an M/M/1 node.
  • Combine node delays into an end-to-end response time, including feedback.
  • Check a response-time calculation using the network’s mean population.
  • Identify why counting each node only once can give a wrong answer.

From Node Delays to a Network Response Time

An external job in an open Jackson network may visit several service nodes before it leaves. It may also return to a node it has visited before. The network’s mean end-to-end response time must therefore account for both the delay at each node and how often a typical external job visits that node. The key is to use expected visit counts as weights: nodes visited more often contribute more to the total mean response time.

Consider a network with \(J\) single-server nodes, state space \(S=\mathbb{N}_0^J\), and continuous time \(t\geq0\), defined on a probability space \((\Omega,\mathcal{F},\mathbb{P})\). External jobs arrive to node \(i\) as independent Poisson processes of rates \(\alpha_i\). Service times at node \(i\) are exponential with rate \(\mu_i\), and service is first-come, first-served. After service at node \(i\), a job goes to node \(j\) with probability \(r_{ij}\), or leaves the network with probability \(r_{i0}=1-\sum_{j=1}^J r_{ij}\). Write \(R=(r_{ij})\) for the routing matrix among the nodes, and let \(\gamma=\sum_{i=1}^J\alpha_i\) be the total external arrival rate.

Definition: The end-to-end response time \(T\) of an external job is the elapsed time from its arrival to the network until it leaves the network. The mean response time is \(\mathbb{E}[T]\), averaged over external arrivals in steady state. The expected number of visits to node \(i\) per external job is denoted by \(v_i\).

We assume \(\gamma>0\), that the routing process eventually exits (equivalently, the spectral radius of \(R\) is less than \(1\)), and that the network is stable: each node’s total arrival rate \(\lambda_i\) satisfies \(\lambda_i<\mu_i\). These conditions ensure finite expected visit counts and the stationary node distributions used below. The traffic equations are \(\lambda_j=\alpha_j+\sum_i\lambda_i r_{ij}\). They account for external arrivals and jobs routed from other nodes.

Expected Visits and Mean Node Delay

Choose an external job at random from the combined external stream. Its entry node has probabilities \(a_i=\alpha_i/\gamma\). If \(v_i\) is its expected number of visits to node \(i\), then each visit either is its initial entry or follows a visit to another node. In row-vector notation this gives \(v=a+vR\), so \(v=a(I-R)^{-1}\). The inverse exists under the assumption that the spectral radius of \(R\) is less than \(1\).

The total rate of arrivals to node \(i\) is \(\lambda_i\), while external jobs enter the network at rate \(\gamma\). Thus the visit rate to node \(i\) per external job is \(v_i=\lambda_i/\gamma\). This relationship lets us use the traffic equations to find the weights without tracing every possible route.

At node \(i\), the arrivals are Poisson and the node behaves in steady state as an M/M/1 queue with arrival rate \(\lambda_i\) and service rate \(\mu_i\). Its mean sojourn time, including service, is

$$ W_i=\frac{1}{\mu_i-\lambda_i}. $$

For example, this follows from the Pollaczek–Khinchine mean-waiting-time formula for an M/G/1 queue. With exponential service, \(\mathbb{E}[S_i]=1/\mu_i\) and \(\mathbb{E}[S_i^2]=2/\mu_i^2\); under \(\lambda_i<\mu_i\), the mean queueing wait is \(\lambda_i/(\mu_i(\mu_i-\lambda_i))\). Adding the mean service time \(1/\mu_i\) gives the displayed sojourn-time formula. In using this node formula, the Poisson arrivals and exponential service assumptions matter: a general network of M/G/1 nodes need not have the Jackson-network properties used here.

Theorem (Mean end-to-end response time): In a stable open Jackson network with \(\gamma>0\), transient routing matrix \(R\), and node arrival rates \(\lambda_i<\mu_i\), the steady-state mean response time of an external job is $$ \mathbb{E}[T]=\sum_{i=1}^J v_i W_i =\sum_{i=1}^J \frac{\lambda_i}{\gamma(\mu_i-\lambda_i)}. $$ Here \(v_i=\lambda_i/\gamma\) is the expected number of visits to node \(i\) per external job, and \(W_i=1/(\mu_i-\lambda_i)\) is that node’s mean sojourn time.

Proof. The routing process of an external job has initial entry distribution \(a\) and transition probabilities \(R\) among the nodes. The expected number of visits to each node is therefore \(v=a+vR\): the first term counts initial entries, and the second counts visits reached after a previous service. Because the spectral radius of \(R\) is less than \(1\), the series \(I+R+R^2+\cdots\) converges to \((I-R)^{-1}\); hence \(v=a(I-R)^{-1}\) is finite. Multiplying the traffic equations by \(1/\gamma\) shows that \(\lambda/\gamma=a+(\lambda/\gamma)R\). The solution is unique because \(I-R\) is invertible, so \(v=\lambda/\gamma\).

To combine the node means, apply Little’s law to each stable node and to the network as a whole. Write \(L_i\) for the mean number of jobs at node \(i\), and \(L=\sum_i L_i\) for the mean number in the network. Little’s law gives \(L_i=\lambda_iW_i\) and \(L=\gamma\mathbb{E}[T]\). These uses require steady state and finite means, which hold under the stated stability assumptions for this finite-node Jackson network. Therefore $$ \gamma\mathbb{E}[T]=L=\sum_{i=1}^J L_i =\sum_{i=1}^J\lambda_i W_i. $$ Dividing by \(\gamma>0\), then substituting \(W_i=1/(\mu_i-\lambda_i)\) and \(v_i=\lambda_i/\gamma\), proves the formula. \(\square\)

Little’s law is used here in its standard queueing form: mean number in a stable system equals throughput times mean time in the system. The proof above shows how its nodewise and network-wide forms produce the visit-weighted response-time identity. No independence between the delays at successive visits is required; the calculation uses steady-state averages and flow rates.

Worked Network Calculations

Worked Example: Two Nodes in Tandem

External jobs arrive only to node \(1\), at rate \(\alpha_1=1\). After service at node \(1\), each job goes to node \(2\) with probability \(1\), and after service at node \(2\) it leaves. The service rates are \(\mu_1=3\) and \(\mu_2=2\). Find the mean end-to-end response time.

The routing rows, including exit probabilities, sum to \(1\): node \(1\) has routing probability \(1\) to node \(2\) and exit probability \(0\); node \(2\) has routing probability \(0\) to node \(1\) and exit probability \(1\). The traffic equations give \(\lambda_1=1\) and \(\lambda_2=\lambda_1=1\). Both nodes are stable because \(1<3\) and \(1<2\). Since \(\gamma=1\), the expected visits per external job are \(v_1=1/1=1\) and \(v_2=1/1=1\).

The node sojourn times are \(W_1=1/(3-1)=1/2\) and \(W_2=1/(2-1)=1\). Consequently, $$ \mathbb{E}[T]=1\cdot\tfrac12+1\cdot1=\tfrac32. $$

Check: The mean node populations are \(L_1=1\cdot\tfrac12=\tfrac12\) and \(L_2=1\cdot1=1\). Their sum is \(3/2\); dividing by the external throughput \(\gamma=1\) gives \(\mathbb{E}[T]=3/2\), as calculated.

Worked Example: Repeated Visits Through Feedback

A single node receives external arrivals at rate \(\alpha_1=1/2\). After each service, a job returns to the same node with probability \(1/2\), and leaves with probability \(1/2\). The service rate is \(\mu_1=3\). Find the expected number of visits per external job and the mean response time.

The routing probabilities sum to \(1\), since \(r_{11}=1/2\) and \(r_{10}=1/2\). The traffic equation is \(\lambda_1=1/2+\lambda_1/2\). Subtracting \(\lambda_1/2\) from both sides gives \(\lambda_1/2=1/2\), so \(\lambda_1=1\). The node is stable because \(1<3\), and \(\gamma=1/2\). Therefore \(v_1=\lambda_1/\gamma=1/(1/2)=2\). Equivalently, the expected number of visits is \(1+1/2+(1/2)^2+\cdots=2\).

The mean sojourn time on each visit, averaged over node arrivals in steady state, is \(W_1=1/(3-1)=1/2\). Thus $$ \mathbb{E}[T]=2\cdot\tfrac12=1. $$

Check: The mean number at the node is \(L_1=\lambda_1W_1=1\cdot\tfrac12=\tfrac12\). Dividing by the external arrival rate \(1/2\) gives network response time \((1/2)/(1/2)=1\), agreeing with the visit-weighted calculation.

Worked Example: Two Entry Points and Routing Between Nodes

External jobs arrive to node \(1\) at rate \(\alpha_1=1\) and to node \(2\) at rate \(\alpha_2=1/2\). From node \(1\), a job goes to node \(2\) with probability \(1/2\), otherwise it exits. From node \(2\), it goes to node \(1\) with probability \(1/3\), otherwise it exits. Let \(\mu_1=3\) and \(\mu_2=2\). Find the mean response time for an external job selected from the combined stream.

Check the routing rows including exits: node \(1\) has \(1/2+1/2=1\), and node \(2\) has \(1/3+2/3=1\). The traffic equations are $$ \lambda_1=1+\tfrac13\lambda_2,\qquad \lambda_2=\tfrac12+\tfrac12\lambda_1. $$ Substitute the second equation into the first: \(\lambda_1=1+\tfrac13(\tfrac12+\tfrac12\lambda_1)=\tfrac76+\tfrac16\lambda_1\). Thus \(\tfrac56\lambda_1=\tfrac76\), so \(\lambda_1=7/5\). Then \(\lambda_2=1/2+7/10=6/5\). These rates satisfy the equations: \(1+(6/5)/3=7/5\) and \(1/2+(7/5)/2=6/5\). They are stable because \(7/5<3\) and \(6/5<2\).

The combined external rate is \(\gamma=1+1/2=3/2\). Hence \(v_1=(7/5)/(3/2)=14/15\) and \(v_2=(6/5)/(3/2)=4/5\). The node sojourn times are \(W_1=1/(3-7/5)=5/8\) and \(W_2=1/(2-6/5)=5/4\). Therefore $$ \mathbb{E}[T]=\tfrac{14}{15}\cdot\tfrac58+\tfrac45\cdot\tfrac54 =\tfrac7{12}+1=\tfrac{19}{12}. $$

Check: \(L_1=\lambda_1W_1=(7/5)(5/8)=7/8\), while \(L_2=\lambda_2W_2=(6/5)(5/4)=3/2\). The total is \(7/8+3/2=19/8\). Dividing by \(\gamma=3/2\) gives \((19/8)/(3/2)=19/12\), confirming the response time.

What the Weights Do—and a Common Mistake

The term \(v_iW_i\) is the contribution of node \(i\) to an external job’s mean total time. The weight is an expected number of visits, not the probability that the job ever visits the node. These differ when a job can return. In the feedback example, the probability of ever visiting the node is \(1\), but the expected number of visits is \(2\).

Common mistake. Counting the feedback node only once gives the incorrect calculation \(1\cdot(1/2)=1/2\). The correction is to include all visits in expectation: the visit count is \(1+1/2+(1/2)^2+\cdots=2\), so the response time is \(2\cdot(1/2)=1\). Another error is to weight by the external entry rates \(\alpha_i\) alone. The traffic rates \(\lambda_i\), which include routed arrivals, determine the visit weights. Before using the formula, check that routing rows including exits sum to \(1\), solve the traffic equations, and verify \(\lambda_i<\mu_i\) for every node.

The method applies to the stated open Jackson setting: Poisson external arrivals, Markovian routing, exponential service, and stable nodes. A nodewise M/G/1 delay formula by itself does not establish that a network of general-service nodes has Jackson product form. Changing the service assumptions may change the arrival processes seen by nodes and invalidate this combination.

Check Your Understanding

For each question, state the assumptions needed and verify numerical answers by substitution.

  1. A tandem network has external rate \(1\), service rates \(\mu_1=4\) and \(\mu_2=3\), and each job visits both nodes once. Find the mean response time.
  2. For one node with external rate \(1/3\), feedback probability \(1/3\), and service rate \(2\), find the arrival rate, expected visits per external job, and mean response time.
  3. Explain why \(\lambda_i/\gamma\) is the expected number of visits per external job, not necessarily the probability that a job visits node \(i\).
  4. In the two-entry example, verify both traffic equations using \(\lambda_1=7/5\) and \(\lambda_2=6/5\).
  5. What stability condition is required at each node, and what can fail in the response-time calculation if it is violated?