540 likes | 550 Views
Dive into the analysis of different queuing systems, from M/M/1 to M/G/1 configurations, exploring reversibility, Burke's theorem, and network modeling. Learn about steady state solutions, blocking probabilities, and system behavior under various conditions.
E N D
Network Design and Performance Analysis Wang Wenjie Wangwj@gucas.ac.cn
Agenda • Reversibility and Burke’s Theorem • State-dependent M/M/1 Queuing System • M/M/1/K QUEUE • M/M/∞QUEUE • M/M/m Queue • M/M/m/m System • Center Server CPU model • M/G/1 Queue • Priority Queuing
1. Reversibility and Burke’s Theorem • Introduction • The input to the M/M/1 queueing system is a Poisson process, what can we say of its output? • For the M/M/1 , consider the inter-departure times • The queueing system is not-empty • The queueing system is empty
Reversibility • For a stochastic process ,reversibility means that when the direction of time is reversed, that is , if time flows backwards, the statistics of the process are the same as in the time normal case • Definition: • A stochastic process , X(t), is reversible if the samples (X(t1), X(t2),…, X(tm)) has the same distribution as (X(-t1), X(- t2),…, X(- tm)) for every real ( for continuous processes) and for every t1, t2 , tm.
Global Balance • Transition rate from state i to j Equilibrium: or
Reversibility vs. Satisfaction • Theorem A stationary Markov chain is reversible if and only if there is a collection of positive numbers pi, iS, which sum to one and satisfy the detailed balance equations: piqij,= qj pji, for i,jS. These pi are naturally the equilibrium state probabilities • All birth/death processes are reversible – Detailed balance equations must be satisfied
Burke’s Theorem • The departure process from an M/M/1 queuing system, in equilibrium, is Poisson.
Implications of Burke’s Theorem • Since the arrivals in forward time form a Poisson process, the departures in backward time form a Poisson process • Since the backward process is statistically the same as the forward process, the (forward) departure process is Poisson • By the same type of argument, the state (packets in system) left by a (forward) departure is independent of the past departures – In backward process the state is independent of future arrivals
NETWORKS OF QUEUES • 求解两个M/M/1队列串联后系统的状态概率。该系统的到达过程是到达率为的Poisson过程。这两个队列的服务时间相互独立,服务时间与到达过程相互独立。
Results • Derive from local balance equations
3. M/M/1/K QUEUE • Finite capacity, can hold a maximum of K customers
Results • The steady state solution is (< 1)
Exercise -1 • Suppose that messages arrive according to a Poisson process at a rate of one message every 4 msec, and that message transmission times are exponentially distributed with mean 3 ms. The system maintains buffers for 4 messages, including the one being served. What is the blocking probability? • What is the average # of messages in the system?
4. M/M/QUEUE • Every arriving customer is assigned to its own server of rate
Results • The steady state solution is (0 < < ) • This is a Poisson distribution, E[n]= • Due to the unlimited supply of servers, may exceed 1
Markov Chain • Use results from state-dependent M/M/1 systems, with:
6. M/M/m/m System • • No queue : blocked customers lost • What does the Markov chain look like?
Markov Chain • Use results from state-dependent M/M/1 systems, with:
l 1 = n p ( ) p 0 n m n m æ ö l 1 ç ÷ ç ÷ m Erlang B m ! è ø Þ = p m n Formula æ ö l m 1 å ç ÷ + 1 ç ÷ m n ! è ø = 1 n Results
7. Center Server CPU model • Single server, finite population K • State-transition diagram is:
Result(1/2) • Here
Result(2/2) • Steady-state probabilities are:
8. M/G/1 Queue • M/M systems very tractable due to memoryless property of interarrival & service times • However, exponential service times not a very good assumption – service times deterministic in ATM – there are limits on packet sizes • Poisson arrival assumption somewhat better – aggregation of arrival streams
Methods for M/G/1 • In general , there are two methods • Residual Life Approach: This is easy to use but can only give the mean values of the desired parameters • Method of Imbedded Markov Chains: This is based on finding a set of a time points where the Markovian Property is retained. This is generally harder to use but will give the distribution of various parameters from which mean and higher moments may be computed
Mean Delay in M/G/1 • Let X1,X2 … be the iid sequence of service times in an M/G/1 system • Suppose an arriving customer finds the server busy X1 X2 … Xj
Derivation (1/4) Let Wi = waiting time in queue of ith arrival Ri = Residual service time seen by I (i.e., amount of time for current customer receiving service to be done) Ni = Number of customers found in queue by i i-1, … , i-Ni Server ith arriving Nicustomers waiting for service 用户i 的等待时间
Results(1/2) • The Mean waiting time( is the second moment of service time distribution):
Exercise-2 (a) What is the mean residual service time of a system with exponential service times with mean m? Does this make sense? (b) What is the mean residual service time of a system with constant service time m? (c) Compare the average waiting time for the M/M/1 and M/D/1 systems
M/G/1 Queue with Vacations(1) • Suppose that at the end of each busy period, the server goes on “vacation” for some random interval of time. • Thus, a new arrival to an idle system, rather than going into service immediately, waits for the end of vacation period • When the queue is empty, the server takes a vacation • For data networks, vacations correspond to the transmission of various kinds of control and recordkeeping packets • This system is useful for polling and reservation systems (e.g., token ring)
9. Priority Queuing When a higher priority arrival occurs at a time when a relatively lower priority customer is still in service, different choices on the strategy are: • Non-Preemptive Priority • Preemptive Resume Priority
Model • n priority classes of customers • Type-k customers arrive according to Poisson process of rate k and have the mean service times 1/k • Separate queues for each priority, when server becomes available it selects from the highest priority non-empty queue • Non-preemptive
Utilization • Server utilization for type-k customers: k = k /k • Total utilization: k = 1+ 2 + …+ n <1
Waiting time for highest-prioritycustomers • R’’ : residual time of customer (if any) found in service • Nq1(t) : # of type-1 customers found in the Q