|
flowspec
typedef struct _flowspec
{
int32 TokenRate; /* In Bytes/sec */
int32 TokenBucketSize; /* In Bytes */
int32 PeakBandwidth; /* In Bytes/sec */
int32 Latency; /* In microseconds */
int32 DelayVariation; /* In microseconds */
GUARANTEE LevelOfGuarantee; /* Guaranteed, Predictive, */
/* Best Effort, etc. */
int32 CostOfCall; /* Reserved for future use, */
/* must be set to 0 now */
int32 NetworkAvailability; /* read-only: */
/* 1 if accessible, */
/* 0 if not */
} FLOWSPEC, FAR * LPFLOWSPEC;
Members
TokenRate
A token bucket model is used to specify the rate at which permission to send traffic (or credits)
accrues. In the model, the token bucket has a maximum volume, TokenBucketSize,
and continuously fills at a certain rate TokenRate. If the bucket contains
sufficient credit, the application can send data and reduce the available credit by
that amount. If sufficient credits are not available, the application must wait
or discard the extra traffic.
A value of -1 in the members TokenRate and TokenBucketSize indicates that no
rate-limiting is in force. The TokenRate is expressed in bytes per second.
If an application has been sending at a low rate for a period of time, it can
send a large burst of data all at once until it runs out of credit. Having done
so, it must limit itself to sending at TokenRate until its data burst is
exhausted.
In video applications, the TokenRate is typically the average bit rate peak to
peak. In constant rate applications, the TokenRate is equal to the
PeakBandwidth.
TokenBucketSize
The TokenBucketSize is expressed in bytes.
The TokenBucketSize is the largest typical frame size in video applications.
In constant rate applications, the TokenBucketSize is chosen to accommodate
small variations.
PeakBandwidth
This member, expressed in bytes/second, limits how fast packets may be sent
back to back from the application. Some intermediate systems can take advantage
of this information resulting in a more efficient resource allocation.
Latency
Latency is the maximum acceptable delay between transmission of a bit by the
sender and its receipt by the intended receiver(s), expressed in microseconds.
The precise interpretation of this number depends on the level of guarantee
specified in the QOS request.
DelayVariation
This the difference, in microseconds, between the maximum and minimum possible
delay that a packet will experience. This value is used by applications to
determine the amount of buffer space needed at the receiving side in order to
restore the original data transmission pattern.
LevelOfGuarantee
This is the level of service being negotiated for. The GUARANTEE type is enumerated below. Four levels of service are defined: Guaranteed,
Guaranteed Delay, Predictive, Controlled Load and Best Effort.
The reason for defining both predictive and guaranteed service is that
predictive services may achieve substantially better performance given the same level
of network resource usage, while guaranteed service provides the mathematical
level of certainty needed by selected applications. Specific providers may
implement none, one, or both of these services.
Best effort service is just a hint to the service provider and should be
always supported.
CostOfCall
This is just a place holder for now and should always be set to 0 until we can
come up with a meaningful cost metric.
NetworkAvailability
Network Availability - This is a read-only field for the transport provider to
use in indicating to the application whether or not the underlying media is
currently accessible or temporarily unavailable. The typical example for a
temporarily inaccessible network would be a wireless interface that has lost contact
with the base station (due, for example to terrain interference). Any change in
this value should result in an FD_QOS indication to applications that have
registered interest in same.
| Last news from Greatis Software |
 |
|
Nostalgia .Net |
|
.Net is powerful, but not all-powerful, so sometimes we need to use Win32 API for our .Net applications. It's simple enough with Platform Invoke if you have Win32 skill, but we do not always have time to dig the ancient documentation, declare the special types that are compatible with Win32, find the values of the Win32's constants and so on. Nostalgia .Net offers several simple-to-use classes, and components that will allow you to forget about the headache of Win32 and just use the power of Win32 in your application the same way as you use the native. Net classes. More » |
| Recommended software for developers |
 |
|
Ultimate Pack |
|
Component pack for Delphi and C++ Builder that contains runtime form designer, runtime object inspector, print suite and much more for the very special price. More » |
 |
|
Form Designer .Net |
|
Unique runtime form design solution that allows to edit any form in .Net WinForms application at runtime without manual coding. Full C# source codes are available More » |
 |
|
Print Suite .Net |
|
Print Suite .Net is a set of components for easy printing texts, images and grids from your WinForms applications. Full C# source codes are available More » |
 |
|
Gradient Controls .Net |
|
Gradient Controls .Net offers controls with gradient background feature. Labels, panels and so on... Full C# source codes are available More » |
 |
|
Greatis iGrid |
|
iGrid plots drawing grid right over your desktop, so you can use it everywhere, with any drawing application without any special plugins for different graphic editors. More » |
Related LinksSoftware for Visual Studio .NET developers Software for Delphi and C++ Builder developers Software for Visual Basic 6 developers Delphi Tips&Tricks MegaDetailed.NET More Online Helps Win32 Programmer's Reference Win32 Multimedia Programmer's Reference OLE Programmer's Reference Microsoft Windows Pen API Programmer's Reference Microsoft Windows Sockets 2 Reference Microsoft Windows Telephony API (TAPI) Programmer's Reference Unix Manual Pages
|