SLIDE 1
IT2EC 2020 IT2EC Extended Abstract Template Presentation/Panel
DAAPR: The Dapper Way to Debrief Together
Alexander Streit1
1Director of Advanced Technologies, PLEXSYS Interface Products, Orlando, USA
Abstract — Simulation events are increasingly taking place across multiple platforms, sites, and organisations. The Distributed Debrief Control Architecture (DDCA) is the industry standard for distributed debriefing. However, it has a number of issues. We describe the issues and their workarounds in the paper. We have designed Distributed After Action Playback and Review (DAAPR) as a fault-tolerant, easy to implement, and extensible alternative to DDCA. We have produced a prototype implementation and conducted numerous experiments. This paper presents observations and results from our experience developing and testing DAAPR. We invite others to join in implementing and standardising DAAPR for global simulation use.
1 Introduction
The UK Land Forces are designing their training system to enable a “Train, Reflect, Learn, and Train Again (TRLTA)” cycle [1]. Debriefing is a critical part of this cycle by allowing participants in an exercise to reflect on what occurred, so as to learn from it. Simulation exercises are increasingly taking part across multiple sites and across different training systems. This poses a challenge when debriefing sessions, as the tools available between systems vary and often do not coordinate with one another. This is a simulation and training challenge for commercial and defence users alike. One solution is the Distributed Debrief Control Architecture (DDCA), an architecture for coordinating a distributed debrief [2]. DDCA does not specify a network protocol and messages can be transported inside Distributed Interactive Simulation (DIS), High-Level Architecture (HLA), or Test and Training Enabling Architecture (TENA) envelopes. The Boeing Company and others developed DDCA with inspiration drawn from Distributed Debrief Control Protocol (DDCP), an earlier protocol defined by Boeing [3]. DDCP has been adapted to work on the US Air Force’s Combat Air Force Distributed Mission Operations Network (CAF DMON) [4]. We initially pursued DDCA to solve our needs to debrief across heterogeneous environments. However, we encountered several issues, which we describe below. 1.1 Issues with DDCA There are several issues with the DDCA specification:
- Network instability has a strongly adverse effect on
the ability to conduct a debriefing. For example, dropped packets can cause the master application to wait on response messages to seek requests before transitioning to a play state.
- Excess (non-critical) information is transferred,
making it problematic for sensitive environments or where multiple levels of security are involved.
- Transfer of replay control is a required feature that
is not part of the specification.
- Playback speeds are specified using Integers.
1.2 DDCA Benefits There are several aspects of the DDCA design that are useful in distributed and interconnected use cases. These include:
- Zulu timestamping of message generation time
enables dead-reckoning and provides a helpful sanity check.
- The use of 64-bit milliseconds from Epoch at Zulu
time is an appropriate mechanism for time
- exchange. A 64-bit signed Integer provides an
almost 585 million year time range with specificity to the millisecond.
- The SYNC message includes enough information
for a client to establish the correct playback point and speed in the presence of lag through dead reckoning.
- DDCA is an architecture and can be embedded
inside another protocol, such as DIS or HLA.
2 Approach
Our initial approach was to adapt DDCA to our needs. This included the following workarounds:
- Response to LIST commands with a single infinite
recording with no description, to maintain privacy controls.
- Ignore LOAD commands, as the data file would
always be the single infinite file. The work-around is to perform on-demand loading of data files using the playback time from commands such as SEEK or SYNC.
- Ignore ACKNOWLEDGE messages, allowing state
to transition directly between PAUSE, SYNC, and
- SEEK. Devices would be responsible for catching