Vous êtes sur la page 1sur 6

QoS Mapping along the Protocol Stack: Discussion and Preliminary Results

Luiz A. DaSilva
Bradley Department of Electrical and Computer Engineering Virginia Polytechnic Institute and State University Alexandria Research Institute - Alexandria, VA 22314 subject of section III. Finally, section IV contains conclusions and some directions for further research on the subject. II. LAYERED FRAMEWORK FOR QOS ASSESSMENT The term "QoS" is routinely used to refer to a number of concepts, from per-hop behaviors defined for traffic aggregates to maximum packet delay and loss assurances given to a connection. Several QoS architectures are surveyed in [4]. The ultimate goal of a QoS-enabled network should be to provide users with a set of end-to-end, application-level guarantees, be they qualitative or (preferably) quantitative. Or, as described in [5], QoS defines non-functional characteristics of the network affecting the perceived quality of the result. In this work, we adopt the following working definition of QoS: Quality of service at a given layer in the protocol stack is the characterization (in absolute or relative terms) of the expected quality to be achieved in the delivery of data units to the corresponding layer across the network. This definition is consistent with the discussion by Huard and Lazar in [6], where they measure and specify QoS "from the moment a level L protocol data unit (PDU) crosses the boundary from level L to L-1 at the source end-point to the moment it crosses the boundary from level L-1 to level L at its destination end-point." Each layer in the protocol stack may offer its own version of QoS guarantees; furthermore, different QoS guarantees may be provided at each intermediate sub-network. The role of QoS mapping can be looked at from two distinct, but related, viewpoints: a) Between two QoS-enabled protocol layers (for instance, Diffserv-enabled IP over ATM), we need a way to map between the parameters associated with given service classes (or behaviors) at each of the layers. The main question that needs to be addressed in this case is: what contract parameters must be set at layer N-1 to ensure a service level agreement at layer N? b) Between any two layers, it is necessary to find a mapping between the expected performance at the lower layer and its impact on QoS parameters that are meaningful to the higher layer.

Abstract - Quality of service (QoS) mechanisms are needed in integrated networks so that the performance requirements of heterogeneous applications are met. In this paper, we outline a framework for predicting end-to-end QoS at the application layer based on mapping of QoS guarantees across layers in the protocol stack and concatenation of guarantees across multiple dissimilar sub-networks. Mapping is needed to translate QoS guarantees provided in the lower layers into their effects on upper-layer performance indicators. We illustrate the process with some preliminary results for QoS mapping due to segmentation of packets; we conduct a worst-case analysis, generating a closed-form mapping of delay and losses between two layers. Future extensions of this work will take into account flow aggregation processes and the combination of quantitative and qualitative guarantees.

I. INTRODUCTION Integrated networks have become a reality. Users demand applications that deliver text, audio, images and video, often in real time and with a high degree of interactivity; economic and market reasons dictate that these should be delivered over a common infrastructure. The heterogeneity of the applications leads to the desirability of some sort of service differentiation, or what is commonly referred to as Quality of Service (QoS). The problem of providing QoS in an efficient manner is a complex one, involving multiple inter-related aspects, including resource provisioning, call admission control, traffic policing, routing, and pricing. Great strides have been made in the past few years, especially in the definition of ATM QoS by the ATM Forum [1] and in recent progress in defining QoS-enabled architectures for the Internet by the Internet Engineering Task Force (IETF) [2,3]. However, an overarching framework in which to evaluate and design for end-to-end QoS at the application layer does not exist at present. In this paper, we discuss a general framework for predicting application-layer QoS based on QoS mapping between layers and concatenation of guarantees in subnetworks. We introduce the concepts of mapping and concatenation to determine end-to-end QoS in section II. A characterization of the impacts of segmentation on delay and losses serves as our primary illustration of the need for mapping; that is the

The question here is: what effect will the given QoS guarantees at layer N-1 have on performance metrics at layer N? Ultimately, the objective of QoS mapping is to be able to combine all these guarantees into a characterization of endto-end performance at the application layer. The first approach described above was taken in [7], among others; in this paper, we focus on the second approach.
END SYSTEM QoS M APPING END SYSTEM

delay distributions; on the other hand, to calculate effective bandwidth available on the end-to-end connection one might take the minimum of the bandwidth available in each pointto-point segment that forms the connection. The concatenation operation may seem deceptively simple; one should keep in mind that different networks making up the end-to-end path might offer distinctly defined QoS parameters. Reconciling these parameters into a common end-to-end characterization of service quality may well prove to be a daunting task. In addition to those discussed above, several issues will impact the process of mapping and concatenation, among which:

P R O T O C O L S T A C K

INTE RM EDIATE NODE

INTE RM EDIATE NODE

