Distributed Systems Principles and Paradigms: Chapter 05: Naming
Distributed Systems Principles and Paradigms: Chapter 05: Naming
d
i
(logNC)
1+d + +d
logN1
1/(1)
with N is the total number of nodes, d =b
(1)/
and 1, assuming
that popularity follows a Zipf distribution:
The frequency of the n-th ranked item is proportional to 1/n
35 / 38
Naming 5.3 Structured Naming
Replication of records
Meaning
If you want to reach an average of C =1 hops when looking up a DNS
record, then with b =4, =0.9, N =10, 000 and 1, 000, 000 records
that
61 most popular records should be
replicated at level 0
284 next most popular records at level 1
1323 next most popular records at level 2
6177 next most popular records at level 3
28826 next most popular records at level 4
134505 next most popular records at level 5
the rest should not be replicated
36 / 38
Naming 5.4 Attribute-Based Naming
Attribute-based naming
Observation
In many cases, it is much more convenient to name, and look up
entities by means of their attributes traditional directory services
(aka yellow pages).
Problem
Lookup operations can be extremely expensive, as they require to
match requested attribute values, against actual attribute values
inspect all entities (in principle).
Solution
Implement basic directory service as database, and combine with
traditional structured naming system.
37 / 38
Naming 5.4 Attribute-Based Naming
Attribute-based naming
Observation
In many cases, it is much more convenient to name, and look up
entities by means of their attributes traditional directory services
(aka yellow pages).
Problem
Lookup operations can be extremely expensive, as they require to
match requested attribute values, against actual attribute values
inspect all entities (in principle).
Solution
Implement basic directory service as database, and combine with
traditional structured naming system.
37 / 38
Naming 5.4 Attribute-Based Naming
Attribute-based naming
Observation
In many cases, it is much more convenient to name, and look up
entities by means of their attributes traditional directory services
(aka yellow pages).
Problem
Lookup operations can be extremely expensive, as they require to
match requested attribute values, against actual attribute values
inspect all entities (in principle).
Solution
Implement basic directory service as database, and combine with
traditional structured naming system.
37 / 38
Naming 5.4 Attribute-Based Naming
Example: LDAP
C = NL
O = Vrije Universiteit
OU = Comp. Sc.
Host_Name = star Host_Name = zephyr
CN = Main server
N
Attribute Value Attribute Value
Country NL Country NL
Locality Amsterdam Locality Amsterdam
Organization Vrije Universiteit Organization Vrije Universiteit
OrganizationalUnit Comp. Sc. OrganizationalUnit Comp. Sc.
CommonName Main server CommonName Main server
Host Name star Host Name zephyr
Host Address 192.31.231.42 Host Address 137.37.20.10
answer =
search("&(C = NL) (O = Vrije Universiteit) (OU =
*
) (CN = Main server)")
38 / 38