Chris Faisstnauer



In this paper a sample of different network-based Virtual Environments and Virtual-Environment-like applications is presented. The emphasis is put on the properties of the network protocols employed and the problems that arise for the specific applications.
The most crucial problem is the limited bandwidth of the Internet, which claims for highly optimized network protocols. However, this often leads to domain specific protocols, making a standardization of the internet difficult. This paper describes "DIS", the currently most important military/industrial network protocol for Distributed Virtual Environments, as well as some ad-hoc protocols usually not mentioned in scientific reports, like the ones used by "Quake", "Alphaworld" or "CitySpace".


With the boom of the Internet during the last years, the number of Internet users has grown almost exponentially, as well as the number of available applications.
While at first the Internet was introduced to exchange simple messages, the usefulness of browsers capable of transmitting graphics and sounds was discovered very soon. With the development of distributed Virtual-Reality or Virtual-Environment-applications, where users should be able to navigate avatars through a virtual world stored on geographically distant sites, the amount of data to be transmitted over the Internet has grown to significant proportions. The popularity of network-capacle Virtual-Reality-like games (e.g. Doom or Quake) also plays a considerable role.
The growing number of network based applications has soon shown the bandwidth limits of the Internet, leading often to inacceptable delay times. This underlines the importance of efficient network protocols for the exchange of data among different sites.
In this paper a sample of Virtual Environments and Virtual-Environment-like applications will be presented, with emphasis on the network protocols employed and the difficulties encountered.


One of the most heavily researched network protocols is the "Distributed Interactive Simulations - protocol", also called DIS -protocol, approved as IEEE-1278 standard protocol.
The development of the DIS-protocol was initiated in 1989 by the United States Department of Defense (DoD), as a replacement for the previously used SIMNET-protocol. The purpose of this protocol is to allow the connection of geographically distant computer-driven and human-driven simulators for

As these simulations are military, the entities (the participating simulators are called that way) are e.g. tanks, airplanes or air-defense units; the Environment must have a notion of "time-of-day" (to simulate dawn- or nighttime missions), "ambient temperatore" (for 3D spectral rendering), and "wind directions" for a realistic representation of battlefield smoke.

To meet these requirements, the DIS-Protocol uses a set of specialized PDUs (Protocol Data Units), the most important being:

The DIS-protocol follows the so called "distributed-approach", where every simulator that wants to join the (Virtual) Environment has to locally store a description of the whole Environment and of every entity present, in its memory. This is memory consuming, but allows to apply a technique called "dead reckoning":
In dead reckoning, each site computes the current position and orientation for its own vehicles based on their simulation algorithms; position and orientation of the remote vehicles is approximated based on the past position, orientation and time derivates of position and orientation stored for these entities.
However, such an approximation is also performed for ones own entities, and when the difference between the appoximated values and the simulation-computed ones exceeds a certain threshold, an Entity-State-PDU is sent to all other sites, to allow them to calculate a correct approximation for the vehicles of this site.

Related publication: Large Scale Distributed Multiuser Virtual Environments.

In 1992, the Advanced Research Project Agency (ARPA) startet a project called "WarBreaker" , which is considered the state-of-the-art, to evaluate the old SIMNET and the DIS-protocol. During the tests recently developed computer-driven and manned simulators were integrated.

While the limit of the SIMNET protocol were 200 entities, the DIS-protocol supported up to 5400 entities, although the goal was to support 8000 entities. Nevertheless (in 1993) this was a world record for the highest number of entities working in a true Virtual Environment rather than a simple network loading experiment.
These tests showed that the bulk of the network load consisted of Entity-State PDU's, as many simulated vehicles were highly dynamic (such as jets) and performed high speed maneuvers, thus changing state very rapidly and flooting the Internet with Entity-State PDUs.
Another problem concerned the determinition of munition hitting an entity. Missiles with a lock on a target had to deal with erroneous positional information about the targetted vehicle, if it was a remote one, which showed to be problematic in close air-to-air combat (missiles, which in reality would have hit, missed the target).
A further problem concerned the "indirect fire", which is weapons fire directed at no particular entity. While the triggering of a target-locked weapon concerned only the collisition-detection between the munition and the targetted entity, the "indirect-fire"-PDU had to be checked against all other entities in order to determine if the munition hit one of them.