QoS CONCAT ENAT ION

Figure 1 - Layered view of communication between end nodes. QoS guarantees at the lower layer must be translated into parameters that are meaningful at the higher layers. Note that the mapping may also occur in the reverse direction, i.e., QoS objectives dictated by a higher layer may have to be translated into parameters that a lower layer can understand and control.

Segmentation, fragmentation and reassembly - packets will often be segmented into smaller lower-layer data units (e.g., cells). If QoS guarantees are given for the lower-layer units, how do they map into performance guarantees at the higher layer? Furthermore, packets may be fragmented and re-assembled multiple times as they traverse networks with different maximum transfer units (MTU). Absolute and relative guarantees - some layers or subnetworks may offer absolute (or quantitative) service differentiation; others offer relative (or qualitative) guarantees. For instance, in a priority-based policy, QoS is relative: some users are assured of receiving preferential treatment over others; however, there is not necessarily any minimum quality level to be guaranteed. Other QoS mechanisms offer absolute QoS parameters; for example, certain ATM service classes offer strict assurances as to maximum loss rates and delay that are independent of other traffic currently traversing the network. In characterizing QoS delivered to the user one may have to combine the effect of both quantitative and qualitative mechanisms. Flow aggregation - for scalability purposes, in some QoS architectures data streams with similar performance requirements are aggregated into a single flow; QoS guarantees then apply to the aggregate flow. A mapping operation is needed in order to determine how these affect individual streams.

Let us refer to Figure 1, representing communication between two end-systems passing through intermediate nodes in possibly dissimilar networks. Typically, when QoS assurances are provided, they refer to parameters at a particular layer in the protocol stack. For instance, an ATM connection may be guaranteed some maximum cell loss ratio (CLR) or cell transfer delay (CTD). There exists the need to translate such QoS parameters into parameters that are meaningful to the upper layers. For instance, the CLR and CTD guarantees at the data link layer must eventually be interpreted at the application layer in terms of the proportion of video frames that are likely to be corrupted by losses or the number of speech segments that will be delivered past playback time. The reverse mapping is also of great interest for QoS negotiation purposes. A user, or an intelligent agent acting on his behalf, needs to be able to map his performance requirements into equivalent metrics at the layer immediately below in order to determine what QoS guarantees to request of that layer. The process repeats across every interface between layers offering QoS guarantees. When packets traverse a heterogeneous internetwork, QoS assurances may be given separately for each intermediate network. In this case, another operation must be performed to translate between point-to-point and end-to-end guarantees; we shall call this concatenation. For instance, point-to-point delay within each network is additive to form end-to-end

As a matter of terminology, we differentiate between QoS mapping and QoS translation. Some authors (e.g., [8]) denote by QoS translation the process of translating QoS requirements (delay, throughput, losses, etc.) into specific resources (buffers, bandwidth, etc.) that need to be allocated to meet those requirements. This is an important issue dealing with provisioning for QoS and call admission control; however, the translation process is beyond the scope of this paper.

We next illustrate the mapping process with some simple preliminary results related to segmentation and re-assembly. III. SEGMENTATION AND QOS MAPPING Packet segmentation is one instance in which QoS mapping is needed in order to assess end-to-end performance expectations. QoS-enabled lower layers may provide guarantees of the type (where T is the delay experienced by the lower layer data unit): E[T ] t avg P[T > t max ] p *

higher, more widely spaced loss ratio; this effect is not being considered here. Similar behavior will be experienced with delay metrics for lower-layer and upper-layer PDUs. A. Segmentation Model Suppose we have UL_PDUs (which we shall call "packets") of size S bytes, distributed according to a probability mass function PS ( s ) . Further, we assume these packets are encapsulated with a header of size a and segmented into LL_PDUs (which we shall call "cells") of fixed size c. We adopt terminology that is consistent with ATM, a natural application of the model being delineated here. The model would fit, for instance, the case of IP datagrams being sent over ATM using AAL5 with VC multiplexing.
PDF of Packet Size S 1

(3.1)

Cumulative Distribution

Since upper layer data units may be transmitted as multiple lower layer data units, we wish to determine what the equivalent QoS parameters are at the higher layer. Notice the converse problem is also of interest: given some QoS requirements at the higher layer, what should the minimum guarantees be at the lower layer? We illustrate the concept through a trivial concrete example in Figure 2. Suppose variable-size upper-layer PDUs (UL_PDUs) are fragmented into fixed-size lower-layer PDUs (LL_PDUs). We assume a single LL_PDU loss results in the loss of the entire corresponding UL_PDU. In the first part of the example, (a), a LL_PDU loss ratio of 33% results in a UL_PDU loss ratio of 100%. In the second part of the example, (b), the same lower-layer loss ratio results in an upper-layer loss ratio of 40%.
(a) UL PDUs LL PDUs (b) UL PDUs LL PDUs

