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.