The DDS QoS policies are generally handled at the Application layer (layer 7 of the OSI model). History, Lifespan, Durability and Ownership for example, are all related to what data should be presented to the DDS Application, so the middleware at this level makes the decisions with respect to that.
DDS implementations are generally coded to run on IPv4 and IPv6 using UDP or TCP as the transport (layers 3 and 4). There are some QoS that are more related to networking delivery such as Reliability, but that is implemented with resends and acknowledgements on top of UDP (as per the DDSI spec). In addition, some vendors allow the setting of specific properties at the socket or packet level (DiffServ, dontroute, Time to live etc).
Hope that helps - does this impact your use of DDS?
Anonymous posted on Monday, August 24, 2015 - 02:08 pm
Yeah thanks a lot. What about Reliability then? Does it belong to Layer 4? So in general all existing 22 QoS policies are handled at the Application layer?
I would say Reliability resides partly at the Application layer (for implementing intra-nodal reliability) and partly at the Transport level (for implementing reliable networking delivery "on top of" UDP).
One might argue that the Presentation and Partition QoS, in particular, apply at the Presentation layer (layer 6) because they are about controlling what is presented to the application above it. I guess it depends if you class DDS or any other similar high level middleware as sitting as layer 6 or layer 7. If you consider a user-developed DDS Application as being at level 7, then DDS would be the layer beneath (6).
Anonymous posted on Monday, August 24, 2015 - 05:10 pm
Ah okay. Got it. Thanks a lot
posted on Wednesday, September 16, 2015 - 10:41 am
I was doing an effort comparison for the quality of services used. Can you please help me with this? Or in your point of view, which quality of service will take a lot of effort to implement?