0.8 0.6 0.4 0.2 0 0 200 400 600 800 1000 Packet Size [Bytes] 1200 1400 1600

PMF of Number of Cells per Packet (N) 0.4 0.3

Probability

0.2 0.1 0 0

10

15 20 Number of Cells

25

30

35

Figure 3 - Probability distribution function of datagram sizes and probability mass function of the number of cells per datagram (generated from data in [9]).

Figure 2 - Representation of upper-layer PDUs being segmented into fixedsize lower-layer PDUs. The shaded boxes represent losses (PDUs that are corrupted, mis-delivered, delivered past playback time, dropped due to buffer overflows).

There exists a deterministic relationship between the packet size (a random variable) and N, the number of cells needed to carry a packet (also a random variable), namely: S +a N = c (3.1.1)

It should be clear that the lower layer loss probability is insufficient for a characterization of the expected upper-layer loss ratio; rather, a characterization of the loss process itself is needed. Furthermore, notice that bursty losses may be less destructive from an upper-layer point of view than uniformly spaced losses. We emphasize that the metric being considered in this example is loss ratio. If bursts of errors at the lower layer occur that are long enough to cause several consecutive UL_PDUs to be lost, this may be more detrimental to subjective quality in certain real-time applications than a

We notice that N = n (n 1)c a < S nc a , for n = 1,2, Furthermore, PS ( s ) = 0 for s 0 and PN (n) = 0 for n 0. We can then write: PN (n) = j =( n 1)c a +1 PS ( j )
nc a

(3.1.2)

P[loss]

For the numerical examples provided in the sequel we will assume IP over ATM, with the distribution of datagram sizes obtained experimentally in [9] and plotted in Figure 3. This type of distribution is typical of IP over ATM traffic, with a large number of small (single-cell) packets used for acknowledgements and control functions. B. Losses In section 2, we provided heuristic arguments that burstiness in the cell loss process may minimize the impact on packet losses. We can further develop this argument by considering a loss process with varying degrees of burstiness. Assume a Markovian model where the probability of a cell loss depends only on whether the previous cell was also lost. Let Li represent the event that the ith cell is lost, and consider P[Li | Li-1] = kp and P[Li | not Li-1] = p, with k>1 and 0<kp<1. Then, by the theorem on total probability: P[ Li ] = P[ Li | Li 1 ]P[ Li 1 ] + P[ Li | Li 1 ]P[ Li 1 ] = (3.2.1) = (1 kp) P[ Li 1 ] + (1 p ) P[ Li 1 ] We can then calculate the steady-state probability that a cell is delivered correctly as:

k=1 0.4 cell packet 0.2 0 0.01

0.02

0.03

0.04

0.05

0.06 p k=5

0.07

0.08

0.09

0.1

0.11

0.5

P[loss]

cell packet

0 0.01

0.02

0.03

0.04

0.05

0.06 p k = 10

0.07

0.08

0.09

0.1

0.11

P[loss]

0.5 0 0.01

cell packet

0.02

0.03

0.04

0.05

0.06 p

0.07

0.08

0.09

0.1

0.11

Figure 4 - Relationship between cell and packet loss probability.

C. Delay For an investigation of delay, we assume the delay Ti experienced by the ith cell can be described by a probability density function fT(t). A typical case for real-time applications is that where all cells must be received in order to reconstruct a packet to be used for playback. The distribution of packet delay R (the maximum delay experienced by any cell comprising the packet) is then of interest. Let us assume that the delay the ith cell experiences is independent of the delay experienced by any other cell. This assumption, of course, is unlikely to hold in any real network. However, as previously discussed, this is a worst case scenario for packet delay, and the assumption is justified in a worst-case analysis. As before, each packet consists of N cells, where N is a random variable with probability mass function PN(n). In practice, there is a bound on the maximum number of cells in a packet (determined by the maximum packet size); let this bound be Nmax. We have, then: FR (r ) = P[ R r ] =
N max n =1

P[cell is NOT lost ] =

1 kp 1 + p kp

(3.2.2)

Finally, we calculate the probability of packet losses by conditioning on the number of cells in a packet and again utilizing the theorem on total probability:
nc a P[ packet loss ] = 1 n PS ( j ) n =1 j =( n 1)c a +1

(3.2.3)

