Chapter 3
Delay models in Data Networks
Section 3.2
Little`s Theorem
3.2 Little`s Theorem : average number of customers
in system : mean arrival rate T:mean time a customer spends in
system
N
N
T
Little`s Theorem Proof
N(t) = number of customers in system at time t
(t) = number of customers who arrived in interval [0,t]
Ti = time spent in system by the i-th customer
Little`s Theorem
Little`s Theorem
TN
take
t
T
t
tT
tdN
t
t
t
iit
ii
t
lim
)(
)(1)(
1
)(
1)(
10
3.2.3 Application of Little`s Theorem
Ex3.1 : arrival rate in a transmission line NQ : average number of packets
waiting in queue W : average waiting time spent by a
packet in queue
NQ = W
Application of Little`s Theorem
If = average Tx time =
: Average number of packets under Tx I.e. fraction of time that s busy utilization fact
or
XX
Application of Little`s Theorem Ex3.2
N : average number packets in network T : average delay per packet
also Ti : average delay of packets arriving
at node i
n
iiTN
1
iii TN
3.3 M/M/1 Queuing System M/M/1
First M : arrival , Poisson Second M : service , Exponential 1 : server number
M/M/1 Queuing System Arrival Poisson process
A(t) : number of arrivals from 0 to time t
Number of arrivals that occur in disjoint intervals are independent
Number of arrivals in any interval of length is Poisson distributed with parameter , ,1,0,
!
)()()(
nn
entAtAP
M/M/1 Queuing System Properties of Poisson process
1. Inter arrival times are independent and exponentially distributed with parameter
tn : time of the n-th arrival
2
1
1var,
1)( :
0,1
iancemeanePpdf
SeSP
tt
nn
Sn
nnn
M/M/1 Queuing System
2. For every t0, 0
!2
)(1:
0)(
)(2)()(
)(1)()(
)(10)()(
2
0lim
eNote
owhere
otAtAP
otAtAP
otAtAP
M/M/1 Queuing System3. A = A1+A2++AK is also Poisson with
rate = 1+ 2++ K
Poissonmerge
A1
A2
AK…
……
..
M/M/1 Queuing System
4.
Poisson split
P
1-P Poisson with (1-P)
Also Poisson with
P
M/M/1 Queuing System Service time : Exponential distribution
with parameter Sn : service time of n-th customer
nS
n
Sn
eSPpdf
SeSSP
)(:
0,1
M/M/1 Queuing System Properties of Exponential : memoryles
s
0, ),(|
0, ),(|
trforrSPtStrSP
trforrPttrP
nnn
nnn
Markov chain formulation Let's focus at the times,0,,2,…,k,…
Nk = number of customers in system at time k = N(k)
Where N(t) is continuous-time Markov Chain Nk is discrete-time
Let Pij : transition probabilities = P{Nk+1=j|Nk=i}
Markov chain formulation
1,1, ),(
0),(
0),(
1),(1
)(1
,
1,
1,
00
iiijandioP
ioP
ioP
ioP
oP
ji
ii
ii
ii
Markov chain formulation
Note During any time interval, the total number
of transitions from state n to n+1 must differ from the total number of transitions from n+1 to n by at most 1
I.e. frequency of transitions from n+1 to n = frequency of transitions from n to n+1
ntNPnNPP
iesprobabilitstatesteady
tk
kn
)(
limlim
Markov chain formulation
Markov chain formulation
Take ->0 Pn=Pn+1
Pn+1=Pn, n=0, 1, … 等比數列where = / utilization Pn+1= n+1P0, n=0,1,…
Since <1, and
)23.3,...(1,0)1(
110
0
nP
PP
nn
nn
Markov chain formulation
1,
11
)25.3(1
)1(
)24.3(1)1(
1)1(
)1()(lim
2
2
00
WNW
NT
nnPtNEN
Q
n
n
nn
t
M/G/1 System
Let Ci : customer I Wi = waiting time of Ci
Xi = service time of Ci
Ni = # of customers found waiting in queue when Ci arrives Ri = residual service time of the customer in service when Ci arrives
M/G/1 System
Ci start serviceCi arrives
Ri
Ni
Xi-1Xi- Ni
)48.3(1
)()()()(
1lim
1
RW
XENEREWE
WRu
NRW
XRW
jiii
Qi
i
Nijjii
i
In steady-state,
M/G/1 System
To calculate R, by graphical approach:
Time
Residual service time r()
Ci starts service
M(t)=# of service completion in [0, t]
tXM(t)
XM(t)
X2
X2
X1
X1
M/G/1 System
Time avg of r() in [0, t]
)(
)(
2
1
2
11)(
1
)(
1
2
2)(
10
tM
X
t
tM
Xt
drt
tM
ii
i
tM
i
t
M/G/1 System
)1(2
)(
1
)(2
1
)(lim
)(lim
2
1
)(1
lim
2
2
)(
1
2
0
XERW
XE
tM
X
t
tM
drt
R
tTake
tM
ii
tt
t
t
P-K Formula(3.53)
Ex3.15
Consider a go back n ARQ:
Assume that error in the forward channel is p, return channel is error-free
Packet arrives as a Poisson process with rate packets/frame
1 2 3 … n-1 n 1
1 2 3
time
time
sender
receiver
Timeout (n-1) frames
Prop. delay
Ex3.15
Service time X : from when a packet transmitted until it is successfully received
1 , if 1st tx is successful (1-p)X={ 1+n, if 1st tx is un- successful; 2nd is su
ccessful p(1-p)1+kn, if 1st k is un- successful;(k+1)th successful Pk(1-p)
Ex3.15
0
22
0 0
0
)1()1(][
)1(
)1()1()(
k
k
k k
kk
k
k
ppknXE
kpnpp
ppknXE
Ex3.15
WXETXE
XEW
p
ppn
p
npXE
p
npXE
)(,))(1(2
)(
)1(
)(
1
21][
11)(
2
2
222
3.5.1 M/G/1 Queue with vacations
1. When the server has served all customers, it goes on vacation
2. If the system is still idle after a vacation interval, go on another vacation interval
3. If a customer arrives during a vacation, customer waits until the end of vacation. Chapter 1 section 1.3.1 page 34in Network or Transport Layer
M/G/1 Queue with vacations
M/G/1 Queue with vacations
Assume vacation intervals v1, v2… are iid and are independent of customers arrival & service times.→A customer must wait for the completion
of the current service or vacation interval, and then the service of all customers waiting before it.
M/G/1 Queue with vacations
Where R is the mean residual time for completion of service or vacation when the customer arrives.
1
RW
M/G/1 Queue with vacations
Let L(t) = # of vacations completed by tM(t) = # of services completed by t
2)(
1
2)(
10 2
11
2
11)(
1i
tL
ii
tM
i
tV
tX
tdr
t
)(
)(
2
1
2
11
)(
1
2
2)(
1 tL
V
t
tLX
t
tL
ii
i
tM
i
)( 2VE
)(2
)(
)1(2
)(
1
22
VE
VEXERW
)(
)()1(
2
1
2
)( 22
VE
VEXER
)(
1)(),(
)(
)1(lim
VEt
tLVE
tL
tt
Because Fraction of time occupied with vacation = 1-
Ex3.16 : FDM, SFDM, TDM m streams of traffic with rate /m(Poi
sson) FDM system – Divide available bandwi
dth into m subchannels. Transmission time for a packet on each of these subchannels is m.
FDM
mm
XE )(
2222 0)()( mmXEXVarXE
)56.3()1(2)1(2
mmWFDM
Slotted FDM System Packet trans starts only at time m,
2m,…When the queue is idle, server takes a vacation of m. (if idle again after vacation, take another)
)57.3(2)1(2
mW
mW FDMSFDM
TDM System
Look at SFDM queue, ->same queue WTDM=WSFDM
Summary
mm
T
mm
T
mifbetterm
Tm
T
FDM
SFDM
FDMTDM
)1(2
)1(2
2),12
(1)1(2
Service time
Reservations & Polling
Satellite
Collision -> solution:polling or reservation
S1 D1 D1 S2 D2
Cycle
S1 D1 D1 S2 D2…
Reservation & Polling M Poisson traffic streams with rate /m1. Gated System – only those packets
which arrive prior to the user’s preceding reservation period are transmitted.
2. Exhaustive system – all packets are transmitted including those that arrive during this data period
3. Partially gated – all packets that arrive up to the beginning of the data interval.
Single-User
Gated system:
S D D S D D … D
m=1
time
Di arrives Di startsWi
Ri
Vl(I)
Di ends tx
l(i)-th reservation intervalNi : # of packets arrive in front of Di
Single-User A reservation(vacation)starts when the
system has served all packets which arrive prior to the preceding reservation interval.
A vacation(M/G/1 queue with vacation) starts when the system has served all packets which have arrived.(corresponds to exhaustive system)
Single-User
WXWEXENE
WNEN
VE
VEXER
itake
RE
i
i
i
)()()(
)(
)(2
)()1(
2
)(
)(
22
與以前一樣
Single-User
exhaustiveVE
VEXEW
VE
VE
VEXEW
)(2
)(
)1(2
)(
)61.3(1
)(
)(2
)(
)1(2
)(
22
22
Single-user
gated
Multi-User
Ni is redefined as # of packets which must be transmitted before packet i
S D D D … S D D time
Packet i arrives Packet i startsWi
Ri
Ni
Pakcet i ends
… S D D
Sum=Yi
Multi-user
Where Yi : includes all reservation intervals packet I must want for.
)63.3()()()()()( iiii YEXENEREWE
Multi-User If number the users 0, 1, 2,…,m-1, the
l-th reservation interval is used to make reservation for user l mod m
1
0
1
0
22
)(2
)()1(
2
)(m
ll
m
ll
VE
VEXE
R
Multi-user
?),65.3(1
YYR
W
YWRW
Multi-user For an exhaustive systemLet lj=E ( Yj | packet i arrives in user l’s
reservation or data intervals and belongs to user (l+j) mod m)
0,...
0,0
mod)(mod)2(mod)1( jVVV
j
mjlmlml
Packet i belongs to each user with same prob. = 1/m
Multi-user
)66.3(
...
1
1
1
1
mod)(
mod)1(mod)2(mod)1(
mod)2(mod)1(
mod)1(
1
1
1
1
m
j
mjl
mmlmlml
mlml
ml
m
jlj
m
jlj
Vm
jm
VVV
VV
V
m
m
Multi-user
All users have equal average data length in steady state.
P(packet i arrives during user l’s data interval)
P(packet i arrives during user l’s reservation interval)
m
1
0
)1( m
k
k
l
V
V
Multi-user
1
1
m
j
E (Yi|pkt i arrives in user l’s data or reser. int.) X P(pkt i arrives in user l’s reser. Or data int. )
1
0
1
0
2
1
0
1
11
0
mod)(
1
)68.3(2
)1(
2
)(
))1(
(
m
l
l
m
ll
m
l
m
jm
k
k
l
mjl
Vm
Vwhere
Vm
VVm
V
V
mV
m
jm
Multi-user
If Vl’s have same dist.
m
VVwhere
V
VmXW
m
l
ll
V
V
1
0
2
2
22
)(
2)1(2
)(
)1(2
2
Exhaustive system(3.69)
- The partially gated system is the same as the exhaustive system except that if a packet arrives in its own user’s data interval (with prob. /m), it is delayed an extra cycle of reservation periods(mV)
Y is increased by
Multi-user
Vm
Vmm
0)1(
Multi-user- The fully gated system is the same as
partially gated system except if a pkt arrives during a user’s own reservation interval (prob. (1-)/m)
- It is delayed by an additional mV
- Y is increased by Vmm
)1
(
Priority Queuing N classes of customers class i
arrives a Poisson process with rate I
service time
Each class joins a separate queue
2,
1i
i
i Xu
X
1
2
Server
Priority Queuing Single server will server customers from
the highest priority queue first1. Non-preemptive
- a lower priority customer, once started, is allowed to finish, when a high priority customer arrives.
2. Preemptive resume- Service for a low priority customer is interrupted when a high priority customer arrives and is resumed from the point of interruption when all higher priority customers have been served
Non-preemptive
Let NQk=avg. # in queue for priority k
Wk= avg. queueing time for priority k k = k/k = system utilization for
priority k R = mean residual service time.
Non-preemptive
2112
2
1
12
11
111
11
111
1
1
WNNRW
RW
WRNRW
Q
Where 1W2 is the avg. # of higher priority customers that arrives while you are waiting
Non-preemptive
)...1)(...1(
)1)(1(
21121
2112
kkk
RW
RW
Similarly,
Non-preemptiveR=the residual time
2
1
)(2
1X
n
ii
Where =2nd moment of the service time avg. over all priority
2X
221
1 ... nn XX
Non-preemptive
)81.3()(2
1 2
1
XRn
ii
代入
)83.3(1
)82.3()...1)(...1(2 21121
2
1
kkk
kk
i
n
ii
k
WTand
XW
Preemptive
k
kT 1
Note that Tk will not be affected by customers from class k+1 to n
Unfinished work of Class 1 to k (A)
Work due to class 1to k-1 who arrives whenthis customer is waiting (B)
)84.3(2
)1
(Re...1
)(
1
2
1
k
iii
k
k
k
XRwhere
RWcall
RA
Preemptive
)86.3()1(
)1(1
,1
)87.3()...1)(...1(
)...1(1
...1
1
1)(
1
111
1
111
11
1
11
11
RTkfor
RT
TR
T
TTB
kk
kkk
k
k
iki
k
k
kk
k
iki
k
iki
i