RFC 2502

Limitations of Internet Protocol Suite for Distributed Simulation the Large Multicast Environment

๐Ÿ“… published February 1999, from ietf

RFC 2502 ๐ŸŽ€ Limitations of Internet Protocol Suite for Distributed Simulation in the Large Multicast Environment

Okay so this one is from February 1999 and it's filed under the Network Working Group ๐Ÿ’–. The authors are M. Pullen (George Mason University), M. Myjak (The Virtual Workshop), and C. Bouwens (SAIC). It's Informational, so it's giving "here's some useful info" energy, not a standard ๐Ÿซถ. The header doesn't list anything it obsoletes or updates, so it's standing on its own โœจ.

Status of this Memo โœจ

This memo gives information to the Internet community ๐ŸŒธ. It is not an Internet standard of any kind, and it can be shared freely with no limits ๐Ÿฆ‹.

Copyright (C) The Internet Society (1999). All Rights Reserved. ๐Ÿ’œ

Abstract ๐Ÿ”ฅ

Bestie, the Large-Scale Multicast Applications (LSMA) working group was chartered to help build Internet protocols for large multicast apps, including real-time distributed simulation, through consensus-based development ๐Ÿงš. This memo spells out the services LSMA found to be required, plus the parts of the Internet protocols that LSMA found need more development to meet those requirements ๐Ÿ’….


1. The Large Multicast Environment โœจ

The Large-Scale Multicast Applications working group (LSMA) was formed to build a consensus-based set of requirements for Internet Protocols so they can support Distributed Interactive Simulation (DIS) [DIS94], its successor the High Level Architecture for simulation (HLA) [DMSO96], and related apps ๐ŸŽ€. These apps need to distribute real-time data across a shared wide area network in a scalable way. We're talking a few hosts up to tens of thousands, all swapping state data fast enough and reliably enough to keep a three-dimensional virtual, visual environment with tons of moving objects feeling alive ๐Ÿคฏ. The network running something like this has to be capable of multicast [IEEE95a,IEEE95b] ๐Ÿ’œ.

Distributed Interactive Simulation is a whole family of protocols used to trade information about a virtual environment between hosts in a distributed system, where each host is simulating how objects in that environment behave ๐Ÿฆ‹. The objects can physically interact and sense each other visually and other ways (infrared, etc.) ๐Ÿ‘€. DIS was built by the U.S. Department of Defense (DoD) for military training, rehearsal, and other purposes. You can find more on DIS in [SSM96] ๐Ÿซถ.

Here's what really drives the network requirements: distributed simulation is meant to work with humans, sending output to them and taking input from them across distributed simulators in real time ๐Ÿ˜ญ. That means latency between hosts has to be super tight ๐Ÿ’…. Any practical network also has to do multicasting so all the data reaches all the participating simulators ๐Ÿ”ฅ. Big distributed simulations are expected to group hosts into multicast groups based on who shares the same sensor inputs in the virtual environment โœจ. That can mean needing thousands of multicast groups, with objects hopping between groups in big numbers at high rates ๐ŸŒˆ. Since the number of simulators is known ahead of time, and their max output rate (in packets per second and bits per second) is specified, the overall total data rate (the sum of all multicast groups) is bounded ๐Ÿ“. But the data rate in any one particular group can't be predicted, and it can change pretty quickly during the simulation ๐Ÿ™ˆ.

DIS real-time flow is made of packets around 2000 bits long, sent at rates from .2 packets per second per simulator up to 15 packets per second per simulator ๐Ÿ’–. This info is deliberately redundant and usually goes over a best-effort transport protocol (UDP) ๐ŸŽ€. Sometimes it's also compressed ๐Ÿงš. The accuracy needed for latency and for physical simulation depends on what the simulation is for, but it generally has to be at least enough to satisfy human perception ๐Ÿ‘‘. For example, in tightly coupled simulations like high-performance aircraft, the max acceptable latency is 100 milliseconds between any two hosts โญ. Every so often, events (e.g. collisions) can happen that need some data sent reliably, on a unicast basis, to any other host in the system ๐Ÿ’€.

The U.S. DoD has a goal to build distributed simulation systems with up to 100,000 simulated objects ๐Ÿซถ. Lots of those objects are computer generated forces that run with minimal human involvement, acting as an opposing force or simulating friendly forces that aren't available to participate ๐Ÿ”ฅ. DoD would like to run these simulations over a shared WAN ๐Ÿ’…. Beyond DoD, lots of people think distributed simulation could get commercialized as entertainment ๐ŸŒธ. How big an entertainment system could get is hard to predict, but it could conceivably go past the DoD goal of 100,000 ๐Ÿ˜ฑ.

