## 3 Data Distribution Service  
The data distribution service (DDS) is a data-centric communication standard which was initially released by the Object Management Group (OMG) in 2004 [20]. The DDS deploys a data-centric publish-subscribe (DCPS) protocol within a virtual global data space to facilitate the communication among participants [21; 22; 23]. The DCPS protocol is based on defining topics with specific data types and formats through IDL (interface definition language) files over a DDS domain. Afterwards, participants with data writer can publish into these topics and subscribers can use data reader to receive data. It is worth mentioning that several subscribers are able to receive data simultaneously once data is written or updated on a topic, therefore, it is a multicast communication framework which facilitates the data exchange among participants with the same domain ID [15]. This communication platform is fast, expandable, and reliable enough and can be utilized in critical real-time applications. The automatic discovery feature of the DDS makes it possible for dynamic participants to be added/deleted to/from the system without any interruption in the system operation [24; 25; 26]. The DDS is also equipped with an extraordinary governance and management tool, called Quality of Service (QoS), for flexible communication and controlling the system behavior in terms of data latency budget, priority order, lifespan, durability, etc.  
The single point of failure feature in most of the message centric communication middleware directly affect the reliability of system. However, the DDS does not need a message broker for peer-to-peer communication, and therefore it is an excellent and highly reliable tool for distributed applications. In addition to high reliability of the DDS, it is easily scalable due to the real-time publish-subscribe (RTPS) protocol, automatic discovery (dynamic participation of network nodes), and routing service for distributed applications with participants in different networks and diverse transport protocols (e.g., IPv4, IPv6, or shared memory) [27; 28; 29]. In fact, tracking millions of data values and self-forming of autonomous systems are possible because of scalability and automatic discovery features, respectively. The DDS is optimized to provide a reliable, scalable, and secure integration bus to connect existing and new assets. In dynamic networks, the applicants are plug-and-play if DDS is deployed, and therefore there is no need to deploy configuration because of automatic discovery ability of this middleware. Although DDS could be expanded significantly, its performance is still highly efficient. For example, increasing the number of subscribers from one to 888 only has an impact of 10%on throughput. In addition, the DDS can be implemented for ultra-large-scale systems (ULS) using DDS-wire protocol which is known as DDSI for scalability on ULS deplanements over WAN [28]. The DDS routing service is also achievable through the QoS profile, where the IP address of participants along with proper network protocol (e.g., TCP or UDP) is defined. It results in routing the published data from the first network (where the publisher is located) to the predefined domain ID and topic name at the subscriber's network.  
The security of the DDS is another unique feature of this standard. It allows participant to be authenticated before participating in the communication procedure to avoid system spoofing by unauthorized agents, provides an encryption/decryption mechanism through a key management mechanism for secure data exchange among participants to avid data spoofing and bad data injection, and defines a redundant security measure called permission access control, which determines the accessibility for each participant to each domain, topic, and data along with the right to write or read data from that topic. This permission accesses are evaluated through a permission certificate authority, which is initially responsible for signing the certificate for each participant.