Resource Reservation Protocol (RSVP)
functionality, which is the case in 99 percent of applications
that use IP. Figure summarizes these points.
Content
4.1 Introducing Classification and
Marking 4.1.5 IP Precedence and DSCP
Compatibility Figure shows the structure of the header. The
introduction of DSCP replaces IP precedence, a 3-bit field in
the ToS byte of the IP header originally used to classify and
prioritize types of traffic as shown in . However, DiffServ
maintains interoperability with non-DiffServ-compliant devices
(those that still use IP precedence). Because of this backward
compatibility, DiffServ can be deployed gradually in large
networks. The meaning of the 8 bits in the DiffServ field of
the IP packet has changed over time to meet the expanding
requirements of IP networks. Originally, the field was referred
to as the ToS field, and the first three bits of the field
(bits 7 to 5) defined a packet IP precedence value. A packet
could be assigned one of six priorities based on the value of
the IP precedence value (eight total values minus two reserved
ones). IP precedence 5 (101) was the highest priority that
could be assigned (RFC 791). In December 1998, RFC 2474
replaced the ToS field with the DiffServ field, in which a
range of eight values (class selector) is used for backward
compatibility with IP precedence. There is no compatibility
with other bits used by the ToS field. The class selector PHB
was defined to provide backward compatibility for DSCP with
ToS-based IP precedence. RFC 1812 simply prioritizes packets
according to the precedence value. In this sense, the PHB is
defined as the probability of timely forwarding. For example,
consider a service provider offering so-called “Olympic”
service classes (Gold, Silver, and Bonze) so that packets in
the gold class experience lighter load, and thus have greater
probability for timely forwarding, than packets assigned to the
silver class. Packets with higher IP precedence should be (on
average) forwarded in less time than packets with lower IP
precedence. The last 3 bits of the DSCP (bits 2 to 4) set to 0
identify a class-selector PHB.
Content 4.1
Introducing Classification and Marking 4.1.6
Per-Hop Behaviors A PHB is a description of the
externally observable forwarding behavior of a DiffServ node
applied to a particular DiffServ behavior aggregate (BA).
Forwarding behavior is a general concept in this context. For
example, in the event that only one BA occupies a link, the
observable forwarding behavior (that is, loss, delay, jitter)
will often depend only on the relative loading of the link
(that is, in the event that the behavior assumes a
work-conserving scheduling discipline). Useful behavioral
distinctions are mainly observed when multiple BAs compete for
buffer and bandwidth resources on a node. The PHB is the means
by which a node allocates resources to behavior aggregates, and
it is on top of this basic hop-by-hop resource allocation
mechanism that useful differentiated services may be
constructed. A simple example of a PHB is one that guarantees a
minimal bandwidth allocation of x% of a link (over some
reasonable time interval) to a behavior aggregate. This PHB is
easily measured under a variety of competing traffic
conditions. A slightly more complex PHB would guarantee a
minimal bandwidth allocation of x% of a link, with proportional
fair sharing of any excess link capacity. In general, the
observable behavior of a PHB may depend on certain constraints
on the traffic characteristics of the associated BA, or the
characteristics of other BAs. PHBs may be specified in terms of
their resource (for example, buffer, bandwidth) priority
relative to other PHBs, or in terms of their relative
observable traffic characteristics (for example, delay, loss).
These PHBs may be used as building blocks to allocate resources
and should be specified as a group (PHB group) for consistency.
PHB groups will usually share a common constraint applying to
each PHB within the group, such as a packet scheduling or
buffer management policy. The relationship between PHBs in a
group may be in terms of absolute or relative priority (for
example, discard priority by means of deterministic or
stochastic thresholds), but this is not required (for example,
N equal link shares). A single PHB defined in isolation is a
special case of a PHB group. PHBs are implemented in nodes by
means of some buffer management and packet scheduling
mechanisms. PHBs are defined in terms of behavior
characteristics relevant to service provisioning policies, and
not in terms of particular implementation mechanisms. In
general, a variety of implementation mechanisms may be suitable
for implementing a particular PHB group. Furthermore, it is
likely that more than one PHB group may be implemented on a
node and utilized within a domain. PHB groups should be defined
in such a way that the proper resource allocation between
groups can be inferred and integrated mechanisms can be
implemented that can simultaneously support two or more groups.
A PHB group definition should indicate possible conflicts with
previously documented PHB groups that might prevent
simultaneous operation. The DiffServ architecture defines the
DiffServ (DS) field, which supersedes the ToS field in IPv4 to
make per-hop behavior (PHB) decisions about packet
classification and traffic conditioning functions, such as
metering, marking, shaping, and policing. To review: -
Metering is the process of measuring the temporal properties
(for example, rate) of a traffic stream selected by a
classifier. The instantaneous state of this process may be used
to affect the operation of shaper, or dropper, and/or may be
used.
- Marking is the process of setting the DSCP in a
packet based on defined rules.
- Shaping is the process
of delaying packets within a traffic stream to cause the
traffic to conform to some defined traffic profile.
-
Policing is the process of discarding packets within a traffic
stream in accordance with the state of a corresponding meter
enforcing a traffic profile.
The IETF defines the
following PHBs: - Default PHB: Used for
best-effort service (bits 5 to 7 of DSCP equal 000)
-
Expedited Forwarding (EF) PHB: Used for low-delay
service (bits 5 to 7 of DSCP equal 101)
- Assured
Forwarding (AF) PHB: Used for guaranteed bandwidth service
(bits 5 to 7 of DSCP equal 001, 010, 011, or 100)
-
Class-selector PHB: Used for backward compatibility with
non-DiffServ-compliant devices (RFC 1812-compliant devices;
bits 2 to 4 of DSCP equal 000)
EF PHB
Figure is a detailed view of the EF PHB used in DSCP. The EF
PHB is identified based on the following: - The EF
PHB ensures a minimum departure rate: The EF PHB provides
the lowest possible delay to delay-sensitive
applications.
- The EF PHB guarantees
bandwidth: The EF PHB prevents starvation of the
application if there are multiple applications using EF
PHB.
- The EF PHB polices bandwidth when congestion
occurs: The EF PHB prevents starvation of other
applications or classes that are not using this PHB.
Packets requiring EF should be marked with DSCP binary
value 101110 (46 or 0x2E). Non-DiffServ-compliant devices
regard EF DSCP value 101110 as IP precedence 5 (101). This
precedence is the highest user-definable IP precedence and is
typically used for delay-sensitive traffic (such as VoIP). Bits
5 to 7 of the EF DSCP value are 101, which matches IP
precedence 5 and allows backward compatibility. AF
PHB
Figure is a detailed view of the AF PHBs used in
DSCP. The AF PHB is identified based on the following:
- The AF PHB guarantees a certain amount of bandwidth to an
AF class.
- The AF PHB allows access to extra
bandwidth, if available.
Packets requiring AF PHB
should be marked with DSCP value aaadd0, where aaa is the
number of the class and dd is the drop probability. There are
four standard AF classes defined: AF1, AF2, AF3, and AF4. Each