naming in distributed systems
play

Naming in Distributed Systems Overview: Names, Identifiers, - PDF document

CPSC-662 Distributed Computing Naming Naming in Distributed Systems Overview: Names, Identifiers, Addresses, Routes, Name Space, Name Resolution, ... Implementation of a Naming Service Case Studies: DNS, X.500 Naming and


  1. CPSC-662 Distributed Computing Naming Naming in Distributed Systems • Overview: Names, Identifiers, Addresses, Routes, Name Space, Name Resolution, ... • Implementation of a Naming Service • Case Studies: DNS, X.500 • Naming and Mobile Entities • Reading: – Coulouris: Distributed Systems, Addison Wesley, Chapter 9 – Tanenbaum, van Steen: Distributed Systems, Prentice Hall, 2002, Chapter 4 Some Terminology: Entities, Names, Addresses • An Entity in a distributed system can be pretty much anything. • A Name is a string of bits used to refer to an entity. • We operate on an entity through its Access Point . • The Address is the name of the access point. 1

  2. CPSC-662 Distributed Computing Naming Entities, Names, Addresses: Examples • Example – Telephone as Access Point to a person. – The Telephone Number then becomes the address of the person. – Person can have several telephone numbers. – Entity can have several addresses. • Another Example: Transport-Level Addresses – for servers this can be IP address and port number • Entities may change access points over time – telephone numbers, e-mail addresses, IP addresses in mobile systems, ... Identifiers are Special Names • Can we use addresses of access points as regular name for the associated entity? – access points may change over time – entities may have several access points • Identifiers uniquely identify an entity: – An identifier refers to at most one entity. – Each entity is referred to at most one identifier. – An identifier always referes to the same entity (never reused) • Example: – SSN? Telephone Numbers? 2

  3. CPSC-662 Distributed Computing Naming Name Space • Names are organized into Name Space . • Name space consists of root node keys n0 n2: “peter” home n3: “mary” n4: “eve” “/keys” n1 eve n5 “/home/eve/keys” peter mary n2 n3 n4 mbox .twmrc n5 Leaf Node n5 n5 Directory Node n0 “/home/eve/mbox” Name Resolution • Path name N:<label-1, label-2, ... , label-n> • Absolute path name: first node in path name is root. • Relative path name: first node can be any node. • Global name vs. local name. • Where to start name resolution? (“Closure”) • Examples: – Location of inode of root directory. – Environment setting (e.g. HOME variable) to refer to home directory. 3

  4. CPSC-662 Distributed Computing Naming Implementation of Name Resolution • Simplified picture: – No replication of name servers – No client side caching • Each client has access to local name resolver . • Example: resolve root:<edu,tamu,cs,ftp,pub,netex,index.txt> • Iterative Resolution vs. Recursive Resolution Iterative Name Resolution 1. < edu,t amu,cs,f t p> Root name server 2. # <edu> ,< t amu,cs,f t p> edu 3. < t amu,cs,f t p> Name server edu node client ’s 4. # <tamu> ,< cs,f t p> t amu name 5. < cs,f t p> resolver Name server t amu node 6. # <cs> ,< f t p> cs 7. < f t p> Name server cs node 8. # <f tp> f t p < edu,t amu,cs,f t p> # < edu,t amu,cs,f t p> 4

  5. CPSC-662 Distributed Computing Naming Recursive Name Resolution 1. < edu,t amu,cs,f t p> Root 8. # < edu,t amu,cs,f t p> name server 2. < t amu,cs,f t p> 7. # < t amu,cs,f t p> Name server edu node client ’s 3. < cs,f t p> name 6. # < cs,f t p> resolver Name server t amu node 4. < f t p> 5. # < f t p> Name server cs node < edu,t amu,cs,f t p> # < edu,t amu,cs,f t p> Iterative vs. Recursive Name Resolution: Comparison Iterative Recursive • Stateless • Higher-level servers need to maintain state about resolutions. (!?) • Caching is effective. • Reduced communication costs. 5

  6. CPSC-662 Distributed Computing Naming Caching in Recursive Name Resolution Iterative Resolution and Locality 1. < edu,t amu,cs,f t p> Root name server 2. # <edu> ,< t amu,cs,f t p> edu 3. < t amu,cs,f t p> Name server edu node client ’s 4. # <tamu> ,< cs,f t p> t amu name 5. < cs,f t p> resolver Name server t amu node 6. # <cs> ,< f t p> cs 7. < f t p> Name server cs node 8. # <f tp> f t p < edu,t amu,cs,f t p> # < edu,t amu,cs,f t p> 6

  7. CPSC-662 Distributed Computing Naming Recursive Name Resolution 1. < edu,t amu,cs,f t p> Root 8. # < edu,t amu,cs,f t p> name server 2. < t amu,cs,f t p> 7. # < t amu,cs,f t p> Name server edu node client ’s 3. < cs,f t p> name 6. # < cs,f t p> resolver Name server t amu node 4. < f t p> 5. # < f t p> Name server cs node < edu,t amu,cs,f t p> # < edu,t amu,cs,f t p> Domain Name Resolution (DNS) • DNS Name Space: – organized as rooted tree – labels are case-insensitive strings of maximum 63 chars length – length of complete path limited to 255 chars – Path representation: root:<edu,tamu,cs,merlot> ⇔ merlot.cs.tamu.edu. root tamu edu cs merlot domain domain name 7

  8. CPSC-662 Distributed Computing Naming Resource Records in DNS DNS Implementation • Each zone is implemented by a (replicated) name server. • Updates happen on primary name server, and secondary name server requests zone transfers . 8

  9. CPSC-662 Distributed Computing Naming DNS Implementation (2) DNS Implementation (3) • How do other zones refer to the cs.vu.nl zone? • Part of description of vu.nl domain, which contains cs.vu.nl domain: Name Record Type Record Value cs.vu.nl NS solo.cs.vu.nl solo.cs.vu.nl A 130.37.24.1 9

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