Platform SDK: Quality of Service

Using SIO_CHK_QOS

SIO_CHK_QOS can be used in conjunction with the WSAIoctl function to obtain information on QOS traffic characteristics. During the transitional phase on the sending system between flow setup and the receipt of a RESV message (see How the RSVP SP Invokes TC for more information on the transitional phase), traffic associated with the flow is shaped based on service type (BEST EFFORT, CONTROLLED LOAD, or GUARANTEED). When the RSVP service on the sending host receives the RESV message, it communicates with traffic control to modify the BEST_EFFORT flow according to the change in ServiceType in the FLOWSPEC, and traffic control objects received in the RESV message.

Certain applications may find the results of shape/discard mode settings unacceptable, such as a CONTROLLED LOAD flow's nonconforming packets (in borrow mode) potentially being discarded. To avoid unnecessary discarding of packets, applications can use SIO_CHK_QOS immediately following QOS invocation. The results of the call may require that the application defer data transmission until receipt of the RESV message.

Note that the default setting for SIO_CHK_QOS allows the application to send data as BEST_EFFORT before the reservation is in place. Network administrators in a given QOS-enabled network environment must explicitly override this setting on the ACS in order to exercise this control.