The High Level Architecture (HLA) is a DoD development that goes beyond DIS, aiming to bring DIS and other kinds of distributed simulation into one unifying system paradigm ๐Ÿ’œ. From a distributed systems standpoint, HLA is way more sophisticated than DIS ๐Ÿ‘‘. For instance, attributes of distributed objects may be controlled by different simulators โœจ. From the supporting network's point of view, the main difference is that HLA doesn't call for redundant transmission of object attributes ๐ŸŒˆ. Instead, it specifies a "Run Time Infrastructure" (RTI) that's responsible for transmitting data reliably, and the RTI may choose to do that in different ways, including redundant transmission over best-effort protocols ๐Ÿฆ‹. It's fair to say any network that can meet DIS's needs can support HLA using DIS-like redundant transmission. But that approach ignores the possibility that, under HLA, a mix of redundant and reliable transmission can make way better use of network resources than DIS can ๐Ÿงš. Even though HLA, like DIS, doesn't specify a multicasting network, it has similar requirements for many-to-many transmission of object attributes at rates over one update per object per second, and those can't be met without multicasting ๐Ÿ”ฅ. HLA also calls for transmitting semantically organized data (for example, groups of objects with similar capabilities, like tanks or aircraft) in this many-to-many context ๐Ÿ’–.

One solution people have used for these challenges is to aggregate the contents of many multicast groups into a single multicast transmission [PuWh95, CSTH95] ๐ŸŽ€. Called "dual-mode" or "bi-level" multicast, this takes advantage of the fact that even though the traffic in any one multicast group can vary a lot, the aggregate of all transmissions is bounded ๐Ÿ“. If all the traffic is aggregated into one large flow, an underlying ATM network can create multicast SVCs with acceptable QoS to support the requirement ๐Ÿ’…. It also limits the network control problem of group joins, since the joins happen among dedicated collections of routers and across the dedicated SVCs, instead of competing with other LSMAs that might share the same network ๐ŸŒธ. But it does all this at the cost of adding a new, nonstandard aggregation element to the network that's a hybrid of the Internet and ATM protocols ๐Ÿ™ˆ. Below, we address the requirement to get this same result using a purely IP network with aggregated reservation via RSVP โœจ.

The defense distributed simulation community has built a bunch of multicast-capable networks for different simulated exercises ๐Ÿซถ. These ranged from tens to hundreds of simulated objects, spread across anywhere from two to twenty sites ๐Ÿงš. As the number of objects grew, they found that building multicasting networks that could potentially support thousands of simultaneous multicast groups with large group change rates is a hard problem ๐Ÿ˜ญ. This defense problem comes before similar problems we can expect in commercial networks ๐Ÿ‘‘. So the sections below describe the services required, and the shortcomings found when using today's Internet protocols to provide them. The goal is to inform the IETF so it can produce protocols that meet the needs in these areas ๐Ÿ’œ๐Ÿฆ‹.

2. Distributed Simulation (DIS and HLA) network service requirements. ๐ŸŒˆ

  • a. real-time packet delivery, with low packet loss (less than 2%), predictable latency on the order of a few hundred milliseconds, after buffering to account for jitter (variation of latency) such that less than 2% of packets fail to arrive within the specified latency, in a shared network ๐Ÿ”ฅ
  • b. multicasting with thousands of multicast groups that can support join latencies of less than one second, at rates of hundreds of joins per second ๐Ÿ“
  • c. multicasting using a many-to-many paradigm in which 90% or more of the group members act as receivers and senders within any given multicast group ๐Ÿ™ˆ
  • d. support for resource reservation; because of the impracticality of over-provisioning the WAN and the LAN for large distributed simulations, it is important to be able to reserve an overall capacity that can be dynamically allocated among the multicast groups ๐Ÿ’…
  • e. support for a mixture of best-effort and reliable low-latency multicast transport, where best-effort predominates in the mixture, and the participants in the reliable multicast may be distributed across any portion of the network ๐ŸŒธ
  • f. support for secure networking, in the form of per-packet encryption and authentication needed for classified military simulations ๐Ÿ”

3. Internet Protocol Suite facilities needed and not yet available for large-scale distributed simulation in shared networks ๐Ÿงš

These derive from the need for real-time multicast with established quality of service in a shared network. (Implementation questions are not included in this discussion. For example, it is not clear that implementations of IP multicast exist that will support the required scale of multicast group changes for LSMA, but that appears to be a question of implementation, not a limitation of IP multicast.) โœจ

3.1. Large-scale resource reservation in shared networks โœจ

