1 / 20

Directed Diffusion

Directed Diffusion. Phani Teja Kuruganti Electrical and Computer Engineering. Overview. Sensor Networks – Sensing, Communication and Computation Directed Diffusion Data – centric behaviour Data communication PUSH and GEAR Network Routing API - 9.0.1

wilmet
Download Presentation

Directed Diffusion

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Directed Diffusion Phani Teja Kuruganti Electrical and Computer Engineering

  2. Overview • Sensor Networks – Sensing, Communication and Computation • Directed Diffusion • Data – centric behaviour • Data communication • PUSH and GEAR • Network Routing API - 9.0.1 • Obtaining and Configuring Diffusion

  3. Directed Diffusion • Data dissemination and co-ordination paradigm developed for scalable wireless sensor networks. • Data –centric approach • Application specific in-network processing to support long lived sensor network support. • Interest and data propagation and aggregation are determined by localized interactions. • Hop – by – Hop communication in sensor networks

  4. Communication of Data • Data generated by the node is named by attribute – value pairs • A node requests data by sending interestsfor named data. • Data matching the interest is drawn down towards the source node.

  5. API usage walk through Includes and Definitions Initialize Network routing on acertain port Create callbacks and incoming subscriptions Setup Subscriptions and Publications Sending data Receive data callback function

  6. Attributes • The data requests and responses are composed of data attributes • Each piece of subscription is described via a key-value-operator triplet implemented with a class attribute

  7. Attribute Examples NRSimpleAttributeFactory<char *> TargetAttr(NRAttribute::TARGET_KEY, NRAttribute::STRING_TYPE); NRSimpleAttributeFactory<char *>MobileAgent(APP_KEY1, NRAttribute::STRING_TYPE); NRSimpleAttributeFactory<int>MobileAgentsize(APP_KEY2, NRAttribute::INT32_TYPE);

  8. Example of Publication handle setupPublication(NR *dr, char *nextip) { NRAttrVec attrs; attrs.push_back(NRClassAttr.make(NRAttribute::IS, NRAttribute::DATA_CLASS)); attrs.push_back(LatitudeAttr.make(NRAttribute::IS, 60.00)); attrs.push_back(LongitudeAttr.make(NRAttribute::IS, 54.00)); attrs.push_back(TargetAttr.make(NRAttribute::IS, nextip)); handle h = dr->publish(&attrs); ClearAttrs(&attrs); return h; }

  9. Example of Subscription/interest propagation handle setupInterest(NR *dr,char *nextip) { NRAttrVec attrs; attrs.push_back(NRClassAttr.make(NRAttribute::NE, NRAttribute::DATA_CLASS)); attrs.push_back(NRScopeAttr.make(NRAttribute::IS, NRAttribute::NODE_LOCAL_SCOPE)); attrs.push_back(TargetAttr.make(NRAttribute::EQ, nextip)); attrs.push_back(LatitudeAttr.make(NRAttribute::IS, 60.00)); attrs.push_back(LongitudeAttr.make(NRAttribute::IS, 54.00)); handle h = dr->subscribe(&attrs, mr); ClearAttrs(&attrs); return h; }

  10. Interest Mechanism • Subscription periodically sends interest messages with attributes • Interest messages flood through the network • When matching data is encountered simple gradient is established between publisher to subscriber. • When send function is called a Data message with the attributes is made and sent. • Exploratory-data message for low-cost and to obtain reinforced - gradient

  11. PUSH • The send message is cheap – reinforced gradient, but periodic sending is expensive because of exploratory messages. • Basic diffusion is well suited for cases with many publishers and few subscribers. • If the situation is reversed ( like in mobile agent) PUSH mechanism should be used. • Interest messages are kept local to the nodes. • Positive reinforcement message for reinforced gradient. • Periodic exploratory data messages are flooded through the network • Useful when many subscribers and less publishers

  12. GEAR • Geographic Energy aware routing protocol • Use geographic information • Make a closed region for subscriptions and publications • Avoids flooding

  13. Application of Diffusion to Mobile agents • Agents follow a hop – by – hop pattern • Carry limited data (usually result or processing data) • Less traffic since no control messages • Efficient for event driven applications

  14. Comparision of average dissipated energy for diffusion flooding and multicast[1]

  15. Comparision of Average Delay [1]

  16. Impact of Node Failures [1]

  17. Impact of Node Failures [1]

  18. Impact of Node Failures [1]

  19. Obtaining and configuring diffusion • Diffusion is freely available for Linux and ns-2.1b at http://www.isi.edu/scadds/software/ • Latest version is 3.1.3 • Also available as TinyDiffusion for TinyOS • Contains a configure script and a readme file to describe the flags to be used for configure. • Can be configured for Intel machines or Sensoria nodes with wired or wireless network

  20. References • Directed Diffusion:A scalable and robust communication paradigm for sensor networks, Chalermak Intanagoniwat, Ramesh Govindan and Deborah Estrin • Network routing application programmer’s Interface and walk through 9.0.1 Fabio Silva, John Heidemann and Ramesh Govindan

More Related