2.2.4.1.3.67.1 FLOWSPEC

The FLOWSPEC packet allows the changing of Quality of Service (QoS) settings for a particular flow.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

TokenRate

TokenBucketSize

PeakBandwidth

Latency

DelayVariation

ServiceType

MaxSduSize

MinimumPolicedSize

TokenRate (4 bytes): An unsigned 32-bit integer. Specifies the permitted rate at which data can be transmitted over the life of the flow.

TokenBucketSize (4 bytes): An unsigned 32-bit integer. The maximum amount of credits, in bytes, that a particular direction of a flow can accrue, regardless of time.

PeakBandwidth (4 bytes): An unsigned 32-bit integer. The upper limit, in bytes per second, on time-based transmission permission for a particular flow. PeakBandwidth restricts flows that can have accrued a significant amount of transmission credits, or tokens 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.

Latency (4 bytes): An unsigned 32-bit integer. The maximum acceptable delay, in microseconds, 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 that is specified in the QoS request.

DelayVariation (4 bytes): An unsigned 32-bit integer. The difference between the maximum and minimum possible delay, in microseconds, that a packet will experience. DelayVariation is used to determine the amount of packet space that is needed at the receiving end of the flow. This packet space information can be used to restore the original data transmission pattern.

ServiceType (4 bytes): An unsigned 32-bit integer. Specifies the level of service to negotiate for the flow.

Value

Meaning

SERVICETYPE_NOTRAFFIC

0x00000000

Indicates that no traffic will be transmitted in the specified direction. On duplex-capable media, this value signals underlying software to set up unidirectional connections only.

SERVICETYPE_BESTEFFORT

0x00000001

Results in no action taken. However, traffic control does create a BESTEFFORT flow, and traffic on the flow is handled by traffic control similarly to other BESTEFFORT traffic.

SERVICETYPE_CONTROLLEDLOAD

0x00000002

Provides an end-to-end QoS that closely approximates transmission quality that is provided by best-effort service, as expected under unloaded conditions from the associated network components along the data path. Therefore, applications that use SERVICETYPE_CONTROLLEDLOAD can assume the following:

  • The network will deliver a high percentage of transmitted packets to its intended receivers. In other words, packet loss will closely approximate the basic packet error rate of the transmission medium.

  • Transmission delay for a high percentage of the delivered packets will not greatly exceed the minimum transit delay that is experienced by any successfully delivered packet.

SERVICETYPE_GUARANTEED

0x00000003

Guarantees that datagrams arrive within the guaranteed delivery time and are not discarded because of queue overflows—provided the flow's traffic stays within its specified traffic parameters. This service is intended for applications that need a firm guarantee that a datagram arrives no later than a certain time after it was transmitted by its source.

SERVICETYPE_NETWORK_UNAVAILBLE

0x00000004

Used to notify network changes.

SERVICETYPE_GENERAL_INFORMATION

0x00000005

Specifies that all service types are supported for a flow. Can be used on the sender side only.

SERVICETYPE_NOCHANGE

0x00000006

Indicates that the Quality of Service (QoS) in a transmission that uses this ServiceType value is not changed. SERVICETYPE_NOCHANGE can be used when requesting a change in the QoS for one direction only or when requesting a change only within the ProviderSpecific parameters of a QoS specification and not in the SendingFlowspec or ReceivingFlowspec.

SERVICETYPE_NONCONFORMING

0x00000009

Used to indicate nonconforming traffic.

SERVICETYPE_NETWORK_CONTROL

0x0000000A

Used only for transmission of control packets, such as Resource Reservation Protocol (RSVP) signaling packets [RFC2205]. This ServiceType has the highest priority.

SERVICETYPE_QUALITATIVE

0x0000000D

Requires better than BESTEFFORT transmission but cannot quantify its transmission requirements. Traffic control treats flows of this type with the same priority as BESTEFFORT traffic.

SERVICE_NO_TRAFFIC_CONTROL

0x81000000

Indicates that traffic control is not to be invoked in the specified direction.

SERVICE_NO_QOS_SIGNALING

0x40000000

Suppresses RSVP signaling in the specified direction.

MaxSduSize (4 bytes): An unsigned 32-bit integer. Specifies the maximum packet size, in bytes, that is permitted or used in the traffic flow.

MinimumPolicedSize (4 bytes): An unsigned 32-bit integer. Specifies the minimum packet size, in bytes, for which the requested Quality of Service is provided. Packets smaller than this size are treated by traffic control as MinimumPolicedSize. When using the FLOWSPEC packet together with RSVP, the value of MinimumPolicedSize cannot be zero.