Okay bestie, so the Resource reSerVation Protocol (RSVP) is all about setting up flow-based info for managing information flows at pre-committed performance levels ๐Ÿ’…. Everyone agrees real-time systems like the HLA RTI need this, but people have raised concerns about whether RSVP can scale ๐Ÿ˜ฌ and whether it can handle highly dynamic flow control changes.

Here's the tea ๐Ÿซ–: for existing RTI capabilities, LSMA needs rapid change of group membership, not rapid change of group reservations. Why? Because in existing RTIs, the aggregate requirement for all groups in a large scale distributed simulation is static ๐ŸงŠ. BUT the current RSVP draft standard for LSMA doesn't support aggregating reservation resources for groups of flows, so it doesn't meet what existing RTIs need. Plus, at least one RTI development is underway that wants individual, dynamic reservations for large numbers of groups ๐Ÿ‘€. That means we'll need a dynamic resource reservation capability that scales to thousands of multicast groups ๐Ÿ”ฅ.

Also, RSVP only handles communicating the specs of the required information flows between simulators and the network, and within the network ๐Ÿ›œ. Distributing routing information among routers is a totally different job, handled by routing protocols like Multicast Open Shortest Path First (MOSPF) ๐Ÿ—บ๏ธ. So for effective resource reservation in a large shared network, we might need a routing protocol that picks paths within the context of a quality of service requirement โœจ. One example is the proposed Quality Of Service Path First (QOSPF) routing protocol [ZSSC97]. The catch? Defining that resource-sensitive routing requirement will be tough before LSMA networks are actually deployed with RSVP ๐Ÿ˜ญ.

Multicast is so efficient because the network can recognize and copy information packets destined for a group of locations ๐Ÿคฏ. The network takes on the job of making duplicate copies for all destinations, which greatly cuts down the amount of info flowing into and through the network. It's giving efficiency ๐Ÿ’–.

When IP multicast runs over Ethernet, packets get transmitted once and every receiver picks them up using Ethernet-layer multicast addressing, so there's no packet replication needed ๐Ÿ™Œ. But with wide-area Asynchronous Transfer Mode (ATM), you can't yet take advantage of data link layer multicast beyond a single Logical IP Subnet (LIS) ๐Ÿ’€. This seems to happen for two reasons: (1) the switching models of IP and ATM are different enough that fixing it would need a pretty complex solution, and (2) nobody has shown a clear application requirement for IP multicast over ATM multicast that provides packet replication across multiple LIS. Distributed simulation is literally an application with that requirement ๐ŸŽ€.

3.3. Hybrid transmission of best-effort and reliable multicast ๐ŸŒˆ

In general, the Internet protocol suite uses the Transmission Control Protocol (TCP) for reliable end-to-end transport, and the User Datagram Protocol (UDP) for best-effort end-to-end transport, including all multicast transport services ๐Ÿงš. TCP can only do unicast, which is a bummer for us ๐Ÿ˜ค.

The IETF has seen proposals for several reliable multicast transport protocols lately (see [Mont97] for a summary) ๐Ÿ“š. The big issue is the congestion problem tied to delivery acknowledgments, which has made real-time reliable multicast transport infeasible up to now ๐Ÿ™ˆ. Out of roughly 15 attempts to build a reliable multicast transport, every single one had some problem with positive receipt acknowledgments (ACK) or negative acknowledgments (NAK) ๐Ÿ’…. Honestly, it seems clear there won't be one single solution for reliable multicast, just a bunch of solutions tailored to different application domains ๐Ÿ“. Approaches using distributed logging seem especially promising for distributed simulation ๐Ÿ”ฅ.

