Quality of Service

Previous Topic Next Topic

Flowspecs and Filterspecs

RSVP messages carry very specific classification information that enable RSVP-aware devices to separate traffic into flows associated with individual conversations and to ensure that each flow gets the treatment determined under the RSVP request. Fine-grain classification provides a better guarantee of service.

RESV messages contain a flow specification (flowspec) and a filter specification (filterspec) to provide information about the data flow. The combined flowspec and filterspec are referred to as the flow descriptor.

Filterspec

Traffic is classified based on the source and destination IP address and port specified in the packet. This group of parameters is referred to as the filter specification or filterspec. QoS-aware devices base the handling of the packet on a match with the filterspec.

The filterspec, together with a session specification, defines the set of data packets to be included in the flow. The filterspec is used to set parameters in the Packet Classifier. Data packets that are addressed to a particular session but do not match any of the filterspecs for that session are handled as best-effort traffic.

Filter Styles

A reservation includes options, referred to as the reservation style. This style determines how the reservation is treated from the sender's perspective.

A reservation can either be distinct for each sender or it can be shared by a set of specified senders. It can also be an explicit list of all selected senders, or a wildcard specification that implicitly selects all senders for the session.

Wildcard Filter Style

The Wildcard Filter (WF) reservation style contains a sender selection specified in wildcard format and a shared reservation. A WF style reservation creates one reservation for all sender flows. The amount of resources reserved by shared reservation is determined by the largest of the resource requests that were merged. A WF reservation is automatically offered to new senders. No filter spec is needed.

Fixed-Filter Style

In contrast, the Fixed Filter (FF) style reservation contains an explicit sender selection format and unique reservation parameters (as opposed to merged). The FF style reservation is a distinct reservation for packets from a single sender. Multiple FF reservations can be requested at the same time, using a list of flow descriptors. The filter spec must match exactly one sender.

Shared Explicit Style

The Shared Explicit (SE) style reservation involves a single reservation that is shared among an explicit list of senders. The SE style reservation is specified by one flowspec and a list of filterspecs.

Flowspec

Through RSVP and Intserv semantics, GQoS enables applications to describe the quality of service they require for transmitting a data flow. The QoS parameters are carried in a generic Intserv flowspec.

The flowspec specifies the type of QoS requested, and is used to set parameters in the QoS Packet Scheduler. It is included in reservation requests and includes:

The flowspec structure provides the following QoS parameters to RSVP. This allows QoS-aware applications to invoke, modify, or remove QoS settings for a particular flow.

TokenRate    Specifies the permitted rate at which data can be transmitted over the network for the duration of the flow. TokenRate is similar to other token-bucket models seen in WAN technologies such as Frame Relay, in which the token is analogous to a credit. If such tokens are not used immediately, they accrue to allow data transmission up to a specified amount (the token bucket size). Flows are also limited to a burst rate (the peak bandwidth specified). This avoids situations where flows that are inactive for some time suddenly flood the available bandwidth with accrued tokens. Traffic control is maintained because flows cannot send too much data at once, and network resource integrity is maintained because such devices are spared from high traffic bursts.

TokenRate is expressed in bytes per second. It is important that applications base their TokenRate requests on reasonable expectations for transmission requirements. For example, in video applications, the TokenRate is typically set to the average bit rate, peak to peak. If the TokenRate member is set to –1, limits on the transmission rate will not be in effect.

TokenBucketSize    The maximum amount of credits a particular direction of a flow can accrue, regardless of time. In video applications, TokenBucketSize is likely the largest average frame size. In constant rate applications, TokenBucketSize needs to be set to allow for small variations. TokenBucketSize is expressed in bytes.

PeakBandwidth    The upper limit on time-based transmit permissions for a given flow, sometimes called a burst limit. PeakBandwidth restricts flows from overburdening network resources with one-time or cyclical data bursts by enforcing a per-second data transmission ceiling. Some intermediate systems can take advantage of this information, resulting in more efficient resource allocation. PeakBandwidth is expressed in bytes per second.

Latency    Maximum acceptable delay between transmission of a bit by the sender and its receipt by one or more intended receivers. The precise interpretation of this number depends on the level of guarantee specified in the QoS request. Latency is expressed in microseconds.

DelayVariation    Difference between the maximum and minimum delay a packet can experience. Applications use DelayVariation to determine the amount of buffer space needed at the receiving end of the flow, in order to restore the original data transmission pattern. DelayVariation is expressed in microseconds.

ServiceType    Specifies the level of service for the flow:

© 1985-2000 Microsoft Corporation. All rights reserved.