How to use the RSubConnection
API for
QoS.
Quality
of Service is implemented by setting parameters on a channel, a sub-connection RSubConnection
within a connection RConnection
.
Set parameters
on a channel that is a sub-connection, RSubConnection
.
RConnection
contains one or more sub-connections.
A default sub-connection is created automatically with the RConnection
and any added RSubConnections. The RSubConnection
API provides the functionality
to divide a connection that is provided by the RConnection
API into channels. The channels have properties such as bandwidth
and latency.
Apply an RSubConParameterBundle
to the RSubConnection
to set the sub-connection properties.
Group the
parameters that apply to an RSubConnection
into CSubConParameterFamily
families.
Each family
of parameters consists of the values ERequested and the minimum you want to accept EAcceptable
.
EAcceptable
then
the ERequested
is used as the minimum acceptable.
When the
parameters are applied and the subconnection is used then the parameter
family is updated with a third set of values that is the EGranted
.
EGranted
is between the EAcceptable
and the ERequested
.
An event is raised to inform that the parameters are rejected or not granted.
This occurs after the initial request, asynchronous event notification is used to inform the application what is negotiated. The application must monitor for the granted or rejected event notification.