MÄK Industries, a company which decided to become a provider of DIS-Protocol software, proposed solutions for some of these problems by introducing concepts not present in DIS:

DIS is being adopted by a continuously growing number of companies, so toolkit libraries to ease the development of Virtual-Environment simulation software have become available.
Just to pick out some examples:


Another network-protocol that is currently being used by a high number of users comes from the entertainment domain: it is the protocol used by "Quake", a Virtual-Reality-like Run-and-Shoot game.
Quake puts the participating users in a dungeon-like Environment called "map", where they can control a user avatar to engage in fights against other human-driven avatars. The network protocol implemented allows users to connect their computers to any server, which sets up such a map, thus allowing the geographically distant users to play together (or better: fight against each other) in this common Environment.
The network protocol has the task to provide a fast information exchange between the server and the connected clients, to allow smooth gaming. As the number of exchanged messages is very high, efficient data packets are of crucial importance.
The Quake network protocol has two types of messages:
CONTROL-PDUs contain a message-type-identifier, a variable-length message and the length of the whole PDU. The message consists of a single-byte code, followed by code-dependent informations.
The most important Control-codes are called:
GAME-PDU: once the game has started, instead of Control-PDUs smaller Game-PDUs are transmitted in an unreliable mode (UDP), so no acknowledgements are required. This allows faster interaction between server and client.
Like Control-PDUs, Game-PDUs consist of a message-type-identifier, the length of the whole PDU and a message; the latter consists of one or more codes, followed by code-depentent information. The most important Game-codes are:
Unfortunately, if the distance between server and clients is high, and many users are connected, the ping times can easily make the game unplayable. In face, by analyzing the average ping-times reported by Quake-players using a 28.8k modem, specifications range from 170 to 300 milliseconds; when using a slower connection even more than 500 milliseconds, up to 1 or 2 seconds. Only by using ISDN or cable-modems, average ping times ranged between 75 and 100 milliseconds. Another problem encountered is the number of simultaneously supported players in one environment; many users reported that often less than 10 of the (theoretical) 16 simultaneous users could be achieved, because of overloading of the network-manager.


"Alphaworld" and "Cityspace" are other two applications that want to allow the user to navigate through a Virtual Environment; however they can only be defined as Virtual-Environment-like applications, because they are a sort of WorldWideWeb-browsers capable of displaying an "out-of-the-window-view" of a Virtual World.


It can be seen that the number of applications to access networked Virtual Environments, or to combine Virtual-Environments and the Internet, is continuously growing (however the definition of "Virtual Environment" is not very clear and the distinction between "Virtual Environent"-applications and "Virtual Environment-like" applications is not well defined).
The increasing number of Internet users has lead to serious bandwidth problems concerning most of the network applications.Virtual Environments using own, dedicated networks do not have such serious problems; however the necessity for using highly application-specific protocols to best exploit the disponible bandwidth can be stated in most applications.
"Quake" (played over the Internet) and "DIS"-simulators (usually using dedicated military networks) both use their own, domain specific protocols that cannot be used for a general "multi-purpose" Virtual Environment.
Many problems that arise when trying to allow a large number of users to simultaneously navigate and interact in wide area networks are still being researched, and only few succesful efforts to make network standards for Virtual Environments can currently be found.
Nevertheless this is one of the most heavily researched fields in the last years, and the number of VR network protocols is supposed to grow rapidly.

Have a look at my homepage


DIS and related topics

ARPA WarBreaker:




Zurück zur Virtual Reality Seminar Page.