Internet Engineering Task Force Integrated Services WG
INTERNET-DRAFT S. Shenker/C. Partridge
draft-ietf-intserv-control-del-svc-00.txt Xerox/BBN
March, 1995
Expires: 9/1/95
Specification of Controlled Delay Quality of Service
Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas,
and its working groups. Note that other groups may also distribute
working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet- Drafts as reference
material or to cite them other than as ``work in progress.''
To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet- Drafts
Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
Abstract
This memo describes the expected behavior of a controlled delay
service in the Internet. The memo follows the service template model
of specifying per-network-element behavior, end-to-end behavior, and
evaluation requirements.
Introduction
This memo is the first of what is expected to be a series of Service
Definitions for quality of service in the Internet. This memo
defines a controlled delay service. In particular, it defines
requirements for network elements that support this service. It does
not specify how end-to-end setup mechanisms establish their service,
except to define what information each element requires to establish
the service at that element and what information each element may
advertise in return.
The document uses the terms "network element" and "element" to mean
Shenker/Partridge Expires 9/1/95 [Page 1]
INTERNET-DRAFTdraft-ietf-intserv-controlled-delay-svc-00.txt March, 1995
any component of the internetwork which is capable of exercising QOS
control over data flowing through it. Network elements might include
routers, QOS-aware subnetworks, and end-note operating systems.
This document is a product of the Integrated Services working group
within the Internet Engineering Task Force. Comments are solicited
and should be addressed to the working group's mailing list at
intserv@isi.edu and/or the author(s).
Motivation
Controlled delay service is designed for service and delay adaptive
applications; i.e., applications that are prepared to adapt to
changing delays and to change their service request (after they have
started receiving) if the current service level is not adequate.
This service does not provide any quantified level of assurance.
Instead, it merely promises to avoid overloads by turning excess
flows away. The criterion for determining overloads is not
specified. Thus, while this service controls delay, it does not make
any specific assurances about delay. This service is subject to
admission control.
Per-hop Service
The network element must assure that the packet delays are
controlled. This control must be active, in that the element must be
able to control admissions to the element. In particular,
overprovisioning is not sufficient to deliver controlled delay
service. However, no quantitative specification of the maximal
delays are given.
There are three different logical levels of service; a switch can
implement fewer actual levels of service, but must treat them as
three logical levels. The levels have different levels of delay
control, with level 1 having the most tightly controlled delay, and
level 3 having the least tightly controlled delay. The different
levels do not have to give strictly ordered delays for each packet;
that is, the network element need not ensure that every packet given
level 1 service experiences less delay than if it were given level 2
service. The element need only ensure that the typical delays are no
greater in level 1 than in level 2 (and similarly for levels 2 and
3).
Advertisements
The network element is not required to advertise any information
about the service to the setup mechanism used to establish end-to-end
service. It is assumed that the receiving application is measuring
Shenker/Partridge Expires 9/1/95 [Page 2]
INTERNET-DRAFTdraft-ietf-intserv-controlled-delay-svc-00.txt March, 1995
the delays it experiences and will adapt, either by changing its
playback time, or by changing levels of service if the delays are
unacceptable.
However, as a hint about current delays, the instantaneous delay may
optionally be advertised for each service level (1, 2 and 3). This
advertisement has an additive composition rule; the delay at each hop
is added to the current cumulative delay along the path. There is no
exact specification of how the instantaneous delay must be measured.
However, since the maximal delays are typically more important than
the average delays, the advertised quantity should reflect the
extremal values of delay.
If a network element does not measure its instantaneous delays and
any setup mechanisms that wish to estimate the instantaneous delay
should treat the element as having a modest fixed delay. [Neither
author is sure that this sentence belongs here -- but we need some
consistent rule about what setup mechanisms do if some elements don't
cooperate]
Traffic Specification and Policing
Traffic is described by a token bucket filter (tbf), which is
specified by a token bucket depth r and a token bucket rate b.
Policing is done at the edge of the network and at all source merge
points. (A source merge point is where data from multiple different
sources is merged into a single flow). Nonconforming packets are
dropped.
Invocation
Service is invoked by specifying the traffic (TSpec) and service
(RSpec) to the network element
The TSpec is a token bucket depth r and a token bucket rate b. Both
r and b must be positive.
The RSpec is a target delay, or a service level, or both. The
service level is specified by one of the integers 1, 2, or 3. A
target delay is specified by positive value.
The service module can map the target-delay into a service level with
any monotonic mapping; for instance, if a target delay td1 maps into
service level 2, then all target delays greater than td1 must map
into service levels 2 or 3. This mapping is local to each network
element; the mappings at different elements can be different.
However, the mapping is static, in that it does not change over time.
Shenker/Partridge Expires 9/1/95 [Page 3]
INTERNET-DRAFTdraft-ietf-intserv-controlled-delay-svc-00.txt March, 1995
Either or both of the possible forms of RSpec can be specified. If
both are specified then the more stringent service, as determined by
the network element, is used (i.e., they both map into a service
level, and then the lowest service level is used). The form of
request where both are specified is necessary when merging
reservation requests.
Ordering
The TSpec's are ordered as follows; both the token bucket depth and
rate must be greater than or equal in order for the TSpec to be
greater than or equal. The RSpec's are ordered by their numerical
values (in inverse order). If both the target-delay and service-
level are specified, then both must be greater than or equal for the
RSpec to be greater than or equal. Ordering is relevant to the
merging of reservation requests.
Resulting Service
The resulting end-to-end service is one that offers applications
several levels of delay to choose from. So an adaptive application
that is unhappy with its current level of delay can move to a better
level of delay to try to improve service (or to a lesser level, if
the service currently being received is better than is needed).
Furthermore, this service promises that the levels of experienced
delays will be controlled. However, this service makes no assurances
about the absolute levels of delay or jitter the receiving
application will experience.
Evaluation Criteria
Showing that a network element implements a controlled delay service
is somewhat difficult, since the quality of service depends on
overall traffic load, the traffic pattern presented and the degree of
delay control implemented. In this section we sketch out a
methodology for testing an element's controlled delay service.
The idea is that one chooses a particular traffic mix (for instance,
three parts level 1, one part level 2, two parts level 3 and the rest
is best-effort traffic) and loads the network element with
progressively higher levels of this traffic mix (i.e., 40% of
capacity, then 50% of capacity, on up to near 100% capacity, or
beyond 100% capacity, provided all traffic in excess of full loading
is best effort traffic that can be discarded). For each load level,
one measures the mean delays and the packet loss rate for each level
of service (including best effort). Each test run at a particular
load should involve enough traffic that is a reasonable predictor of
the performance a long-lived application such as a video conference
Shenker/Partridge Expires 9/1/95 [Page 4]
INTERNET-DRAFTdraft-ietf-intserv-controlled-delay-svc-00.txt March, 1995
would experience (e.g., several minutes of traffic).
A conformant network element will show a distinct difference in mean
delays for level 1 service and best-effort service as loads increase
towards 100%, with level 1 service always getting the lower delay.
This should be true over a broad range of traffic mixes. Delays for
levels 2 and 3 traffic will fall between level 1 and best effort.
The level 2 and 3 delays can be equal to the level 1 delay, but must
be less than the best effort delay at higher loads. The level 2 and
3 delays are also subject to the condition that the delay for level 2
traffic must be less than or equal to the delay for level 3 traffic.
This memo does not specify particular traffic mixes to test, however,
we expect in the future that as the nature of real-time Internet
traffic is better understood, some suggested traffic mixes will be
proposed. For present purposes, it is sufficient for a network
element to demonstrate it effectively distinguishes delay for a few
different traffic mixes.
Security Considerations
Security considerations are not discussed in this memo.
Authors' Address:
Scott Shenker
Xerox PARC
3333 Coyote Hill Road
Palo Alto, CA 94304-1314
shenker@parc.xerox.com
415-812-4840
415-812-4471 (FAX)
Craig Partridge
BBN
2370 Amherst St
Palo Alto CA 94306
craig@bbn.com
Shenker/Partridge Expires 9/1/95 [Page 5]