m s 08 data distribution i
TRANSCRIPT
![Page 1: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/1.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 1/18
Modeling & Simulation
Data Distribution I
![Page 2: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/2.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 2/18
Outline
• Fundamental concepts
– Name space
– Description expressions
– Interest expressions
• Example: HLA Declaration Management – Class-based filtering
![Page 3: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/3.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 3/18
Background• Basic question: When a simulator generates
information (e.g., state updates) that may be ofinterest to other simulators, who should receivethe message?
• SIMNET, DIS (initially)
– Broadcast
– Receiver based Filtering
– Not scalable: CPU, communication bottleneck
![Page 4: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/4.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 4/18
Data DistributionGoal: route data produced by one simulator to those
simulators that are interested in receiving it (andideally, not to simulators that are not interested inreceiving it)
This implies there is
• Some way for a simulator to specify what data it isinterested in receiving (interest expressions)
• Some way to describe the data that is produced(description expressions)
• A common language (vocabulary) to specifydescription and interest expressions (name space)
![Page 5: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/5.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 5/18
Example
Federate 1 Federate 2 Federate 3
Run Time Infrastructure (RTI)
I’m interested inthe position of aircraft
I’m interested inthe position of tanks
interest expressions
position update
for a tank object
description
expression
Name space: position, tank, aircraft
![Page 6: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/6.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 6/18
Analogy: Internet Newsgroups
• Description expression – name of newsgroup to which the message is posted
– pancake recipes posted to “comp.cooking”
• Interest expression
– set of newsgroups a user is subscribed to
– subscribe to “comp.cooking” and “comp.simulation”
• Name space
– newsgroup names
![Page 7: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/7.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 7/18
Name Space
• “Vocabulary” used to create
– Data description expressions
– Interest expressions
• Set of tuples (V1, V2, … VN) where Vi is a basic type oranother tuple
– Example: (class, location)• Class: enumerated type <tank, aircraft, ship>
• Location: tuple (int: X-coordinate, int: Y-coordinate), where 0 < X < 1000and 0 < Y < 1000
– Values in name space: (tank,(30,200)); (aircraft,(10,20))
– Values of the tuple space may correspond to• Actual data in message (e.g., values of object attributes), or
• New construct defined just for the purposes of routing data (HLA: routingspace regions; newsgroup name)
• May include static properties of objects (e.g., class names,attribute names) or dynamic properties (attribute values)
![Page 8: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/8.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 8/18
Interest & Description Expressions
• Interest expression: subset of name space
– Interested in all aircraft
• (aircraft, (X, Y)) for any X and any Y
– Interested in tanks that are “close by”
• (tank, (X, Y)) where 10 < X < 20, and 130 < Y < 150
• Description expression: subset of the namespace
– (tank, (15, 135))
– (aircraft, (X, Y)) where 35 < X < 38 and 98 < Y < 100• Data routing
– A simulator receives a message if the message’sdescription expression overlaps with the simulator’s
interest expressions
![Page 9: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/9.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 9/18
Name space
(all possible tuple values)
Data Distribution Concepts
Interest expressions, Simulator 1
Interest expressions, Simulator 2
Description expression for a message
The message is routed toSimulator 2, but not toSimulator 1.
![Page 10: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/10.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 10/18
Static vs. Dynamic Data Distribution• Static Data Distribution
– Name space only includes static properties that do notchange during the execution
– Example: Declaration Management in the HLA
• Class-based data distribution
• Subscribe to the position attribute of all objects of class tank
• Dynamic Data Distribution
– Name space includes dynamic quantities that maychange during the execution
– Example: Data Distribution Management in the HLA• Routing spaces
• Subscribe to position attribute of tank objects in my sector ofthe play area
![Page 11: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/11.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 11/18
Outline
• Fundamental concepts
– Name space
– Description expressions
– Interest expressions
• Example: HLA Declaration Management – Class-based filtering
![Page 12: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/12.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 12/18
Class-Based Data Distribution
• Declaration Management services in the HLA
• Federation Object Model (FOM) defines an objectclass hierarchy describing all data exchangedamong federates
– Object classes – Attributes
• Description expressions and interest expressionsspecify points in the object class hierarchy
![Page 13: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/13.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 13/18
Class Hierarchy Example
• Each class inherits attributes from parent class
• Name space: <class, attribute>
<Vehicle,position>, <Aircraft,position>, <Aircraft,altitude>,<Tank,position>, <Tank,turret>, <B-17,position>, <B-17,altitude>,<B17,bombs>, <Spitfire,position>, <Spitfire,altitude>, <Spitfire, bullets>
Aircraft• position • altitude
B-17 Bomber• position• altitude • bombs
Spitfire• position• altitude• bullets
Vehicle• position
Tank• position • turret
Inherited attribute
![Page 14: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/14.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 14/18
Description Expressions
• Update Attribute Values service sends a message
• Description expression: an attribute of an object instance
– Single <class attribute> point in the name space
– Examples: <Spitfire, position> or <Aircraft, altitude>
Aircraft• position• altitude
B-17 Bomber• position• altitude• bombs
Spitfire• position • altitude• bullets
Vehicle• position
Tank• position• turret
![Page 15: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/15.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 15/18
Interest Expressions
• Subscribe Object Class Attributes [class, attribute(s)]• Interest expression: Subtree rooted at subscription point
– Subscribe (Aircraft, altitude): receive updates to position attribute ofAircraft, B-17, Spitfire objects
– <Aircraft,altitude>, <B-17 Bomber, altitude>, <Spitfire, altitude> – In all cases, message appears as an update to an aircraft object
Aircraft• position• altitude
B-17 Bomber• position• altitude • bombs
Spitfire• position• altitude • bullets
Vehicle• position
Tank• position• turret
![Page 16: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/16.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 16/18
Extensibility
New subclasses can be added without requiring modification tosubscribers at higher levels in the class hierarchy
Aircraft• position
• altitude
B-17 Bomber• position• altitude
• bombs
Spitfire• position• altitude
• bullets
Vehicle• position
Tank• position
• turret
AWACS • position• altitude
• camera resolution
![Page 17: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/17.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 17/18
Alternate Approach
• Interest expression: single point in tree – <Aircraft, altitude>
• Description expression: Path up tree to point where theattribute is defined
– Update (Spitfire, altitude): <Spitfire,altitude>, <Aircraft,altitude>
Aircraft• position• altitude
B-17 Bomber• position• altitude• bombs
Spitfire• position• altitude • bullets
Vehicle• position
Tank• position• turret
![Page 18: M S 08 Data Distribution I](https://reader030.vdocuments.us/reader030/viewer/2022021118/577d234e1a28ab4e1e99794b/html5/thumbnails/18.jpg)
8/3/2019 M S 08 Data Distribution I
http://slidepdf.com/reader/full/m-s-08-data-distribution-i 18/18
Summary
• Data distribution mechanisms are needed to
avoid broadcast communication• Fundamental concepts
– Name space
– Interest expressions specify information simulatorwants to receive
– Description expression describes data contained withinthe message
• RTI must “match” interest expressions and datadescription expressions to route data