We illustrate the relationship between cell and packet losses in Figure 4, using the packet size distribution in Figure 3. The case where cell losses are independent (k=1) is the one that generates the largest difference between cell and packet loss probability. As the probability of bursts of errors increases (k=5, 10), the probability of packet losses is closer to the probability of cell losses. This is easily explained by the fact that in the latter case it is more likely that several consecutive cell losses might affect a single packet. In this sense, independence of cell losses can be considered as a worst-case scenario from the point of view of mapping. Therefore, substituting k=1 into equations 3.2.2 and 3.2.3 provides a worst-case mapping between cell and packet loss probabilities.

P[ R r | N = n] PN (n)

(3.3.1)

P[ R r | N = n] = P[T1 r , T2 r , ! , Tn r ] =

P[Ti r ] = ( FT (r )) n
i =1

(3.3.2)

f R (r ) =

dFR (r ) N max = nf T (r )( FT (r )) n 1 PN (n) dr n =1

(3.3.3)

The equations above explicitly provide the mappings FT (t ) FR (r ) and f T (t ) f R (r ) under a worst-case assumption. We illustrate this mapping for the case of Gaussian cell delay (using the same experimentally determined probability mass function for N as before) in Figure 5.
1 0.8 1 0.8

lower layer, we presented a closed-form mapping into the upper layer. The author is currently expanding on this research with the objective of investigating QoS mapping in the differentiated services architecture [3] operating over ATM. In addition to fragmentation, the issues of flow aggregation and combination of qualitative and quantitative QoS parameters are being investigated. Another application of QoS mapping across the protocol stack arises in the area of QoS assurances in Asymmetric Digital Subscriber Line. The protocol stack in this case contains several layers in which QoS may be defined, as well 0.06 as flow aggregation for tunneling Point to Point Protocol (PPP) sessions. The author is performing simulation work in order to investigate how QoS should be provided in this type of scenario. No analytical framework is likely to be able to accurately model all relevant aspects of QoS mapping in a real network. This work must be complemented by simulation, experimental results and heuristic methods. However, we hope that analysis will be successful in providing basic insight into this complex problem. V. REFERENCES [1] The ATM Forum Technical Committee. Traffic Management Specification Version 4.0, April 1996. [2] R. Braden, D. Clark and S. Shenker, "Integrated Services in the Internet Architecture: an Overview," Request for Comments 1633, 1994. [3] S. Blake et al., "An Architecture for Differentiated Services," IETF Request for Comments 2475, December 1998. [4] C. Aurrecoechea, A. T. Campbell and L. Hauw, "A survey of QoS architectures," Multimedia Systems (1998) 6:138-151. [5] D. Chalmers and M. Sloman, "A Survey of Quality of Service in Mobile Computing Environments," IEEE Communications Survey, pp. 2-10, second quarter 1999. [6] J.F. Huard and A.A. Lazar, "On QOS Mapping in Multimedia Networks," Proceedings of IEEE Computer Society's International Applications Conference, pp. 312-317, 1997. [7] P. Francis-Cobley and N. Davies, "Performance Implications of QoS Mapping in Heterogeneous Networks Involving ATM," 1st IEEE Conference on ATM (ICATM'98), New York, NY, 1998. [8] K. Kim and K. Nahrstedt, "QoS Translation and Admission Control for MPEG Video," In Building QoS into Distributed Systems, A. Campbell and K. Narhrstedt (eds.), Champan and Hall, September 1997. [9] G. Minshall. Data tabulated in http://www.nlanr.net/NA/Learn/Gm/pktsizes.html , 1995.

PDF

0.4 0.2 0 0 0.01 0.02 0.03 Delay [sec] 0.04

PDF

0.6

cell packet

0.6 0.4 0.2 0 0 cell packet

0.02 0.04 Delay [sec]

1 0.8

PDF

0.6 0.4 0.2 0 0 cell packet 0.02 0.04 Delay [sec] 0.06

Figure 5 - Comparison of probability distribution functions of packet and cell delay under worst-case assumptions. The average cell delay is the same in all three cases.

As expected, the average packet delay is greater than the average cell delay; furthermore, the two do not obey the same type of distribution (i.e., in the example the distribution of packet delay is not Gaussian). Also notice that the greater the variance of the cell delay, the greater the average packet delay. One shortcoming of the results above is the fact that in practical cases we seldom know the exact distribution of cell delay, but rather have only partial information regarding its moments (such as shown in inequalities 2.1). Other areas of further research are discussed next. IV. CONCLUSIONS AND FURTHER RESEARCH In this paper, we present a formal framework to be used in the determination of end-to-end QoS parameters at the application layer based on guarantees provided by lower layers and in intermediate subnetworks. This framework is based upon the operations of mapping and concatenation of QoS guarantees. We illustrated the process through some results in QoS mapping across two layers taking into account the operations of segmentation and re-assembly. Assuming that the statistical properties of loss and delay are well known at the

Vous aimerez peut-être aussi