Aspects of performance listed here:
See the QoS Policies listing for the implementation state of the policy you are interested in.
Require the publisher to always send at least one value within the period.
Using a RELIABLE setting may result in resends of data. A RELIABLE setting can potentially block while trying to send. The max_blocking_time is important to minimize the time that the send can block for.
Setting an expiration time for the samples will ensure that the receiving application will not receive any values that are too old.
Too few available samples and delays will occur acquiring samples to send.
Don't allow grouping and re-ordering of values that can delay delivery to the application.
Setting a higher minimum_separation will result in less samples being set.
None of the QoS policies are for directly controlling bandwidth. Several have some effect on bandwidth.
A low liveliness lease_duration will result in extra liveliness messages for publishers that are not publishing values frequently. (lower lease_duration raises bandwidth)
Setting a lower deadline will result in more traffic. (lower deadline raises bandwidth)
Using a RELIABLE setting may result in resends of data. (RELIABLE possibly raises bandwidth)
Setting to EXCLUSIVE allows multiple publishers to be publishing for the same Instance but only one will be recognized as the owner (authoritative source). A failure/death of the current owner allows the subscribers to continue receiving values from the new owner.
Establishes the order of ownership when OWNERSHIP is set to EXCLUSIVE
The lease_duration is important for determining that an entity has died. A lower value means that a death will be detected sooner.
BY_RECEPTION_TIMESTAMP can result in two subscribers having data in different orders. BY_SOURCE_ TIMESTAMP forces all subscribers to have the data in the same order.
The sets a buffer between the changing values and the delivery to the subscriptions. Set to KEEP_LAST and a small depth, could potentially cause blocking depending on other QoS policies.
Persistence of data that has been published
Controls how the data will be stored. Values of TRANSIENT and PERSISTENT result in data outliving the DataWriter.
This policy configures how much data is stored after it is published. The RESOURCE_LIMITS policy defined how much data is stored in OpenDDS.
Controls the storing of values before they are delivered.
Specifies that available number of samples that can be handled.
Whether samples will be automatically disposed.
Whether samples will be automatically removed.