2612
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 7, NO. 7, JULY 2008
Talk Burst Control for Push-to-Talk over Cellular
Meng-Hsun Tsai, Student Member, IEEE, and Yi-Bing Lin, Fellow, IEEE
Abstract—Push-to-talk over Cellular (PoC) is a “walkietalkie”-like service designed for mobile networks. In this service,
the speak permission is arbitrated through the talk burst control
(TBC) mechanism. This paper proposes an analytic model to
study the performance of the TBC mechanism with queueing
and without queueing. This analytic model is validated against
simulation experiments. Through numerical examples, our study
provides guidelines to set up the parameters for PoC service.
Start-stop
7
Session terminated
Index Terms—cellular network, Push-to-talk over Cellular
(PoC), talk burst control, Voice over IP (VoIP)
G: TB_Taken
2
5
[T2 expired] /
S: TB_Revoke to permitted PoC client
R: TB_Release
I. I NTRODUCTION
P
USH-TO-TALK over Cellular (PoC) [1], [2] is a “walkietalkie”-like service designed for mobile networks. In this
service, several predefined PoC group members participate in
one PoC session. Since the PoC session is half-duplex, only
one PoC member speaks at a time, and the others listen. When
a PoC member attempts to speak, he/she presses the push-totalk button of his/her mobile terminal to ask for the permission.
This mobile terminal installed with the PoC application is
called the PoC client. The speak permission is arbitrated
through the talk burst control (TBC) mechanism defined in the
Open Mobile Alliance (OMA) PoC specifications [3]. Based
on the OMA specifications, an Open Service Access (OSA)based PoC system is implemented in National Chiao-Tung
University [4], [5].
In the OMA specification, TBC mechanism is implemented
by finite state machines (FSMs) in both the client and the
server sides. Figs. 1 and 2 illustrate simplified TBC FSMs for
PoC server (called F SMG ) and PoC client (called F SMU ),
where “U” represents “user” (i.e., for a specific PoC client)
and “G” represents “general” (i.e., for the whole group). The
prefixes “S:” and “R:” of the transitions represent “send” and
“receive”, respectively. For a PoC session, there is one F SMG
in the PoC server and an F SMU in each of the PoC clients. To
clearly describe the PoC procedures, several terms are defined:
• The session initiator is the PoC client who initiates a PoC
session.
• An invited PoC client is a PoC group member other than
the session initiator.
Manuscript received November 27, 2006; revised February 22, 2007;
accepted November 15, 2007. The associate editor coordinating the review
of this paper and approving it for publication is H.-H. Chen. The work of
Meng-Hsun Tsai was supported by an IBM Ph.D. Fellowship, a Microsoft
Fellowship, and a ZyXEL Fellowship. The work of Yi-Bing Lin was supported in part by NSC 96-2752-E-009-005-PAE, NSC 96-2219-E-009-019,
NSC 96-2221-E-009-020, Intel, Chung Hwa Telecom, IIS/Academia Sinica
ITRI/NCTU Joint Research Center and MoE ATU.
M.-H. Tsai is with the Department of Computer Science, National Chiao
Tung University, Taiwan (e-mail:
[email protected]).
Y.-B. Lin is with the Department of Computer Science, National Chiao
Tung University, Taiwan. He is also with the Institute of Information Science,
Academia Sinica, Nankang, Taipei, Taiwan (e-mail:
[email protected]).
Digital Object Identifier 10.1109/LCOMM.2008.060980.
Any State
1
Session initiated
4
G: pending
TB_Release
G: pending
TB_Revoke
R: TB_Request or [Que_not_empty] /
•S: TB_Granted to permitted PoC client
•S: TB_Taken to all other PoC clients
R: last media packet
[T3 expired]
3
6
G: TB_Idle
[Que_disabled] or [Que_empty] /
S: TB_Idle to all PoC clients
Fig. 1.
TBC Finite State Machine for PoC Server (F SMG ).
A requesting PoC client is a PoC client who requests for
speak permission.
• The permitted PoC client is the PoC client who is allowed
to speak.
• A listening PoC client is a PoC client who is not
permitted to speak.
• A queued PoC client is a PoC client whose request is
queued in the PoC server.
A PoC session can be initiated by any group member.
Session Initiation Protocol (SIP) [6] and Session Description
Protocol (SDP) [7] are utilized for session establishment.
To support the PoC service, a new parameter “tb grant”
is added in SDP’s attribute field such that PoC server can
arbitrate the speak permission during session establishment.
If “tb grant=1”, the PoC client is granted the permission to
speak. Otherwise (i.e., “tb grant=0”), the PoC client is not
permitted to talk.
PoC is a new service in cellular networks. To our knowledge, all PoC studies have focused on call setup time and
transmission delay of voice packets [8], [9], [10]. These
studies did not consider the performance of TBC mechanism. Many TBC-related questions are not answered in these
previous studies. These questions include the best setting of
revoking time TR , the maximum number N of group members
that a mobile operator should support, etc. Based on the
SIP/Real-time Transport Protocol (RTP) [11] protocols, we
•
c 2008 IEEE
1089-7798/08$25.00
TSAI and LIN: TALK BURST CONTROL FOR PUSH-TO-TALK OVER CELLULAR
13
Start-stop
Session initiated
with tb_grant=0
2
U: has no
permission
14
R: TB_Idle or
R: TB_Taken
9
R:TB_Idle or
R:TB_Taken
R: TB_Deny
3
4 S: TB_Request
U: pending TB_Request
1
Session initiated
with tb_grant=1
Any State
Session released
7
R: TB_Idle or
R: TB_Taken
U: pending TB_Revoke
[Send Media]
S: TB_Release
10
R: TB_Queued 11
A
U: queued
R: TB_Granted 12
5 R: TB_Granted
U: pending TB_Release
6
S: TB_Release
R: TB_Revoke
8
U: has permission
[ Send Media ]
Fig. 2.
TBC Finite State Machine for PoC Client (F SMU ).
describe the TBC mechanism, and then propose an analytic
model to study the TBC mechanism. Based on our analytic/simulation models, we show how the input parameters
affect the performance of the PoC service.
II. TBC M ECHANISM
For the PoC clients and the PoC server involved in a PoC
session, their FSMs are initialized at the Start-stop state (see
Figs. 1 and 2). When the session initiator sends a SIP INVITE
message to the PoC server, the PoC server broadcasts SIP
INVITE messages with “tb grant=0” to other group members
(the invited PoC clients). Each of the invited PoC clients
answers with a SIP 200 OK message and its F SMU enters U:
has no permission (transition 2 in Fig. 2). This state means
that the PoC client is not permitted to speak.
After receiving the first SIP 200 OK message from the
invited PoC clients, the PoC server replies a SIP 200 OK
with “tb grant=1” to the session initiator and F SMG enters
G: TB Taken (transition 1 in Fig. 1). This state means that
some PoC client (the session initiator in this case) has obtained
the permission. F SMU of the session initiator enters U: has
permission (transition 1 in Fig. 2). This state means that the
PoC client is allowed to speak. The session initiator becomes
the permitted PoC client, and the invited PoC clients become
listening PoC clients. At this moment, the session initiator
speaks and all invited PoC clients listen.
After the PoC session is established, each of the PoC clients
has built an RTP session with the PoC server. The TBC
messages (with the prefix “TB”) between the PoC clients and
the PoC server are carried by RTP Control Protocol (RTCP)
packets [11]. After finishing the talk, the permitted PoC client
releases the permission by sending the TB Release message to
the PoC server and its F SMU enters U: pending TB Release
(transition 6 in Fig. 2). In this state, the PoC client stops
2613
sending media packets and is waiting for the response from the
PoC server. The sequence number of the last delivered media
packet is included in the TB Release message. F SMG enters
G: pending TB Release after receiving the TB Release message (transition 2 in Fig. 1). In this state, the PoC server keeps
forwarding the transient media packets delivered before the
TB Release message is issued from the permitted PoC client.
When the last transient media packet has been processed,
F SMG enters G: TB Idle (transition 3 in Fig. 1). This state
means that no PoC client is granted the permission to speak.
The PoC server broadcasts the TB Idle message to all PoC
clients. F SMU of the permitted PoC client enters U: has no
permission upon receipt of the TB Idle message (transition
7 in Fig. 2). A listening PoC client remains in U: has no
permission when it receives the TB Idle message (transition
14 in Fig. 2). At this point, all PoC clients can compete for
the permission to speak.
To obtain the permission, a listening PoC client sends
the TB Request message to the PoC server. The PoC client
becomes a requesting PoC client, where its F SMU enters
U: pending TB Request (transition 3 in Fig. 2). This state
means that the PoC client is waiting for the arbitration from
the PoC server. If some other PoC client has been granted
the permission, the PoC server sends the TB Deny message
to the requesting PoC client, and F SMU of the requesting
PoC client moves back to U: has no permission (transition
4 in Fig. 2). If the PoC server grants the permission to the
requesting PoC client, it sends the TB Granted message to
this requesting PoC client and the TB Taken message to other
PoC clients. A timer T2 at the PoC server is started; this timer
is used to determine whether the permitted PoC client speaks
too long (and therefore should be revoked). F SMG enters
G: TB Taken (transition 4 in Fig. 1), and F SMU of the
requesting PoC client enters U: has permission (transition 5
in Fig. 2). When a listening PoC client receives TB Taken,
its F SMU remains at U: has no permission, and is not
allowed to request for the permission. The requesting PoC
client becomes the permitted PoC client.
If the permitted PoC client speaks longer than the T2
timeout period, the PoC server will start timer T3 and send the
TB Revoke message to stop the permitted PoC client. F SMU
of the permitted PoC client enters U: pending TB Revoke
upon receipt of the TB Revoke message (transition 8 in
Fig. 2). In this state, the PoC client can keep sending
media packets until T3 expires. F SMG enters G: pending
TB Revoke (transition 5 in Fig. 1). In this state, the PoC
server keeps forwarding media packets until T3 expires. Then
F SMG enters G: TB Idle (transition 6 in Fig. 1). The PoC
server sends the TB Idle message to all PoC clients. F SMU
of the permitted PoC client enters U: has no permission
(transition 9 in Fig. 2) upon receipt of the TB Idle message.
When a listening PoC client receives TB Idle, its F SMU
remains at U: has no permission. At this point, all PoC clients
can compete for the permission to speak.
A queueing option is provided in the TBC mechanism. If
this option is selected, then the ungranted requests are buffered
in the queue at the PoC server instead of being denied. After
the permitted PoC client finishes talking, the PoC server grants
the next request from the queue. The state U: queued (see
2614
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 7, NO. 7, JULY 2008
Fig. 2 (A)) in F SMU indicates that a request of the client is
queued in the PoC server and will be granted later.
After a PoC client X has obtained the permission, the PoC
server may receive the TB Request message from another
requesting PoC client Y. With the queueing option, F SMG
is in the G: TB Taken state, and F SMU of client Y is in
the U: pending TB Request state. The PoC server buffers the
TB Request message in the queue and replies the TB Queued
message to client Y. F SMG stays in G: TB Taken and
F SMU of client Y enters U: queued (transition 10 in Fig. 2).
The PoC client of a queued request (called queued PoC
client) may send the TB Release message to the PoC server
to cancel the request, and its F SMU moves back to U:
has no permission (transition 11 in Fig. 2). In this case,
the PoC server removes the corresponding request from the
queue. After the permission is released (or revoked), F SMG
will enter G: TB Idle, and F SMU of the permitted PoC
client will enter U: pending TB Release (or U: pending
TB Revoke). If the queue is not empty, the PoC server
processes the next queued request instead of sending out the
TB Idle message. Then the granting procedure is performed
at the PoC server. Therefore, the next queued PoC client will
receive the TB Granted message from the PoC server, and
its F SMU enters U: has permission (transition 12 in Fig. 2).
This queued PoC client becomes the next permitted PoC client.
At the same time, all other PoC clients receive the TB Taken
message from the PoC server. The previously-permitted PoC
client becomes a listening PoC client, and its F SMU enters
U: has no permission (transition 7 or 9 in Fig. 2). F SMU of
every listening PoC client remains at U: has no permission,
and F SMU of every queued PoC client remains at U: queued.
When a PoC client leaves the PoC session, its F SMU
moves back to Start-stop (transition 13 in Fig. 2). The PoC
session remains active for other PoC clients. After all PoC
clients leave the PoC session, the PoC session is implicitly
terminated. F SMG moves back to Start-stop (transition 7 in
Fig. 1).
III. A NALYTIC M ODELING
This section models the PoC TBC mechanisms with queueing (Approach Q) and without queueing (Approach NQ).
Let N be the number of PoC clients in a PoC group. We
investigate two timers defined in F SMG : (1) T2 is used to
determine whether the PoC client speaks too long; (2) T3 is
used to gracefully terminate the talk burst. For simplicity, we
define TR as the revoking timer where
TR = T 2 + T 3
Three output measures are considered in our study:
• PD : the probability that the request of a PoC client is
not granted because the PoC client is not patient in
Approach Q or because the PoC server rejects the request
in Approach NQ
• PR : the probability that a PoC client obtains the permission, but is revoked before it finishes the talk
• W (for Approach Q only): the expected waiting time of a
request, i.e., the expected time between when a PoC client
issues a request and when it is granted the permission to
speak or when it leaves the queue without being granted
the permission
For a PoC client, we define the following input parameters:
• The inter-request time random variable τa with mean 1/λ
• The speak time random variable τs with mean 1/µ and
variance Vs
• The impatient time random variable τi with mean 1/ω
and variance Vi (note that a queued PoC client will drop
the request if it does not receive the permission within
τi )
• The revoking time TR (when τs > TR , the permitted PoC
client is revoked); TR is a fixed period
We assume that τa , τs and τi are exponentially distributed
(i.e., Vs = 1/µ2 , Vi = 1/ω 2 ) in this section. The purpose of
analytic model is two folds: to validate the simulation model
and to provide mean value analysis. Mean value analysis based
on exponential assumptions provides understanding on the
“trend” of performance. The validated simulation relaxes the
exponential assumptions to accommodate more general (and
therefore more practical) scenarios such as those described
in [12].
A. Modeling for Approach Q
The PoC TBC mechanism is modeled as a stochastic
process. Fig. 3 illustrates the state transition rate diagram of
the stochastic process where the state K = k denotes that k−1
requests are waiting in the queue at the PoC server besides the
permitted PoC client. In this figure, we define γ(t)h to be the
probability that the permitted PoC client is revoked during the
interval (t, t + h), where h → 0. When the process is in state
k, where 0 < k ≤ N , there are N − k listening PoC clients,
k − 1 queued PoC clients, and a permitted PoC client. State
0 represents that all PoC clients are listening PoC clients. For
any state k, there are N − k listening PoC clients that may
request for permission to speak. Therefore, the transition rate
from state k to state k + 1 is (N − k)λ. For any state k, where
0 < k ≤ N , there are k − 1 queued PoC clients that may leave
the queue with rate (k − 1)ω, and the permitted PoC client
that may finish the talk with rate µ. Furthermore, the permitted
PoC client may be revoked during the interval (t, t + h) with
probability γ(t)h. Therefore, at time t the transition rate from
state k to state k − 1 is µ + (k − 1)ω + γ(t).
Let πk (t) denote the probability that the number of requests
in the system is k at time t. Then based on the state transition
rate diagram in Fig. 3, we obtain the following differential
difference equations [13]:
′
= π1 (t)[µ + γ(t)] − π0 (t)N λ
′
= πk−1 (t)(N − k + 1)λ + πk+1 (t)[µ + kω + γ(t)]
−πk (t)[µ + (k − 1)ω + γ(t) + (N − k)λ]
π0 (t)
πk (t)
(1 ≤ k ≤ N − 1)
(1)
(2)
Under the assumption of statistical equilibrium (i.e., t → ∞),
Equations (1) and (2) are re-written as
0
= π1 (µ + γ) − π0 N λ
0
= πk−1 (N − k + 1)λ + πk+1 (µ + kω + γ)
−πk [µ + (k − 1)ω + γ + (N − k)λ]
(1 ≤ k ≤ N − 1)
(3)
(4)
TSAI and LIN: TALK BURST CONTROL FOR PUSH-TO-TALK OVER CELLULAR
0
k
k-1
(t)
k-2
(t)
-k-
-k
-k+
1
(t)
Fig. 3.
-k+2
2615
k-1
(t)
N-1
k+1
k
(t)
k+1
(t)
-2
(t)
N
-1
(t)
State Transition Rate Diagram for Approach Q.
where πi = limt→∞ πi (t) and γ = limt→∞ γ(t) is
the revoking rate in equilibrium and will be derived later.
Equations (3) and (4) are re-arranged to yield
π1
πk+1
π0 N λ
µ+γ
µ + (k − 1)ω + γ + (N − k)λ
=
πk
µ + kω + γ
(N − k + 1)λ
−
πk−1
µ + kω + γ
=
From (5) and (6), we have
⎫
⎧
k−1
⎬
⎨
λk
j=0 (N − j)
π0
πk =
k
⎭
⎩
m=1 [µ + (m − 1)ω + γ]
(5)
(6)
(7)
N
where 1 ≤ k ≤ N . Since k=0 πk = 1, (7) is solved to yield
⎧
⎫−1
k−1
N
⎨
⎬
λk
j=0 (N − j)
π0 = 1 +
(8)
k
⎩
[µ + (m − 1)ω + γ] ⎭
k=1
m=1
The revoking rate γ is derived as follows. Let p(τ, t)h be
the probability that the elapsed speak time (i.e., the member
has talked for the period τ , and the talk has not been finished
yet) is between (τ −h) and τ (where h ≤ τ ≤ TR , and h → 0)
at time t. The probability that the permitted PoC client finishes
the talk in any interval h is µh. Since the elapsed speak time
can advance from interval (τ − h, τ ) to interval (τ, τ + h)
only if the permitted PoC client does not finish the talk (with
probability 1 − µh) during the interval (t, t + h), we have
p(τ + h, t + h)h
=
p(τ, t)h(1 − µh)
(9)
From (9), we have
∂p(τ, t) ∂p(τ, t)
+
= −µp(τ, t)
∂τ
∂t
When t → ∞,
p(τ, ∞) =
= 0, and (11) is re-written as
∂p(τ, ∞)
= −µp(τ, ∞)
∂τ
Equation (12) has the general solution
where 1 ≤ k ≤ N .
N
The expected queue length is E[K] =
k=0 kπk .
(16), we have
⎫
⎧
k−1
N
⎬
⎨
kλk
(N
−
j)
j=0
E[K] =
k
−µT
R
µe
⎭
⎩
[µ + (m − 1)ω + 1−e
−µTR ]
k=1
m=1
⎧
k−1
N
⎨
λk
(N − j)
j=0
× 1+
k
−µTR
⎩
[µ + (m − 1)ω + µe −µT
k=1
p(τ, ∞) = Ae
TR
From (13) and since 0 p(τ, ∞)dτ = 1, we have
µ
A=
1 − e−µTR
−µτ
(13)
m=1
1−e
R
From
⎫−1
⎬
]⎭
Let λ∗ be the expected request rate to the PoC server. Then
N
(N − k)λπk = λ (N − E[K])
(17)
k=0
Since a PoC client leaves the system without being granted
the permission to speak if its waiting time in the queue is
longer than its impatient time, PD can be expressed by
PD
(12)
(15)
(16)
(10)
(11)
µe−µτ
1 − e−µTR
For any interval (t, t+ h), a permitted PoC client is revoked
if and only if the member has talked for the period τ at time
t, where TR − h < τ < TR . Therefore, for any interval
h in equilibrium, the revoking probability γh is equal to
p(TR , ∞)h. In other words, the revoking rate γ = p(TR , ∞).
From (7), (8) and (15), we have
⎫
⎧
k−1
⎬
⎨
(N
−
j)
λk
j=0
πk =
−µT
⎩ k [µ + (m − 1)ω + µe −µTR ] ⎭
m=1
R
1−e
⎧
⎫−1
k−1
N
⎨
⎬
λk
j=0 (N − j)
× 1+
k
µe−µTR ⎭
⎩
k=1
m=1 [µ + (m − 1)ω + 1−e−µTR ]
λ∗ =
p(τ + h, t + h) − p(τ, t)
= −µp(τ, t)
h
Let h → 0, (10) is expressed as
∂p(τ,t)
∂t
From (13) and (14), we have
the number of requests leaving
the queue due to impatience
=
the number of total request arrivals
(18)
From (17) and (18), we have
PD =
N
k=1 (k
− 1)ωπk
ω{E[K] − (1 − π0 )}
=
∗
λ
λ{N − E[K]}
Similarly, PR can be expressed by
(14)
PR =
the number of revoked requests
the number of total request arrivals
(19)
2616
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 7, NO. 7, JULY 2008
0
TABLE I
C OMPARISON OF A NALYTIC AND S IMULATION M ODELS (Vs = 1/µ2 ,
N = 10, ω = µ, Vi = 1/ω 2 , TR = 3/µ)
1
(a) Approach Q
(t)
Fig. 4.
λ
PD (Analytic)
PD (Simulation)
Error
PR (Analytic)
PR (Simulation)
Error
W (Analytic)
W (Simulation)
Error
State Transition Rate Diagram for Approach NQ.
From (17) and (19), we have
PR =
N
k=1 γπk
λ∗
=
µe−µTR (1 − π0 )
λ{N − E[K]}(1 − e−µTR )
Let random variable KQ be the number of requests in the
queue at the PoC server and random variable KS be the
number of permitted PoC clients, then K = KQ + KS and
E[K] = E[KQ ] + E[KS ]
k=1
λ
PD (Analytic)
PD (Simulation)
Error
PR (Analytic)
PR (Simulation)
Error
E[KQ ] = λ W
(22)
From (17), (20), (21) and (22), we have
W =
E[KQ ]
E[K] − (1 − π0 )
=
∗
λ
λ{N − E[K]}
B. Modeling for Approach NQ
Fig. 4 illustrates the state transition rate diagram for Approach NQ. State K = 0 represents that no PoC client has the
permission, and state K = 1 represents that a PoC client is
speaking. When the stochastic process is in state 0, there are
N listening PoC clients that may request for the permission
to speak. Therefore, the transition rate from state 0 to state
1 is N λ. When the process is in state 1, the permitted PoC
client may finish the talk with rate µ, and may be revoked
during the interval (t, t+h) with probability γ(t)h. Therefore,
the transition rate from state 1 to state 0 is µ + γ(t) at time
t. Similar to the derivation for Approach Q, the following
relation at equilibrium is derived:
0.005µ
0.0410
0.0416
1.46 %
0.0477
0.04775
0.10 %
0.05µ
0.2995
0.3003
0.27 %
0.0349
0.03484
0.16 %
From (17), (24) and (25), we have
From Little’s result [13], E[KQ ] is expressed as
∗
0.05µ
0.1779
0.1755
1.32 %
0.0409
0.0410
0.24 %
0.1779/µ
0.1748/µ
1.76 %
(b) Approach NQ
(20)
Note that KS = 1 when system is busy (i.e., some PoC client
is speaking), and KS = 0 when system is idle (i.e., no PoC
client is speaking). Therefore,
N
(21)
πk + 0 × π0 = 1 − π0
E[KS ] = 1 ×
0.005µ
0.0205
0.0201
1.81 %
0.0488
0.04881
0.02 %
0.0205/µ
0.0202/µ
1.61 %
PD =
(N − 1)λπ1
(N − 1)λ(1 − e−µTR )
=
∗
λ
µ + (N − 1)λ(1 − e−µTR )
Similar to the derivation for Approach Q, we derive PR from
(17) and (24) as
PR =
µe−µTR
γπ1
=
λ∗
µ + (N − 1)λ(1 − e−µTR )
The above analytic model is validated against the discrete
event simulation experiments. The discrete event simulation
model is similar to that described in [14], and the details are
omitted. As shown in Table I (where Vs = 1/µ2 , N = 10,
ω = µ, Vi = 1/ω 2 , and TR = 3/µ), the analytic analysis is
consistent with the simulation results.
IV. N UMERICAL E XAMPLES
Based on the simulation experiments validated against the
analytic model, this section investigates the performance of the
TBC mechanism. Suppose that τa is exponentially distributed
with mean 1/λ [15], τs has the Gamma distribution with
mean 1/µ and variance Vs , and τi has the Gamma distribution
N λ(1 − e−µTR )π0
N λπ0
(23) with mean 1/ω and variance Vi . The Gamma distribution is
=
π1 =
µe−µTR
µ
selected because it has been shown that the distribution of any
µ + 1−e
−µTR
positive random variable can be approximated by a mixture of
Since π0 + π1 = 1, (23) is solved to yield
Gamma distributions (see Lemma 3.9 in [16]). Following the
N λ(1 − e−µTR )
µ
past experience [17], we can measure the PoC speak times
and π1 =
π0 =
µ + N λ(1 − e−µTR )
µ + N λ(1 − e−µTR ) and impatience times from the field and then generate the
(24) Gamma distribution from the measured data. In our study, the
Since a requesting PoC client leaves the system as soon range for N is selected based on commercial operation. For
as it finds that the system is busy (i.e., some PoC client is example, ChungHwa Telecom (CHT) has limited N to 20 (that
speaking), PD can be expressed by
is, at most 20 members can be defined in a group before the
PoC session is initiated). Also note that finite population with
number of request arrivals when system is busy
PD =
Poisson arrival is widely used in commercial PoC network
number of total request arrivals
(25) planning by mobile operators (e.g., FarEasTone or FET [17])
TSAI and LIN: TALK BURST CONTROL FOR PUSH-TO-TALK OVER CELLULAR
ººº
ººººº
ººº
ººººº
ººº
ººººº
ººº
ººººº
ººº
ººººº
ººº
ººººº
¯
ººº
ººººº
ººº
ººººº
¯
ºº
ººººººº
ºº
ºººººº
ºº
ºººººº
¯
ººº
ººººº
ºº
ººººººº
º
ºººººº
ºº
ººººººº
¯
¯
ºº
ººººººº
ºº
ººººººº
º
ººººººº
Fig. 5. Effects of N and λ on PD (ω = µ, Vi = 1/ω 2 , Vs = 1/µ2 ,
TR = 3/µ).
Effects of N and λ on PD : Under the conditions that ω =
µ, Vi = 1/ω 2 , Vs = 1/µ2 , TR = 3/µ, Fig. 5 indicates
that for the same PD performance, Approach Q can
support twice as many clients as Approach NQ does. For
example, when λ = 0.003µ, to maintain PD = 0.05,
N = 38 can be supported in Approach Q and N = 19
in Approach NQ (therefore, the maximum number N
of group members should be set to 38 for Approach
Q and 19 for Approach NQ, respectively). For both Q
and NQ approaches, when λ increases, the number N
supported in the PoC service decreases. For example, to
maintain PD = 0.05 in Approach NQ, N = 51 can be
supported when λ = 0.001µ, N = 27 when λ = 0.002µ,
and N = 19 when λ = 0.003µ. We observe that the
discrepancy of the PD performance between Approach
Q and Approach NQ decreases as ω increases. Approach
Q is better than Approach NQ for all ω values (not shown
in this paper). When ω = 0.5µ, Approach Q can support
6 times as many clients as Approach NQ does. When
ω = 100µ, Approach Q can only support 1.1 times as
many clients as Approach NQ does.
Effects of µ and Vs on PD and PR : In the remainder of
this section, we only consider Approach Q. Similar results are also observed in Approach NQ. Fig. 6 indicates
that both PD and PR increase and then decrease as Vs
increases (where λ = 0.005ω, N = 10, Vi = 1/ω 2 , and
TR = 3/µ). This phenomenon is explained as follows.
When the variance Vs is small (e.g., Vs ≤ 1/100µ2), all
speak times are about the same length. As Vs increases,
two effects are observed: (I) more speak times longer
than TR are observed. These speak times are revoked
and result in larger PD and PR , (II) more short speak
times are also observed, which result in smaller PD and
PR . As Vs increases, Effect (I) is more significant when
¾
½
Ê
¼
½
¾
¯
¾
¯
¯
¿
ºººº
ºº º
ºº ºº
ºº ºº
ºº ºººº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
º
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ºº
ººº
º
ºº
º
ºº
ºº
ºº
ºº
ºº
º
º
ººº
ºº
ººººººº
ºº
ºº
º
º
º
º
ºº
ºº ººº
ºº
ºº
ºººº
ºº
ºº
ºººº
ºº
º
º
º
º
º
ººº
ººº
º
º
ººººº
ºº
ºº
ºº
ºº ºººººººº
ºº
º
º
ºº
º
ºº
ºº
ºº ºººº
ººº
ºº
º
º
º
º
ºº ºººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ºº
ººº
º
ºº
ººººººººººº
º
ººº
ºº ºº ºººººººº
º
ºº ºººººººº
ººº ºººº ºººº
º
ºººº
º º
ººº ºº
ºº ºººº
ºººº
ººº ººº
ºº ºººººººº
ºººº
º
ººº ºº
ºº ºººººº
ºººº
ººº ººº
ººº
ºººººººººº
ººº ºº
º
ºººº
º º
ººº ººº
ºººº
ººººººº
ººº ºººº
ººº
ººººººººº
º
ººº ººººººº
ºººº
ºº
ºº
ººº
ººººººº
ººººººººº
ºººººººº ººººººººº ººººººº
º
ºº
ººººººº ººººº ººº
ºººººººº ºººººº º
ºººººº
ºººººººººººº
ºººººº
º
ºººº
ºº
ººººººººººººººººººººººººººººººººººº
¯
¯
¯
¾
¯
¯
½
¼
½
×
(a) PD
¾
¯
¿
¾
(b) PR
Fig. 6. Effects of µ and Vs on PD and PR for Approach Q (λ = 0.005ω,
N = 10, Vi = 1/ω 2 , TR = 3/µ).
and is followed in this paper. The PoC members are allowed
to join in and to leave the PoC session at any time during the
session, which can be accommodated in the simulation model.
The effects of the input parameters are investigated as follows.
¯
¯
¯
¯
ºººººº
ººººº ºººº
ººººº
ºº
ººººº
ººº
ººººº
ººº
ººººº
ººº
ººººº
ºººººººººººº
ºº
ºººººººººººººººººººººººº
ººº
ººº
ººº
ºº
ººº
ººº
ººº
ººº
ººº
ºº
ºººº
º
º
ºº
º
ºº º
ººº
ºººº ºººº
ºº
ºººº
ººº
º
º
º
ºº
ººº
ºº
ººººº
ººº
ºº
ºººº
º
º
ººº
º
º
º
º
ººº
ºº
ºººº
ººº
ººº
ºººººº
ººººººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ººº
º ºººº
ººº
ºº
ººººººººººººººº
ºº
ºººº
ººººº
ººº
ºº
ºººº
ººººº
º
º
º
º
º
ºº
ººº
ºººº
ºººº
ººº
ºººº
ººº
ººººº
º
ºº
º
º
º
º
º
º
ºººº
ººº
ºº
ºº
ºººº
ººº
ºº
ººººº
ºººº
ºº
ºººººººººººº
ºº
º
º
º
º
º
º
º
º
º
º
º
ºººº
ºº
ººº
ººººººººººººº
ºº
ºººº
ººº
ºº
ºººº
º
ºº
º
ºººº
ºººº ºººº ºººº
ºººº ººº ºº
ººººº ºº ººººº
ººººº
ºººº ººº
ººººº
ºººº ºº
ºº
ºººº ººº
ºººº ºººººººº ºººººººº
ºººº ººººººº ººººº
ººººººººººººººººººººººººº ººººº
ººººººººººººººººººººººº
ºººººººº
¯
¯
¯ ¯
¯ ¯ ¯ ¯ ¯
¯
¯
¯ ¯ ¯ ¯
¯¯ ¯ ¯
ººº
ººººº
¯
ºººººººº
ººººººº
ºººººººº
º
ºººººººº
ºººººººº
ººº
ººººººººººº
º
ººººº
ººººººººººº
ººººººº
ºººººººº
ººº
ºº
ººººººººº
º
º
º
º
º
ººººº
º
ººººººº
º
º
ººººººººº
ºº
ººººººººº
ºººº
ºººººººººº
ºººººº
ººººººººº
ºººº
ººººººººº
ºº
ººººººººº
ººººººººº
ººººººººººººººº
ºººººº
ººº
ººººººººº
ºººººººº
ºººººººººººººº
ºº
ººººº
ºººººººººº
ººººººººººººººº
ºººººººººº
ººººººº
ºººººººººººººº
ººººººººº
ººººººººº
ººº
ºººººººººººººº
ºººººººº
ºº
ººººººººººººº
ººººººººº
ººººº
ºººººººº
º
º
º
ºººººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ººººº
ºººººººººº
ººººº
ºº
ººº
ºººº
ººººººººººººº
ºººººº
ººººººººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ººººº
º
º
º
º
º
º
º
º
ºººººººº ººººººººººººººººººººº
ººººº
ºº
ººººº
ºººººººº
º
ºººººº
ººº
ºº ºººº
ºººººººº
ºººººººººººººº
ººººº
ºººººººº ººººººººº ººººººº ºººººººººººººººººººººººººº
ºººººººººººººº
ºººººººº
º
ºººººººº
ººººººººººººººººººººººº
ººº
ºººººº
ººººººººººººº
ººººººººº ººººººººº
ºººººººººººººººººººººººº
ººººººººººººº
ººººº ºº ººº
ºººººººº ºº
ººººººººººººººººººººººº
ºººººººº ºººººº ººººººººººººººººººººººººº
ººººººººººººººººººººººº
º
ºººººººº ººººº
ººº
ºººººººººººººººººººººº
ººº ººººº
ºººººººººººººººººº ººººººººººººººººººººººººººººº
ºººººººººººººººººººººº
º
º
º
º
º
º
º
º
ºººººººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ºº
ººººº
ººººººººººººººººº
ºººººººººººººººººººººººººººººººººººººººººººººººººººººººº
ººººººººººººººººººººººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ººººººººººººººººº ºººººººººººººººººººººººººº
ºººººººººººººººººººººº
ººº
ººººº
¯
2617
¯
¯
¯
¯
ºººººººº
ºººººººººººººººº
ººººººººººººººººººº
ºººººººººººººººººººº
ººººººººº
ººººººººº
ººººººººº
ººººººººº
ºººº ººººº
ººººººººººººº
º
º
º
ºº º
ºººº ººººº
ºººº ººººº
ººº ºººººº
ººº ººººº
ººº ºººººº
ºº ºººº
ººº ººººººººº
ººº ººº
ººº ººººº
ººº ººººººº
º
º
ºº ººº ººº
ººº ºº ºº
ºº ºº ºº
ººº ºººº ºººº
ººº
ºº º
ººº ºººº ºººº
ººººº
º º
ºººººº
ºº ºº
ºººººº
ººº ºººº
ºººººº
º
º
º
º
º
º
º
ºº
ºº
ºº
ºººººº
ººº ºººº
ºººººººººººººººººººººººººººººººººº
º
º
ººº
ºº
ººººº
ºº
ºººº
ºº
ºººº
ºº
ºº
ººººº
º
º
º
º
º
º
ººº
ºº
ºººº
ºº
ººººº
ºº
ºººººººººººº
ºº
ºººººººººººººººººººººººº
ºº
ºº
ººº
ººº
ººº
ººº
ºººº
º
ºº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººººº
ºººººººººººººººº
ºººººººººººººººº
¯
¯
¾
¯
½
¼
(a) PD
½
¾
¾
¿
¯
¯
ººººººººººººººº
ºººººººººººººº
ººººººº
ºººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ººº
ºººººººººººººººººººººº
ºº
ººººººººººººº
ºº
ºººº
ºº
ºººº
ºº
ºººº
ºººº
ºº
ºººº
ºº
ºººº
ºº
ºººº
ºº
ºººº
ºº
ºººº
ºº
ººº
ºº
ººººººººººººººººººººººººººººººººº
ºº
ººººº
ºº ºººº
ºººººº
ºº
ºººººº
ººº ºººº
ºººººº
º
º
ººººº
ººººº ºººº ºººº
ºººº ºº ºº
ººº ºº ººº
ººº ºº ºº
ºº ººº ºº
ººº ºº ºº
ººº ºº ººº
ººº ººº ºº
ºº ºº ººº
ººº ºº ºº
ººº ººº ºº
ººº ºº ºº
ººº ºº ººº
ººººº ºººº
ººººº ºº
ººººººº ººº
ºººººººº ººº
ºººººººº ººº
ºººººººº ººº
ºººººººº ººº
ººººººº ºº
ººººººººººº
ººººººººººº
ºººººººººº
ºººººººººº
ººººººººº
ººººººººººººººººººº
ºººººººººººººººººººº
ºººººººººººººº
¯
¯
¯
¾
½
¼
½
¯ ¯
¾
¿
¾
(b) W
Fig. 7. Effects of ω and Vi on PD and W for Approach Q (λ = 0.005µ,
N = 10, Vs = 1/µ2 , TR = 3/µ).
Vs is small, and Effect (II) is more significant when Vs
is large. Therefore, both PD and PR increase and then
decrease as Vs increases.
Effects of ω and Vi on PD and W : Fig. 7 shows that PD
is an increasing function of Vi , and W is a decreasing
function of Vi (where λ = 0.005µ, N = 10, Vs = 1/µ2 ,
and TR = 3/µ). As Vi increases, more short and long
impatient times are observed. Short impatient times result
in larger PD and shorter W , while long impatient times
result in smaller PD and longer W . It is observed that
the effect of short impatient times is more significant than
long impatient times. Therefore, the net effect is that as Vi
increases, PD increases and W decreases. The figure also
indicates that when Vi is very large, PD is not sensitive
to the ω values. That is, the effect of ω becomes less
significant as Vi increases.
Effect of TR on PD : Fig. 8 shows that PD increases as TR
increases (where λ = 0.005µ, ω = µ, Vs = 1/µ2 , and
Vi = 1/ω 2 ). For a fixed PD , if more clients are supported,
a very short revoking time must be enforced to limit the
speak times. For example, to maintain PD = 0.021, the
system can support N = 10 for TR = 4/µ and N = 30
for TR = 0.75/µ.
2618
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 7, NO. 7, JULY 2008
¯
¯
¯
¯
¯
¯
¯
¯
¯
ººººººººººººººººººººººººººººººººº
ºººººººººººººººººººººººººººº
ºººººººººººººººººººººº
ºººººººººººººººººººº
ºººººººººººººº
ººººººººººººººº
ºººººººººººººº
ººººººººººººº
ººººººººº
ººººººººº
º
º
º
º
º
º
º
º
ººººººº
ºººººººº
ººººººººº
ºººººº
ºººººº
ºººººº
ººººººº
ºººººº
ºººººº
ºººººº
ºººººº
º
º
º
º
ººººººººººººººººººººº
º
ºº
ºººººººººººººººººººººººººººººººººººººººººººº
ººººº
ººººººººººººººººººººººººººººººººº
ºººº
ººººººººººººººººººººº
ººººº
ºººººººººººººººººººº
ººººº
ºººººººººººººººººº
ººººº
ººººººººººººº
ººººº
ºººººººººººººº
ººººº
ºººººººººººººººº
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
º
ººººººººº
ººººº
ººººººººº
ººººº
ººººººººº
ºººº
ºººººººº
ººººº
ººººººººº
ºººº
ººººººººº
ºººº
ººººººº
ºººº
ºººººº
ºººº
ºººººº
ºººº
ºººººº
ºººº
ºººººº
º
º
º
º
º
º
º
º
ºººº
ººº
ºººººº
ºººººººººººººººººººººººººººº
ºººº
ºººººº
ººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººº
ºººº
ºººººº
ººººººººººººººººººººººººººººººººººººººººººº
ºººº
ººººº
ººººººººººººººººººººººººººººººº
ºººº
ººººº
ºººººººººººººººººººººººº
ºººº
ººººº
ººººººººººººººººººº
ºººº
ººººº
ººººººººººººººººººº
ºººº
ºººººººººººººººººº
ºººººº
ººº
ººººººººººººººº
ººººº
ºººº
ºººººººººººººº
º
ººººº
º
º
º
º
º
º
ºººº
º
º
º
º
º
º
º
º
º
ººº
ººº
ººººººººººººº
ººººº
ººººººººººººº
ººººº
ººººººººººº
ºººº
ººººººººººº
ººººººººººº
ºººººººººº
ºººººººººº
Fig. 8. Effects of TR on PD for Approach Q (λ = 0.005µ, ω = µ,
Vs = 1/µ2 , Vi = 1/ω 2 ).
V. C ONCLUSIONS
In PoC service, the speak permission is arbitrated through
the TBC mechanism. This paper investigated the performance
of the TBC mechanism for PoC service with queueing (Approach Q) and without queueing (Approach NQ). Our study
indicates the following:
• As the request rate λ increases, the maximum number N
of group members can be supported in the PoC service
decreases.
• Both the ungranting probability PD and the revoking
probability PR increase and then decrease as the variance
Vs of speak times increases.
• PD is an increasing function of the variance Vi of the
impatient times. The expected waiting time W of a
request is a decreasing function of Vi . The effect of the
impatient rate ω on PD and W becomes less significant
as Vi increases.
• For a fixed PD , if more clients are supported, a very short
revoking time must be enforced to limit the speak times.
R EFERENCES
[1] OMA, Push to talk over cellular (PoC) - architecture, OMA-AD-PoCV2 0 1-20080226-C Candidate Version 2.0 - 26 Feb. 2008.
[2] Y.-B, Lin and A.-C. Pang, Wireless and Mobile All-IP Networks. John
Wiley & Sons, Inc., 2005.
[3] OMA, Push to talk over cellular (PoC) - user plane, OMA-TS-PoCV2 0 1-20080226-C Candidate Version 2.0 - 26 Feb. 2008.
[4] S.-F. Hsu, Y.-C. Lin, Y.-B. Lin, and J.-S. Yang,, “An OSA application
server for mobile services,” International J. Pervasive Comput. and
Commun., vol. 3, no. 1, pp. 102–113, 2007.
[5] L.-Y. Wu, M¿-H. Tsai, Y.-B. Lin, and J.-S. Yang, “A client-side design
and implementation for push to talk over cellular service,” Wireless
Commun. & Mobile Comput., vol. 7, no. 5, pp. 539–552, 2007.
[6] IETF, SIP: Session Initiation Protocol, IETF RFC 3261, 2002.
[7] IETF, SDP: Session Description Protocol, IETF RFC 4566, 2006.
[8] A. Brandt, M. Brandt, S. Rugel, and D. Weber, “Admission control for
realtime traffic: improving performance of mobile networks by operating
on actual throughput,” in Proc. IEEE Wireless Communications and
Networking Conference (WCNC), New Orleans, LA, Mar. 2005.
[9] P. Kim, A. Balazs, E. van den Brock, G. Kieselinann, and W. Bohm,
“IMS-based push-to-talk over GPRS/UMTS,” in Proc. IEEE Wireless
Communications and Networking Conference (WCNC), New Orleans,
Mar. 2005.
[10] E. O’Regan and D. Pesch, “Performance estimation of a SIP based pushto-talk service for 3G networks,” in Proc. European Wireless Conference
(EW), Barcelona, Spain, Feb. 2004.
[11] IETF, RTP: A Transport Protocol for Real-Time Applications, IETF
RFC 3550, 2003.
[12] Y.-B. Lin, Performance modeling for mobile telephone networks,” IEEE
Network Mag., vol. 11, no. 6, pp. 63–68, Nov./Dec. 1997.
[13] L. Kleinrock, Queueing Systems: Volume I – Theory. New York: Wiley,
1976.
[14] H.-H. Tsai, A.-C. Pang, Y.-C. Lin, and Y.-B. Lin, “Repacking on demand
for speed-sensitive channel assignment,” Computer Networks, vol. 47,
no. 1, pp. 129–146, 2005.
[15] R. F. Rey, Engineering and Operations in the Bell System. AT&T Bell
Laboratories, 1989.
[16] F. P. Kelly, Reversibility and Stochastic Networks. John Wiley & Sons,
1979.
[17] FarEasTone Telecom, private communication, 2003.
Meng-Hsun Tsai (S’04) received the B.S. and the
M.S. degrees from National Chiao Tung University
(NCTU), Hsinchu, Taiwan, R.O.C., in 2002 and
2004, respectively. He is currently working toward
the Ph.D. degree at NCTU. His current research
interests include design and analysis of personal
communications services networks, mobile computing and performance modeling.
Yi-Bing Lin (M’95-SM’95-F’03) is Chair Professor
of Computer Science, National Chiao Tung University. His current research interests include wireless
communications and mobile computing. Dr. Lin has
published over 220 journal articles and more than
200 conference papers. Lin is the author of the
book Wireless and Mobile Network Architecture (coauthor with Imrich Chlamtac; published by John Wiley & Sons) and the book Wireless and Mobile All-IP
Networks (co-author with Ai-Chun Pang; published
by John Wiley & Sons). Lin is an IEEE Fellow, an
ACM Fellow, an AAAS Fellow, and an IET(IEE) Fellow.