|
Terms of the Week:
QoS
Protocols
Today we'll take
a look at some of the many protocols associated with quality of service (QoS),
which is the ability of a network to assign priority levels to different types
of traffic.
802.1p
802.1p is the IEEE specification used for tagging VLAN frames to give
them a QoS priority level. The standard is a subset of the 802.1Q tagging format
for VLAN frames. 802.1Q tags frames to denote which VLAN they belong to using a
12 bit VLAN ID. 802.1p uses three-bits in the frame header for identification of
the traffic priority level.
ToS
ToS (Type of Service) is a one-byte field defined within the IPv4 frame
(defined originally in RFC-795 and then subsequent RFCs). It is also sometimes
referred to as the IP precedence field. This field has always been available but
until recently was unused. With discussions of convergence, VoIP, and QoS,
interest in using it has re-emerged, mostly because it already exists as a
standard way to implement QoS for IP traffic. The field consists of two parts:
the first is called precedence and is used to identify and route packets in the
Internet. The second, called the ToS sub-field, was created to define the type
of service requested for the traffic - it's normally not used.
ToS is limited in
its capabilities, so a new type of QoS protocol called Differentiated Services
(DiffServ) has been developed to replace it. DiffServ uses the same data field
within the IP packet but has increased capabilities.
DiffServ
The ToS field is now being used to offer improved QoS capabilities. The
field is still one byte long and located in the same section of the IP header,
but the bits have been redefined. This new field has been renamed DiffServ
(Differentiated Services - RFC 2474). DiffServ is designed for use at the edge
of the enterprise network where corporate traffic enters the service provider
environment. Because it is a layer 3 protocol, this capability can be added to
most routing services via a software upgrade. In addition, being a layer 3
function, it has no requirements for any layer 2 capability - so it can be used
in the LAN, MAN, and WAN. This also means that the traffic can be tagged by the
originating device or an intermediate switch/router that supports DiffServ.
DiffServ allows for the definition of more types and levels of QoS support than
are available with ToS. DiffServ works by tagging packets with the requested
level of service they require across an IP network. The various service levels
provided by DiffServ allows routing that supports the QoS requested.
The DiffServ
field contains a differentiated services code point (DSCP) that specifies how
each routing service will handle the packet. The DS code points allow the
routing services to base forwarding on precedence (preferred service) or some
specific performance requirements required by the application (assured service).
RSVP
RSVP (Resource Reservation Protocol) is a setup protocol used by a host
(or switch) to request a specific level of QoS from the IP network to support a
particular application's data flow. RSVP is also used by routing services to
deliver the QoS requests to nodes along the path of the flow and to establish
and maintain the requested service. RSVP is logically located on top of IP and
supports unicast and multicast traffic flows.
RSVP is used by
sending stations (senders) to advertise the particular QoS requirements to
support an application. This advertisement, called a path message, contains
traffic specifications (or Tspecs) that describe the requirements of the flow.
End stations (receivers) use this information to make requests, called
reservations, for resources from switches along the path between themselves and
the senders. Switches guarantee the delivery of a flow by accepting the
reservation request (switch may also deny the request if so configured).
Using RSVP, a
sender (such as a video workstation) initially starts sending RSVP path messages
through the network to advertise the requirements of the flow. When a receiver
receives the path message, it sends a reservation request for resources in the
network it needs to receive the flow. The reservation request is passed to each
node in the network, which then validates or rejects the request. If the
reservation is validated, the desired resource reservation is made on that part
of the link, and the request is sent to the next node. The reservation request
is dynamic. It may be modified as it travels upstream because of traffic control
mechanisms, or it may be merged with another similar reservation in the
multicast tree. Once the reservation request reaches the sender it starts
sending data packets. A confirmation message is sent to the receiver.
RTP
RTP (Real-time Transport Protocol) is an IETF standard used on IP
networks to grant QoS to streaming real-time applications like voice and video.
RTP provides the content identification, timing reconstruction, loss detection,
and security required for streaming media, and it relies on RSVP to reserve the
QoS that its applications require.
MPLS
MPLS (Multi Protocol Label Switching) is an IETF initiative that works
with IP, FR, and ATM protocols to identify classes of traffic so that streams of
data can be forwarded quickly and in an identical manor. Switches that support
MPLS are called label switching routers (LSRs). Their job is to identify and
classify received packets. This is done by comparing the information from the
received packet (addressing, QoS, application information) with an internal
database. Based on this information, the LSR will "tag" the packet and
forward it to the next switch. The next switch examines the incoming tag,
matches it to a tag, and sends it on its way. This process is repeated until the
packet reaches its destination switch, where the final tag is removed and the
packet is forwarded to the recipient.
The label
switched path (LSP) is the path tagged packets follow to reach the final
destination. The protocol was designed to allow the creation of the LSP by
several ways. The LSR can be statically configured by the network administrator
(like an ATM PVC); it can be created dynamically using another protocol, such as
RSVP; or it can be done hop by hop in the switches. An example of the last way
is for a protocol like OSPF to assign a LSP to a specific path to a destination
|