ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzak8_5.4.0.1/rzak8rsvp.htm

176 lines
12 KiB
HTML
Raw Permalink Normal View History

2024-04-02 14:02:31 +00:00
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="concept" />
<meta name="DC.Title" content="QoS APIs" />
<meta name="abstract" content="You can read this topic to learn about protocols, APIs, and requirements for a router that is enabled for the ReSerVation Protocol (RSVP). The current quality of service (QoS) APIs include the RAPI API, the qtoq socket API, the sendmsg() API, and the monitor APIs." />
<meta name="description" content="You can read this topic to learn about protocols, APIs, and requirements for a router that is enabled for the ReSerVation Protocol (RSVP). The current quality of service (QoS) APIs include the RAPI API, the qtoq socket API, the sendmsg() API, and the monitor APIs." />
<meta name="DC.Relation" scheme="URI" content="rzak8what_is.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8qtoq.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8qtoq_connectionless.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8apis.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8intserv.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8traffic_control.htm" />
<meta name="DC.Relation" scheme="URI" content="../apis/unix15.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8example_3.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8equipment.htm" />
<meta name="DC.Relation" scheme="URI" content="rzak8wizards.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rzak8rsvp" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>QoS APIs</title>
</head>
<body id="rzak8rsvp"><a name="rzak8rsvp"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">QoS APIs</h1>
<div><p>You can read this topic to learn about protocols, APIs, and requirements
for a router that is enabled for the ReSerVation Protocol (RSVP). The current
quality of service (QoS) APIs include the RAPI API, the qtoq
socket API, the sendmsg() API, and the monitor APIs.</p>
<p>Most QoS policies require the use of an API. The following APIs might be
used in conjunction with either a differentiated service or integrated service
policies. There are also a number of APIs to use with the QoS monitor.</p>
<ul><li><a href="#rzak8rsvp__rzak8intapi">Integrated service APIs</a></li>
<li><a href="#rzak8rsvp__rzak8diffapi">Differentiated service APIs</a></li>
<li><a href="#rzak8rsvp__rzak8monitorapi">Monitor APIs</a></li>
</ul>
<div class="section" id="rzak8rsvp__rzak8intapi"><a name="rzak8rsvp__rzak8intapi"><!-- --></a><h4 class="sectiontitle">Integrated service APIs</h4><p>The RSVP,
along with the RAPI APIs or qtoq QoS sockets APIs, performs your integrated
service reservation. Every node that your traffic travels through must have
the ability to use RSVP. The ability to carry out integrated services policies
is often referred to as <em>RSVP-enabled</em>. The traffic control functions
can be used to determine which router functions are needed to use RSVP.</p>
<p>RSVP
is used to create an RSVP reservation in all the network nodes along your
traffic's pathway. It maintains this reservation long enough to provide your
policies requested services. The reservation defines the handling and bandwidth
that the data in this conversation will require. The network nodes each agree
to provide the data handling defined in the reservation.</p>
<p>RSVP is a simple
protocol in that reservations are only made in one direction (from the receiver).
For more complex connections, such as audio and video conferences, each sender
is also a receiver. In this case, you must set up two RSVP sessions for each
side.</p>
<p>In addition to RSVP-enabled routers, you need to have RSVP-enabled
applications to use integrated services. Because the iSeries™ server does not have any RSVP-enabled
applications at this time, you will need to write the applications using the
RAPI API or the qtoq QoS socket APIs. This will enable the applications to
use the RSVP protocol. If you want an in-depth explanation, there are many
sources that explain these models, their operation, and message handling.
You need a thorough understanding of the RSVP protocol and the contents of
Internet RFC 2205.</p>
<p><strong>qtoq socket APIs</strong></p>
<p>You can use the qtoq
QoS socket APIs to simplify the work required to use the RSVP protocol on
the iSeries system.
The qtoq socket APIs call the RAPI APIs and perform some of the more complex
tasks. The qtoq socket APIs are not as flexible as the RAPI APIs, but they
provide the same functions with less effort. The no-signal versions of the
APIs allow you to write the following applications:</p>
<ul><li>An application that will load an RSVP rule on the server.</li>
<li>An application that only requires the server-side application (of the
TCP/IP conversation) to be RSVP-enabled.</li>
</ul>
<p>The RSVP signaling is done automatically on behalf of the client side.</p>
<p>See
the QoS API Connection oriented functional flow page, or the QoS API Connectionless
functional flow page for typical QoS API flow for an application/protocol
using connection oriented or connectionless qtoq QoS sockets.</p>
</div>
<div class="section" id="rzak8rsvp__rzak8diffapi"><a name="rzak8rsvp__rzak8diffapi"><!-- --></a><h4 class="sectiontitle">Differentiated service APIs</h4><div class="note"><span class="notetitle">Note:</span> The
sendmsg() API is used for certain differentiated service policies that define
a specific application token. When you create a differentiated service spolicy,
you can (optionally) provide application characteristics (token and priority).
This is an advanced policy definition, and if not used, this API can be ignored.
However, remember that routers and other servers along the network still need
to be aware of differentiated service.</div>
<p>If you decide to use an application
token in a differentiated service policy, the application providing this information
must be specifically coded to use the sendmsg() API. This is done by the application
programmer. The application's documentation must provide valid values (token
and priority), which the QoS administrator will use in the differentiated
service policy. The differentiated service policy then applies its own priority
and classification to traffic which matches the token set in the policy. If
the application does not have values which match the values set in the policy,
either the application must be changed, or you need to use different application
data parameters for the differentiated service policy.</p>
<p>The following
information briefly describes the server data parameters: application token
and application priority.</p>
<p><strong>What is an application token?</strong> </p>
<p>An <dfn class="term">application
token</dfn> is a Uniform Resource Identifier (URI) that represents a defined
resource. The token you specify in the QoS policy is matched against the token
provided by the outbound application. The application provides the token value
by using the sendmsg() API. If the tokens match, the application traffic is
included in the differentiated service policy.</p>
<p><strong>What is an application
priority?</strong></p>
<p> The application priority you specify is matched against
the application priority provided by the outbound application. The application
provides the priority value by using the sendmsg() API. If the priorities
match, the application traffic is included in the differentiated service policy.
All traffic defined in the differentiated service policy will still receive
the priority given to the entire policy.</p>
<p>For more information about
the DiffServ policy type, see <a href="rzak8diffserv.htm">Differentiated service</a>.</p>
</div>
<div class="section" id="rzak8rsvp__rzak8monitorapi"><a name="rzak8rsvp__rzak8monitorapi"><!-- --></a><h4 class="sectiontitle">Monitor APIs</h4><p>The Resource Reservation
Setup Protocol APIs include the monitor APIs. The APIs that apply to the monitor
will have the word <dfn class="term">monitor</dfn> in the title. For example, <em>QgyOpenListQoSMonitorData</em>.
The following list briefly describes each monitor API:</p>
<ul><li>QgyOpenListQoSMonitorData (Open List of QoS Monitor Data) gathers information
related to QoS services.</li>
<li>QtoqDeleteQoSMonitorData (Delete QoS Monitor Data) deletes one or more
sets of collected QoS monitor data.</li>
<li>QtoqEndQoSMonitor (End QoS Monitor) stops gathering information related
to QoS services.</li>
<li>QtoqListSavedQoSMonitorData (List Saved QoS Monitor Data) returns a list
of all collected monitor data that was saved previously.</li>
<li>QtoqSaveQoSMonitorData (Save QoS Monitor Data) saves a copy of the collected
QoS monitor data for future use.</li>
<li>QtoqStartQoSMonitor (Start QoS Monitor) gathers information related to
QoS services.</li>
</ul>
</div>
</div>
<div>
<ul class="ullinks">
<li class="ulchildlink"><strong><a href="rzak8qtoq.htm">QoS API connection-oriented functional flow</a></strong><br />
The server and client examples in this topic illustrate qtoq quality of service (QoS) socket APIs written for a connection-oriented functional flow.</li>
<li class="ulchildlink"><strong><a href="rzak8qtoq_connectionless.htm">QoS API connectionless functional flow</a></strong><br />
The server and client examples in this topic illustrate qtoq quality of service (QoS) socket APIs written for a connectionless flow.</li>
<li class="ulchildlink"><strong><a href="rzak8apis.htm">QoS sendmsg() API extensions</a></strong><br />
The sendmsg() function is used to send data, ancillary data, or a combination of these through a connected or unconnected socket.</li>
</ul>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzak8what_is.htm" title="If you are new to quality of service (QoS), you can read some basic QoS concepts. This will give you an overview of how QoS works and how QoS functions work together.">Concepts</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="rzak8intserv.htm" title="The second type of outbound bandwidth policy you can create is an integrated service policy. Integrated service provides the capability for IP applications to request and reserve bandwidth using the ReSerVation Protocol (RSVP) and quality of service (QoS) APIs.">Integrated service</a></div>
<div><a href="rzak8traffic_control.htm" title="Traffic control functions only apply to integrated service and are not specific to iSeries.">Traffic control functions</a></div>
<div><a href="rzak8example_3.htm" title="If you need predictable delivery and still need to request a reservation, you also use an integrated service policy. This example uses a controlled load service.">Scenario: Predictable B2B traffic</a></div>
<div><a href="rzak8equipment.htm" title="The capabilities of your internal equipment and other equipment outside your network have enormous effects on quality of service (QoS) results.">Network hardware and software</a></div>
</div>
<div class="relref"><strong>Related reference</strong><br />
<div><a href="../apis/unix15.htm">RAPI API</a></div>
<div><a href="rzak8wizards.htm" title="To configure quality of service (QoS) policies, you must use the QoS wizards located in iSeries Navigator.">Configure QoS with wizards</a></div>
</div>
</div>
</body>
</html>