home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_j_p / draft-ietf-lsma-scenarios-01.txt < prev    next >
Text File  |  1997-07-21  |  24KB  |  451 lines

  1.  
  2. IETF Large-Scale Multicast Applications (LSMA)    Steve Seidensticker, ed.,
  3.                                                   seiden@netcom.com
  4. Working Internet Draft                            W. Garth Smith,
  5. <draft-ietf-lsma-scenarios-01.txt>                wgsmith@metavr.com
  6.                                                   Michael Myjak
  7.  26 March 1997                                    myjak@ist.ucf.edu
  8.  
  9.  
  10.                   Scenarios and Appropriate Protocols for
  11.                     Distributed Interactive Simulation
  12.  
  13. Status of this Memo
  14.  
  15. This document is an Internet-Draft. Internet-Drafts are working documents
  16. of the Internet Engineering Task Force (IETF), its areas, and its working
  17. groups. Note that other groups may also distribute working documents as
  18. Internet-Drafts.
  19.  
  20. Internet-Drafts are draft documents valid for a maximum of six months and
  21. may be updated, replaced, or obsoleted by other documents at any time. It
  22. is inappropriate to use Internet- Drafts as reference material or to cite
  23. them other than as ``work in progress.''
  24.  
  25. To learn the current status of any Internet-Draft, please check the
  26. ``1id-abstracts.txt'' listing contained in the Internet- Drafts Shadow
  27. Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au
  28. (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West
  29. Coast).
  30.  
  31. Distribution of this document is unlimited.
  32. Current schedule:
  33.  
  34. June 1996. Meet in Montreal, approve charter, refine goal documents and
  35. finalize the appoint of editors for documents.
  36.  
  37. Sept. 1996. Produce initial draft.
  38.  
  39. Dec. 1996. Review document drafts and accept changes and comments on the
  40. documents.
  41.  
  42. March 1997. Publish documents as Informational RFCs. Close group.
  43.  
  44. Mailing lists for comments:
  45. ietf-dis@bacon.gmu.edu
  46. ietf-dis-request@bacon.gmu.edu
  47.  
  48.  
  49. Abstract
  50.  
  51. We describe distributed interactive simulation (DIS) scenarios from the
  52. vantage point of hardware and software vendors who would need to address
  53. the network implications and requirements to enable large scale networked
  54. multiplayer virtual worlds. This document is meant to migrate the knowledge
  55. of the traditional Department of Defense (DoD) modeling and simulation
  56. community into tangible design metrics for the commercial networking
  57. community [2]. [Note: The term "DIS" is used here generically to describe
  58. the type of simulations used to implement these scenarios. It does not
  59. imply the use of IEEE 1278.1 protocols[1], frequently referred to as DIS
  60. protocols.]
  61.  
  62. 1. Introduction
  63.  
  64. Distributed simulations are collections of individual simulations linked at
  65. a peer level. That is, there is no client/server or centralized kernel.
  66. Each simulation application maintains it's own copy of a common virtual
  67. environment. Representations of this environment (e.g. terrain databases)
  68. are distributed by various means to all simulation applications prior to
  69. any real time operation. Issues associated with the distribution of the
  70. static environment are not within the scope of this discussion.
  71.  
  72. During real time operation each simulation application models the behavior
  73. of the simulated entity(s) for which it is responsible. Whenever specific
  74. events occur in the virtual environment or when the state of the simulated
  75. entities have changed significantly, the simulation application transmits
  76. this new information to the other simulation applications on the network.
  77. This information is encapsulated in packets and is transmitted via the
  78. UDP/IP datagram service. Anomalies and lack of precise causality due to
  79. dropped packets are tolerated in order to get the latency needed for real
  80. time operations.
  81.  
  82. Effective distributed simulation depends on low latency between the time a
  83. new state/event occurs for a simulated entity to the time that that
  84. state/event is perceived by another entity that must react to it (e.g. two
  85. high performance aircraft maneuvering to get in position to launch weapons
  86. at each other). In contrast, during event driven simulations increased
  87. latency merely slows the simulation down but causality is maintained. In
  88. real time simulations excessive latency destroys interactions and the
  89. simulation collapses.
  90.  
  91. The recommended practice for communications architecture (IEEE 1278.2)
  92. indicates that the underlying communications structure should provide 100
  93. ms or less latency for packet exchange for closely coupled interactions
  94. between simulated entities (e.g. high performance aircraft in a dog fight).
  95. This requirement is based on human reaction times that have been the basis
  96. of human-in-the-loop (HITL) flight simulator designs for many years. This
  97. requirement eases to 300 ms for loosely coupled interactions (e.g.
  98. simulated voice radio).
  99.  
  100. To some extent real time simulations can compensate for excessive latency
  101. by extrapolating continuously changing values (e.g. dead reckoning of
  102. entity movement based on initial position plus velocity and acceleration).
  103. However, discrete events (e.g. voice exchanges between humans on a
  104. simulated radio net) cannot be predicted and therefore no latency
  105. compensation is possible.
  106.  
  107. 1.1 Types of Data Exchanged
  108.  
  109. In real time distributed simulations any data may be sent between
  110. applications, however the following categories of data dominate and tend to
  111. tax network services:
  112.  
  113. Entity State -- Information includes appearance, location, velocity,
  114. orientation, accelerations, and position/movement of articulated parts of
  115. simulated entities. Location and movement are dead reckoned and this packet
  116. is only sent to correct dead reckoned parameters. It may also be sent
  117. periodically as a heartbeat, or to compensate for lost packets. Radically
  118. maneuvering entities transmit up to 15 packets/second. An average rate is
  119. two/sec for land vehicles and five/sec for aircraft.
  120.  
  121. Emissions -- Information includes point of origin, power, frequency,
  122. direction, scan pattern, and other parameters of electronic or acoustic
  123. emissions. This information is used to stimulate simulated sensors capable
  124. of detecting and responding to such information. In electronic warfare (EW)
  125. environments these parameters change frequently. In an active EW
  126. environment emission packets are sent as frequently as entity state
  127. packets.
  128.  
  129. Bit Stream Packets -- These represent voice samples, computer-to-computer
  130. communications, images, or any other digital bit stream. These are heavily
  131. used in simulations that include voice radio, intelligence, and tactical
  132. command and control systems.
  133.  
  134. Environment -- Atmospheric or oceanographic data is broken up into a series
  135. of packets to describe changes in the simulated environment. The update
  136. rate is relatively low, but the number of packets needed to represent
  137. complex patterns induces a significant network load.
  138.  
  139. Fire & Detonation -- Packet pairs carry the information needed to describe
  140. the firing of a ballistic (unguided) weapon and the detonation of the
  141. projectile. The amount of information per packet is modest and the total
  142. packets are limited to the amount of ammunition the participants can carry,
  143. but weapon firing tends to come in bursts and those bursts can impact
  144. network performance.
  145.  
  146. In real-time simulations all the data listed above shares an important
  147. characteristic that is often overlooked when designing reliability
  148. mechanisms.  The data is perishable.  It becomes stale quickly.  Most
  149. reliability mechanisms attempt to retransmit the original data to correct
  150. for packet loss.  This approach may be required for convention applications
  151. (e.g. file transfer), but in distributed real-time simulation such recovery
  152. is of little use.  A better approach is a recovery mechanism that
  153. retransmits a fresh version of the data in a lost packet.
  154.  
  155. 1.2 Network Requirements
  156.  
  157. The following are extracted and summarized from a companion informational
  158. RFC by Pullen, Bouwens, and Myjak [4].
  159.  
  160. 1.2.1 Multicasting
  161.  
  162. In early DIS simulations all applications simply broadcast packets to all
  163. other applications in the exercise using the IP broadcast address in UDP
  164. datagrams. More recent simulations use static multicast addresses to
  165. segregate different kinds of packets (e.g. entity state, emissions, bit
  166. streams). This reduces the processing required to throw away packets by
  167. those applications that cannot process them.
  168.  
  169. While static multicasting is a significant improvement over broadcasting,
  170. it is not adequate for the large scale simulations. For that a mechanism
  171. must be found that can efficiently route packets only when and where they
  172. are needed. Dynamic multicasting is the key. But to use dynamic
  173. multicasting it must be supported by the communications community.
  174.  
  175. Much has been said and written about dynamic multicasting. There is no
  176. single view of it. Dynamic multicasting can have many characteristics.
  177. Different applications will emphasize different characteristics. Those most
  178. important to the DIS community are:
  179.  
  180. * Ability to support and manage thousands of simultaneous multicast groups.
  181.  
  182. * Sustain join/leave times of less than one second at rates of hundreds of
  183. join/leaves per second with complete end-to-end propagation.
  184.  
  185. This must be done using a many-to-many paradigm in which 90% or more of the
  186. group members act as senders and receivers within any given multicast group.
  187.  
  188. 1.2.2 Real-time Packet Delivery
  189.  
  190. Packets must be delivered with low packet loss and predictable latency on
  191. the order of a few hundred milliseconds, after buffering to account for
  192. jitter (variation of latency) such that less than 2% of packets fail to
  193. arrive within the specified latency, in a shared network.
  194.  
  195. 1.2.3 Resource Reservation
  196.  
  197. Simulation exercises using the Internet Protocol Suite (IPS) will need to
  198. reserve a maximum overall networking capacity that would could be
  199. dynamically shared among various groups of information flows.  With regards
  200. to distributed simulation environments, this implies that Information flows
  201. will need to be dynamically grouped in relation to multicast groups,
  202. regions of interest, or some possibly some other paradigm as the exercise
  203. evolves.
  204.  
  205. 1.2.4 Resource Sensitive Routing
  206.  
  207. Forwarding datagrams from one network node to the next is performed by
  208. routing protocols such as Multicast Open Shortest Path First (MOSPF). In
  209. order to make the overall network function, many knowledgeable IETF people
  210. believe a routing protocol is needed that determines paths through the
  211. network within the context of a quality of service requirement.
  212.  
  213. 2. Scenarios
  214.  
  215. 2.1. Local, small scale, real-time simulation.
  216.  
  217. A dedicated 10 megabit/second Ethernet 10Base-T Local Area Network (LAN)
  218. has been established for a 200 entity exercise. The simulation platforms
  219. are Silicon Graphics (SGI) Indigo 2 Extremes running IRIX 5.3, SGI Maximum
  220. Impacts, and SUN Solaris 5.4 SPARC Ultra UNIX workstations. Three
  221. stand-alone hosts running an embedded real-time operating system are
  222. functioning as high speed aircraft simulators. The aircraft simulators
  223. provide high resolution out-the- window views of the virtual world. All
  224. simulations are using the IEEE 1278.1 protocol for entity to entity
  225. interaction. Primary entity information is being passed as UDP/IP datagrams
  226. via the UNIX UDP port 3000. All simulation hosts are located on the same
  227. subnetwork on the LAN. All simulations are using a 20 X 20 kilometer
  228. terrain database so as to orient in a common virtual world.
  229.  
  230. All UNIX workstations are configured with Internet Group Management
  231. Protocol (IGMP) and all simulations are using static IP multicast. No
  232. reliability via retransmissions is provided at the network transport
  233. protocol level as no standard for reliable multicast has yet been adopted
  234. by the community [3]. A small number of predefined multicast groups are
  235. being used to delineate network traffic to interested users. These groups
  236. do not change during the course of the exercise. As in typical DIS
  237. scenarios, all simulation applications are acting like senders and
  238. receivers. Some simulation applications emit multiple entities (up to 40)
  239. while others are responsible for only a single entity's behavior.
  240.  
  241. The majority of entities are low speed ground vehicles transmitting IEEE
  242. 1278.1 Entity State packets of 1152 bits at an average of two packets per
  243. second. These ground entities are controlled by a rule based system that
  244. mimics behavior of transportation on four of the SGI simulation hosts. One
  245. of the rule-based simulation applications is generating six high speed
  246. rotary wing aircraft generating on average six Entity State packets per
  247. second. Occasionally, these rotary wing entities emit bursts of 704 bit
  248. Fire packets with subsequent emission of 832 bit Detonation packets (on the
  249. order of 20 to 100 packets a second for both Detonation and Fire). All
  250. Entity state based information must arrive at all the designated receivers
  251. at the 100 millisecond constraint to remain real-time.
  252.  
  253. The three high speed aircraft simulation emit from 5 to 10 Entity State
  254. packets per second. Additionally, the aircraft are using experimental radio
  255. communication bit stream packets for transmitting voice between the users.
  256. Pregenerated background voice traffic is being transmitted along with the
  257. pilot communications. An air-borne control aircraft simulation transmitting
  258. voice to the pilots is also issuing voice bit stream packets. These packets
  259. are on the order of several hundred bytes and are randomly dispersed
  260. through the exercise with occasional bursting. To limit the impact of the
  261. voice traffic on simulation applications that cannot process such traffic,
  262. a predefined static multicast group is used for all voice communications.
  263.  
  264. One of the simulation applications provides weather changes to exercise
  265. participants via a predefined static multicast group. Due to the very large
  266. size of the precipitation and wind data (five megabits), the transmitting
  267. applications fragment the data into manageable packet sizes (i.e., up to
  268. the Ethernet datalink size limitation). Receiving applications reassemble
  269. the packets into the formats needed by the simulation. The weather data
  270. need only arrive at the specified users host at 10 minute intervals to
  271. remain real-time.
  272.  
  273. The scenario is periodically compromised when the network traffic exceeds
  274. the 10 megabit/second rate. This usually occurs when the radio and weather
  275. packets and detonations are all simultaneously occurring. Other loss of
  276. network information occurs when the host receiver buffers get overloaded
  277. and drop packets when receiving bursts of voice and weather data
  278. simultaneously. Exercises that experience such loss are considered invalid
  279. and are replayed.
  280.  
  281. 2.2. Synthetic Theater of War (STOW)
  282.  
  283. The Defense Advanced Research Projects Agency (DARPA) is funding the
  284. expansion of the simulation in scenario one above to a much larger scale.
  285. The original goal of the STOW program was to demonstrate in real time the
  286. simulated interaction of 100,000 or more entities via applications at 50 or
  287. more sites. The general purpose is to rehearse theater level military
  288. operations using actual players. Budget and other constraints have reduced
  289. the goals of the demonstration significantly. However the techniques,
  290. technology, and architecture used in the demonstrations must show that they
  291. will support simulations of larger scale.
  292.  
  293. The STOW program started with the IEEE 1278.1 message based protocol for
  294. the exchange of data but is shifting to a new approach being developed by
  295. the Defense Modeling and Simulation Office (DMSO), called the High Level
  296. Architecture (HLA). The HLA moves the interface from the messages to an API
  297. that resides between the simulation applications and a layer of standard
  298. services called the Runtime Infrastructure (RTI). The RTI itself is
  299. distributed. Parts of it reside with each application and parts of it may
  300. reside in processors dedicated to providing RTI functions.
  301.  
  302. The RTI services include the exchange of simulation data between the
  303. applications. The mechanism employed is an object request broker (ORB) that
  304. sets up communications channels between publishers and subscribers.
  305. Whenever a publishing application updates an attribute the RTI moves it to
  306. the subscribing application(s). The RTI relies on standard UDP/IP services
  307. to move the data. The HLA publish/subscribe mechanism is quite
  308. sophisticated and allows subscriptions based on the values of attributes
  309. (e.g. give me the location of all air vehicles within sector x). The RTI
  310. determines the flow of data based on the publications/subscriptions and
  311. establishes data channels via multicast addresses that carry the flow from
  312. senders to groups of receivers. As the values change on which the
  313. subscriptions are based, the membership of the multicast address based on
  314. that value range must also change. This change must occur rapidly if the
  315. data flow is to remain correct and the simulation is to remain valid.
  316.  
  317. Although the ORB used by the HLA RTI is different from the message based
  318. protocol used in older simulations, the fundamental multicast address
  319. requirements will not change. As long as the data sources, the
  320. destinations, and circumstances under which the data flow remain the same,
  321. the multicast service requirements will remain the same.
  322.  
  323. 2.3. VR on the Internet
  324.  
  325. Phase I -- You are interested in cathedrals and you have chosen that
  326. subject for the paper you have to present next week in your European
  327. history class. You jump into the WWW with your favorite browser and ask
  328. Lycos to find you something about cathedrals. In a few seconds it comes
  329. back with a list of several hundred articles. You click on one that
  330. promises exciting pictures. The view of the front of Chartres that fills
  331. your 20" monitor is just amazing. The spires, the arches, the detail look
  332. almost real. You zoom in on the entrance but the detail disappears into
  333. blocks of pixels.
  334.  
  335. This is the state of the WWW today. It provides you copies of two dimension
  336. representations that someone else has created and put onto the web for you
  337. to fetch.
  338.  
  339. Phase II -- You are again looking at the image of Chartres. Only this time
  340. you click on a "move forward" control. The entrance gets larger. The detail
  341. of the doors comes into view. As you approach the doors swing open and you
  342. enter. The vaulted ceiling and stained glass windows are magnificent. You
  343. look right and left. You move about the interior and examine the detail.
  344.  
  345. This is the state of the WWW tomorrow morning. That is, the capability of
  346. representing an object on the WWW in three dimensions, viewing that object
  347. from any point in space, along with simple animations (doors opening on
  348. approach) is available on a few WWW servers and browsers using the Virtual
  349. Reality Modeling Language (VRML).
  350.  
  351. Phase III -- You turn back to the altar. Now see and hear a priest saying
  352. mass. He stops and turns to the choir. You hear the strains of a familiar
  353. hymn. You look at the choir. They look quite real. The quality of their
  354. voices convinces you that they are not a professional group. One of them
  355. turns to you and beckons. You move toward them and take a spot in the front
  356. row. You begin singing into the microphone attached to your computer. Your
  357. voice is combined with theirs' and is heard by the priest, the other
  358. members of the choir and a few people you notice in the pews.
  359.  
  360. This is the state of the WWW the day after tomorrow where individuals will
  361. be able to share common virtual environments. In these shared environments
  362. individuals will be represented by what the industry is calling "avatars".
  363. Such avatars will be under the direct control of the real person they
  364. represent. For an excellent extrapolation of where this concept might go,
  365. read Neal Shephenson's "Snowcrash."
  366.  
  367. Although such shared virtual environments are not simulations in the
  368. classic sense, they have many of the same requirements of the supporting
  369. communications structure. That is, they are very similar MC requirements.
  370.  
  371. 2.4. Recreations of Historic Battles
  372.  
  373. The year is 2010 or thereabout. The world's major powers have been at peace
  374. since the resolution of the Balkans conflict in 1997. Several generations
  375. have grown up without the taste of battle. But there is something in the
  376. psyche of these generations that yearns for the excitement of engaging an
  377. enemy with skill and determination, but without the shedding of their own
  378. blood. This yearning has been behind the development of more and more
  379. realistic real time simulations. It has culminated in the simulated
  380. recreation of historic battles on a grand scale.
  381.  
  382. A culture has grown up around these simulations. Above all they strive for
  383. historic accuracy. The simulated planes, ships, tanks, horses, and weapons
  384. have the same capabilities as the original. Logistics, planning, and
  385. initial conditions are the same. The participants are trained to the same
  386. point as their original counterparts. They are tested and qualified before
  387. they can participate. Some take on the names and habits of real characters.
  388. Many assemble at annual conventions to exchange tales and see the latest in
  389. simulation equipment.
  390.  
  391. These simulations have become a very popular spectator sport. Millions of
  392. viewers watch the battles unfold from any vantage point that they choose.
  393. They can go into the command centers. They can tether themselves to any
  394. participant and see and hear what he sees and hears. They can tune in to
  395. various commentators in different languages for an explanation or critique
  396. of what is going on at various points. The recreations are both scheduled
  397. and reported on the popular net sport pages.
  398.  
  399. The scenario described below is the recreation of a series of B-17 raids
  400. that the US Eighth Air Force made over Europe in 1943. These raids were
  401. fiercely and effectively defended by the Luftwaffe and German anti-aircraft
  402. artillery (the dreaded flak).
  403.  
  404. The participants are a mix of humans and software models. The humans tend
  405. to take the more interesting roles. The software models are sophisticated
  406. enough that they cannot be easily distinguished from human participants.
  407. Total number of participants roughly corresponds to the number of
  408. participants in the original battle and varies between 100,000 and 500,000.
  409. Number of spectators ranges in the tens of millions and is governed by the
  410. factors that control the watching of any sport.
  411.  
  412. The simulation equipment ranges from simple VR goggles to elaborate
  413. cockpits and gun turrets with sophisticated motion and sound cuing. All
  414. simulations share visual cues that are indistinguishable from what the
  415. unaided eye can see. The participants own or rent the hardware and
  416. software. As with any avocation the cost varies depending on taste and
  417. finances. Participation is not governed by cost but by the dedication and
  418. capability of individuals.
  419.  
  420. The participants and spectators are located throughout the world and are
  421. connected on a virtual net that reaches into each participant's and
  422. spectator's home. Crew station simulations that are part of one simulated
  423. platform (e.g. a single B-17) are themselves distributed.
  424.  
  425. Sophisticated multicasting schemes, clever interest management algorithms,
  426. and simulation tricks have effectively removed any limits to the potential
  427. scale of distributed simulations. Local bandwidth limitations sometimes
  428. restrict what a spectator can see. Dropped packets and latency spikes
  429. occasionally cause anomalies, but they are seldom serious enough to effect
  430. the outcome of the simulation.
  431.  
  432. References:
  433.  
  434. [1] IEEE Standard for Information Technology - Protocols for distributed
  435. interactive simulation Applications, IEEE Std. 1278-1993.
  436.  
  437. [2] http://www.herring.com/mag/issue30/games.html
  438.  
  439. [3] http://www.tascnets.com/mist/doc/mcpCompare.html
  440.  
  441. [4] Pullen, J.,  M. Myjak and C. Bouwens, "Limitations of The Internet
  442. Protocol Suite for Distributed Simulation in the Large Multicast
  443. Environment", IETF Large Scale Multicast Applications Working Group,
  444. draft-ietf-lsma-scenarios-xx.txt, work in progress.
  445.  
  446. Steve Seidensticker    |Internet:   seiden@netcom.com
  447. 2223 Commonwealth Ave  |Voice+fax:  619/284-3006
  448. San Diego CA 92104     |Alternate:  619/283-2849
  449.  
  450.  
  451.