1.13k likes | 1.3k Views
1. Middleware service for Ubiquitous Computing Applications (a specific type of distributed systems) 2. A Middleware service for Ubiquitous Computing Applications 3. An application using the above middleware and middleware service. Outline for 1 and 2. Motivation State of art and Background
E N D
1. Middleware service forUbiquitous Computing Applications(a specific type of distributed systems)2. A Middleware service forUbiquitous Computing Applications3. An application using the above middleware and middleware service
Outline for 1 and 2 • Motivation • State of art and Background • Our approach • Illustrative example • Evaluation • Implementation on the test bed • Simulation tools • Conclusions and Future research
Motivation • Ubiquitous Computing (Ubicomp) environments - Computing everywhere - Vast number of embedded, wearable, and hand-held devices • Short range wireless capability • Some devices are not reachable directly from others • Mostly devices are mobile • Devices have low power, hence less computation • Use of on board sensors - Transparent and context-aware communication - Neighbor-to-neighbor communication (communication range) - Applications operating in ubicomp usually exhibits: • Context sensitivity • Ad hoc communication
Concepts and Terminologies • Context - Any detectable and relevant attribute of a device, its interaction with other devices and/or its surrounding environment at an instant of time. - Example: (battery) power, light intensity, location • Situation - Any action taken by the device over a period of time that is of interest to the device, and/or variation of a set of contexts over a period of time. - Example: During the last two hours, the battery power has reduced by 10% and no recharge action has taken place.
Concepts and Terminologies (cont.) • Information dissemination - Distribution of information from a device to a set of devices in any computing environment. • Situation-aware information dissemination - Distribution of information based on context and/or situation. - Example: Shopper’s device looks for deals when the device is inside shopping mall.
State of Art • Directed diffusion, USC - use flooding, infrastructure less network, does not support mobility of devices and no support for situation-awareness • SPIN (Sensor protocols for information via negotiation), MIT - requires prior knowledge of the network, use flooding for data negotiation and no support for situation-awareness • Profile based information dissemination, University of Toronto - fixed infrastructure based wireless network, use profile for information dissemination
Background • Reconfigurable Context-sensitive Middleware (RCSM), ASU - Supports situation-awareness - Supports context-sensitivity * Ability of the device to detect current context and changes in contextual data * Ability to capture and analyze context and interrelationship between users’ actions and devices • Addition of information dissemination service (IDS) to RCSM
Situation-Aware Application Objects RCSM Optional Components O p e Information Other RCSM Ephemeral Group r a Dissemination Service Services Communication Service t i n g S Core Components y s t e Adaptive Object Containers (ADCs) m [Providing awareness of situation] Object Request Broker (R-ORB) [Providing transparency over ad hoc communication] Transport Layer Protocols for Ad Hoc Networks Sensors Information Dissemination Service (IDS) in RCSM
PDA Addition of Information Dissemination Service in a Ubicomp Environment using RCSM IDS IDS Information RCSM dissemination RCSM Laptop IDS IDS RCSM RCSM IDS PDA RCSM Laptop PDA IDS IDS Wireless RCSM RCSM link PDA Laptop
Features of Information Dissemination Service (IDS) 1) Unknown destination: A distant device is not reachable from a source device. 2) Situation-aware: Ubicomp applications distribute information based on situation . 3) Multi-hop: In ubicomp environment, a device has short-range wireless capability. 4) Mobility: In ubicomp environment, devices are mobile.
Features of IDS (cont.) 5) Loop free: Same information does not create unnecessary flooding. 6) Energy efficient: The devices in ubicomp environment operate on battery. 7) Decentralized: Information dissemination mechanism for ubicomp should be decentralized, since the devices are mobile (joins and leaves at their will). 8) Equality: Information dissemination mechanism should be equal for each device.
Features of IDS (cont.) 9) Locality: Each device is able to manage itself and to coordinate with others based on local information for information dissemination. 10) Self-containment: Every device is self-contained in functions to manage itself and coordinate with others for information dissemination.
Our Approach to Information Dissemination Step1 A devicewants todisseminate information Step2 Yes No Wants response? Information dissemination without response Information dissemination with response Step3 A B
Our Approach to Information Dissemination (cont.) Step1) A Associate communication primitiveswith coordination states Step4 Use SA-IDL and SA-ADCto develop B Application with IDS Step5 Yes Add Any device wants coordination todisseminate rules information? No A Step6 End
Example: A Shopping Mall • Shoppers have their own PDAs. • Shops and shopping mall authority have computing devices - Desktop computers (DCs), with wireless connections to PDAs. • These devices collaborate by dynamically forming short range mobile ad hoc networks • A shopper wants to know all the deals of a specific item when inside the shopping mall
Example 1: A Shopping Mall • Shoppers have their own PDAs. • Shops and shopping mall authority have computing devices - Desktop computers (DCs), with wireless connections to PDAs. • These devices collaborate by dynamically forming short-range mobile ad-hoc networks • A shopper wants to know all the deals of a specific item when inside the shopping mall
Example: A Shopping Mall (cont.) - 9 devices in the shopping mall, {D1, D2, D3,………D9}. - D1 is a PDA, and D2, D3, D4,. D9 are DCs. - Neighbors of D1 are D2, D3, D7, and expressed as N(D1) = {D2, D3, D7}. - Similarly, others DCs: N(D2)={ D1, D4, D7}, N(D3)={ D1 , D5, D7}, … N(D9)={ D5 , D7 }. - D1, D2, D3, D4, D5, D7, and D9 have RCSM, including the add-on information dissemination service. - D6 and D8 not have RCSM, and hence D6 and D8, cannot participate in information dissemination.
Step 1-3 Step 1) - Shopper’s PDA D1 is the single information dissemination source. -When inside the shopping mall, the shopper’s PDA triggers information dissemination. Step 2) No need for Step 2 because information dissemination needs response. Step 3) -Shopper distributes query and wants to know all deals -- information dissemination with response.
Step 3: Mechanism for Information Dissemination in A Shopping Mall • Coordination states: - CS1: uploading query - CS2: downloading query - CS3: uploading deals • Coordination rules: - Rule 1: CS2 CS1, downloading query to uploading query - Rule 2: CS1 CS3, uploading query to uploading deals
Step 3: Mechanism for Information Dissemination in A Shopping Mall (cont.) a) D1 sends its coordination state CS1 to all of its neighboring devices D2, D3, and D7. b) - D2 receives CS1 from D1 and checks its coordination rule and find a state match in Rule 1. - D2 requests D1 to send query for all deals information. - D2 receives information and changes its coordination state to CS1. - D3 and D7 receive information. This is repeated for each device - Information is distributed from D1 to D2, D3, D7;, D7 to D9; D2 to D4;,, D3 to D5.
Step 3: Mechanism for Information Dissemination in A Shopping Mall (cont.) c)D7 can receive information from D1,D2 or D3. -Path D1 to D7 is chosen since D7 receives coordination state first. d) D2 moving out of vicinity of its neighbors and is out of communication range of its neighbors. - D2 distributes its coordination states to its neighbors. - D4 changes its state back to CS1 andreceives information from D7.
Coordination State Communication primitives Uploading the query Send, receive Uploading the deals Send, receive Downloading the query Send, receive Step 4: Associate Coordination States with Communication Primitives Basic communication primitives: Send, receive, forward, wait
Step 5: Use of SA-IDL for Information Dissemination RCSM_Context context1 { string location; } ActionTuple action1 { string action_name; } interface ShoppingMall [‘S’, ‘P’, ‘M’]{ Situation s1{ //shopper is In Mall currently (ForAny t in [0,0]) context1.location = “ShoppingMall” } Situation s2{ //shopper was Outside one minute ago (ForAny t in [-2,-1]) context1.location <> “ShoppingMall”} Situation s3 { // shopper’s device has not queried for last 30 minutes (ForAny t in [-30, 0] action1.action_name <> “FindDeals”} Situation s4{ // go query s1 and s2 and s3 } [outgoing] [activate at situation s4 ] void FindDeals() ;}
Example 2: Football stadium • People using their PDAs to communicated in a football stadium • When someone enters into the stadium, his PDA to distribute information about some player to other the people.
Information Dissemination in A Football Stadium - 9 devices in the Smart classroom, {D1, D2, D3,………D9}. - D1 is a PDA, and D2, D3, D4,. D9 are DCs. - Neighbors of D1 N(D1) = {D2, D3, D7}. - Similarly, others DCs: N(D2)={ D1, D4, D7}, N(D3)={ D1 , D5, D7}, … N(D9)={ D5 , D7 }. - D1, D2, D3, D4, D5, D7, and D9 have RCSM, including the add-on information dissemination service.
Step 1-3 Step 1) - Someone’s PDA D1 is the single information dissemination source. - When someone enters in the stadium and his PDA to distribute information about some player to other people. Step 2) Information dissemination without response. -Someone’s PDA distributes information Step 3)No need for Step 3 because information dissemination needs no response.
Step 3: Mechanism for Information Dissemination in a Football Stadium • Coordination states: - CS1: uploading info - CS2: downloading info • Coordination rules: - Rule 1: CS2 CS1, downloading to uploading
Step 3: Mechanism for Information Dissemination in Football Stadium (cont.) a) D1 sends its coordination state CS1 to all of its neighboring devices D2, D3, and D7. b) - D2 receives CS1 from D1 and checks its coordination rule and find a state match in Rule 1. - D2 requests D1 to send information - D2 receives information and changes its coordination state to CS1. - D3 and D7 receive information. This is repeated for each device - Information is distributed from D1 to D2, D3, D7;, D7 to D9; D2 to D4;,, D3 to D5.
Step 3: Mechanism for Information Dissemination in Football Stadium (cont.) c)D7 can receive information from D1,D2 or D3. -Path D1 to D7 is chosen since D7 receives coordination state first. d) D2 moving out of vicinity of its neighbors and is out of communication range of its neighbors. - D2 distributes its coordination states to its neighbors. - D4 changes its state back to CS1 andreceives information from D7.
Coordination State Communication primitives Uploading Send, receive Downloading Send, receive Step 4: Associate Coordination States with Communication Primitives Basic communication primitives: Send, receive, forward, wait
Step 5: Use of SA-IDL for Information Dissemination RCSM_Context context1 { string location; } ActionTuple action1 { string action_name; } interface Stadium[‘S’, ‘D’, ‘B’]{ Situation s1{ //In stadium (ForAny t in [0,0]) context1.location = “Stadium” } Situation s2{ //Outside one minute ago (ForAny t in [-2,-1]) context1.location <> “Stadium”} Situation s3 { // device has not distribute for last 30 minutes (ForAny t in [-30, 0] action1.action_name <> “DistributeInfo()”} Situation s4{ // go query s1 and s2 and s3 } [outgoing] [activate at situation s4 ] void DistributeInfo()”;}
Total Messages (Y)in IDS • n is the total number of devices • l is the length of message • s length of short message • m is the average number of neighbors of each device • If l >> s, we get the complexity O(n)
Energy Consumption Models in IDS • Use Feeney and Nilsson’s energy consumption models based on their empirical results of 802.11b radios • b send energy consumptions due to send for fixed data packets • m send energy consumptions due to send for incremental data packets • Siz send size of data packets
Evaluation • Demonstration on Test bed • Small number of devices • Simulation tools • Large number of devices
Architecture of Information Dissemination Service (IDS) Application Application File service IDS State Processor Input processor Coordination Transport Engine State Table Rule Table Rule processor Address Pool Adaptive Object Container (ADC) R-ORB
Demo App/ Situation-Aware Application Objects Demo App/ Situation-Aware Application Objects IDS service and Demo Application File transfer service File transfer service Information Information Dissemination Service Dissemination Service (ADCs) (ADCs) (IDS) (IDS) Object Request Broker (R-ORB) Object Request Broker (R-ORB) Transport Layer Protocols for Ad Hoc Networks Transport Layer Protocols for Ad Hoc Networks
IDS service and Demo (Announcement) Application IDS service Demo(Announcement) Application
Experimental Set up (Device Configurations) • Casio E-200 PDAs • Intel Strong Arm 1110 with 206 MHz clock speed CPU. • Flash ROM 32 MB • RAM 64 MB • D-LINK Air DCF-660W Compact Flash 802.11b adapter. • Configured in mobile ad hoc network
Experimental Results from the Demonstration on the Test bed • Number of threads: 5 • Lines of code:10000 • Executable file size: 138 KB • Maximum size of the message: 972 bytes • Delay(Response time): 7800unit [1 unit 100 nano sec] • Throughput: 66.30 bytes/sec • Power consumption: shown in next slide
Impact of IDS • File transfer service in RCSM test bed, announcement in Smart classroom • Football stadium • Shopping mall • Hospital • Construction management • Environment monitoring • Sensor networks • Disaster relief
Summary of Contribution IDS for Ubicomp Applications with the following characteristics • Destination unknown • Situation-aware • Multi hop • Mobility of the devices • Loop free • Energy efficient • Locality • Self contained • Equality • Decentralized