





























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
In this paper we discuss the per- formance requirements and tra c characteristics of various real-time applications, survey recent developments in the areas of ...
Typology: Lecture notes
1 / 37
This page cannot be seen from the preview
Don't miss anything!






























Real-Time Communication in Packet-Switched Networks
Ca glan M. Aras,^1 James F. Kurose,^2 Douglas S. Reeves^3 and Henning Schulzrinne^4
Abstract
The dramatically increased bandwidths and pro cessing capabilities of future high-sp eed net- works make p ossible many distributed real-time applications, such as sensor-based applications and multimedia services. Since these applications will have trac characteristics and p erformance requirements that di er dramatically from those of current data-oriented applications, new com- munication network architectures and proto cols will b e required. In this pap er we discuss the p er- formance requirements and trac characteristics of various real-time applications, survey recent developments in the areas of network architecture and proto cols for supp orting real-time services, and develop frameworks in which these, and future, research e orts can b e considered.
(^1) Department of Electrical and Computer Engineering, North Carolina State University, Raleigh NC 27695. This research was partially supp orted by a Graduate Fellowship from the IBM Corp oration. (^2) Department of Computer Science, University of Massachusetts, Amherst MA 01003. The research of this author is supp orted in part by the National Science Foundation, under grant NCR-9116183, the Defense Advanced Pro jects Researc 3 h Agency under contract NAG2-595, and the Motorola Co dex Corop oration. Departments of Computer Science and Electrical and Computer Engineering, North Carolina State University. The research of this author has b een supp orted by the National Science Foundation under grant CCR-9010771 and the 4 Air Force Oce of Scienti c Research under contract F49620-92-J-0441. AT&T Bell Lab oratories, Murray Hill, NJ.
1 Intro duction
Computer networks are in a p erio d of transition, moving from relatively slow communication links and data-oriented services to high-sp eed b er optic links and a diverse set of services. Many of these services, such as voice, video and other applications, will have stringent real-time constraints and will demand not only high-bandwidths, but a predictable \quality of service" (QOS) not o ered by current b est-e ort-delivery networks. The large amounts of bandwidth promised by future high- sp eed networks also o er the p ossibility of integrating such real-time applications together with more traditional data-oriented services within a single common network. Thus, while the scaling of bandwidth to more than a gigabit p er second in next generation networks will certainly have a profound e ect on all asp ects of networking, the need to supp ort a more diverse mix of services by accommo dating the p erformance requirements of real-time applications raises imp ortant issues that go b eyond bandwidth and bandwidth-delay pro duct scaling. Traditional communication network applications such as le transfer, electronic mail and remote login are examples of non-real-time applications, for which the p erformance metrics of interest are typically average message/packet delay and throughput. These applications also have strict reliability requirements; indeed, much of the complexity of traditional network proto cols arises from the need for loss-free communication b etween data-oriented, non-real-time applications. The characteristics of real-time communication applications di er signi cantly from those that are non-real-time. As in real-time computing, the distinguishing feature of real-time communica- tion is the fact that the value of the communication dep ends up on the times at which messages are successfully delivered to the recipient. Typically, the desired delivery time for each message across the network^5 is b ounded by a sp eci c maximum delay or latency, resulting in a dead line b eing asso ciated with each message. This delay b ound is an application-layer, end-to-end timing constraint. If a message arrives at the destination after its deadline has expired, its value to the end application may b e greatly reduced. In some circumstances messages are considered \p erish- able," that is, are useless to the application if delayed b eyond the deadline. These messages are discarded and considered lost. For data-oriented applications, achieving low latency is usually de- sirable. However, some real-time applications do not care how much prior to a deadline a message arrives. Indeed, early arrival may even b e considered harmful as it requires bu ering at the receiver to achieve constant end-to-end delay. Real-time communication applications are commonly classi ed as either soft or hard real-time. Soft real-time applications can tolerate some amount of lost messages, while hard real-time applica- tions have zero loss tolerance. As we will see, the networking mechanisms required to handle trac for these two kinds of applications can di er signi cantly. In general, soft real-time applications require less stringent service and thus allow the network to maximize network utilization. In hard real-time applications, deterministic predictability of network delays takes precedence over network utilization considerations.
(^5) Generally only the queueing delay is discussed in this and other pap ers, as the packetization, switching and
propagation delays are assumed known and xed.
sp ecial control e orts.^8 Three trends argue against this. First, end systems pro ducing trac have decreased their cost-to-sp eed ratio much more rapidly than transmission facilities. Secondly, new applications have tended to ll increased a ordable bandwidth. And thirdly, low-bandwidth communication systems such as cellular radio are interesting targets for packetized communication to facilitate service integration. A sounder argument may b e made that even if utilization for real-time services is kept low, lower-priority data trac can ll the gaps left by p eak bandwidth allo cation. At least in the initial stages of deploying integrated high-sp eed networks, data trac originating on LANs is likely to dwarf trac with real-time needs. Note that real-time trac will likely pro duce more revenue p er bit; this motivates the service provider to supp ort high real-time utilization.
1.2 Goals for Real-time Communication Techniques
All metho ds of real-time communication aim to provide real-time message delivery with either low or zero loss rates (soft or hard real-time, resp ectively). The following are some desirable prop erties for real-time communication:
low jitter low latency ability to easily integrate non-real-time and real-time services adaptable to dynamically changing network and trac conditions go o d p erformance for large networks and large numb ers of connections mo dest bu er requirements within the network high e ective bandwidth utilization low overhead in header bits p er packet or cell low pro cessing overhead p er packet within the network and at the end system This pap er aims to survey research on the new network architectures and proto cols needed to supp ort real-time services in packet-switched networks. Our fo cus is on wide-area networks, although many of the ideas discussed are equally applicable to lo cal area networks. Occassionally, sp ecial mention is made to ATM [49], as it is the likely technology for carrying real-time packetized trac. The remainder of this pap er is structured as follows. In the next section, we lo ok at the char- acteristics of some of the applications that require real-time network services. Metho ds of hard real-time communication are discussed in section 3, while techniques for soft real-time communica- tion are discussed in section 4. Section 5 concludes the pap er with a list of some imp ortant op en problems.
(^8) The transp ort of audio and video within the current Internet op erate on this basis.
2 Characteristics of Real-Time Trac
A wide range of p ossible real-time communication applications are exp ected to co-exist in an inte- grated network. A partial list includes: multimedia conferencing [42], shared workspaces, remote medical diagnosis, telephony, command and control systems [10], distributed interactive simulation, audio and video broadcasts, and games. Many of the trac sources for which real-time service is desirable share characteristics that set them apart from traditional data trac. In this section, we rst fo cus on the general prop erties of data rate, packet size and loss tolerance; we then summarize work on characterizing the prop erties of particular sources of real-time trac. During stream admission, these prop erties assist the network in determining the resources to b e allo cated to a particular real-time session. This characterization must b e unambiguous, easy to sp ecify, enforceable, and usable for reserving resources [36]. The trac characteristics must b e enforced b oth to 1) protect other applications from the e ects of a misb ehaving client, and 2) distinguish b etween negotiated trac, which should continue receiving guaranteed service, and excess trac, which may not. Some real-time sources have inherent characteristics that distinguish them from typical data sources. For example, voice packets tend to b e small to minimize packetization delays [83] and to limit the e ect of packet losses [82]. The 48-byte cell size for ATM [116], for example, was chosen primarily for the b ene t of voice applications { in particular, to avoid the use of echo cancellation equipment on continental connections. Also, small packets limit the amount of time a single packet can o ccupy the channel. In order to predict the p erformance of communication systems carrying real-time data such as audio or video, an accurate source mo del has to b e found. This is made dicult by the fact that the statistics of the trac entering the network dep end on the nature of the source material, the enco ding metho d used, and the timing of packets by the enco der (a large packet every video frame, smaller packets equally spaced over the frame duration, or smaller packets transmitted at p eak rate [102]). Thus, mo dels for di ering timescales may b e needed [56, 90]. The description of sources is made easier by the fact that in many real-time applications, the source of the data is a sensor which samples a physical quantity to pro duce a digital signal. The sensor samples the physical quantity at regular intervals called the p erio d T , and the data generated by the sensor is fed into the network as a real-time stream. Many such sources can b e approximated by one of the following three source mo dels, as shown in Fig. 1:
constant bit rate (CBR): Fixed-size packets arrive at deterministic intervals. Certain real-time applications, such as air-trac control, generate data which has few redundancies and which is to o imp ortant to b e compressed in a lossy way. The data is generated by sensors at regular intervals.
variable bit rate (VBR):
on/o sources: The source alternates b etween a p erio d in which xed-size packets arrive with deterministic spacing and an idle p erio d. An example is voice trac, discussed in more detail in section 4.1.
M1:A--E M2:B--F
A
B
C D
E
F
G
M
M
Figure 2: Example Network
In our communication mo del, the network is comp osed of a set of nodes,^9 connected by a set of links. Each unidirectional link j^ allows two no des to communicate with bandwidth Cj. The set of links that a packet of a connection i traverses in going from its source to its destination is called the path of the packet, denoted i. Hi is the numb er of hops on a path; (^) j is the set of connections which use a linkj^. The example in Figure 2 has two connections: connection M 1 , following path 1 = fAC ; C D ; D E g; and connection M 2 , following path 2 = fB C ; C D ; D F g. For link C D , C^ D^ = fM 1 ; M 2 g.
3.2 Real-Time Scheduling Theory
The theory of real-time scheduling has b een develop ed and applied primarily to scheduling of jobs on a single pro cessor [119]. For real-time communication, the link replaces the central pro cessor as the central resource, while packets are the units of work requiring this resource, just as jobs must comp ete for use of the pro cessor. With this analogy, most real-time scheduling metho ds are immediately applicable to the scheduling of packets on a link. A scheduler allo cates the usage of a link according to some prede ned allo cation discipline. This discipline may b e optimized for uniformity as in Round-Robin, simplicity as in FCFS, or several other criteria as in Priority-Based. Priorities may b e designated by the end-user, or may b e assigned according to some prop erties of the packet, such as the arrival p erio d or deadline. In addition, priorities may b e statically assigned for all packets in a connection, or may b e assigned dynamically at the time of arrival of a packet. The scheduler may enforce priorities at the completion of the current transmission, or may elect to preempt an active transmission in favor of a newly arrived packet. These are called non-preemptive and preemptive schedulers, resp ectively. As describ ed in section 2, hard real-time trac is often p erio dic. The p erio d of a connection i is the interval b etween the arrival of successive packets, and is denoted Ti ; the transmission time of each packet in i is denoted i , and the end-to-end deadline is Di. The due-date for a packet (or simply the deadline) is the sum of its arrival time and its end-to-end deadline^10 Dynamic preemptive
(^9) No des that op erate at the link layer are also termed switches in the literature for high-sp eed networks. (^10) In our usage, the synonymous terms \due-date" and \deadline" are time instants, while the synonymous terms
\maximum allowable latency" and \end-to-end deadline" are time intervals.
schedulers Earliest Due Date or EDD (also called Earliest Deadline First (EDF)) [77] are preferred in cases where individual link delays must b e less than the packet interarrival time [5, 40, 63, 121]. In the EDD metho d, the packet with the earliest due date has the highest scheduling priority. To guarantee that user-sp eci ed end-to-end deadlines can b e met, the schedulability of indi- vidual links must b e checked. A set of real-time connections is schedulable on a link if it can b e guaranteed that no packets in those connections will miss their deadlines on that link. When the EDD scheduling discipline is used and the link deadline for every packet is equal to the packet interarrival time for its connection, the connections are schedulable as long as link utilization is less than 100%. When EDD is used but link deadlines can b e less than packet interarrival times, schedulability checking is much more dicult. The complexity of schedulability checking in this case is prop ortional to the pro duct of the p erio ds of all connections using the link.
3.3 Trac Characterization
A hard real-time application requires a sp eci c quality of service from the network; this QOS con- sists of delay, jitter, and loss b ounds. The characteristics of the trac generated by the application must b e known in advance in order to guarantee this quality of service. A prediction of the exact arrival time and length of every packet could b e used for this purp ose. However, this requires p erfect knowledge of future b ehavior, which is not p ossible for variable-bit-rate sources. Instead, several di erent mo dels of trac have b een prop osed. These mo dels are statistical in nature and so do not require precise knowledge of the future. They are also amenable to calculation of the resources required to provide a guaranteed quality of service. The trac characterization used by most hard real-time communication metho ds is the p eak rate mo del. The parameters of this mo del for each connection i are the minimum inter-arrival time Ti , the maximum packet length i , and the delay b ound or end-to-end deadline Di. The bandwidth or rate requirements for such a connection are i =Ti bits p er second; we use the variable i to symb olize this rate. The p eak rate mo del is exact only for constant bit-rate trac; it overstates bandwidth needs for all variable bit-rate sources. The Linear Bounded Arrival Pro cess mo del (LBAP) [28] uses as an additional parameter the maximum burst size i. In this mo del, in any time interval t the maximum numb er of arriving packets may not exceed i + (t=Ti ). Deterministic delay b ounds can b e sp eci ed and met for this mo del. The leaky bucket [118] implements LBAP by de ning a bucket containing up to i tokens. Additional tokens are generated every Ti seconds. For each arriving packet, one token is taken out of the bucket. When an arriving packet nds an empty bucket, it can b e discarded or queued; in either case, it is not allowed to enter the network immediately up on its arrival. Golestani [43] characterizes a connection by its rate ri and its frame F , with interval TF. A trac source is p ermitted to generate no more than ri TF bits during any interval of length TF. There are only a limited set of frame intervals available for the user to cho ose from. Lea [72] also advo cated limiting the set of allowable rates, as it simpli es the tasks of capacity planning and routing. Simulation results indicated that the capacity losses due to oversubscription, i.e., sp ecifying the higher rate for a trac source whose rate is midway b etween two quantized rates,
Scheduler-based metho ds The scheduler-based metho ds for hard real-time communication are:
EDD-D: earliest due-date for delay [40]
EDD-J: earliest due-date for jitter [121]
SRT: smallest resp onse time [63]
PCT: preemptive cut through [5]
An application sp eci es the end-to-end deadline, Di , for the packets in connection i. From this deadline for path i , the link deadline dji for each link `j^2 i must b e determined during the rst phase of admission control. Ferrari and Verma [40] were the rst to prop ose a metho d for computing the minimum acceptable link deadline. For each link the feasibility of scheduling the existing connections plus this new connection i must b e checked. Their metho d is only valid under the assumption that the sum of all packet transmission times is less than the shortest p erio d of any connection using the link. Kandlur [63] removed this restriction with an algorithm that assigns static priorities to existing connections based on their link deadlines. The static priority assignment results in non-minimal deadline assignments in certain circumstances. Zheng and Shin [133] prop osed an algorithm for this same purp ose which is more complex, but is lo cally optimal. (^12) If there is no feasible schedule on one of the links in i , the new connection is denied admission
to the network at the requested quality of service. In addition, the sum of achievable link deadlines must b e less than or equal to the end-to-end deadline. The second phase of admission control allo cates the bandwidths and deadline intervals required for the connection to meet its end-to-end deadline. This phase can also relax resource allo cations when the requested end-to-end QOS has b een exceeded. For the scheduler-based metho ds, this works as follows. Let the end-to-end slack b e equal to the di erence b etween the o ered and re- quired end-to-end deadlines. Dividing this slack among the links of the path allows the deadline requirements of future connections to b e more easily satis ed. Ferrari [40] suggested evenly dividing the end-to-end slack among all of the links on the path. Aras [5] suggested an adaptive admission al- gorithm which allo cates slack to the more heavily congested links. Simulation results indicated that this algorithm p ermits higher utilization with tighter end-to-end deadlines than Ferrari's approach.
Rate-based metho ds The rate-based metho ds of hard real-time communication are:
HRR: hierarchical round robin [62]
S&G: stop-and-go [43]
WFQ weighted fair queueing [33] (and the similar PGPS, or packet generalized pro cessor sharing [94])
(^12) There is no known technique for determining the dji 's for any measure of global optimality, such as network
utilization.
RCSP: rate-controlled static priority [129]
We now describ e the rst phase of admission control for the rate-based metho ds, starting with RCSP. In that metho d, a new connection is assigned a target link deadline on each link along its path. For each link, the connection is assigned a scheduling priority according to its link deadline, where small link deadlines , low priority numb er , high priority. A new connection with priority numb er h can only a ect the delay b ounds of connections with lower priority. A simple computation for each priority numb er greater than or equal to h is sucient to ascertain if this new connection can meet its delay b ound without causing other connections to miss their deadlines. S&G and HRR provide the easiest means of admission control. Let TFi represent the p erio d of the frame size for connection i. A simple bandwidth check (P k 2 j k =TFk 1) is all that is
necessary to determine if connection i can b e successfully scheduled on link `j^. If connection i can b e scheduled on all the links along its path, then it can b e admitted to the network.
3.5 Per-Packet Pro cessing
Each packet of an admitted connection is conveyed through the network along the path established for that connection. At a switching no de, the packet is multiplexed onto the next link along its path, along with packets of other connections using the same link. In this section we describ e the various metho ds of multiplexing hard real-time trac onto a link. In this discussion we do not address the separate problem of switch contention, which a ects b oth real-time and non-real-time trac equally. Information ab out an admitted connection is stored at each no de along the path of that con- nection. This information we will call a descriptor. The descriptor must contain data such as packet p erio ds/interarrival times, maximum lengths, service quanta or rates, maximum burst size, link deadlines, and resources allo cated to the connection. Each incoming packet must contain a connection ID as part of its header. To unify our discussion we present a simple mo del of the real-time pro cessing p erformed at each output link of a no de. This mo del is depicted in Figure 3. The steps of pro cessing are:
Input regulation, which shap es the input arrival characteristics
Packet demultiplexing, which inserts a packet into one of a set of queues, corresp onding to di erent QOS guarantees
Queue insertion, which is either FCFS or priority-based
Queue multiplexing, which selects the next queue to service, and how many packets to remove and transmit from that queue
A scheduling p olicy can b e classi ed as either work-conserving or non-work-conserving. A metho d is work-conserving if an output link will never b e idle as long as there are packets waiting to use that link. Work conservation might seem attractive, since it promises lower average end-to- end delays for packets. However, metho ds which minimize jitter are always non-work-conserving.
time plus the link deadline for this no de, and the logical arrival time for this no de.^13 Since all of the scheduler-based metho ds use a single output queue for hard real-time trac, there is no need for queue demultiplexing or multiplexing. Packet insertion into the output queue is based on priority for these metho ds; this priority is determined by earliest due-date. The due-date for a packet is equal to the sum of its logical arrival time and its link deadline for this no de. As long as input trac conforms to the mo del parameters negotiated by each connection, every packet will meet its end-to-end deadline. The scheduler-based metho ds all use a packet as the unit of scheduling. A packet b eing trans- mitted can b e preempted by a newly arrived packet with higher priority, i.e., earlier due-date; a preempted packet will have its transmission resumed when all packets with higher priority have nished their transmission. Using long packets reduces scheduling overhead, while using shorter packets reduces or eliminates the p ossibility of preemptions. In addition, end-to-end latencies are increased by using longer packets. The preemptive cut-through (PCT) data transfer proto col [5] is a variation of EDD-J that o ers much lower end-to-end delay. In PCT, the transmission of a packet is pip elined over multiple links along its path. PCT can achieve an end-to-end delay close to that of circuit-switching if link deadlines are set to their minimum p ossible values Kandlur [63] has prop osed another metho d of splitting long packets in order to pip eline their transmission.
3.5.2 Rate-Based Metho ds
The rate-based metho ds exhibit a greater variety of mechanisms than is the case for the scheduler- based metho ds; therefore, we discuss packet multiplexing for each metho d individually. The Stop-and-Go metho d (S&G) schedules packets as groups by clustering them into frames. For each connection i assigned to a frame F , the frame size TF is stored in its connection descriptor. There is also conceptually a clo ck for each frame size, which emits a signal every TF seconds. When a packet arrives, it is bu ered until the clo ck for its frame emits its signal. The maximum holding time is b ounded by the phase mismatch of the frame clo cks at successive no des. When the signal o ccurs, all packets bu ered for the frame are transferred to an output queue. Each output queue implements a FCFS p olicy. The output queues are multiplexed in priority order, with shorter frame sizes having higher priority. All eligible packets in higher priority queues are transmitted b efore a packet in a lower priority queue will b e transmitted. Since the residence time of a packet at a no de is constant, the jitter is limited to only the last link, and is no greater than 2 TF. With no phase mismatches, end-to-end delay with this metho d is Hi TF ; with the worst-case phase mismatch at every no de along the path, end-to-end delay as high as 2 Hi TF. HRR is conceptually similar to S&G in that packets are group ed into frames for scheduling purp oses. Each connection is assigned to one of g xed rate levels, where level 1 is the highest rate level. Each level k corresp onds to a frame of size nk slots. The frame for the k th level starts transmission every FT k seconds, where FT 1 < FT 2 < : : : < FT g. A connection i which is assigned
(^13) This explanation is for the case in which no jitter is allowed in the network. The calculations can b e easily
mo di ed in the case where some jitter is allowable at each no de along the connection's path.
to a level k is allo cated si slots out of each nk slots alloted to that frame. As packets for connection i arrive, the input regulator will only release si of them for transmission during each interval of FT k seconds. Thus the rate allo cated to connection i assigned to level k is si =FT k slots/sec. There is one FCFS output queue for each level. For each frame of size nk , bk slots are reserved for frames with lower rates/priorities. Packets at lower priority levels than k are transmitted after the rst nk bk slots of the frame for level k ; HRR is thus non-work-conserving. End-to-end delay and jitter are b oth less than or equal to 2 H FT k for a connection assigned to level k. Banerjea [8] analyzed the queueing delays in some detail. In weighted head-of-the-line pro cessor sharing, each connection has a separate queue, and the rst packet of each queue gets a weighted fair share of the bandwidth. Parekh and Gallager [94] showed that for networks where the sources are leaky bucket constrained and where no des approximate the weighted head-of-the-line pro cessor sharing service discipline on a packet-p er- packet basis, the end-to-end delay can b e b ounded tightly. For networks such as ATM with xed- length packets, this pro cessor sharing discipline is equivalent to weighted round-robin scheduling. For networks with variable-length packets, WFQ [33, 44] can b e used. WFQ simulates pro cessor sharing by scheduling packets for transmission in the order of their nishing time under true bit- by-bit pro cessor sharing. For each arriving packet, the scheduler needs to determine the nish time under pro cessor sharing and insert the arrival into a priority queue. The b ound on the queueing delay in a H -hop network can b e expressed succinctly if all connections are allo cated a share of bandwidth prop ortional to their i 's:
D i + Hi i i^ (1)
For hard real-time trac, the b ound on the queueing delay in an Hi hop path falls b etween the lower and upp er delay b ounds p ossible for stop-and-go queueing. This relationship again emphasizes the connection b etween p olicies that yield deterministic delay b ounds. The RCSP metho d [129] can use either of two regulators; we discuss only the delay jitter control
regulator here. The eligible time eji of an incoming packet is de ned as eji = ej i^ ^1 + dj i^ ^1. An early arriving packet is simply held until the time at which a latest-p ossible packet would have arrived; this is similar to the EDD-J regulator. There are a set of FCFS output queues, one for each p ossible priority level. The priority level is determined statically based on earliest deadline. The queues are multiplexed by always selecting for service the highest-priority non-empty queue. RCSP can guarantee delay and tight jitter b ounds. However, it is not clear how to cho ose the link deadlines to achieve a sp eci c quality of service.
3.5.3 Implementation Requirements
In this section we assess the implementation complexity of packet multiplexing. The implementation requirements of admission control are not addressed. Since admission control is relatively infrequent and needs to b e exible, it is b etter implemented in software than in hardware. A very imp ortant issue for communication networks is the required amount of bu er space. The bu er space is generally closely related to the maximum stay of a packet at a no de. Table 2
Table 3: Hard Real-Time Communication Service Disciplines Metho d Typ e Dmin Dmax J EDD-Delay [4, 40, 63] Scheduler H H T D H EDD-Jitter [121] Scheduler H H T T PCT [5] Scheduler H T T RCSP-Rate [129] Rate H H T D H Stop-and-Go [43] Rate H T 2 H T 2 T HRR [62] Rate H 2 H T 2 H T H WFQ [25],PGPS [94] Rate H T + H max D H
3.6 Summary
We have presented a variety of metho ds for hard real-time communication. All of these metho ds o er a quality of service which has not heretofore b een available from packet-switched networks. None of them is clearly sup erior in all resp ects. Table 3 summarizes the delay and jitter character- istics of the hard real-time communication metho ds. In this table, H stands for the numb er of hops on a connection's path, and T stands for the packet interarrival p erio d. Dmin and Dmax denote the minimum and maximum value of the delay b ound that could b e requested from the metho d. Jitter and bu er space are minimized by the EDD-J metho d of Verma [121] and its derivatives (SRT, RCSP, PCT). End-to-end latency is minimized by PCT. Implementation is more straight- forward for the rate-based metho ds, although scheduler-based metho ds also app ear to b e practical. An imp ortant p oint to make ab out rate-based metho ds is the coupling b etween the service param- eters. For instance, Golestani shows that for the Stop-and-Go metho d [43], jitter, bu er space, and end-to-end delay are all linearly prop ortional to the frame size TF , and the increments of bandwidth allo cation are inversely prop ortional to TF. A similar coupling exists in round-robin metho ds such as HRR. In contrast, delay and bandwidth requirements are satis ed indep endently by scheduler-based metho ds. We have discussed only p oint-to-p oint networks in this section. However, there are many real- time applications which may need to run only on a single LAN. In addition, wide-area connections will frequently span one or more lo cal area networks, in addition to the long-distance links and network switches. Clearly, it is imp ortant that LANs also provide real-time communication services. Recent research on LAN real-time services has concentrated on the Token Ring and FDDI. A real-time service called the timed token proto col [2] can b e implemented in these networks. Unfortunately, this proto col can only supp ort a restrictive set of delay b ounds. Strosnider [115] and Lim et al. [74] applied the earliest deadline rst scheduling technique to extend real-time supp ort for arbitrary delay b ounds. However, the maximum network utilization in FDDI is limited to 33 p ercent, and proto col overheads are very high. Bu er insertion rings like ORBIT [24] allow scheduling of packets on each station. Zheng [132] prop osed a metho d based on EDF scheduling; this metho d results in lower overheads and allows full network utilization. For a detailed survey of other multi-access real-time communication proto cols, we refer readers to a survey by Malcolm [80].
4 Soft Real-Time Communication
As discussed in section 1, soft real-time applications such as interactive packetized voice and video can sustain a certain amount of packet loss without signi cantly a ecting the overall communication \quality". Packet loss can result either from bu er over ow at the destination or within the network, or from late packet arrivals at the destination. For short audio segments, tolerable loss values as high as 50 p ercent have b een cited [82], while high-quality audio has b een shown in sub jective tests to tolerate loss rates of ve p ercent for sp eech and ten p ercent for music [84]. Tolerable losses for video are generally much lower, but dep ending on the co ding algorithms used and the e ort exp ended on reconstructing lost video cells at the receiver, packet losses of as much as one p ercent can b e sustained [65]. Loss tolerance is higher if the source can designate particular packets for preferred dropping; this is termed hierarchical co ding. In this section, we discuss network architecture and proto col mechanisms designed sp eci cally for handling such loss-tolerant soft real-time trac. As we will see, the ability of these applications to tolerate a certain amount of trac loss allows a richer set of network- and application-level control mechanisms to b e considered. We b egin our discussion at the application layer and then work our way \down" the network architecture.
4.1 Application-level Characteristics
As in the case of the hard real-time applications, soft real-time applications will likely need a certain guaranteed quality of service b efore b eing admitted to the network. In the case of soft real-time communication, the QOS requirement will b e the delay and jitter b ounds, and the application's maximum tolerable packet loss due to either bu er over ow or exceeding the delay b ound [70]. To determine the QOS which can b e o ered to an application, the network must rst characterize the application's trac characteristics. The two dominant classes of soft real-time trac which we discuss are audio and video. The trac characteristics of soft real-time applications can vary over time. An example is packetized voice. In the case of voice sources, the variation results primarily from the \on-o " characteristics of human sp eech. While a sp eaker is talking, packets are p erio dically generated. During p erio ds of no sp eech, such as pauses b etween words and sentences, the packet generation rate may change [35]. The decision of whether or not to generate packets during p erio ds of silence, and indeed the de nition of silence p erio ds themselves, is application-dep endent. The statistics of these silence and talkspurt p erio ds have b een studied for conversational voice [48, 60, 82, 9 1]. A numb er of Markovian mo dels for voice packet generation have b een prop osed for interactive conversations, b oth for a system with two parties [14, 15] and for a single party [13, 82]. The most common mo del for a single party is that of a two-state (silence and talkspurt) Markov chain [15, 60, 82]. In this mo del, a sp eaker talks, generating packets p erio dically, for an exp onentially distributed amount of time, and then b ecomes silent for another exp onentially distributed amount of time. Successive talkspurt and silence p erio ds lengths are assumed to b e statistically indep endent. It has b een recognized [126], however, that these mo dels may not accurately capture voice patterns
4.2 Connection-level Issues
As in the case of hard real-time applications, the most imp ortant connection-level issue is whether or not a soft real-time connection can b e admitted to the network at its requested quality of service. It should b e noted that soft real-time applications do not, by their nature, require that a QOS guarantee b e provided. Indeed a numb er of recent exp eriments [18] have demonstrated the p ossibility of supp orting soft real-time applications over networks such as the Internet which provide no QOS guarantees. However, it app ears that the ITU-TS is moving towards a network architecture that can provide strict quality of service guarantees for voice and video in ATM networks [49, p. 31].^14 In section 4.2.2 we discuss recent research addressing the connection-acceptance and QOS issues. First, however, we consider the fact that an integrated network architecture must supp ort not only soft real-time applications, but p otentially hard real-time applications and b est-e ort applications as well. In section 4.2.1 , we thus discuss the larger framework in which connection acceptance decisions must b e made, and survey e orts which explicitly consider the need for a network to provide supp ort for a heterogeneous mix of applications.
4.2.1 Multiple Trac Classes and Grades of Service
A numb er of prop osals have b een put forth to provide network supp ort for diverse application requirements. Generally, a priority mechanism gives priority to trac with deterministic delay b ounds, followed by trac with statistical b ounds, and nally b est-e ort trac. Priorities also sim- plify the decision of whether to accept a new connection. This is b ecause the admission pro cedure for higher-priority trac can ignore lower-priority trac, provided enough aggregate bandwidth is left so that the QOS guaranteed to lower-priority trac can b e met. ATS [58] o ers guarantees to classes of trac, rather than individual connections. That is, all connections within a class get the same QOS. Class I trac exp eriences b ounded delay and is given priority over all other classes by b eing able to claim all available bandwidth within a scheduling cycle. Class I I may su er some late loss, and class I I I is b est e ort. The guarantees are based on precomputing, through simulation, so-called schedulable regions that delineate the combinations of the numb er of class I, I I and I I I connections that can b e supp orted within the desired guarantees. It is imp ortant to note that the shap e of the schedulable region dep ends on the source trac characteristics. Either the trac o ered to the network must b e predictable, or its worst-case b ehavior must b e de ned and enforced. Tenet [38, 39] aims to provide connection-sp eci c QOS, divided into three classes: deterministic guarantees with delay and delay jitter b ounds, statistical (delay b ounds with acceptable delay- loss probability), and b est-e ort. At each no de, trac is pro cessed by multi-class earliest due-date scheduling, with class priority decreasing from deterministic to b est-e ort trac. Admission control is based on p eak rates for connections with deterministic guarantees, and p eak and average rates for connections with statistical guarantees. Connections are set up through the real-time channel
(^14) Quality of service guarantees are particularly imp ortant to paying customers in public networks.
administration proto col (RCAP) [78], while data is transp orted in IP-like packets with an added channel identi er and jitter correction factor. Sriram [111] combines the notions of trac classes and p er-connection guarantees in a round- robin scheduler. High-bandwidth CBR connections with stringent p erformance requirements use their own queue with individual time slice assignments, while other connections may b e combined into a single assignment. Connections are admitted if a mo del based on on/o sources approximated by the rst two moments predicts sucient QOS. Clark et al. [25] prop ose a three-level hierarchy: guaranteed, predicted, and b est-e ort service. Guaranteed service with deterministic delay b ounds is provided by weighted fair queueing. A connection requests a particular clo ck rate based on worst-case queueing delay it can accept. The connection will b e accepted if there is sucient remaining capacity at every link along its path to accommo date its assigned clo ck rate. Predicted service uses the bandwidth not allo cated to guaranteed service; admission control for predicted service is not precisely de ned. Predicted service uses FIFO+ scheduling with several priority classes to reduce delay variance for multi-hop connections. FIFO+ increases the scheduling priority of packets that have exp erienced delays ab ove the average for their class. Best-e ort trac is assigned the lowest priority, isolating all other classes of trac from it. Clark advo cates reserving a xed minimum bandwidth for this class. Resource reservation for real-time communication and the actual data transfer can b e combined into a single proto col or split into two proto cols. The Internet ST-I I proto col [96, 117] is an example of a combined proto col. It tries to accommo date a variety of resource management p olicies by simply conveying a ow descriptor from a source to the destination(s); resources are reserved and a virtual circuit is set up along the way. The proto col itself do es not sp ecify or supp ort packet scheduling. The SRP resource reservation proto col [3], on the other hand, is an example of a split proto col. It uses a remote-pro cedure-call mechanism to reserve resources, but do es not carry user data. As long as packets within the network can b e reordered or exp erience variable delays, iso chronous applications require an end-to-end mechanism to reconstruct the source timing relationships b e- tween packets. Proto cols for voice transp ort [27] and more general real-time transp ort proto- cols [32, 104, 12 3] address this need.
4.2.2 Providing Statistical Guarantees on Delay and Loss
A numb er of researchers have advo cated providing soft real-time applications with connection-level statistical guarantees on packet loss. In this section, we brie y describ e three di erent approaches to provide such statistical guarantees. These are the source-based, b ounding, and observation-based approaches. Additional information ab out some of these techniques may b e found in [70].
Source-based approach In the source-based approach to providing QOS guarantees [37, 40, 46, 124], trac sources at the network's edge and within the network are characterized by relatively \simple" mo dels. An example of such a source mo del is the on/o voice source [46, 85, 124] describ ed in section 4.1. In order to determine whether or not the multiplexed sources will receive their required QOS, the queueing b ehavior of the multiplexed trac sources is then analyzed. In [37, 46],