1 / 15

CS 603 Naming in Distributed Systems

CS 603 Naming in Distributed Systems. January 28, 2002. This week: Naming in Distributed Systems. Today: Overview What is a name Issues Examples Wednesday and Friday: Name Resolution Historical (Telephone, mail, …)? DNS? DCE? Others?. What is a name?. An identifier that:

Download Presentation

CS 603 Naming in Distributed Systems

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. CS 603Naming in Distributed Systems January 28, 2002

  2. This week:Naming in Distributed Systems • Today: Overview • What is a name • Issues • Examples • Wednesday and Friday: Name Resolution • Historical (Telephone, mail, …)? • DNS? • DCE? • Others?

  3. What is a name? An identifier that: • Identifies a resource • Uniquely? • Describes the resource? • Enables us to locate that resource • Directly? • With help? • Is it really an identifier? • Bijective, persistent

  4. Key issues in Naming • How is name used? • Disambiguate only • Access resource given the name • Build a name to find a resource • Do humans need to use name? • Construct? • Recall?

  5. Key issues in Naming (cont.) • Is resource static? • Never moves • Change in location should change name • Resource may move • Resource is mobile • Performance requirements

  6. Approaches to naming • Globally unique identifier • Ethernet • Solves identification, but not description or location • Hierarchically assigned globally unique identifier • Telephone number, IP address • Solves identification, not description • Helps with location

  7. Approaches to naming • Hierarchically assigned name • Domain Name Service, URL • Solves identification • Helps with description • Still problems with location • Globally unique name • TCP/IP Protocol Ports • Extensibility problems

  8. Approaches to naming • Registries and name spaces • Uniform Resource Name (URN) • Solves identification and location • If we can get to the registry • Helps with description • Registry can describe in detail • Complicated!

  9. URI, URL, URN • URI: Uniform Resource Identifier • IETF meta-standard • Defines naming schemes / protocols • Each naming scheme has it’s own mechanism • URL: Uniform Resource Locator • Uses DNS to map to host • Host knows how to map remainder to resource • URN: Uniform Resource Name • Idea: Permanent URL

  10. URN • Each URN maps to a namespace • Currently 10 formally defined: IETF, ISBN, XMLORG, … • Also informal: (3 current) and experimental (unregistered) • Syntax: “urn:” <Namespace ID> “:” <string> • urn:ISBN:0-13-032071-4 • urn:ietf:rfc:2141 • (Bad) Example: • URN:<assigned number>:<FQDN>:<assigned string> • urn:x-1234:www.cs.purdue.edu:%7eclifton%2Fcs603%2f

  11. Naming: Why an Issue for Application Developers? • DNS is widely accepted standard • Only names machines • Doesn’t handle mobility • URI / URN will become standard • Can be descriptive • Globally unique • Persistent • But expensive to create

  12. Applications that might need custom solutions • Distributed Database • Needs persistence • May be multiple resources for single name (replication) • May need to support mobility • PERFORMANCE! • Small-scale applications • Do you really want to register with IANA? • Is persistence necessary?

  13. Distributed Database Example: R* • R* developed at IBM Almaden Research – first distributed relational database • Wanted mobility of resources • Supports fault tolerance • But movement rare • Performance is critical • Solution: Two components to name • Unique ID assigned by “birthplace” • Local catalog maps ID to: • Birthplace (maintains current location) • Presumed current location

  14. Security Considerations • Does name give away information? • Social Security Numbers • URL • Batched IDs (e.g., Ethernet) • Sequentially assigned IDs • Solution: Define what name SHOULD do • Ensure it meets goals • Look for reasons it doesn’t

  15. Name Resolution:What would you like? • Historical? • Mail • Telephone • DNS? • X.500 / LDAP? • DCE? • ActiveDirectory?

More Related