Distributed Interactive Simulation
Distributed Interactive Simulation (DIS) is an IEEE standard for conducting real-time platform-level wargaming across multiple host computers and is used worldwide, especially by military organizations but also by other agencies such as those involved in space exploration and medicine.
History
The standard was developed over a series of "DIS Workshops" at the Interactive Networked Simulation for Training symposium, held by the University of Central Florida's Institute for Simulation and Training (IST). The standard itself is very closely patterned after the original SIMNET distributed interactive simulation protocol, developed by Bolt, Beranek and Newman (BBN) for Defense Advanced Research Project Agency (DARPA) in the early through late 1980s. BBN introduced the concept of dead reckoning to efficiently transmit the state of battle field entities.
In the early 1990s, IST was contracted by the United States Defense Advanced Research Project Agency to undertake research in support of the US Army Simulator Network (SimNet) program. Funding and research interest for DIS standards development decreased following the proposal and promulgation of its successor, the High Level Architecture (simulation) (HLA) in 1996. HLA was produced by the merger of the DIS protocol with the Aggregate Level Simulation Protocol (ALSP) designed by MITRE.
There was a NATO standardisation agreement (STANAG 4482, Standardised Information Technology Protocols for Distributed Interactive Simulation (DIS), adopted in 1995) on DIS for modelling and simulation interoperability. This was retired in favour of HLA in 1998 and officially cancelled in 2010 by the NATO Standardization Agency (NSA).
The DIS family of standards
DIS is defined under IEEE Standard 1278:
- IEEE 1278-1993 - Standard for Distributed Interactive Simulation - Application protocols
- IEEE 1278.1-1995 - Standard for Distributed Interactive Simulation - Application protocols
- IEEE 1278.1-1995 - Standard for Distributed Interactive Simulation - Application protocols (Corrections) [1]
- IEEE 1278.1A-1998 - Standard for Distributed Interactive Simulation - Application protocols Errata (May 1998)
- IEEE 1278.1-2012 - Standard for Distributed Interactive Simulation - Application protocols
- IEEE-1278.2-1995 - Standard for Distributed Interactive Simulation - Communication Services and Profiles
- IEEE 1278.3-1996 - Recommended Practice for Distributed Interactive Simulation - Exercise Management and Feedback
- IEEE 1278.4-1997 - Recommended Practice for Distributed Interactive - Verification Validation & Accreditation
- IEEE P1278.5-XXXX - Fidelity Description Requirements (never published)
In addition to the IEEE standards, the Simulation Interoperability Standards Organization (SISO) maintains and publishes an "enumerations and bit encoded fields" document yearly. This document is referenced by the IEEE standards and used by DIS, TENA and HLA federations. Both PDF and XML versions are available.
Current status
SISO, a sponsor committee of the IEEE, promulgates improvements in DIS. Major changes occurred in the DIS 7 update to IEEE 1278.1[1] to make DIS more extensible, efficient and to support the simulation of more real world capabilities.[2]
Application protocol
Simulation state information is encoded in formatted messages, known as protocol data units (PDUs) and exchanged between hosts using existing transport layer protocols, including multicast, though broadcast User Datagram Protocol is also supported. There are several versions of the DIS application protocol, not only including the formal standards, but also drafts submitted during the standards balloting process.
- Version 1 - Standard for Distributed Interactive Simulation - Application Protocols, Version 1.0 Draft (1992)
- Version 2 - IEEE 1278-1993
- Version 3 - Standard for Distributed Interactive Simulation - Application Protocols, Version 2.0 Third Draft (May 1993)
- Version 4 - Standard for Distributed Interactive Simulation - Application Protocols, Version 2.0 Fourth Draft (March 1994)
- Version 5 - IEEE 1278.1-1995
- Version 6 - IEEE 1278.1a-1998 (amendment to IEEE 1278.1-1995)
- Version 7 - IEEE 1278.1-2012 (See External Link - DIS Product Development Group.) Version 7 is also called DIS 7.[2] This is a major upgrade to DIS to enhance extensibility and flexibility. It provides extensive clarification and more details of requirements, and adds some higher-fidelity mission capabilities.[2]
Protocol data units
The current version (DIS 7) defines 72 different PDU[3] types, arranged into 13 families. Frequently used PDU types are listed below for each family. PDU and family names shown in italics are found in DIS 7.
- Entity information/interaction family - Entity State, Collision, Collision-Elastic, Entity State Update, Attribute
- Warfare family - Fire, Detonation, Directed Energy Fire, Entity Damage Status
- Logistics family - Service Request, Resupply Offer, Resupply Received, Resupply Cancel, Repair Complete, Repair Response
- Simulation management family - Start/Resume, Stop/Freeze, Acknowledge
- Distributed emission regeneration family - Designator, Electromagnetic Emission, IFF/ATC/NAVAIDS, Underwater Acoustic, Supplemental Emission/Entity State (SEES)
- Radio communications family - Transmitter, Signal, Receiver, Intercom Signal, Intercom Control
- Entity management family
- Minefield family
- Synthetic environment family
- Simulation management with reliability family
- Live entity family
- Non-real time family
- Information Operations family - Information Operations Action, Information Operations Report
See also
- Computer simulation
- Simulation Interoperability Standards Organization
- Standard Interface for Multiple Platform Link Evaluation (SIMPLE)
References
- 1 2 "Corrections to Standard for Distributed Interactive Simulation - Application protocols" (PDF). IEEE. Retrieved 0517-1-1. Check date values in:
|access-date=
(help) - 1 2 3 DIS 7 Overview, SISO PSG File Library
- ↑ "1278.1-2012 IEEE Standard for Distributed Interactive Simulation - Application Protocols". IEEE. Retrieved 13010800. Check date values in:
|access-date=
(help)