Special Course on Networked Virtual January 23, 2004 Environments SIMNET SIMNET SIMNET NSA SIMNET NSA � � Technical Technical challenges challenges Basic components Basic components � how to fabricate high � how to fabricate high- -quality, low quality, low- -cost simulators cost simulators � � how to network them how to network them together to create a consistent battlefield together to create a consistent battlefield An object- -event architecture event architecture An object i. i. A notion of autonomous simulator nodes A notion of autonomous simulator nodes ii. ii. � � Testbed Testbed � 11 sites with � 11 sites with 50 50– –100 100 simulators at each site simulators at each site An embedded set of predictive An embedded set of predictive modelling modelling algorithms algorithms (i.e., (i.e., iii. iii. � a simulator � a simulator is is the portal to the synthetic environment the portal to the synthetic environment ‘dead reckoning’) ‘dead reckoning’) � participants � participants can interact/play with others can interact/play with others � � play was play was unscripted unscripted free play free play � � confined to confined to the chain the chain of command of command i. Object- -Event Event Architecture Architecture ii. Autonomous Simulator Nodes Simulator Nodes i. Object ii. Autonomous � Models Models the world as a collection of the world as a collection of objects objects � � � Individual players, vehicles, and weapon systems on the network Individual players, vehicles, and weapon systems on the network are are responsible responsible for transmitting for transmitting accurately accurately their current state their current state � � vehicles and weapon systems that can interact vehicles and weapon systems that can interact � Autonomous nodes do not interact with the recipients by any othe � Autonomous nodes do not interact with the recipients by any other way r way � a single object is usually managed by a single � a single object is usually managed by a single host host � ‘selective functional fidelity’ � ‘selective functional fidelity’ � Recipients are responsible for � Recipients are responsible for � Models Models interactions between objects as a interactions between objects as a � receiving state change information � receiving state change information � � making appropriate � making appropriate changes to their local model of the world changes to their local model of the world collection collection of of events events � Lack of a central server Lack of a central server � � � messages indicating a change in the world or object state messages indicating a change in the world or object state � single point � single point failures do not crash the whole simulation failures do not crash the whole simulation � � The basic terrain and structures are separate from the collectio The basic terrain and structures are separate from the collection n � players can join and leave at any � players can join and leave at any time (persistency) time (persistency) of objects of objects � Each node is responsible for one or more objects � Each node is responsible for one or more objects � if the structure can be destroyed then it has to be reclassified � if the structure can be destroyed then it has to be reclassified as an as an � the node � the node has to has to send send update packets update packets to to the network whenever its objects have the network whenever its objects have object, whose state whose state is continually transmitted onto the is continually transmitted onto the network network object, changed enough changed enough to notify the other nodes to notify the other nodes of the of the change change � a ‘heartbeat’ � a ‘heartbeat’ message, usually every 5 seconds message, usually every 5 seconds iii. Predictive Modelling Modelling Algorithms 1 (3) Algorithms 1 (3) iii. Predictive Modelling Modelling Algorithms 2 (3) Algorithms 2 (3) iii. Predictive iii. Predictive � � An embedded and well An embedded and well- -defined set of defined set of predictive predictive � � When new packets arrive, the ghost object is seen to move When new packets arrive, the ghost object is seen to move modelling algorithms algorithms called called dead dead reckoning reckoning over or back slightly modelling over or back slightly � Originally each change was reported Originally each change was reported � Larger Larger thresholds mean fewer packets but larger jumps thresholds mean fewer packets but larger jumps � � � � for some objects packets were generated as fast as possible for some objects packets were generated as fast as possible (i.e., at (i.e., at � � Helps also to cope with packet losses Helps also to cope with packet losses frame frame rate) rate) � � Current properties are good for prediction if the object does no Current properties are good for prediction if the object does not t � � flooded flooded the network and the network and overloaded overloaded the CPUs the CPUs move wildly move wildly � � Objects and ghosts Objects and ghosts paradigm to reduce the packet traffic: paradigm to reduce the packet traffic: � if � if it does, another packet is most likely it does, another packet is most likely to be received to be received soon soon � objects � objects place packets onto the network only when their home node place packets onto the network only when their home node � The heartbeat The heartbeat packets packets also update also update the object the object state state � determines that the others can determines that the others can no longer predict no longer predict their state within a their state within a certain threshold certain threshold � � the other the other nodes maintain nodes maintain ‘ghost’ ‘ghost’ copies copies � � predict predict the current the current location using location using the last the last known direction known direction, velocity, , velocity, and location and location Jouni Smed 1
More recommend