Special Course on Networked Virtual February 20, 2004 Environments §6.2 Controlling the Visibility of Data the Visibility of Data §6.2 Controlling � Area � Area- -of of- -interest interest filters filters � each host provides explicit data filters � each host provides explicit data filters � filters define the interest in data � filters define the interest in data � � Multicasting Multicasting � use existing routing protocols to restrict the flow of data � use existing routing protocols to restrict the flow of data � divide the entities or the region into multicast groups � divide the entities or the region into multicast groups � Subscription Subscription- -based aggregation based aggregation � � group available data into fine � group available data into fine- -grained ‘channels’ grained ‘channels’ � hosts subscribe the appropriate channels � hosts subscribe the appropriate channels Protocol Optimizations Protocol Optimizations Compression Compression Aggregation Aggregation M H B T P M H B T P M H B T P M H B T P Host Filtering Host Filtering M M H H B B T T P P Jouni Smed 1
Special Course on Networked Virtual February 20, 2004 Environments Why to Do Data Flow Data Flow Restriction? Restriction? Why to Do Release lock Release lock L z ) ) , z y , L 7 , y x , ( x o 2 2 Fire o ( 7 Alive o Fire Alive ’ ’ ! ! d d e e t t h h c t t g c g o 37 e e i i Alive o o 26 j s s b j Alive 26 b y y o o m m 37 w w e e e e n n n E n E ‘ a a ‘ e e t t a a e e r ∆ x r ( ∆ C C ( , ∆ ∆ y x , o 55 55 J J Fire o y , , ∆ ∆ z o o i i n n Fire z ) ) t c c t e e j j b b o o y o y r o t t r s s D e e D Awareness and the Spatial Model of Interaction Awareness and the Spatial Model of Interaction Television’s video nimbus Television’s Television’s video nimbus Television’s User’s video aura User’s video aura User’s video User’s video video aura video aura focus focus Key concepts: Key concepts: � � medium medium : communication type : communication type � � focus focus : represents an observing : represents an observing object’s interest object’s interest � aura aura : subspace in which : subspace in which � interaction can occur interaction can occur � � nimbus nimbus : represents an observed : represents an observed object’s wish to be seen object’s wish to be seen � awareness awareness : quantifies one object’s : quantifies one object’s � significance to another object (in a significance to another object (in a � adapters � adapters : can modify an object’s : can modify an object’s particular medium) particular medium) auras, foci, and nimbi auras, foci, and nimbi Jouni Smed 2
Special Course on Networked Virtual February 20, 2004 Environments Nimbus- -Focus Information Model Focus Information Model Nimbus � Nimbus: entity data should only Nimbus: entity data should only � be made available to entities be made available to entities capable of perceiving that capable of perceiving that information information � � Focus: each entity is only Focus: each entity is only interested in information from a interested in information from a subset of entities subset of entities � Ideally, all information is Ideally, all information is � processed individually and processed individually and delivered only to entities delivered only to entities observing it observing it � � what about scaling up? what about scaling up? � � processing resouces processing resouces � each packet has a custom set of � each packet has a custom set of ⇒ hard to destination entities ⇒ hard to destination entities utilize multicasting utilize multicasting ⇒ ⇒ Approximate the pure nimbus Approximate the pure nimbus- - focus model focus model Area- -of of- -Interest Filtering Subscriptions Interest Filtering Subscriptions Area � � Hosts Hosts transmit transmit information to a set of subscription managers information to a set of subscription managers (or (or area area- -of of- -interest interest managers managers, filtering servers) , filtering servers) � Managers receive subscription descriptions from Managers receive subscription descriptions from the the � participating participating hosts hosts � � For each piece of data, the managers determine which of the For each piece of data, the managers determine which of the subscription requests requests are satisfied and disseminate the are satisfied and disseminate the subscription information to the corresponding subscribing hosts information to the corresponding subscribing hosts � � AOI filtering: AOI filtering: � restricted � restricted form of the pure nimbus form of the pure nimbus- -focus focus model model � � ignores nimbus specifications ignores nimbus specifications � subscription � subscription descriptions specify the entity’s focus descriptions specify the entity’s focus � reduces the processing requirements of the pure model � reduces the processing requirements of the pure model Jouni Smed 3
Special Course on Networked Virtual February 20, 2004 Environments Subscription Interest Language Subscription Interest Language � � Allows the hosts to expess Allows the hosts to expess ( O R ( O R formally their interests in the NVE formally their interests in the NVE ( EQ ( EQ TYPE " Tank" ) TYPE " Tank" ) � Subscription description can be Subscription description can be ( AND � ( AND ( EQ TYPE " Tr uck" ) ( EQ TYPE " Tr uck" ) arbitrarily complex arbitrarily complex ( G ( G T LO T LO CATI O CATI O N- N - X 50) X 50) � a sequence of filters or assertions � a sequence of filters or assertions ( LTE LO CATI O N- - X 75) X 75) ( LTE LO CATI O N � based on the values of packet � based on the values of packet ( G ( G T LO T LO CATI O CATI O N- N - Y 83) Y 83) ( LTE LO ( LTE LO CATI O CATI O N N- - Y 94) Y 94) fields fields ( EQ PACKET- ( EQ PACKET - CLASS I NFRARED) ) ) CLASS I NFRARED) ) ) � Boolean operators � Boolean operators � programmable functions � programmable functions Filtering Subscription- -Based Based System: Example System: Example Filtering Subscription � � Joint Precision Strike Demonstration (JPSD) Joint Precision Strike Demonstration (JPSD) � military � military NVE for training tactical commanders NVE for training tactical commanders � most � most entities are artificially constructed entities are artificially constructed � 6,000 � 6,000 entities, 80 hosts entities, 80 hosts � Subscription Subscription management at each source host management at each source host � � � Each host manages subscriptions Each host manages subscriptions from from its local its local entities entities � The host sends packets directly to The host sends packets directly to the interested the interested clients using clients using � peer- -to to- -peer peer unicast unicast peer � � Interest subscriptions Interest subscriptions � logical � logical predicates, operators (equality, predicates, operators (equality, ‘within ‘within range’) range’) � external function modules in a library � external function modules in a library Jouni Smed 4
Special Course on Networked Virtual February 20, 2004 Environments When to Use Customized to Use Customized Information Information Flows? Flows? When Hosts cannot Hosts cannot afford the cost of receiving and processing afford the cost of receiving and processing 1. 1. unnecessary packets unnecessary packets Hosts are connected over an extremely low low- -bandwidth bandwidth Hosts are connected over an extremely 2. 2. network network Multicast Multicast or broadcast protocols are not available or broadcast protocols are not available 3. 3. Client subscription patterns change rapidly subscription patterns change rapidly Client 4. 4. No a priori categorizations of a priori categorizations of data data No 5. 5. � � Problem when a large number of hosts are interested in the Problem when a large number of hosts are interested in the same piece of information piece of information same streams ⇒ ⇒ unicast ⇒ the same data unicast ⇒ � � customized data streams customized data the same data travels multiple travels multiple times over the same network times over the same network Intrinsic and Extrinsic Filtering Intrinsic and Extrinsic Filtering Network Application Network Application Header Data Header Data Extrinsic filtering Intrinsic filtering Extrinsic filtering Intrinsic filtering � Filters packets based on network � Filters packets based on network � � The filter must inspect the The filter must inspect the properties properties application content application content � Implementation efficient Implementation efficient � Can dynamically partition data Can dynamically partition data � � based on fine- -grained entity grained entity based on fine � � Filtering cannot be as Filtering cannot be as interests interests sophisticated sophisticated Jouni Smed 5
Recommend
More recommend