designing a global name service
play

Designing a Global Name Service written by Butler W. Lampson, - PowerPoint PPT Presentation

Faculty of Computer Science Institute for System Architecture, Operating Systems Group Designing a Global Name Service written by Butler W. Lampson, presented by Thomas Knauth pizza-reading-group, summer term 2007 Introduction What is a


  1. Faculty of Computer Science Institute for System Architecture, Operating Systems Group Designing a Global Name Service written by Butler W. Lampson, presented by Thomas Knauth pizza-reading-group, summer term 2007

  2. Introduction • What is a name service after all? – maps names to values e.g. domain names to IP addresses • What are the design challenges? – size – lifetime – high availability – fault-tolerance – mistrust • Where are name services used today? – most prominent is probably DNS – in fact, this design uses the name service to look up server names TU Dresden, 2007-05-23 Designing a Global Name Service Slide 2 of 11

  3. Directory tree • basic element is the directory • directory identifier (DI) • directory reference is value of the name i.e. the DI • directory maps directory names to directory identifiers TU Dresden, 2007-05-23 Designing a Global Name Service Slide 3 of 11

  4. Values in a directory • directory maps names to trees • labels • timestamps for synchronization • mark indicates whether node is present or absent • value of a path can be – single leaf – set of leaves – sub-tree TU Dresden, 2007-05-23 Designing a Global Name Service Slide 4 of 11

  5. Behind the scenes • multiple directory copies • copies loosely synchronized – sync by sweeps, or – by messages • copies linked into a ring TU Dresden, 2007-05-23 Designing a Global Name Service Slide 5 of 11

  6. Growing the name space • adding is straightforward • combining by creating a new root – keep set of well-known directory identifiers TU Dresden, 2007-05-23 Designing a Global Name Service Slide 6 of 11

  7. Restructuring • making IBM subtree of DEC – create a link if old name should still work TU Dresden, 2007-05-23 Designing a Global Name Service Slide 7 of 11

  8. Caching • directory reference upper bound on validity called expiration time • directory lookup can be safely cached for t=minimum over all expiration times TU Dresden, 2007-05-23 Designing a Global Name Service Slide 8 of 11

  9. What I left out • intricacies of update/sweeping mechanism • name service interface – client/administrators way to interact with the service • specification – collection of predicates that must hold during execution TU Dresden, 2007-05-23 Designing a Global Name Service Slide 9 of 11

  10. Rather closed questions • “I expect that most updates will be distributed in messages, but it is extremely difficult to make this method fully reliable. The sweep, [...], is quite easy to implement reliably.” Why? • What is SRC/Birrell? – l*/l where l* is empty? But it's not an only child ... – l*/li where li is a leaf node? But not all are leaf nodes ... – l* were the node where it ends is the value of l*; is there a node for l* ?! TU Dresden, 2007-05-23 Designing a Global Name Service Slide 10 of 11

  11. Open questions • Would you expect anything else from a name service? Does technological advance allow for some other design? • What do current name services (e.g. DNS) look like? • Has this design proven practical? • What about multiple roots and links from one tree into another? TU Dresden, 2007-05-23 Designing a Global Name Service Slide 11 of 11

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend