eecs122 - ucb 1 cs 194: distributed systems: naming computer science division department of...
TRANSCRIPT
![Page 1: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/1.jpg)
EECS122 - UCB 1
CS 194: Distributed Systems:
Naming
Computer Science DivisionDepartment of Electrical Engineering and Computer Sciences
University of California, BerkeleyBerkeley, CA 94720-1776
![Page 2: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/2.jpg)
Names & Addresses
• What is a name?
• What is an address?
• What is the difference between names and addresses?
![Page 3: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/3.jpg)
Names & Addresses
• Name: string of bits that refer to an entity– E.g., your name
• Address: string of bits that have location semantics– E.g., your home address, your phone #
![Page 4: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/4.jpg)
Names vs. Addresses
Seven-of-Nine
Voyager
name
Borg
address
Weather a string is a name or address may depend on context Weather a string is a name or address may depend on context
![Page 5: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/5.jpg)
Names vs. Addresses
Leonardo da Vinci
Florence
name
City of Vinci
address
![Page 6: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/6.jpg)
Identity
• Name that uniquely identify an entity– E.g., your SSN
• Identifier properties:– An identifier refers to at most one entity– Each entity is referred to by at most one identifier– An identifier always refers to the same entity (i.e., it is
never reused)
![Page 7: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/7.jpg)
Internet Centric View• Addresses:
– Says how to reach an object it has location semantics associated to it– Usually, a format easy to process by computers
• Name: – Does not have any location semantics associated to it– Usually, a format easier to understand/read/remember by people
• Examples:– IP address: 169.229.131.109– Name: arachne.berkeley.edu
![Page 8: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/8.jpg)
Name Service• Name space: define the set of possible names and their
relationship– Hierarchical (e.g., Unix and Windows file names)– Flat
• Bindings: the mapping between names and values (e.g., addresses or other names) – Bindings can be implemented by using tables
• Resolution: procedure that, when invoked with a name, returns the corresponding value
• Name server: specific implementation of a resolution mechanism that is available on the network and that can be queried by sending messages
![Page 9: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/9.jpg)
Binding and Resolution in the Internet
• In general there are multiple mappings
Host name: arachne.berkeley.edu
IP address: 169.229.131.109
Ethernet MAC address: 12.34.56.78.90.12
DNS resolution
ARP (Address Resolution Protocol)
![Page 10: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/10.jpg)
Mapping
• Multiple names can map onto the same address– Example: www.berkeley.edu and arachne.berkeley.edu
maps to the same machine (i.e., the same IP address)
• One name can map onto multiple addresses– Example: www.yahoo.com can be mapped to multiple
machines
![Page 11: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/11.jpg)
Name Space
• A general naming graph with a single root node
directory nodeNamed entity
![Page 12: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/12.jpg)
Linking and Mounting (1)
• Symbolic link in a naming graph
![Page 13: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/13.jpg)
Linking and Mounting (2)• Mounting remote name spaces through a specific process protocol
![Page 14: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/14.jpg)
Domain Name System (DNS) Hierarchy(1)
root
edu com gov mil org net uk fr
berkeley cmu
eecs sims
sonoma
![Page 15: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/15.jpg)
DNS Hierarchy (2)• Unique domain suffix is assigned by the Internet
Authority• The domain administrators have complete control over
the domain• No limit on the number of subdomains or number of
levels• Name space is not related with the physical
interconnection • Geographical hierarchy is allowed (e.g., cnri.reston.va.us)• A name could be a domain or an individual objects
![Page 16: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/16.jpg)
DNS Top Level Domains
Domain Name Assignment
com Commercial
edu Educational
gov Government
mil Military
net Network
org Other organizations
country code au, uk, ca, …
![Page 17: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/17.jpg)
DNS Name Servers
• Why not centralize DNS? – Single point of failure– Traffic volume– Distant centralized database– Maintenance
• Doesn’t scale!
![Page 18: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/18.jpg)
Server Hierarchy: Zones• A zone corresponds to an administrative authority
that is responsible for that portion of the hierarchy
root
edu com gov mil org net uk fr
berkeley cmu
eecs sims
divine
![Page 19: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/19.jpg)
Server Hierarchy
• Server are organized in hierarchies• Each server has authority over a portion of the hierarchy
– A single node in the name hierarchy cannot be split– A server maintains only a subset of all names– It needs to know other servers that are responsible for the other
portions of the hierarchy
![Page 20: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/20.jpg)
Server Hierarchy
• Authority: each server has the name to address translation table for all names in the name space it controls
• Every server knows the root
• Root server knows about all top-level domains
![Page 21: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/21.jpg)
DNS Name Servers• No server has all name-to-IP address mappings• Local name servers:
– Each ISP (company) has local (default) name server
– Host DNS query first go to local name server• Authoritative name servers:
– For a host: stores that host’s (name, IP address)– Can perform name/address translation for that
host’s name
![Page 22: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/22.jpg)
DNS: Root Name Servers
•Contacted by local name server that can not resolve name
•Root name server:
– Contacts authoritative name server if name mapping not known
– Gets mapping
– Returns mapping to local name server
•~ Dozen root name servers worldwide
![Page 23: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/23.jpg)
Simple DNS Example
Host whsitler.cs.cmu.edu wants IP address of www.berkeley.edu
1. Contacts its local DNS server, mango.srv.cs.cmu.edu
2. mango.srv.cs.cmu.edu contacts root name server, if necessary
3. Root name server contacts authoritative name server, ns1.berkeley.edu, if necessary
requesting hostwhistler.cs.cmu.edu
www.berkeley.edu
root name server
authorititive name serverns1.berkeley.edu
local name servermango.srv.cs.cmu.edu
1
23
4
5
6
![Page 24: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/24.jpg)
DNS Example
Root name server:
• May not know authoritative name server
• May know intermediate name server: who to contact to find authoritative name server?
requesting hostwhistler.cs.cmu.edu
www.berkeley.edu
root name server
local name servermango.srv.cs.cmu.edu
1
23
4 5
6
authoritative name serverns1.berkeley.edu
intermediate name server(edu server)
7
8
![Page 25: EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of](https://reader034.vdocuments.mx/reader034/viewer/2022051819/551af99c5503465e7d8b5335/html5/thumbnails/25.jpg)
DNS: Iterated Queries
Recursive query:
• Puts burden of name resolution on contacted name server
• Heavy load?
Iterated query:
• Contacted server replies with name of server to contact
• “I don’t know this name, but ask this server” requesting host
whistler.cs.cmu.edu
www.berkeley.edu
root name server
local name servermango.srv.cs.cmu.edu
1
2
34
67
authoritative name serverns1.berkeley.edu
intermediate name server(edu server)
5
8
iterated query