Computer Networks 44 (2004) 529–544 www.elsevier.com/locate/comnet
Comparison of link-layer segmentation methods for UMTS terrestrial radio access networks G abor T oth *, Csaba Antal Traffic Analysis and Network Performance Laboratory, Ericsson Research, Laborc u. 1, H-1037 Budapest, Hungary
Abstract Most user traffic types have limited delay/jitter budget over the Iub interface of UMTS. For example, the strict requirement for data bearers is due to synchronization of soft-handover legs. As the requirement for traffic types differs, the application of QoS solutions, such as multiple QoS classes and segmentation of large packets, is needed. In this paper, we propose results that can be used to improve the operation of link layer QoS mechanisms. We propose novel segmentation methods that decrease the delay of both low priority and high priority packets in a priority system. We have also developed new analytic results and performed simulations for the comparison of the segmentation methods. 2003 Elsevier B.V. All rights reserved. Keywords: UTRAN; Segmentation; Queuing; N D/D/1
1. Introduction It is widely recognized that all user traffic classes defined for Universal Mobile Telecommunication Systems (UMTS) [1] have real-time QoS requirements over the Iub interface of UMTS Terrestrial Radio Access Networks (UTRAN) [2,3]. Conversational and streaming classes, which serve voice, video and circuit switched data applications, have inherent real-time requirements, for example the total IP UTRAN delay for voice is 5–7 ms [4]. The real-time requirement of interactive and background classes used for Internet applications such as Web-browsing, file transfer and e-mail, is due to the specific features of the Iub interface, which is a
*
Corresponding author. E-mail addresses:
[email protected] (G. T oth),
[email protected] (C. Antal).
wireline interface between the Radio Network Controller (RNC) and base stations (Node B) (see Fig. 1). The main reason for the stringent delay requirements for these classes is that the RLC/ MAC protocol, which controls radio resources of user equipments (UE) is terminated in the RNC. Therefore, an excessive delay (more than 20–40 ms) would make the synchronization of softhandover legs and power control inefficient. Packet switched services, i.e., interactive and background class, on the other hand have less stringent loss requirements due to the retransmission capability of the RLC protocol. Another realtime traffic is the synchronization of Node Bs, which has the most stringent delay jitter requirement (2 ms). The UTRAN accommodates nonreal-time operational and maintenance (OAM) and––in future releases––non-UTRAN traffic. Another special property of UTRAN traffic over Iub interface is periodicity. That is, Frame
1389-1286/$ - see front matter 2003 Elsevier B.V. All rights reserved. doi:10.1016/j.comnet.2003.12.008
530
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
Fig. 1. UTRAN.
Protocol PDUs, which include user traffic to be sent over the air interface during a Transmission Time Interval (TTI), are emitted periodically. Periodic streams are modulated with on-off processes due to Discontinuous Transmission (DTX) for voice sources and higher layer protocols for mobile applications. TTI of voice traffic is 20 ms, TTI for packet switched services can have four values: 10, 20, 40 or 80 ms. Synchronization and voice packet are small (30–50 bytes), while the size of data packets might be large. For example if the transmission time interval of data packets is 20 ms and the bitrate of the bearer is 384 kbps then the packet size is larger than 1000 bytes. The exact packet size including all protocol overheads depends on the applied technologies. UTRAN links, like links of other access networks, have limited capacity and high cost. Therefore, high bandwidth efficiency is a primary target, which necessitates the application of QoS solutions. First UTRAN networks, therefore, are based on ATM, and IP DiffServ based UTRAN will be also deployed later. The focus of our paper is on IP-based UTRAN networks. The above characteristics of UTRAN networks indicate that to assure optimal operation for real-time traffic with the most stringent delay requirements, small packets (such as voice, some signalling and synchronization) should be differentiated from real-time data traffic in routers and switches. It is also apparent that real-time data traffic has to have preference over maintenance and best effort non-UTRAN traffic. Therefore, in IP-based UTRAN multiple real-time classes should be distinguished in the routers. Furthermore, even if voice has absolute priority over real-time data traffic, the delay of voice
packets significantly increases due to data packets (a 1000 byte-long data packet may increase the voice delay by 4 ms on an E1 link). To minimize this effect, large data packets are segmented. In ATM-based UTRAN, ATM does this task, while in IP UTRAN layer 2 segmentation is applied based on the PPP Multilink Protocol (MP) [5]. If multiple QoS classes are needed at layer 2 then multi-class extension of MP [6] should also be supported. Segmentation of real-time data packets, however, has an effect on the delay of data packets themselves. Therefore, all real-time classes should be included in the delay analysis of the system. The aim of this paper is to derive new analytical results that allow the evaluation of the delay of all real-time classes. We also aim to develop new segmentation methods and to study the effect of segment size and segmentation methods on packet delays. The rest of the paper is structured as follows. In Section 2, we propose analytic results for packet delay distributions in a priority system. Firstly, in Sections 2.1 and 2.2, we derive the delay distributions for both the high and low priority packets in a preemptive system for the case of a single low priority source. Based on these results, we derive the packet delay distributions for the non-preemptive system in Section 2.3. In Section 3, we verify the analytic results through simulations. We propose new segmentation methods in Section 4 and we evaluate their performance in Section 5. Finally, we draw the conclusions in Section 6.
2. Analytic evaluation of delays In this section, we propose analytic results for the evaluation of packet delays over the Iub interface of UTRAN systems. The system model is as follows. Traffic sources of the Iub interface are modelled as periodic sources with the same period length. Furthermore, the initial offset of sources is assumed to be a uniformly distributed random value. Voice and data sources differ only in the packet size in this simplified model. A limitation of the analysis is that only one data source is assumed.
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
Even though an on-off source model would characterize UTRAN traffic more closely, as we discussed in Section 1, this simple model we use here is appropriate for the evaluation of segmentation methods. Approximations for on–off sources can be prepared based on the methods presented in [2]. Using an on–off source model, the assumption of homogeneous TTIs can also be eliminated. Approximations for the heterogeneous case can be derived from the analysis of homogeneous system with changing the number of voice sources or their activity factor. The queuing model is based on a two-class non-preemptive strict-priority system, where voice sources have high priority and data sources have low priority. Infinite buffer-length is assumed for both classes. It is also assumed that data packets are segmented at arrival time. The real two-class strict priority system with non-preemptive service is very complex and difficult to investigate, but the corresponding preemptive system is simpler and it is easier to handle analytically. So we decided to first derive the distribution of the delays in the preemptive system, and then, in Section 2.3, we show how these results can be applied to the non-preemptive case.
FDq ðtÞ ¼ 1
tC bH
b NH
bH N n
^ hnn ð1 hn ÞNH n1
ð1 hN^H Þ;
ð1Þ
b H ¼ NH 1 is the where the server rate is C, N number of voice sources excluding the observed one and hi ¼ ibH =ðCT Þ t=T . The queuing delay does not include the deterministic transmission delay bH =C. Thus, the PDF and CDF of the total packet delay is the PDF and CDF of the queuing delay shifted by bH =C along the time axis, FDt ðtÞ ¼ FDq ðt bH =CÞ. 2.2. Preemptive low priority delay As we highlighted before, the delay distribution of low priority data packets is of interest in UTRAN networks as they also have statistical delay requirements. In this section we present analytic evaluation of the low priority delay distribution. The results are restricted to the case when a single low priority session is present in the system, which sends packets with the period time (TTI) as that of the high priority sources. We start the derivation of the Probability Density Function of the delay with its definition, that is
2.1. Preemptive high priority delay The delay distribution of high priority constant bit-rate traffic has been analyzed since the idea of transmitting real-time traffic over packet switched networks emerged. The N D/D/1 system, which is a single server model for the service of multiple deterministic sources, received dedicated attention at the beginning of the 90s. The exact virtual waiting time distribution was expressed first in [7] and in [8]. These results were extended to more general cases and a closed form approximation was also proposed in several papers including [9– 11]. For a detailed review of the work on N D/D/1 systems, see [12,13]. Denoting the number of voice sources by NH and assuming that they generate packets of size bH in each T -long time period, the CDF of the queuing delay of a voice packet can be expressed based on Eq. 3.2.2 in [12] as
X
531
fD ðtÞ ¼ lim
dt!0
Prðt < D 6 t þ dtÞ ; dt
ð2Þ
where D stands for the delay of low priority packets. As the investigated system is preemptive, the delay of high priority traffic is independent of the low priority traffic. Assuming that the data packet arrives at time instant 0, the PDF of data delay, fD ðtÞ, can be expressed in terms of the cumulative length of idle periods of the high priority system in ½0; t. fD ðtÞ
Pr Idlehigh ð0; tÞ < bCL 6 Idlehigh ð0; t þ dtÞ ; ¼ lim dt!0 dt ð3Þ
where Idlehigh ðt1 ; t2 Þ is the total length of the idle periods of the high priority system between t1 and t2 . Eq. (3) can be further transformed to (4):
532
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
fD ðtÞ
¼ lim
dt!0
Pr Vt ¼
0; bCL
dt 6 Idle dt
high
ð0; tÞ <
bL C
; ð4Þ
where Vt represents the high priority system content at time t. The probability in the numerator can be split into two parts depending on whether the voice queue is empty or not at the arrival of the data packet. If the voice queue is empty at the arrival of the data packet then the waiting time without its own transmission time is an integer multiple of the transmission time of a high priority packet. Therefore, this waiting time has a discrete distribution. If the voice queue is not empty when the data packet arrives then the waiting time distribution is continuous. The sum of the continuous and the discrete distributions yields the density function of the data delay: PC ¼ Pr V0 6¼ 0; Vt ¼ 0; bL bL high Idle ð0; tÞ 2 dt; ; ð5Þ C C PD ¼ Pr V0 ¼ 0; Vt ¼ 0; bL bL high Idle ð0; tÞ 2 dt; : ð6Þ C C
of voice arrivals in ðt0 ; td Þ is m, i.e., mðt0 ; td Þ ¼ m, where td represents the departure of the data packet, and t0 signifies the first time instant when the voice queue becomes empty after the arrival of the data packet. In such a case, td ¼ t0 þ ðmbH þ bL Þ=C and Vtd ¼ Vt0 ¼ 0. The condition td 2 ðt; t þ dtÞ can stand only if the service of the data packet starts in a certain time interval, i.e., t0 2 I, where I represents the time interval ðt sm ; t sm þ dt and sm ¼ ðmbH þ bL Þ=C. If we further condition the obtained expression on the exact length of the voice busy period that finishes at t0 , which is denoted by B0 , and sum it over all possible voice busy period lengths, we get XX PC ¼ PrðB0 ¼ l; Vt ¼ 0; t0 2 I; mðt0 ; td Þ ¼ mÞ: l
ð7Þ For the sake of easing the calculations let us define the following events: • • • •
X : B0 ¼ l > 0, Y : t0 2 ðt sm ; t sm þ dt, W : mðt0 ; td Þ ¼ m, Z: Vt ¼ 0.
Using the new notations PC can be expressed as XX PC ¼ PrðZjX ; Y ; W Þ PrðW jX ; Y Þ l
We will handle these two parts separately, first PC and PD are calculated and then the limits. Continuous part: First, we consider the case when the voice queue is not empty at the moment of the arrival of the data packet. In this case, PC can be calculated if it is conditioned on the number of voice packets arrived during the service of the data packet, and summed over all possible arrivals. In Fig. 2 a situation is shown when the number
m
m
PrðY jX Þ PrðX Þ:
ð8Þ
In the following we shortly introduce the main steps of the calculation of the continuous part of the low priority packet delay, for the detailed derivation of certain components refer to Appendix A. The rightmost probability is the probability that the length of a randomly chosen burst is l,
Fig. 2. Important time instants during the service of a low priority packet.
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
multiplied with the probability that the arrival of the data packet occurs when a voice packet is being served. Based on the distribution of busy period length PrðB ¼ lÞ and the mean busy period length EðBÞ, which are published in [16], this probability can be expressed as l N l1 NbH lbH lbH N PrðX Þ ¼ 1 1 : l TC TC TC ð9Þ The next probability to be calculated is the probability that the service of the data packet starts in a specific dt long time interval given that the length of the served voice busy period is l. As the arrival time of the packet is distributed evenly over the time-interval of the served voice burst, the second probability is C=ðlbH Þdt; l > ðtC bL Þ=bH m; PrðY jX Þ ¼ 0; otherwise: ð10Þ The third probability corresponds to the probability that there are m arrivals in a sm long time interval in a system where T 0 ¼ T ðlbH Þ=C and N 0 ¼ N l, given that the system is empty at the beginning of the interval. The above system is obtained by removing the l packets long voice burst, which is being served at time 0, from the high priority system. Introducing m X m Km ¼ 1 n n¼n0 n m NbH 1 TC ðRðN þ nÞ 1Þ RðmÞ ; ð11Þ ð1 RðN þ nÞ þ RðmÞÞnþ1m
533
the empty probability at an arbitrarily chosen time instant in such an N D/D/1 system where there are m sources with period length of ðmbH þ bL Þ=C: PrðZjX ; Y ; W Þ ¼
bL : mbH þ bL
ð13Þ
Composing the product of the conditional probabilities calculated above and substituting l þ m with k we obtain PC
X
X
8m k>ðtCbL Þ=bH
N N m
m
m1
Km Rð0ÞRðmÞ ð1 RðN ÞÞ dt k m : mþ1k kþ1N T Rðk mÞ ð1 RðkÞÞ ð14Þ
Discrete part: The next step is to calculate the probability PD , which is for the case when the low priority packet arrives when the system is empty. It follows from the preemptive operation, that the service time in this case takes a value that exactly equals ðmbH þ bL Þ=C, where m is a nonnegative integer that is less than or equal to N . Therefore, the probability that the delay of the low priority packet is in a certain dt period equals to the sum (over all m) of the probabilities that m high priority packets arrive during the service time of the low priority packet. That is, the ðmbH þ bL Þ=C value falls in the given dt long time interval. PD ¼
mmax X
PrðV0 ¼ 0; Vt ¼ 0; mð0; sm Þ ¼ mÞ;
ð15Þ
m¼mmin
where
TC n0 ¼ ð1 RðN ÞÞ and bH it can be seen that PrðW jX ; Y Þ
N l m
K
m
RðxÞ ¼
TCNbH bL TCNbH
xbH þ bL ; TC
TCðmþlÞbH bL TClbH
mbH þbL TClbH
where mmin ¼ ðtC bL Þ=bH and mmax ¼ ððt þ dtÞC bL Þ=bH . Following the same train of thoughts as in the continuous case we can get the following expression for the PD probability
m
lþmþ1N : ð12Þ
To express the last probability we use that mðt0 ; td Þ ¼ m and td ¼ t0 þ ðmbH þ bL Þ=C. This is
PD
mmax X m¼mmin
Km
N m
Rð0Þð1 RðN ÞÞRðmÞ ð1 RðmÞÞmþ1N
m1
: ð16Þ
Applying that Prðt < D 6 t þ dtÞ ¼ PC þ PD , and substituting this into (2) we get the formula of
534
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
X 1X T 8m k>ðtCb Þ=b L H N N m m1 Km Rð0ÞRðmÞ ð1 RðN ÞÞ m km Rðk mÞmþ1k ð1 RðkÞÞkþ1N X N Rð0Þð1 RðN ÞÞRðmÞm1 þ Km m ð1 RðmÞÞmþ1N m mbH þ bL d t : ð17Þ C
fD ðtÞ
2.3. Non-preemptive system with segmentation Fig. 3 illustrates the preemptive and non-preemptive systems with the same arrival process. In the non-preemptive case, the data packet is segmented according to the method depicted in the upper-left corner of the figure. In the preemptive case, it does not matter whether the data packet is segmented or not (if we neglect segmentation overhead), so for the sake of comparison we assumed that the packet is segmented according to the same method. 2.3.1. Effect of non-saturated low priority traffic The effect of low priority packets on the delay of high priority voice packets was also analyzed in
recent studies. In [14], the exact delay distribution of voice packets was derived in a strict priority system based on an ND/D/1 system with vacations. Analytic results, however, are valid only for the cases when the low priority buffer is saturated. Voice delay distribution with strict priority and weighted round robin scheduling was also studied in [15]. The waiting time distribution of voice packets was calculated based on an M/D/1 model in [15] assuming that the low priority buffer is saturated. Both papers assumed that the delay of high priority voice packets is the sum of the voice delay in the preemptive strict priority system and the residual transmission time of low priority segments. In this section, we express the distribution of the high priority voice delay in a non-preemptive strict priority system where the low priority buffer is not saturated, which is not considered in previous studies. For the calculation of the voice delay we assume, as in [15] and [14], that the voice delay expressed in Section 2.1 increases by an independent additional term. Comparing the two systems in Fig. 3, it can be observed that between the start times of the service of two successive data segments the system serves the same packets in both system, the only difference is that the service of the data segment is not interrupted so the voice packets are served only after the data segment.
Fig. 3. Time-line of serving packets in preemptive and non-preemptive systems.
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
Thus the term, which the delay of the voice packet increases with, is equal to the residual transmission time of actual low priority segment in the corresponding preemptive strict priority system at the instant when the observed high priority packet arrives (t0 ). Thus, we aim to express the distribution of that residual transmission time first and then we derive the total non-preemptive voice delay by convolution. Denote the number of low priority data sessions by NL and assume that each injects one bL long low priority data packet into the system in each T long time-period. Assume that long data packets are fragmented into short segments such that the total number of segments in a T long time interval is K, the number of si long segments during T is ki and P i ki ¼ K. Thus, the relative frequency of a segment with size of si is PrðsP i Þ ¼ ki =K, and the average segment length is S ¼ i si ki =K. Let A denote the event that the residual transmission time of the data segment (Ds ) at t0 is less than t, i.e., PrðAÞ ¼ PrðDs < tÞ. Let B denote the event that the server is serving a data segment at t0 , and C the event that a segment of size si is in the server at t0 . Now, PrðAÞ can be expressed as follows X PrðAjBCÞ PrðCjBÞ PrðAÞ ¼ PrðBÞ 8si
þ PrðAjBÞ PrðBÞ:
ð18Þ
In the second term of (18), PrðAjBÞ ¼ 1 if t > 0, otherwise it is 0. Using the definition of the events A,B and C, the components of the first term can be expressed as PrðAjBCÞ ¼ minð1; tC=si Þ, PrðCjBÞ ¼ si Prðsi Þ=S, and PrðBÞ ¼ NL bL =ðTC NH bH Þ. After substituting these formulae into (18) we get the CDF that yields the probability density function by derivation, which has the following form: X Cki fDs ðtÞ ¼ p0 dðtÞ þ ; ð19Þ TC NH bH 8i:si >tC where p0 ¼ 1 NL bL =ðTC NH bH Þ and dðxÞ is the Dirac delta function. The PDF of the total voice delay, fD ðtÞ, then is obtained by convolving the density functions of the preemptive voice delay, fDt ðtÞ ¼ dtd FDq ðtÞ, and
535
that of the residual transmission time of data segments, fDs ðtÞ. Accomplishing the necessary calculations, the PDF is obtained: X h si i fD ðtÞ ¼ p0 fDt ðtÞ þ ci FDt ðtÞ FDt t C 8i:si
where ci ¼ ki =ðTC NH bH Þ and p0 is defined above. 2.3.2. Data delay in non-preemptive system with segmentation In this section we show how the analytic results obtained for data delay the preemptive system can be applied to the non-preemptive case. In Fig. 3, it can be observed that the service of the data segment in the non-preemptive is started in such a time instant when the voice queue is empty and all data segments preceding the observed one have already been served. Thus, if the stability criteria for the system are met, the start times of the segments in the non-preemptive system are the same as in the preemptive case. Since the service of a segment cannot be interrupted in the non-preemptive system, the total service time of the data packet can be calculated as the sum of two components. One is the delay that a ^bL ¼ bL Sl long low priority packet suffers in a preemptive system, where Sl is the length of the last segment. The other is the transmission time of a Sl long segment at full service rate. Thus the CDF of the delay of a single bL long data packet in a nonpreemptive system with segmentation is Sl FD ðtÞ ¼ FbD t ; ð21Þ C ^ bL ¼bL Sl
where FbD ðtÞ is the CDF of the delay of a ^bL long data packet in a preemptive system and C is the server rate. 3. Verification We have carried out simulations to verify the analytic results for various scenarios. Here we present results for a router with a 1920 kbps (E1) link, which carries the multiplexed traffic of 1 data
536
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
and 80 voice sources. The length of the voice and data packets are 44 and 1013 bytes, respectively, and the period is 20 ms for each sources. The comparison was done for two different segmentation sizes. The data packets are divided into two segments in both cases. In the first case, the sizes of the first and second segment are 800 and 213 bytes, in the second case, they are 506 and 507 bytes. Fig. 4(b) and (a) show the complement of the normalized cumulative histograms and the cumulative density functions of the delays for both cases. In the figures it is apparent that the simulated and the analytical results are hardly distinguishable.
Now let us consider how segmentation effects data delay. We have shown in this paper that the delay distribution of the data traffic in a non-preemptive system depends on the size of the last segment of the segmented data packet (see (21)). However, how the former part of the packet is segmented is irrelevant regarding the distribution. Since the service of the last data segment in the non-preemptive system cannot be interrupted once it is started, the larger the last segment, the smaller the delay that the data packet suffers given that the total packet size is fixed.
4. Segmentation methods
The simplest method for segmenting packets cuts the packet into maximum segment size (MSS) long segments until the remaining part is shorter than the MSS. Thus, the last segment contains the remaining bytes only. This relatively simple procedure is suboptimal for both voice and data delay because the largest data segment is not as small as possible, and the last segment is not as large as possible. In what follows we propose two alternative segmentation algorithms which provide better delay performance.
4.1. Basic segmentation algorithm
In this section we investigate how segmentation affects the delay of high and low priority packets. We also show that the simplest segmentation method, which is widely applied in current equipment, is suboptimal in this sense. Firstly, we consider the voice traffic. As shown in Section 2, the voice delay is the sum of two independent random variables; and only one of them (fDs ) depends on the segmentation of the data packet. The quantiles of the total delay are minimized via proper segmentation in practical cases if the quantiles of the segmentation-dependent component are also minimized. This can be reached by setting the size of the largest data segment as small as possible.
10
0
0
10
–1
10
–2
10
D
1_F (t)
10
This method ensures that the largest segment of a packet is as small as possible given that the
1_FD(t)
10
4.2. Segmentation method 1
10
–3
–4
10
(a)
–2
–3
10
Case _1 simulated Case _1 analytic Case_2 simulated Case_ 2 analytic
10
–1
10
–4
Case_1 simulated Case_1 analytic Case_2 simulated Case_2 analytic
–5
10
–5
0
5
10
Delay [ms]
15
20
(b)
0
1
2
3
4
5
Delay [ms]
Fig. 4. Verification of the analytic formulae. (a) Complementary distribution functions of the data delay; (b) Complementary distribution functions of the voice delay.
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
number of segments (n) is the same as it is in the basic method at a given MSS setting: n ¼ dP =MSSe where P is the total packet size and MSS is the maximum segment size. This is to avoid the segmentation of packets into arbitrarily small pieces, which would result in too large a header overhead. With these constraints voice delay is optimal when data packets are segmented such that the size of segments is set as even as possible. The algorithm produces two types of segments with sizes of S1 and S2 that can be calculated as S1 ¼ dP =ne and S2 ¼ bP =nc. The number of the S1 size segments is n1 ¼ modðP ; nÞ and the number of S2 -size segments is n2 ¼ n n1 . Segments can be sent in an arbitrary sequence because one byte difference does not have a noticeable effect on data delay. Even though, the main purpose of this algorithm is to further reduce the tail distribution of the voice delay, it can be seen that this algorithm never produces shorter last segment than the basic algorithm does, thus this algorithm may also improve the performance of the data traffic. 4.3. Segmentation method 2 The largest last segment provides the best performance for data traffic. So as not to increase the delay of the voice packets, the algorithm keeps the original MSS as a parameter. The size of the segment to be sent at last is set to the largest possible value, i.e., MSS, while the remaining part of the packet is segmented into n 1 pieces that are equal in size to the extent possible. The method used to calculate the size of these n 1 pieces of segments is identical to the one described at Method 1. It can be seen that this algorithm never produces more MSS-sized segments than the basic algorithm does, thus the quantile of the segmentation-dependent part of the voice delay may decrease. Therefore, besides decreasing the tail distribution of the data delay, the algorithm might also improve the performance of the voice traffic.
5. Comparison of segmentation methods To illustrate how the described algorithms reduce delays when two different traffic classes are
537
carried over the same link, a simple network scenario was investigated using the analytical results obtained in Section 2. The investigated system includes a 1920 kbps link (E1) that carries the multiplexed periodic voice and data traffic. Each high priority voice source transmits one 44-byte packet every 20 ms, and each low priority data source transmits one 1013-byte long packet every 20 ms, which corresponds to a 384 kbps bearer in IP UTRAN. 5.1. Evaluation of delay quantiles First, we examined how the particular segmentation methods influence the delay quantiles at different MSS settings when the link is loaded with fixed traffic mix. The traffic mix we used included the traffic of 80 voice sources and one data source. The header overhead introduced by the segmentation was neglected during the investigation because it does not influence the comparison. Fig. 5(a) shows the resulted 103 quantile of the data delay as a function of the maximum segmentation size. Fig. 5(b) shows the 103 quantile of the voice delay as the function of the MSS. The difference between the shapes of curves can be attributed to the way segment sizes depend on MSS for the studied methods. Data delay curve at the basic algorithm is monotonously increasing if the number of segments (n) does not change because then the size of the last segment decreases for increasing MSS. However, if the number of segments is decremented (due to the increased MSS) then the size of the last segment has a jump (from 0 to MSS), which results in a jump in the data delay curve as well. Segmentation Method 1 also has jumps in the data delay curve when the number of segments changes. It is constant otherwise because S1 and S2 depends only on n and not on MSS. For Segmentation Method 2, the size of the last segment is always equal to MSS, so the data delay curve is continuous. Regarding voice delay, we can observe that the Basic Method and Method 2 have continuous curves because the size of the largest segment is equal to MSS. For Method 1, the largest segment size is dP =ne, so the voice delay is constant if n is constant.
538
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544 5.5
10–3 quantile of the voice delay
10 –3 quantile of the data delay
19 18 17 16 15 Basic Method 1 Method 2
14 13 12
5 4.5 4 3.5 3 Basic Method 1 Method 2
2.5 2 1.5
0
200
(a)
400
600
800
1000
1200
0
200
(b)
Maximum Segmentation Size
400
600
800
1000
1200
Maximum Segmentation Size
Fig. 5. 103 quantiles of the delays in the case of 80 voice and 1 data flows. (a) Quantiles of the data delay; (b) Quantiles of the voice delay.
Regarding data delay, however, Method 2 significantly out-performs Method 1. We do not have analytical formulae to calculate the delay distributions for the case when more than one data source generate traffic in the system. Therefore, we made simulations to show that the segmentation algorithms improve the performance of both classes in these cases too. The simulated systems are identical to the one we had before, only the number of voice and data users is changed to 36 and 3, respectively. Fig. 6(a) and (b) show the output of the simulations. It can be seen, that the curves are very similar to those of the analytical results for one data source, which means that Method 1 and Method 2 provides the best per-
It can be observed that using either Segmentation Method 1 or Segmentation Method 2, the 103 quantile of both voice and data delays is always smaller than or equal to that of the basic segmentation method. No improvement is achieved at all regarding voice delay when Method 2 is used with an MSS where the data packet is divided into two pieces. In this case, the length of the produced data segments are the same as the basic algorithm would produce, but in reverse order. Therefore, the PDFs of the segmentation-dependent part of the voice delays, and thus the PDFs of the total voice delays are the same in the two cases. It can be concluded from Fig. 5(b) that the quantile of voice delay is reduced the most if Method 1 is used.
quantile of the voice delay
5
18
17.5
17
Basic Method 1 Method 2
10
10
–3
–3
quantile of the data delay
18.5
16.5
4
3.5 3
2.5 Basic Method 1 Method 2
2
1.5 1
0.5
0
(a)
4.5
200
400
600
800
Maximum Segmentation Size
1000
0
1200
(b)
200
400
600
800
1000
1200
Maximum Segmentation Size
Fig. 6. 103 quantiles of the delays in the case of 36 voice and 3 data flows. (a) Quantiles of the data delay; (b) Quantiles of the voice delay.
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
formance regarding voice and data delay, respectively. 5.2. Evaluation of admissible regions In the previous subsection, we analyzed how segmentation methods affect the delay quantiles of voice and data packets. Another possible way of comparing segmentation methods is to calculate how many calls can be admitted without violating the delay requirements. That is, the admissible region can also be analyzed, as the region of space within which service commitments, such as delay and loss requirements, are satisfied, where the space is defined by the number of admitted flows from a finite set of flow types. The admissible region on a link may be influenced by several things such as the delay requirements of the flows, the capacity of the link, the applied QoS mechanisms and the segmentation. As the admissible regions are bordered with non-linear surfaces and two admissible regions may intersect, comparing them is not straightforward. For example in Fig. 7, we can see two sample admissible regions for different voice and data delay requirements. The investigated system was the same as described in Section 3, i.e., the parameters are 1920 kbps link-rate, 44 and 1013 byte long packets for voice and data, respectively, 20 ms TTI for both classes and 800 byte MSS for data. The admissible regions are sets
539
of individual points, but for the sake of clarity we illustrated them by their bordering curves. These curves have really different shapes and it is difficult to decide which is better. Therefore, we defined the number of points within the admissible region as a scalar metric for the comparison. With this metric we found that the size of the admissible region depicted by the dashed line is 256, and the size of the other is 246. The above metric allows us to classify the segmentation methods for various service requirements. We determined the admissible regions by simulation and we calculated the metric for several voice/data delay requirement pairs for all 3 segmentation methods. We made the simulation and calculation for all ðDv ; Dd Þ voice delay––data delay requirement pairs where Dv ¼ i 0:1 ms, Dd ¼ j 0:5 ms; 0 6 i; j 6 40. Fig. 8 shows the size of the resulted admissible regions for all investigated ðDv ; Dd Þ combinations when Method 1 segmentation was used. It can be observed in the figure that the size of the admissible region is small and independent of the data delay requirement when at least one of the delay requirements is small. The reason for this is that no data flows can be admitted at small delay requirements without violating one of them, thus the number of admittable voice flows determines the admissible region. It can also be observed that the size of the admissible region is really sensitive to the voice delay
120 D =2.6ms;D =20ms v d Dv=5ms;Dd=15ms
350 300
80
250 60
Metric
Number of Voice Sources
100
40
200 150 100 50
20
0 6 4
0 0
1
2
3
Number of Data Sources
Fig. 7. Two sample admissible regions.
4
Dv
2 0
0
5
15
10 Dd
Fig. 8. Size of the admissible regions.
20
540
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
requirement around 3 ms, but the dependence on the data delay requirement is not so strong. Now we study the efficiency of the segmentation methods at different segmentation sizes. We investigate 64 different MSS values between 62 and 1013 bytes for this purpose. The studied MSS set consists of 32 values from the two sides of MSS values where the number of segments change, i.e., b1013=ic and d1013=ie for 0 < i < 16, and 32 additional MSS value in between. We evaluate the performance at two fixed ðDv ; Dd Þ pairs, which the sample admissible regions of Fig. 7 are illustrated for, i.e., (2.6 ms,20 ms) and (5 ms,15 ms). Simulation results are shown in Fig. 9(a) and (b). It can be seen that the characteristics of the curves very much depend on the actual delay requirements. The reason for this is that the delay requirements and the MSS determine together which type of source has the limiting delay requirement. In the first case, when ðDv ; Dd Þ ¼ (2.6 ms,20 ms), the voice delay requirement limits the admissible region at each MSS for all 3 segmentation methods. Therefore, Segmentation Method 1, which is the optimal for voice, has the best performance. Since the tail distribution of the low priority segment size determines the voice delay, the greater the applied segmentation size the fewer the voice connections that can be admitted. Thus, the size of the admissible region decreases with increasing MSS. In the second case, mostly the data delay requirement is the limiting one. That is why Segmentation Method 2, which favors data more, is the best. It
can be observed that the curve of Segmentation Method 2 breaks down at approximately 900 byte MSS. This is due to the fact that data delay requirement no longer limits the admissible region from this point. The limiting factor is voice instead, for which increasing MSS is disadvantageous. Once the size of admissible regions is calculated for all 3 segmentation methods we can select the optimal method for each ðDv ; Dd Þ pairs. Since the proposed segmentation methods never show worse performance than the basic method (as we have shown in the previous subsection), we can distinguish between 4 types of delay requirement pairs based on which segmentation method is the best. These are: • Type A: All 3 methods have the same performance • Type B: Method 1 and Method 2 have the same performance which is better than that of basic method • Type C: Method 1 is the best • Type D: Method 2 is the best In Fig. 10, all four types of regions are displayed. If either of the delay requirements is very small, then there is no difference between the performance of the segmentation methods. In such cases, at least one of the traffic classes is completely excluded from the system. Therefore, only one traffic class is admitted, so segmentation plays no role in 275
300
250
200
150
100
(a)
Size of the Admissible Region
Size of the Admissible Region
350
Basic Method 1 Method 2
0
200
Basic Method 1 Method 2
270 265 260 255 250 245 240
400
600
MSS
800
1000
1200
0
(b)
200
400
600
800
1000
1200
MSS
Fig. 9. The size of the admissible region as the function of MSS for fixed delay requirements. (a) Dv ¼ 2:6 ms, Dd ¼ 20 ms; (b) Dv ¼ 5 ms, Dd ¼ 15 ms.
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
method and each delay requirement pair. We then selected the method for which the maximum admissible region is the largest for each delay requirement pair. Now we can distinguish the same four types of ðDv ; Dd Þ pairs (Type A, B, C and D) as described above. As Fig. 11 shows, there is no Type C point in the examined region. It can also be observed that for practical requirement combinations one or both of the proposed methods provide better performance than the basic one.
5
4
D
v
3
2 Region Type A Region Type B Region Type C Region Type D
1
0
0
5
10
15
20
Dd
Fig. 10. Classification of the delay requirement pairs for 800 byte MSS.
the delays. It can also be observed though, that in case of practical delay requirements one or both proposed segmentation methods have better performance than the basic one. We also investigated how effective the segmentation methods are if there is a possibility to tune the MSS parameter for better performance. We analyzed the segmentation methods for the MSS settings described previously. We evaluated the admissible regions for all 64 MSS settings and chose the largest one for each segmentation
5
Region Type A Region Type B Region Type D
4
D
v
3
2
1
0
0
5
10
541
15
20
Dd
Fig. 11. Classification of the delay requirement pairs for the optimal MSS.
6. Conclusions and future work We have shown that the delay quantile of voice and real-time data packets depends significantly on the segmentation method applied for large data packets. We proposed two methods that decrease the delay of both data and voice packets compared to conventional segmentation methods. We have concluded based on analytic and simulation results that the best segmentation method regarding data delay is if the size of the data segment that is sent last has the maximum size allowed by the MSS parameter. On the other hand, voice performance is optimal when data segments are as equal as possible. As applying these methods makes it possible to admit more connections from both traffic classes without violating their delay constraints, the bandwidth efficiency of small links in IP UTRAN networks can be increased. To show this we have evaluated the size of the admissible regions at different delay requirements and we have selected the best methods at each requirement. This evaluation has also shown the superiority of the proposed methods. For the performance evaluation of the proposed methods over the Iub interface of IP UTRAN, we have also derived analytic results for a two-class single server strict priority system where both high priority and low priority traffic are superpositions of periodic constant bit-rate sources with real-time requirements. We have derived the exact delay distribution of voice packets assuming that the low priority buffer is not saturated. We have also derived the low priority delay distribution.
542
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
The system model of the evaluation is restricted to a two-class priority system where we considered a single low priority source. We further assumed that the TTI is the same for both classes and we neglected ON–OFF operation of real sources. One of the directions of our future work is to extend the analytic evaluation to more general cases. As a first step, we intend to generalize the model to a multi-class system with many low priority sources. Another limitation of the analytic results is that the obtained expressions are complex but not exact. The analytic framework should be extended in two directions. Firstly, the development of accurate formulae allows us to skip simulations for the verification of the accuracy of the results. On the other hand, we also intend to develop simpler but possibly less accurate approximations, which could be embedded in connection admission control algorithms.
Appendix A. Calculation of the terms in Eq. (8) The rightmost probability in Eq. (8), PrðX Þ, is the probability that the length of a randomly chosen burst is l, multiplied with the probability that the arrival of the data packet occurs when a voice packet is being served. PrðX Þ ¼ PrðB0 ¼ ljV0 > 0Þ PrðV0 > 0Þ ¼
lbH PrðB ¼ lÞ NbH ; EðBÞ TC
ðA:1Þ
and TCbH : TC ðN 1ÞbH
PrðX Þ ¼
N l
NbH 1 TC
lbH TC
l
lbH 1 TC
N l1 : ðA:4Þ
The next probability to be calculated is the probability that the service of the data packet starts in a specific dt long time interval given that the length of the served voice busy period is l. As the arrival time of the packet is distributed evenly over the time-interval of the served voice burst, the second probability is C PrðY jX Þ ¼ dt; ðA:5Þ lbH if l > ðtC bL Þ=bH m and 0 otherwise. To calculate the PrðW jX ; Y Þ probability in Section 2.2, we remove the l packet long voice busy period, which is being served at time 0, from the high priority system, and we take only the remaining system into account. Eliminating the specified period we got a reduced ND/D/1 system, where T 0 ¼ T lbH =C and N 0 ¼ N l. In this system, we search for the probability that m arrivals occur in a sm long time interval, given that the system is empty at the beginning of the interval. Using the apostrophized form of the parameters to indicate the system parameters of the truncated system and applying the Bayes-formula, the desired probability can be formalized as PrðW jX ;Y Þ ¼ Prðm0 ðt0 ;t0 þ sm Þ ¼ mjVt00 ¼ 0Þ
where the distribution of busy period length PrðB ¼ lÞ and the mean busy period length EðBÞ is expressed based on [16] as l1 N 1 TC NbH lbH PrðB ¼ lÞ ¼ l 1 TC ðN 1ÞbH TC N l1 lbH 1 ðA:2Þ 1 l TC
EðBÞ ¼
ðA:3Þ
Substituting (A.2) and (A.3) into (A.1) we get the expression for the probability of event X , which is
¼
PrðVt00 ¼ 0jm0 ðt0 ;t0 þ sm Þ ¼ mÞ Prðm0 ðt0 ; t0 þ sm Þ ¼ mÞ : PrðVt00 ¼ 0Þ
ðA:6Þ 0
The probability of the event that Vt0 ¼ 0 given that m0 ðt0 ; t0 þ sm Þ ¼ m can be divided into two parts depending on whether the virtual waiting time at t0 þ sm reaches a certain threshold or not. This threshold is Vb ¼ ðTC NbH bL Þ=C. If the virtual waiting time exceeds this threshold at t0 þ sm then the system cannot empty until t0 þ T 0 due to the N l m arrivals in ðt0 þ sm ; t0 þ T 0 Þ. Thus, PrðVt00 ¼ 0jm0 ðt0 ; t0 þ sm Þ ¼ m; Vt00þsm > Vb Þ ¼ 0. That is, PrðVt00 ¼ 0jm0 ðt0 ; t0 þ sm Þ ¼ mÞ can be expressed as the product of two probabilities Pa and Pb : Pa ¼ PrðVt00 ¼ 0jm0 ðt0 ; t0 þ sm Þ ¼ m; Vt00þsm < Vb Þ; Pb ¼ PrðVt00þsm < Vb jm0 ðt0 ; t0 þ sm Þ ¼ mÞ:
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544
If the system content stays below the threshold it is sure that there will be some idle periods in ðt0 þ sm ; t0 þ T 0 Þ thus this period can be handled as an individual N D/D/1. Thus TC NbH bL : TC ðl þ mÞbH bL
Pa ¼
ðA:7Þ
For the calculation of probability Pb , the virtual waiting time distribution of a system with m users and sm long period can be used as an approximation. This probability is obtained based on the virtual waiting time distribution in, e.g., [12] Pb ¼ 1
m X
m
!
n H ðRðN þ nÞ 1Þn RðmÞm 1 Nb TC n¼n0
ð1 RðN þ nÞ þ RðmÞÞ
nþ1m
;
ðA:8Þ
where n0 ¼
TC ð1 RðN ÞÞ bH
and
RðxÞ ¼
xbH þ bL : TC
Probability Pb is independent of l, so for the sake of simplicity, it will be referred to as Km in the following. Prðm0 ðt0 ; t0 þ sm Þ ¼ mÞ is the probability that the number of arrivals in a sm long interval is m, thus it has binomial distribution, that is 0
0
0
Prðm ðt ; t þ sm Þ ¼ mÞ ¼
N l m
N lm mbH þ bL 1 : TC lbH
mbH þ bL TC lbH
m
ðA:9Þ
And at last the probability that the reduced system is empty in t0 can be expressed as one minus the utilization of that system, i.e., PrðVt00 ¼ 0Þ ¼
TC NbH : TC lbH
ðA:10Þ
Multiplying the above probabilities we get the formula for PrðW jX ; Y Þ.
543
References [1] 3GPP, QoS Concept and Architecture, TS 23.107, V.3.6.0, October 1999. [2] Sz. Malomsoky, S. Racz, Sz. Nadas, Connection admission control in UMTS radio access networks, Computer Communications, Special Issue on 3G Wireless and Beyond, 26 (17) (2003) 2011–2023. [3] S. Nananukul, Y. Guo, M. Holma, S. Kekki, Some issues in performance and design of the ATM/AAL2 transport in the UTRAN, IEEE Wireless Communications and Networking Conference, September 2000. [4] 3GPP, Delay budget within the access stratum, Technical Report, TR 25.853, V4.0.0, May 2001. [5] K. Sklower, B. Lloyd, G. McGregor, D. Carr, T. Coradetti, The multilink PPP protocol, RFC 1990, August 1996. [6] C. Bormann, The multi-class extension to multi-link PPP, RFC 2686, September 1999. [7] A. Bhargava, P. Humblet, H. Hluchyj, Queuing analysis of continuous bit stream transport in packet networks, GlobecomÕ89, Dallas, TX, October 1989. [8] I. Norros, J.W. Roberts, A. Simonian, J. Virtamo, The superposition of variable bitrate sources in ATM multiplexers, IEEE Journal on Selected Areas in Communications 9 (3) (1991) 378–387. [9] B. Hajek, Heavy traffic limit theorems for queues with periodic arrivals, in: ORSA/TIMS Special Interest Conference on Applied Probability in the Engineering, Informational and Natural Sciences, January 1991, p. 44. [10] B. Sengupta, A queue with superposition of arrival streams with an application to packet voice technology, in: P.J.B. King, I. Mitrani, R.J. Pooley (Eds.), PerformanceÕ90, North-Holland, Amsterdam, 1990, pp. 53– 60. [11] J. Roberts, J. Virtamo, The superposition of periodic cell arrival streams in an ATM multiplexer, IEEE Transactions on Communication 39 (1991) 298–303. [12] COST 242 Management Committee, Methods for the performance evaluation and design of broadband multiservice networks, The COST 242 Final Report, Part III, June 1996. [13] J. He, K. Sohraby, On the queueing analysis of dispersed periodic messages, IEEE Infocom 2000, Tel-Aviv, Israel, 26–30 March. [14] K. Iida, T. Takine, H. Sunahara, Y. Oie, Delay analysis ofCBR traffic under static-priority scheduling, IEEE/ACM Transactions on Networking 9 (2) (2001) 177–185. [15] M.J. Karam, F.A. Tobagi, Analysis of the delay and jitter of voice traffic over the Internet, IEEE Infocom 2001, Anchorage, AK, USA, 22–26 April 2001. [16] J.T. Virtamo, Idle and busy period distribution of an infinite capacity N D/D/1 queue, 14th International Teletraffic Congress––ITC 14, Antibes Juan-les-Pins, France, June 1994.
544
G. Toth, C. Antal / Computer Networks 44 (2004) 529–544 Ga´bor To´th received his M.Sc. degree in Electrical Engineering from the Budapest University of Technology and Economics, Hungary in 1998. He has been with the Traffic Analysis and Network Performance Laboratory of Ericsson Research Hungary since 1998. His early work concerned performance evaluation of GPRS. In the past years he has been working on analysis of IP based solutions for mobile networks.
Csaba Antal received his M.Sc. and Ph.D. degrees in Electrical Engineering from Budapest University of Technology and Economics (BUTE), Budapest, Hungary in 1994 and 2000, respectively. He joined Traffic Analysis and Network Performance Laboratory of Ericsson Research Hungary in 1999, where he is working as a research fellow. His main research interest includes performance analysis and evaluation of communication systems, in particular transport network solutions for mobile systems.