Professional Documents
Culture Documents
End-To-End Qos Management Mechanism For Mobile Network
End-To-End Qos Management Mechanism For Mobile Network
68)
Journal of Communication and Computer, ISSN 1548-7709, USA
Received: March 16, 2010 / Accepted: April 12, 2010 / Published: July 25, 2010.
Abstract: Mobile multimedia communications have been tremendously increased in the number of users, diversity of applications and
of interface technologies. In this paper, we propose a new adaptive End-to-End QoS (Quality of Service) management algorithm and
signaling mechanism based on the concept of utility function which we have borrowed from the field of microeconomic. By this
mechanism, the adaptive resource allocation based on user preference in wireless portion and wired portion for mobile network can be
realized. Also, we show the simulation result for call setup and hand over with analysis.
The SURF framework has two primary concepts: Lower and Upper Q threshold Æ qlth, quth
Burstness Factor Æ Kq
First, an ingress edge router logically partitions a flow
Decrement factor based on Qinc Æ dec_p
into sub-streams. The sub-streams correspond to Heuristic based target ut Æ utgt
different slopes in the utility function of the flow. Subroutine update _threshold()
Sub-streaming is done by appropriately labeling the if(avg_qlen < qth) or(qinc < – Kq)
change = – dec_p*ut
headers of packets using incremental utilities. Second,
else if (avg_qlen > qth) or (qinc > Kq)
a core router has no notion of a flow, and treats The forwarding algorithm is:
packets independent of each other. The forwarding enqueue(pkt)
decision at any router is based on the incremental if (cur_qlen < qth) or(avg_qlen ≤ qlth )
Accete(pkt)
utility labels on the packet headers. Router does not
else if (uί ≥ ut) and (cur_qlen + pkt.size ≤ qlim)
drop a packet with a higher incremental utility label as Accept(pkt)
long as a lower priority packet can instead be dropped. else Drop(pkt)
In other words, the core router attempts to provide the
2.2.2 MSS Resource Allocation Algorithm
same forwarding behavior of a switch implementing a
Let us consider the situation in which we have M
multi-priority queue, using instead a simple FIFO
users in the system. We let Uί (rί) denote the utility
scheduling mechanism, eliminating any need for
derived by user’s flow ί for a bandwidth allocation rί
maintaining multiple queues or sorting the queue.
and C is the total link capacity. User ί is allocated rί
The problem of dropping packets with lower
units of resource that is the i-th component of the
incremental utility labels before packets with a higher
solution r=[r1, r2, …, rM] of the following optimization
incremental utility can be approximated to the
problem:
problem of dynamically computing a minimum M
threshold value that a packet’s label must have, in Max
[r1,r2, & rM]
∑Ui(ri)
i=1
(1)
order for a router to forward it. We call this value the M
threshold utility ut. This threshold is the minimum subject to ∑ ri ≤ C
i=1
incremental utility value that a packet must have in
rί ≥ 0 for ί = 1,2, .. , M
order to be accepted by the router. Two constraints on
The MSS algorithm is used in QoS management
ut are that its value must be maintained at a level so
framework for admission control and resource
(a) it results in enough packets being accepted to fully
allocation aims to satisfy Eq. (1). When the allocation
utilize the link and (b) do not cause buffer overflow at
of resources via a microeconomic spot market is
the router. To determine a new threshold, we have
analyzed, the first derivative of each buyer’s utility
used a heuristic to determine a target value utgt such
function (in our case, utility as a function of
that the allocation associated with this utgt is less than
bandwidth allocated to a packet data traffic flow) is
the capacity of the link C. This is being done to reduce
determined in order to provide the individual demand
the probability of tail drops significantly. utgt is based
function of the user. That is, the quantity of the
on the average value of uί of all accepted packets and
resources a user would be willing to purchase at each
the maximum valued uί seen in the last two epochs.
price per unit. In the case of a fixed supply of
For more details on the threshold calculation please
communication channel capacity, the supply curve in
refer to Ref. [9]. For updating the threshold, this is the
the short run would be a vertical line. The intersection
pseudo-code and definitions:
of the market price with each of the individual
Current queue length Æ cur_qlen
demand curves of the user traffic flows determines
Maximum Link capacity Æ max_rate
Max Queue size Æ qlim how much bandwidth is allocated to each flow. In
50 End-to-End QoS Management Mechanism for Mobile Network
addition the utility functions which are considered by made to fi and the flows in the caller AR list. So, fi gets
the MSS algorithm are only of those users who have fi-er-alloc (bandwidth/sec), and the flows in
active session (i.e., calls). fi-erAR-re-flow-list get Σfi-erAR-re-flow-list-temp-
alloc = [temp-alloc-a + temp-alloc-b + temp-alloc-c
3. Proposal of QoS Mechanisms with
+ ...]).
Mobility
(5) Same procedures are done for the flow fi at the
In this paper, we assume a network architectural callee AR. Flow fi gets fi-ee-alloc (bandwidth / sec),
model presented in Fig. 2. This network architectural and the flows in the list for callee AR
model comprises RAN (Radio Access Network) with (fi-eeAR-re-flow-list) get Σfi-eeAR-re-flow-list-temp
MNs (Mobile Nodes) and CN (Core Network) with -alloc= [temp-alloc-x + temp-alloc-y + temp-alloc-z
two main players: the QS (QoS Server) and the + ...].
MM(Mobility Manager) [13]. (6) QS calculates middle allocation for fi, this value
is called fi-mid-alloc which is the minimum of
3.1 QoS Management Mechanism
[fi-er-alloc, fi -ee-alloc].
The followings are the proposed a new adaptive (7) Now QS will detect if there is remaining
QoS management algorithm of the QS based on the un-utilized bandwidth in the ARs. This is done by
utility function : re-calculating the bandwidth of the other flows in
(1) QS receives resource allocation request from fi-erAR-re-flow-list similarly to the process above. The
caller or caller’s AR called erAR. calculation is done for the corresponding callee-AR of
(2) QS generates this new flow’s entry called fi every other flow in the list. And again a minimum is
which has the information of its caller’s access router selected for each flow. This is the last allocation for the
(fi-erAR), and callee’s access router (fi-eeAR). other flows in the caller AR. Resulting in last-alloc-a,
(3) From (2), QS generates a list of the existing flows last-alloc-b, last-alloc-c, .... Finally, QS sums up these
that need to be re-allocated due to fi’s joining. It is values [last-alloc-a + last-alloc-b + last-alloc-c + ...]
called fi-re-flow-list. This list is made of flows that are which can be expressed in Σfi-erAR-re-flow-list-
passing through the caller and callee ARs and that are last-alloc.
affected by fi joining. For example, fi-erAR-re-flow-list (8) In the similar manner, QS re-allocates each flow
(for example, it includes flow-a, flow-b, flow-c, ...) and in fi-eeAR-re-flow-list and results in
fi-eeAR-re-flow-list (for example, it includes flow-x, Σfi–eeAR-re-flow-list-last-alloc, which is the sum of
flow-y, flow-z, ...). [last-alloc-x + last-alloc-y + last-alloc-z + ...].
(4) By using the utility function based on MSS (9) Then the remaining bandwidth in caller side AR
algorithm described in 2.2.2, a temporary allocation is is fi-erAR-remain-bw = (fi -erAR-total-bw -
fi-mid-alloc - Σfi-erAR-re-flow-list-last-alloc).
Mobility
RAN Manager (10) Similar, the remaining bandwidth in the callee
Core Network
MN AP1 side AR is calculated in the way as above and results in
Access Router A
fi -eeAR-remain-bw = (fi-eeAR-total-bw - fi-mid-alloc
AP2 Core Routers - Σfi –eeAR-re-flow-list-last-alloc).
MN
Access Router B (11) Then the remaining bandwidth for caller AR
MN AP3
and callee AR for the flow fi is remain-bw = min [fi
QoS
Server -erAR-remain-bw, fi-eeAR-remain-bw ].
Fig. 2 Target network architecture model. (12) At last, as the result, the final allocation for fi
End-to-End QoS Management Mechanism for Mobile Network 51
C a ll R e q u e s t
W a it S ig n a l C a ll R e q u e s t
IN V IT E
1 8 3 S e s sio n P r o g re ss
IN V IT E
PRACK
1 8 3 S e s sio n P r o g re s s
2 0 0 O K (P R A C K )
PRACK
2 0 0 O K (P R A C K )
R S V P L A PAT H
RSVP RESP
COPS REQ
C a ll R e q u e s t
2 0 0 O K (IN V IT E )
1 8 0 R in g in g
R in g in g
N O T IF Y (rin g in g )
R in g in g
C a ll R e sp o n se
2 0 0 O K (N O T IF Y )
2 0 0 O K (IN V IT E )
ACK ACK
S e n d in g P e rm it
S e n d in g P e rm it
DDATA
ATA D ATA DDATA
ATA
probe core network’s availability. This PATH message information, requested bandwidth, and core network’s
will be forwarded by CR (Core Router) and thus this Uth, and available bandwidth are listed in this message.
message collects each CR’s Utility Threshold (Uth) (11) QS checks its database for the utility function
based on SURF described in 2.2.1 and available associated with the caller and application ID and does
bandwidth. bandwidth allocation calculation for this session, and
(7) MM generates PRACK response to 183 to then send this allocation to caller’s AR1 and callee’s
caller’s AR1 and callee’s AR2. AR2 with COPS DEC message.
(8) Caller’s AR1 and callee’s AR2 send back 200OK (12) With this QoS notification, AR1 can answer the
to answer PRACK. early INVITE request with 200 OK to MM. Although
(9) AR2 receives RSVPLA message which records the QoS preconditions are met, AR1 doesn’t alert caller
CR’s highest Uth and lowest available BW (CN-a-BW) to send data packet at this time, since the session has
and sends these values in RSVPLA RESP message not been established yet.
back to AR1. (13) At the callee’s side, AR2 alerts callee MN2 with
(10) AR1 sends bandwidth request using COPS proprietary Call Request message and sends a
REQ message to QS. Caller, callee’s location provisional response (180 Ringing) to answer the early
End-to-End QoS Management Mechanism for Mobile Network 53
R e -R E G IS T E R
R e -IN V IT E IN V IT E
1 8 3 S e s s io n P r o g r e s s 1 8 3 S e s s io n P r o g r e s s
PRACK PRACK
2 0 0 O K (P R A C K ) 2 0 0 O K (P R A C K )
R S V P L A PAT H
RSVP RESP
COPS REQ
2 0 0 O K (R e -IN V IT E )
2 0 0 O K (IN V IT E )
ACK ACK
C a ll n o tify C a ll n o tify
D ATA D ATA
BYE
2 0 0 O K (B Y E )
C O P S n o tify
MN1 MM QS MN17 threshold (Uth) of core routers is set to be zero where all
AR4
MN2 AR1 MN18 packets are passed through.
MN3 CR3 CR6 CR7 MN19
CR1 CR2 5.2 Simulations
MN4 MN20
CR4 AR5 For the non handover call simulation for simple
MN5
AR2 MN13 MN14 MN15 MN16 flows evaluation, MN1, 2, 3 and 4 under AR1 have
MN6
CR5 sessions with MN5, 9, 13, and 17 respectively. Flow1,
MN7
MN8
2, 3 and 4 have utility functions shown in Table 1
AR3
respectively. Flow1 in Fig. 6 enters the network at time
MN9 MN10 MN11 MN12
10s. As it is the only flow in the system, it is allocated
Fig. 5 Simulated network model system.
the entire AR1’s bandwidth. At time 20s, flow2 enters
In the lower end of the Fig. 4, we can observe that if the network. From MSS algorithm, flow1 and flow2
necessary other terminals in the target cell will have should be allocated by 2 units and this is shown in Fig.
re-allocated their resources or blocked; however this 6. Then at time 30s, with flow3’s join, the allocation
will depend on the utility function of the HO call. If the becomes f1:f2:f3 = 2:1:1. Finally after f4 enters, each
HO call has lower utility than other calls in the cell, flow has same bandwidth at receiver and this is the
then probably depending on operator policies, there allocation theoretically.
will be re-allocations only. If the HO session can’t be For the simulation for simple flows evaluation
setup successfully in the next cell (due to cell including handover, MN2, 6 and 8 have sessions with
congestion or other factors related to utility allocation), MN9, 10 and 14 respectively. Fig. 7 shows the
the call should be kept until the current radio access is receiving rate of the terminal when a handover takes
disconnected. When either caller or callee’s AR detects place. Utility value of Flow-big, between MN2 and
the session termination (how the AR detects that the MN9, Flow-small between MN6 and MN10, and
radio link is down is out of scope of this paper), it Flow-h (hand over), between MN8 and MN14 are
should notify MM by using SIP BYE. Then the MM
listed in Table 2. Flow-h starts its call at 30 sec and
uses the same method to notify the AR of the other
MN8 starts to move toward to new-AR (AR3) at 40 sec.
calling party. Whenever the AR receives SIP BYE, it
Before Flow-h enters to AR3, there are two flows in
should notify QS to update its bandwidth database.
AR3, our algorithm will therefore allocate 2 units of
5. Evaluations bandwidth to each flow (Flow-big and Flow-small).
Once a new terminal, with an additional utility function
5.1 Simulation Conditions
joins an area controlled by a AR, there is a need to
We have used the NS2 simulator for our simulations re-allocate the existing resources among the users in
with the topology shown in Fig. 5. We have the cell according to the values that the users have
implemented call setup and hand over signaling with contracted. Hence when Flow-h enters the area of AR3,
the proposed QoS management algorithm. Each access
Table 1 Utility values for flows.
router has 4 units of bandwidth to administrate (1 unit =
Flow 1U 2U 3U 4U
40 kbps) and the data flows use RTP packets. The Flow1 0.9 0.3 0.15 0.1
results in the following graphs show the results in Flow2 0.8 0.25 0.14 0.1
bandwidth when there are non handover and handover Flow3 0.7 0.2 0.2 0.1
in different conditions. In this simulation, the utility Flow4 0.4 0.4 0.1 0.1
End-to-End QoS Management Mechanism for Mobile Network 55
Table 2 Utility values for flows. For more complicated simulation including
Flow 1U 2U 3U 4U handover, Fig. 8 shows cases in which there are 8
Flow_big 0.7 0.5 0.14 0.1 sessions simultaneously running, while one flow (flow
Flow_small 0.45 0.3 0.14 0.1
6) makes a handover. The different flows utilized one
Flow_handover 0.5 0.4 0.14 0.1
of the utility functions listed in Table 3. Regarding
the allocation becomes Flow-big : Flow-h:Flow-small flow 1 to flow 4, they are the same as Fig. 6 and flow5,
= 2 : 1 : 1 units. The reason for this allocation is that in flow 6, flow 7 and flow8 are from MN6 to MN10,
this case Flow-big has higher utility than Flow-h and from MN8 to MN14, from MN11 to MN18 and from
therefore it is not affected by Flow-h joining the cell. MN15 to MN19 respectively. In this simulation, MN8
On the other side, Flow-small has lower utility than will move from AR2 to AR3 so that at AR3
Flow-h and therefore one unit is re-allocated to Flow-h. bandwidth will be reallocated. From this result we can
56 End-to-End QoS Management Mechanism for Mobile Network
bandwidth can be utilized at maximum. If service price function for each flow, we assume two ways. The first
is linked to the value of the utility function, the user is the mobile operators may define utility functions for
will pay more payment so that the operators can obtain flows and save the information in QoS server, the
more revenue and profit. second is the mobile users may select a utility function
(4) We can expect that the situation for some heavy for a flow and send this information to QoS server by
users to dominate the resources will be avoided by using signaling.
managing utility functions. In case that there are heavy (2) In case the incremental value of user’s utility
traffic users whose incremental value of utility function is not high, and a new flow, where it’s
functions is not high, in the congested traffic incremental value of utility function is higher, is
environment, the heavy traffic users are affected by generated, the existing service may be suspended based
users whose incremental value of utility functions is on the proposed mechanism. To avoid such case, our
higher so that it can avoid for heavy users, whose mechanism can be modified slightly so as to whole
incremental value of utility functions is lower, to existing services should be guaranteed with some
dominate the resources in the congested traffic minimum bandwidth.
environment. It means that we can control this (3) Not only aspect of bandwidth allocation, but
mechanism to be applied to some limited users, not to other QoS metrics such as the delay or jitter can be
all users. studied in the next step.
6. Conclusions References
[1] 3GPP TS 29.212, 3rd Generation Partnership Project,
In this paper, we have proposed a new adaptive
Technical Specification Group Core Network and
End-to-End QoS management algorithm based on the Terminals, Policy and Charging Control over Gx
utility function and its integration with a SIP based Reference Point (Release 8), Sept. 2008.
[2] R. Ludwig, H. Eksrom, P. Willars, N. Lundin, An
generic mobility management protocol. The adaptive
Evolved 3GPP QoS Concept, VTC Spring 2006, May
resource allocation based on user preference in 2006.
wireless and wired networks can be realized by this [3] Y. Kaneda, Policy-based end-to-end QoS guarantee using
mechanism. Also, this mechanism can be realized in On-Path signaling for both QoS requests and feedback,
ICOIN 2008, I-1, Jan. 2008.
handover without restrictions, and realized by [4] S.M. Canne, V. Jacobson, M. Vetterli, Receiver-driven
centralized allocator via the access routers acting as layered multicast, in: Proc. ACM SIGCOMM 96,
policy control enforcement point. Through the Standford, CA, 1996, pp.117-130.
[5] T. Yoshimura, T. Ohya, T. Kawahara, M. Etoh, A QoS
simulations, we confirmed the following facts. control method of MPEG video with an RTP monitoring
(1) The users’ satisfaction will be increased even in agent for mobile streaming service, IEICE, 2002,
the congested or handover situation by using this pp.1243-1253.
[6] K. Nomura, K. Yamori, E. Takahashi, T. Miyoshi, Y.
mechanism. Tanaka, Waiting time versus utility to download images,
(2) The revenue of operators will be increased by APSITT2001, 2001, pp.128-132.
using this mechanism. [7] K. Yamori, Y. Tanaka, Relation between willingness to
pay and guaranteed minimum bandwidth in multiple-
(3) Available to avoid heavy users to dominate the
priority services, APCC2004, 2004, pp.113-117.
resources by managing utility functions in this [8] H.R. Varian, Microeconomic Analysis, W. W. Norton and
mechanism. Co., 1992.
[9] N. Venkitaraman, J. Misore, A core stateless utility based
For further step, we may expand this mechanism on
rate allocation framework, in: Proceeding of INCP2001,
the following points. 2001.
(1) As for the incremental value assignment of utility [10] O. Gonzalez, F. Gotoh, S. Gilbert, Maximum network
58 End-to-End QoS Management Mechanism for Mobile Network
operator revenue resource allocation, in: 2002 IEICE [14] R. Braden, L. Jhang, S. Berson, et al., Resource
Society Conference, Sept. 2002. reservation protocol, RFC2205, IETF, 1997.
[11] R.J. Gibbens, F.P. Kelly, Resource pricing and the [15] D. Durham, J. Boyle, R. Cohen, et al., Common open
evolution of congestion control, Automatic 35 (1999) policy service, RFC2748, IETF, 2002.
1969-1985. [16] S. Gundavelli, K. Leung, V. Devarapalli, et al., Proxy
[12] F.P. Kelly, A.K. Maulloo, D.K.H. Tan, Rate control for mobile IPv6, draft-ietf-netlmm-proxymip6-18.txt, IETF,
communication networks: shadow prices, proportional 2008.
fairness and stability, Journal of Operations Research [17] A. Johnston, R. Sparks, M. Handley, R. Schooler, J.
Society 49 (1998) 237-252. Rosenberg, J. Peterson, H. Schulzrinne, G. Camarillo, SIP:
[13] C. Politis et al., Cooperative networks for the future session initiation protocol, RFC 3261, Proposed Standard,
wireless world, IEEE Commu. Mag. (2004) 70-79. IETF, 2002.