Presentation is loading. Please wait.

Presentation is loading. Please wait.

Resource Discovery in Self-Organizing Networks Hari Balakrishnan MIT Lab for Computer Science With: William Adjie-Winoto,

Similar presentations


Presentation on theme: "Resource Discovery in Self-Organizing Networks Hari Balakrishnan MIT Lab for Computer Science With: William Adjie-Winoto,"— Presentation transcript:

1 Resource Discovery in Self-Organizing Networks Hari Balakrishnan MIT Lab for Computer Science http://wind.lcs.mit.edu/ hari@lcs.mit.edu With: William Adjie-Winoto, Elliot Schwartz, Jeremy Lilley, Anit Chakraborty

2 Application #1: Location- dependent wireless services Access, control services, communicate with them Handle mobility & group communication Spontaneous networking Locate other useful services (e.g., nearest café) Where? App should be able to conveniently specify a resource and access it Automatically obtain map of region & discover devices, services and people there

3 Application #2: Home networks Networking consumer devices for information access and control in and around home –Temperature sensors, security cameras, baby monitors, appliances, lights, etc. –Many (10s to 100s) of devices in the future MUST be rapidly deployable and spontaneous

4 Challenges Configuration Routing Discovery Adaptation Security & privacy Dynamic, mobile environment with no pre-configured support for internetworking or service location

5 Today Routers DNS Hostname Address Mostly static topology & services Deploying new services cumbersome Applications cannot learn about network Failures are common! High management cost Servers Clients

6 Ad hoc configuration Static configuration impossible DHCP-like configuration undesirable –Over wireless, pre-configured subnetworks and broadcasts problematic Solution: Distributed, randomized address assignment addr = a r mask = m r addr = b r mask = m r [a r :m r ] addr = c r mask = n Coalesce? Route?

7 Resource discovery Why is this hard? –Dynamic environment (mobility, performance changes, etc.) –No pre-configured support, no centralized servers –Must be easy to deploy (“ZERO” manual configuration) –Heterogeneous services & devices Approach: a new naming system & resolution architecture

8 Design goals Responsiveness Name resolvers must track rapid changes Robustness System must overcome resolver and service failure Easy configuration Name resolvers must self-configure Names must be descriptive, signifying application intent Expressiveness

9 Intentional Naming System (INS) principles Names are intentional, based on attributes –Apps know WHAT they want, not WHERE INS integrates resolution and forwarding –Late binding of names to nodes INS resolvers replicate and cooperate –Soft-state name exchange protocol with periodic refreshes INS resolvers self-configure –Form an application-level overlay network

10 INS architecture overview [building = ne-43 [room = 510]] [entity = camera] Intentional name Intentional Name Resolvers (INR) form a distributed overlay Integrate resolution and message routing image Lookup camera510.lcs.mit.edu INR self-configuration

11 How does it work? INR DSR Application-level overlay network formed based on performance Inter-domain information via DSR protocol Exchange names as if they were routes Virtual space partitions Domain Space Resolvers Scaling?

12 INS service model INR Self-organizing app-level overlay network formed based on performance Soft-state name dissemination application Early binding Late binding query set of names Intentional anycast Intentional multicast

13 [vspace = thermometer] [building = ne-43 [room = *]] [temperature < 62 0 F] data [vspace = netgroup] [department = arch-lab [state = oregon [city = hillsboro]]] [rank = admin] data What’s in a name? Names are queries –Attribute-value matches –Range queries –Wildcard matches [vspace = camera] [building = ne-43 [room = 504]] [resolution=800x600]] [access = public] [status = ready] Names are descriptive –Providers announce names Expressive name language (like XML) Resolver architecture decoupled from language

14 Responsiveness: Late binding Mapping from name to location(s) can change rapidly Integrate resolution and message routing to track change –INR resolves name by lookup-and- forward, not by returning address –lookup(name) is a route –Forward along route A name can map to one location (“anycast”) or to many (“multicast”)

15 Late binding services Intentional anycast –INR picks one of several possible locations –Choice based on service-controlled metric [contrast with IP anycast] –Overlay used to exchange name-routes Intentional multicast –INR picks all overlay neighbors that “express interest” in name –Message flows along spanning tree –Overlay used to transfer data too

16 Robustness: Names as soft-state Resolution via network of replicated resolvers Names are weakly consistent, like network-layer routes –Routing protocol to exchange names Fate sharing with services, not INRs –Name unresolved only if service absent Soft-state with expiration is robust against service/client failure –No need for explicit de-registration

17 Self-configuring resolvers INRs configure using a distributed topology formation protocol DSR (DNS++) maintains list of candidate and active INRs INR-to-INR “ping” experiments for “link weights” Current implementation forms (evolving) spanning tree INRs self-terminate if load is low

18 Efficient name lookups Data structure Lookup –AND operations among orthogonal attributes –For values pick the value(s) satisfying the lookup Polynomial-time in worst case

19 Scaling issues Two potential problems –Lookup overhead –Routing protocol overhead Load-balancing by spawning new INR handles lookup problem Virtual space partitioning handles routing protocol problem –Just spawning new INR is insufficient

20 Virtual space partitioning vspace=cameravspace=5th-floor Delegate this to another INR Routing updates for each vspace

21 Applications Wireless Networks of Devices (WIND) –Location-dependent mobile applications –Floorplan: A navigation tool –Camera: An image/video service –Printer: A smart print spooler –TV & jukebox Server replication Caching service

22 WIND

23

24

25

26

27

28

29

30

31 Status & performance Java implementation of INS & applications PC-based resolver performance –1 resolver: several thousand names @100-1000 lookups/s –Discovery time linear in hops Scalability –Virtual space partitions for load-shedding –Wide-area design in progress Deployment –Hook in wide-area architecture to DNS –Standardize virtual space names (like MIME) Paper at SOSP 17 (http://wind.lcs.mit.edu/)

32 Related work Domain Name System –Differences in expressiveness and architecture Service Location Protocol –More centralized, less spontaneous Jini: –INS can be used for self-organization & fault- tolerant discovery Universal Plug-and-Play & SSDP –XML-based descriptions; INS fits well Intentional names in other contexts –Semantic file systems, adaptive web caching, DistributedDirector

33 Application-Level Networks Increasing number of services that set up application-level overlay networks Distributed Web caches Replica management systems Transcoders Multi-party communication Naming systems Net news

34 What Do They Have in Common? Form an overlay over IP Nodes exchange meta-data information Nodes forward messages based on meta-data Incorporate configuration machinery Fault/crash recovery Load balancing

35 Supporting Application-Level Networks General protocols for meta-data dissemination Fault-tolerance primitives Self-configuring overlays –Bootstrap and placement –Neighbor formation –Load balancing Security and privacy primitives

36 Future Internet Architecture Resource management Flexible IP routers Traffic engineering Congestion Manager Scheduling, buffer mgmt Middleware... Cache & replica management Self-configuring overlays INS Media transcoders Performance discovery Service location JiniUPnP E-speak T-spaces Decentralized security Use each other to add value

37 Conclusion Achieving self-organizing networks requires a flexible naming system for resource discovery –INS works in dynamic, heterogeneous networks –Expressiveness: names convey intent –Responsiveness: late binding –Robustness: soft-state names –Configuration: Resolvers self-configure Application-level overlay networks are a good way to build flexible, self-organizing network applications


Download ppt "Resource Discovery in Self-Organizing Networks Hari Balakrishnan MIT Lab for Computer Science With: William Adjie-Winoto,"

Similar presentations


Ads by Google