Transcript Name
第2讲 命名机制
§2.1 非结构化命名
§2.2 结构化命名
§2.3 基于属性的命名
Naming, a problem?
Used to refer to entities, locations, resources, ...
Object Name Object
Centralized or distributed naming
Entity, Name and Address
Name: a string of bits or characters used to refer to an entity.
Entity: can be anything, e.g. hosts, files, connections…
Access point: the special “entity” used to access an entity.
Address: the name of an access point.
Addr. of access point Addr. of entity
Entities
Access points
Addresses:
-Phone no.
-Email addr.
-QQ no.
-Room no.
-etc.
Identifier
A name that
refers to at most one entity, (unique)
always refers to the same entity, and (constant)
solely refers to one entity. (identifying)
--User-friendly name, e.g. file name, URL
--Machine-readable name, e.g. IP address
§2.1 Flat Naming
Unstructured naming
Identifiers are simply random bit strings
Machine-friendly
Key issue:
Name/Identifier resolution or entity locating
Simple Solutions – broadcast/multicast
Broadcasting
Query by broadcasting a message with identifier
E.g. Internet Address Resolution Protocol (ARP)
Inefficient in large network
Entity: host, Identifier: IP addr., Address: data-link addr.
Bandwidth consumption, host interruption
Multicasting
Data-link level multicasting
Network level multicasting
Unsuitable for large network!
Simple Solutions – forwarding pointers
Upon moving, a pointer is left that points to new location.
Simple Solutions – forwarding pointers
Short-cut to avoid triangle forwarding
Prone to failure!
Home-Based Approaches
The principle of Mobile IP
Distributed Hash Tables
A Chord system
Hierarchical Approaches
§2.2 Structured Naming
Human-friendly
Names are composed from simple, humanreadable names
Name Resolution
Following the directory, level by level
The aliases: one entities has more than one name
Hard link vs. Symbolic link
Name Space Distribution
Figure 5-13. An example partitioning of the DNS name space
Example of Name Resolution
Figure 5-18. recursive vs. iterative name
§2.3 Attribute-based Naming
Also known as “directory service”
Entities are associated with attributes
E.g. subject, sender of an email.
Searching is done based on attributes
Attribute design is not trivial!
RDF, Resource Description Framework
URL based
Hierarchical Implementations: LDAP
Figure 5-22. A simple example of an LDAP directory entry
Directory Information Tree (DIT)
The naming graph
Similar to DNS, but more searching operations
A node is: a directory AND a LDAP record
Operations of LDAP
Read:
List:
to read a single record given its path name in the DIT
to list the names of all outgoing edges of a given node
in the DIT
Search:
to search for a directory entry given a set of criteria that
attributes of the searched entries should meet.
Decentralized Implementations: DHT
Decentralized Implementations:
Semantic Overlay
Figure 5-26. Maintaining a semantic overlay through gossiping.
Summary
Naming
Flat naming: machine friendly
Broadcasting/Multicasting
Forwarding pointer
Home-based
DHT
Hierarchical naming
Structured naming: human friendly
Location independence
Name spaces
Attribute-based naming: referring to multiple entities
LDAP, DHT, Semantic Overlay
Homework Questions
1.
2.