In the DIS/HLA environment, five different transmission needs can be identified:

  1. Best-effort low-latency multicast of object attributes that often change continuously, for example position of mobile objects ๐Ÿƒโ€โ™€๏ธ
  2. Low-latency reliable multicast of object attributes that don't change continuously but may change at arbitrary times during the simulation, for example object appearance (The important thing about this category is that the receiver only needs the latest value of any attribute โœจ.)
  3. Low-latency, reliable unicast of occasional data among arbitrary members of the multicast group (This form of transmission was specified for DIS "collisions" ๐Ÿ’ฅ. It's not in the current HLA specification, but it might be a good idea to include it there. The requirement is occasional transaction-like exchange of data between two arbitrary hosts in the multicast group, with low latency that makes TCP connections impractical ๐Ÿ™…โ€โ™€๏ธ.)
  4. Reliable but not necessarily real-time multicast distribution of supporting bulk data, such as terrain databases and object enumerations ๐Ÿ—‚๏ธ; and
  5. Reliable unicast of control information between individual RTI components (this one is met by TCP ๐Ÿ’œ).

All of these transmissions happen inside the same large-scale multicasting environment ๐ŸŒธ. The idea of integrating categories (1) and (2) into a single selectively reliable protocol was proposed by Cohen [Cohe94] ๐Ÿ’ก. Pullen and Laviano implemented that concept [PuLa95] and demonstrated it within the HLA framework [PLM97] as the Selectively Reliable Transmission Protocol (SRTP) for categories (1) through (3) ๐Ÿฆ‹. Category (4) could be handled by a reliable multicast protocol like the commercial multicast FTP offering from Starburst [MRTW97], but adequate congestion control hasn't been demonstrated in any such protocol yet ๐Ÿ˜ฌ. People have also talked about using the Real-Time Streaming Protocol (RTSP) for this, but since the databases must be transmitted reliably and RTSP uses a best-effort model, it doesn't look applicable ๐Ÿ™ƒ.

So in summary, it's clear that a hybrid of best-effort and reliable multicast is needed to support DIS and HLA (not necessarily all in the same protocol), and that the low-latency, reliable part of this hybrid is not available in the Internet protocol suite ๐Ÿ’”.

3.4. Network management for distributed simulation systems ๐Ÿ› ๏ธ

Coordinated, integrated network management is one of the trickiest parts of a large distributed simulation exercise ๐Ÿ˜ตโ€๐Ÿ’ซ. The network management techniques that have successfully supported the growth of the Internet for the past several years could be expanded to fill this need ๐ŸŒ. The technique is based on a primitive called a Management Information Base (MIB) that gets polled periodically at very low data rates ๐Ÿ“Š. The receiver of the poll is called an Agent, and it's collocated with the remote process being monitored. The Agent is kept simple so it doesn't eat up lots of resources ๐Ÿซถ. The requesting process is called a Manager, and it's typically located elsewhere on a separate workstation ๐Ÿ–ฅ๏ธ. The Manager talks to all of the Agents in a given domain using the Simple Network Management Protocol (SNMP) ๐Ÿ“ก.

It seems SNMP is really well suited for distributed simulation management, on top of managing the underlying simulation network resources ๐Ÿ‘‘. Creating a standard distributed simulation MIB format would let the simulation community use the whole collection of powerful, off-the-shelf network management tools built around SNMP ๐Ÿงฐ. Iconic, honestly ๐ŸคŒ.

3.5. A session protocol to start, pause, and stop a distributed simulation exercise โฏ๏ธ

Coordinating the start, stop, and pause of large distributed exercises is a complex and difficult task ๐Ÿ˜ฉ. The Session Initiation Protocol (SIP), recently proposed by the Multiparty Multimedia Session Control (MMUSIC) working group, does something similar for managing large scale multimedia conferences ๐ŸŽค. As proposed, SIP seems to offer enough extensibility to be used for exercise session control, if it gets standardized by the IETF ๐Ÿฅบ.

3.6. An integrated security architecture ๐Ÿ”

It looks like this requirement will be met by IPv6 deployment ๐ŸŽ‰. One shortcoming of the current Internet Protocol (IPv4) implementation is the lack of integrated security ๐Ÿ˜ค. The new IPv6 protocol requires implementers to follow an integrated security architecture that provides the required integrity, authenticity, and confidentiality for use of the Internet by communities with stringent security demands, such as the financial community ๐Ÿ’ฐ. The possibility that the IPv6 security architecture could meet military needs, when combined either with military cryptography or government-certified commercial cryptography, is worth further study ๐Ÿง.

3.7. Low-latency multicast naming service ๐Ÿท๏ธ

Name-to-address mapping on the Internet is done by the Domain Name Service (DNS) ๐Ÿ“–. DNS has a distributed architecture tuned for the needs of unicast networking with reliable transmission (TCP), and that's not considered a problem as long as its latency is on the order of a second or more ๐Ÿ‘. But distributed simulation needs agile movement among multicast groups, which implies a need for name-to-multicast-address mapping with latency under one second for name resolution and group join combined โšก. This problem has been worked around in military simulations by using group IP addresses rather than names ๐Ÿช–. Military simulations may be fine communicating with a known mapping from grid squares to multicast groups, but growth of distributed simulation into commercial entertainment can't be built on that simple capability ๐ŸŽฎ. Players in distributed entertainment simulations will want to be organized symbolically by virtual world and role ๐Ÿ’œ. So a low-latency multicast naming service will be required ๐Ÿ’….

3.8. Inter-Domain Multicast Routing for LSMA ๐ŸŒ

While military LSMAs typically take place within a single administrative domain, future entertainment LSMAs can be expected to involve heavy inter-domain multicast traffic, since players may be supported by multiple service providers ๐ŸŒˆ. Standardized protocols that can support large numbers of multicast flows across domain boundaries will be needed for this ๐Ÿซถ. Current work to create a Border Gateway Multicast Protocol (BGMP) shows promise of meeting that need โœจ.

4. References ๐Ÿ“š

okay bestie, here's the whole reading list โœจ every source this RFC leans on, so you can go dig if you're curious ๐Ÿซถ

  • [CSTH95] Calvin, J., et. al., "STOW Realtime Information Transfer and Networking Architecture," 12th DIS Workshop on Standards for the Interoperability Distributed Simulations, March 1995.
  • [Cohe94] Cohen, D., "Back to Basics," Proceedings of the 11th Workshop on Standards for Distributed Interactive Simulation, Orlando, FL, September 1994.
  • [DIS94] DIS Steering Committee, "The DIS Vision," Institute for Simulation and Training, University of Central Florida, May 1994.
  • [DMSO96] Defense Modeling and Simulation Office, High Level Architecture Rules Version 1.0, U.S. Department of Defense, August 1996.
  • [IEEE95a] IEEE 1278.1-1995, Standard for Distributed Interactive Simulation - Application Protocols
  • [IEEE95b] IEEE 1278.2-1995, Standard for Distributed Interactive Simulation - Communication services and Profiles
  • [MRTW97] Miller, K., et. al. "StarBurst Multicast File Transfer Protocol (MFTP) Specification", Work in Progress.
  • [Mont97] Montgomery, T., Reliable Multicast Links webpage, http://research.ivv.nasa.gov/RMP/links.html
  • [PuLa95] Pullen, M. and V. Laviano, "A Selectively Reliable Transport Protocol for Distributed Interactive Simulation", Proceedings of the 13th Workshop on Standards for Distributed Interactive Simulation, Orlando, FL, September 1995.
  • [PuWh95] Pullen, M. and E. White, "Dual-Mode Multicast: A New Multicasting Architecture for Distributed Interactive Simulation," 12th DIS Workshop on Standards for the Interoperability of Distributed Simulations, Orlando, FL, March 1995.
  • [PLM97] Pullen, M., Laviano, V. and M. Moreau, "Creating A Light-Weight RTI As An Evolution Of Dual-Mode Multicast Using Selectively Reliable Transmission," Proceedings of the Second Simulation Interoperability Workshop, Orlando, FL, September 1997.
  • [SPW94] Symington, S., Pullen, M. and D. Wood, "Modeling and Simulation Requirements for IPng", RFC 1667, August 1994.
  • [SSM96] Seidensticker, S., Smith, W. and M. Myjak, "Scenarios and Appropriate Protocols for Distributed Interactive Simulation", Work in Progress.
  • [ZSSC97] Zhang, Z., et. al., "Quality of Service Path First Routing Protocol", Work in Progress.

4. Security Considerations ๐Ÿ”

security is the big serious part, and it lives over in section 3.6 ๐Ÿ›ก๏ธ the security architecture stuff is where all the drama is, so go read that one with your full attention ๐Ÿ˜ญ


5. Authors' Addresses ๐Ÿก

here's where to find the authors, if you want to say hi ๐Ÿ’Œ

J. Mark Pullen
Computer Science/C3I Center
MS 4A5
George Mason University
Fairfax, VA 22032

EMail: mpullen@gmu.edu


Michael Myjak
The Virtual Workshop
P.O. Box 98
Titusville, FL 32781

EMail: mmyjak@virtualworkshop.com


Christina Bouwens
ASSET Group, SAIC Inc.
Orlando, FL

EMail: christina.bouwens@cpmx.mail.saic.com

Copyright (C) The Internet Society (1999). All Rights Reserved.

okay so the legal bit, but make it cute ๐ŸŽ€ anyone can copy and share this document, and can make derivative works that comment on it, explain it, or help people implement it, and they can publish and distribute those in whole or in part with no restriction, as long as the copyright notice and this paragraph stay on every copy and every derivative work. the document itself, though, can't be changed in any way, like taking out the copyright notice or the references to the Internet Society or other Internet organizations. the exceptions are developing Internet standards (in which case the copyright procedures in the Internet Standards process have to be followed) or translating it into languages other than English ๐ŸŒ

the permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns ๐Ÿ’œ

this document and the information in it is provided on an "AS IS" basis, and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ๐Ÿ’…

๐Ÿ“ฆ where this page comes from