Top Banner
Naming Amir H. Payberah [email protected] Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 1 / 45
81

Amir H. Payberah amir@sics · Naming Amir H. Payberah [email protected] Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Apr 26, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Naming

Amir H. [email protected]

Amirkabir University of Technology(Tehran Polytechnic)

Based on slides by Maarten Van Steen

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 1 / 45

Page 2: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Naming

I To operate on an entity, we need to access it at an access point.

I Names are used to denote entities in a distributed system.

I Access points are entities that are named by means of an address.

I A location-independent name for an entity E , is independent fromthe addresses of the access points offered by E .

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 2 / 45

Page 3: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Naming

I To operate on an entity, we need to access it at an access point.

I Names are used to denote entities in a distributed system.

I Access points are entities that are named by means of an address.

I A location-independent name for an entity E , is independent fromthe addresses of the access points offered by E .

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 2 / 45

Page 4: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Naming

I To operate on an entity, we need to access it at an access point.

I Names are used to denote entities in a distributed system.

I Access points are entities that are named by means of an address.

I A location-independent name for an entity E , is independent fromthe addresses of the access points offered by E .

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 2 / 45

Page 5: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Identifiers

I Pure name: a name that has no meaning at all; it is just a randomstring. Pure names can be used for comparison only.

I Identifier: a name having the following properties:• P1: each identifier refers to at most one entity.• P2: each entity is referred to by at most one identifier.• P3: an identifier always refers to the same entity.

I Observation: an identifier need not necessarily be a pure name, i.e.,it may have content.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 3 / 45

Page 6: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Identifiers

I Pure name: a name that has no meaning at all; it is just a randomstring. Pure names can be used for comparison only.

I Identifier: a name having the following properties:• P1: each identifier refers to at most one entity.• P2: each entity is referred to by at most one identifier.• P3: an identifier always refers to the same entity.

I Observation: an identifier need not necessarily be a pure name, i.e.,it may have content.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 3 / 45

Page 7: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Identifiers

I Pure name: a name that has no meaning at all; it is just a randomstring. Pure names can be used for comparison only.

I Identifier: a name having the following properties:• P1: each identifier refers to at most one entity.• P2: each entity is referred to by at most one identifier.• P3: an identifier always refers to the same entity.

I Observation: an identifier need not necessarily be a pure name, i.e.,it may have content.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 3 / 45

Page 8: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Different Class of Naming

I Flat naming

I Structured naming

I Attribute-based naming

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 4 / 45

Page 9: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Flat Naming

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 5 / 45

Page 10: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Flat Naming

I Problem: given an unstructured name (e.g., an identifier), how canwe locate its associated access point?

• Simple solutions (broadcasting)

• Home-based approaches

• Distributed Hash Tables (structured P2P)

• Hierarchical location service

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 6 / 45

Page 11: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Flat Naming

I Problem: given an unstructured name (e.g., an identifier), how canwe locate its associated access point?

• Simple solutions (broadcasting)

• Home-based approaches

• Distributed Hash Tables (structured P2P)

• Hierarchical location service

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 6 / 45

Page 12: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Simple Solution

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 7 / 45

Page 13: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Simple Solution (1/2)

I Broadcasting: broadcast the ID, requesting the entity to return itscurrent address.

I Can never scale beyond local-area networks.

I Requires all processes to listen to incoming location requests.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 8 / 45

Page 14: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Simple Solution (1/2)

I Broadcasting: broadcast the ID, requesting the entity to return itscurrent address.

I Can never scale beyond local-area networks.

I Requires all processes to listen to incoming location requests.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 8 / 45

Page 15: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Simple Solution (2/2)

I Forwarding pointers: when an entity moves, it leaves behind apointer to its next location.

I Dereferencing can be made entirely transparent to clients by simplyfollowing the chain of pointers.

I Geographical scalability problems:• Long chains are not fault tolerant.• Increased network latency at dereferencing.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 9 / 45

Page 16: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Simple Solution (2/2)

I Forwarding pointers: when an entity moves, it leaves behind apointer to its next location.

I Dereferencing can be made entirely transparent to clients by simplyfollowing the chain of pointers.

I Geographical scalability problems:• Long chains are not fault tolerant.• Increased network latency at dereferencing.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 9 / 45

Page 17: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Simple Solution (2/2)

I Forwarding pointers: when an entity moves, it leaves behind apointer to its next location.

I Dereferencing can be made entirely transparent to clients by simplyfollowing the chain of pointers.

I Geographical scalability problems:• Long chains are not fault tolerant.• Increased network latency at dereferencing.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 9 / 45

Page 18: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-Based Approaches

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 10 / 45

Page 19: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-base Approaches (1/3)

I Single-tiered scheme: let a home keep track of where the entity is:

• Entity’s home address registered at a naming service.

• The home registers the foreign address of the entity.

• Client contacts the home first, and then continues with foreignlocation.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 11 / 45

Page 20: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-base Approaches (1/3)

I Single-tiered scheme: let a home keep track of where the entity is:

• Entity’s home address registered at a naming service.

• The home registers the foreign address of the entity.

• Client contacts the home first, and then continues with foreignlocation.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 11 / 45

Page 21: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-base Approaches (2/3)

Host's present location

Client'slocation

1. Send packet to host at its home

2. Return addressof current location

3. Tunnel packet tocurrent location

4. Send successive packetsto current location

Host's homelocation

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 12 / 45

Page 22: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-base Approaches (3/3)

I Two-tiered scheme: keep track of visiting entities:• Check local visitor register first.• Fall back to home location if local lookup fails.

I Problems with home-based approaches:• Home address has to be supported for entity’s lifetime.• Home address is fixed ⇒ unnecessary burden when the entity

permanently moves.• Poor geographical scalability (entity may be next to client).

I How can we solve the permanent move problem?• Permanent moves may be tackled with another level of naming

(DNS).

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 13 / 45

Page 23: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-base Approaches (3/3)

I Two-tiered scheme: keep track of visiting entities:• Check local visitor register first.• Fall back to home location if local lookup fails.

I Problems with home-based approaches:• Home address has to be supported for entity’s lifetime.• Home address is fixed ⇒ unnecessary burden when the entity

permanently moves.• Poor geographical scalability (entity may be next to client).

I How can we solve the permanent move problem?• Permanent moves may be tackled with another level of naming

(DNS).

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 13 / 45

Page 24: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Home-base Approaches (3/3)

I Two-tiered scheme: keep track of visiting entities:• Check local visitor register first.• Fall back to home location if local lookup fails.

I Problems with home-based approaches:• Home address has to be supported for entity’s lifetime.• Home address is fixed ⇒ unnecessary burden when the entity

permanently moves.• Poor geographical scalability (entity may be next to client).

I How can we solve the permanent move problem?• Permanent moves may be tackled with another level of naming

(DNS).

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 13 / 45

Page 25: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (DHT)

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 14 / 45

Page 26: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (1/4)

I Chord: organize the nodes into a logical ring.

• Each node is assigned a random m-bit identifier.• Every entity is assigned a unique m-bit key.• Entity with key k falls under jurisdiction of node with smallestid ≥ k (called its successor).

I Let node id keep track of succ(id) and start linear search along thering.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 15 / 45

Page 27: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (1/4)

I Chord: organize the nodes into a logical ring.• Each node is assigned a random m-bit identifier.

• Every entity is assigned a unique m-bit key.• Entity with key k falls under jurisdiction of node with smallestid ≥ k (called its successor).

I Let node id keep track of succ(id) and start linear search along thering.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 15 / 45

Page 28: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (1/4)

I Chord: organize the nodes into a logical ring.• Each node is assigned a random m-bit identifier.• Every entity is assigned a unique m-bit key.

• Entity with key k falls under jurisdiction of node with smallestid ≥ k (called its successor).

I Let node id keep track of succ(id) and start linear search along thering.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 15 / 45

Page 29: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (1/4)

I Chord: organize the nodes into a logical ring.• Each node is assigned a random m-bit identifier.• Every entity is assigned a unique m-bit key.• Entity with key k falls under jurisdiction of node with smallestid ≥ k (called its successor).

I Let node id keep track of succ(id) and start linear search along thering.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 15 / 45

Page 30: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (1/4)

I Chord: organize the nodes into a logical ring.• Each node is assigned a random m-bit identifier.• Every entity is assigned a unique m-bit key.• Entity with key k falls under jurisdiction of node with smallestid ≥ k (called its successor).

I Let node id keep track of succ(id) and start linear search along thering.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 15 / 45

Page 31: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (2/4)

I Finger table: each node p maintains a finger table FTp[] with atmost m entries: FTp[i ] = succ(p + 2i−1).

I FTp[i ] points to the first node succeeding p by at least 2i−1.

I To look up a key k, node p forwards the request to node with indexj satisfying q = FTp[j ] ≤ k < FTp[j + 1].

I If p < k < FTp[1], the request is also forwarded to FTp[1].

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 16 / 45

Page 32: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (2/4)

I Finger table: each node p maintains a finger table FTp[] with atmost m entries: FTp[i ] = succ(p + 2i−1).

I FTp[i ] points to the first node succeeding p by at least 2i−1.

I To look up a key k, node p forwards the request to node with indexj satisfying q = FTp[j ] ≤ k < FTp[j + 1].

I If p < k < FTp[1], the request is also forwarded to FTp[1].

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 16 / 45

Page 33: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (2/4)

I Finger table: each node p maintains a finger table FTp[] with atmost m entries: FTp[i ] = succ(p + 2i−1).

I FTp[i ] points to the first node succeeding p by at least 2i−1.

I To look up a key k, node p forwards the request to node with indexj satisfying q = FTp[j ] ≤ k < FTp[j + 1].

I If p < k < FTp[1], the request is also forwarded to FTp[1].

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 16 / 45

Page 34: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (2/4)

I Finger table: each node p maintains a finger table FTp[] with atmost m entries: FTp[i ] = succ(p + 2i−1).

I FTp[i ] points to the first node succeeding p by at least 2i−1.

I To look up a key k, node p forwards the request to node with indexj satisfying q = FTp[j ] ≤ k < FTp[j + 1].

I If p < k < FTp[1], the request is also forwarded to FTp[1].

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 16 / 45

Page 35: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (3/4)

0 12

3

4

5

6

7

8

9

10

11

12

1314

15161718

19

20

21

22

23

24

25

26

27

28

2930

31

1 42 43 94 95 18

1 92 93 94 145 20

1 112 113 144 185 28

1 142 143 184 205 28

1 182 183 184 285 1

1 202 203 284 285 4

1 212 283 284 285 4

1 282 283 284 15 9

1 12 13 14 45 14

Resolve k = 26 from node 1

Resolve k = 12 from node 28

i succ

(p +

2 )

i-1

Finger table

Actual node

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 17 / 45

Page 36: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (4/4)

I Problem: the logical organization of nodes in the overlay may leadto erratic message transfers in the underlying Internet: node k andnode succ(k + 1) may be very far apart.

I Topology-aware node assignment: when assigning an ID to a node,make sure that nodes close in the ID space are also close in thenetwork.

I Proximity routing: maintain more than one possible successor, andforward to the closest.

I Proximity neighbor selection: when there is a choice of selectingwho your neighbor will be (not in Chord), pick the closest one.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 18 / 45

Page 37: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (4/4)

I Problem: the logical organization of nodes in the overlay may leadto erratic message transfers in the underlying Internet: node k andnode succ(k + 1) may be very far apart.

I Topology-aware node assignment: when assigning an ID to a node,make sure that nodes close in the ID space are also close in thenetwork.

I Proximity routing: maintain more than one possible successor, andforward to the closest.

I Proximity neighbor selection: when there is a choice of selectingwho your neighbor will be (not in Chord), pick the closest one.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 18 / 45

Page 38: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (4/4)

I Problem: the logical organization of nodes in the overlay may leadto erratic message transfers in the underlying Internet: node k andnode succ(k + 1) may be very far apart.

I Topology-aware node assignment: when assigning an ID to a node,make sure that nodes close in the ID space are also close in thenetwork.

I Proximity routing: maintain more than one possible successor, andforward to the closest.

I Proximity neighbor selection: when there is a choice of selectingwho your neighbor will be (not in Chord), pick the closest one.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 18 / 45

Page 39: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Distributed Hash Table (4/4)

I Problem: the logical organization of nodes in the overlay may leadto erratic message transfers in the underlying Internet: node k andnode succ(k + 1) may be very far apart.

I Topology-aware node assignment: when assigning an ID to a node,make sure that nodes close in the ID space are also close in thenetwork.

I Proximity routing: maintain more than one possible successor, andforward to the closest.

I Proximity neighbor selection: when there is a choice of selectingwho your neighbor will be (not in Chord), pick the closest one.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 18 / 45

Page 40: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Hierarchical Location Services(HLS)

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 19 / 45

Page 41: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Hierarchical Location Services (1/4)

I Build a large-scale search tree for which the underlying network isdivided into hierarchical domains.

I Each domain is represented by a separate directory node.

A leaf domain, contained in S

Directory nodedir(S) of domain S

A subdomain Sof top-level domain T(S is contained in T)

Top-leveldomain T

The root directorynode dir(T)

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 20 / 45

Page 42: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Hierarchical Location Services (2/4)

I Tree organization: address of entity E is stored in a leaf or interme-diate node.

I Intermediate nodes contain a pointer to a child iff the subtree rootedat the child stores an address of the entity.

I The root knows about all entities.

Domain D2Domain D1

M

Field with no data

Location recordwith only one field,containing an address

Field for domaindom(N) withpointer to N

Location recordfor E at node M

N

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 21 / 45

Page 43: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Hierarchical Location Services (3/4)

I Lookup operation: start lookup at local leaf node.

I Node knows about E ⇒ follow downward pointer, else go up.

I Upward lookup always stops at root.

Domain D

M

Node has norecord for E, sothat request isforwarded toparent

Look-uprequest

Node knowsabout E, so requestis forwarded to child

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 22 / 45

Page 44: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Hierarchical Location Services (4/4)

I Insert operation

Domain D

M

Node has norecord for E,so request isforwardedto parent

Insertrequest

Node knowsabout E, so requestis no longer forwarded

(a)

M

Node creates recordand stores pointer

Node createsrecord andstores address

(b)

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 23 / 45

Page 45: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Structured Naming

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 24 / 45

Page 46: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Structured Naming

I Name space: a graph in which a leaf node represents an entity.

I A directory node is an entity that refers to other nodes.

I A directory node contains a table of (edge label, node id)

pairs.

elke

.twmrc mbox

steen

home keys

"/home/steen/mbox"

"/keys""/home/steen/keys"

Data stored in n1

Directory node

Leaf node

n2: "elke"n3: "max"n4: "steen"

max

keys

n1

n2

n5

n0

n3 n4

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 25 / 45

Page 47: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space

I Directory nodes can also have attributes, besides just storing a tablewith (edge label, node id) pairs.

I We can easily store all kinds of attributes in a node, describingaspects of the entity the node represents:

• Type of the entity• An identifier for that entity• Address of the entity’s location• Nicknames• ...

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 26 / 45

Page 48: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Resolution

I To resolve a name we need a directory node. How do we actuallyfind that (initial) node?

I Closure mechanism: the mechanism to select the implicit contextfrom which to start name resolution:

• www.cs.vu.nl: start at a DNS name server• /home/steen/mbox: start at the local NFS file server• 0031204447784: dial a phone number• 130.37.24.8: route to the VU’s Web server

I Name linking: hard link vs. soft link

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 27 / 45

Page 49: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Resolution

I To resolve a name we need a directory node. How do we actuallyfind that (initial) node?

I Closure mechanism: the mechanism to select the implicit contextfrom which to start name resolution:

• www.cs.vu.nl: start at a DNS name server• /home/steen/mbox: start at the local NFS file server• 0031204447784: dial a phone number• 130.37.24.8: route to the VU’s Web server

I Name linking: hard link vs. soft link

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 27 / 45

Page 50: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Resolution

I To resolve a name we need a directory node. How do we actuallyfind that (initial) node?

I Closure mechanism: the mechanism to select the implicit contextfrom which to start name resolution:

• www.cs.vu.nl: start at a DNS name server• /home/steen/mbox: start at the local NFS file server• 0031204447784: dial a phone number• 130.37.24.8: route to the VU’s Web server

I Name linking: hard link vs. soft link

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 27 / 45

Page 51: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Linking (1/2)

I Hard link: what we have described so far as a path name.• A name that is resolved by following a specific path in a naming

graph from one node to another.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 28 / 45

Page 52: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Linking (2/2)

I Soft link: allow a node O to contain a name of another node:

• First resolve O’s name (leading to O).• Read the content of O, yielding name.• Name resolution continues with name.

I The name resolution process determines that we read the contentof a node, in particular, the name in the other node that we needto go to.

I One way or the other, we know where and how to start name reso-lution given name.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 29 / 45

Page 53: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Linking (2/2)

I Soft link: allow a node O to contain a name of another node:• First resolve O’s name (leading to O).• Read the content of O, yielding name.• Name resolution continues with name.

I The name resolution process determines that we read the contentof a node, in particular, the name in the other node that we needto go to.

I One way or the other, we know where and how to start name reso-lution given name.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 29 / 45

Page 54: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Linking (2/2)

I Soft link: allow a node O to contain a name of another node:• First resolve O’s name (leading to O).• Read the content of O, yielding name.• Name resolution continues with name.

I The name resolution process determines that we read the contentof a node, in particular, the name in the other node that we needto go to.

I One way or the other, we know where and how to start name reso-lution given name.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 29 / 45

Page 55: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (1/5)

I Distribute the name resolution process, as well as the name spacemanagement across multiple machines, by distributing nodes of thenaming graph.

I Distinguish three levels:

• Global level

• Administrational level

• Managerial level

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 30 / 45

Page 56: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (1/5)

I Distribute the name resolution process, as well as the name spacemanagement across multiple machines, by distributing nodes of thenaming graph.

I Distinguish three levels:

• Global level

• Administrational level

• Managerial level

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 30 / 45

Page 57: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (1/5)

I Distribute the name resolution process, as well as the name spacemanagement across multiple machines, by distributing nodes of thenaming graph.

I Distinguish three levels:

• Global level

• Administrational level

• Managerial level

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 30 / 45

Page 58: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (1/5)

I Distribute the name resolution process, as well as the name spacemanagement across multiple machines, by distributing nodes of thenaming graph.

I Distinguish three levels:

• Global level

• Administrational level

• Managerial level

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 30 / 45

Page 59: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (1/5)

I Distribute the name resolution process, as well as the name spacemanagement across multiple machines, by distributing nodes of thenaming graph.

I Distinguish three levels:

• Global level

• Administrational level

• Managerial level

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 30 / 45

Page 60: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (2/5)

I Global level: consists of the high-level directory nodes. Main aspectis that these directory nodes have to be jointly managed by differentadministrations.

org netjp us

nl

sun

eng

yale

eng

ai linda

robot

acm

jack jill

ieee

keio

cs

cs

pc24

co

nec

csl

oce vu

cs

ftp www

ac

com edugov mil

pub

globe

index.txt

Mana-geriallayer

Adminis-trational

layer

Globallayer

Zone

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 31 / 45

Page 61: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (3/5)

I Administrational level: contains mid-level directory nodes that canbe grouped in such a way that each group can be assigned to aseparate administrational.

org netjp us

nl

sun

eng

yale

eng

ai linda

robot

acm

jack jill

ieee

keio

cs

cs

pc24

co

nec

csl

oce vu

cs

ftp www

ac

com edugov mil

pub

globe

index.txt

Mana-geriallayer

Adminis-trational

layer

Globallayer

Zone

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 32 / 45

Page 62: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (4/5)

I Managerial level: consists of low-level directory nodes within a singleadministrational. Main issue is effectively mapping directory nodesto local name servers.

org netjp us

nl

sun

eng

yale

eng

ai linda

robot

acm

jack jill

ieee

keio

cs

cs

pc24

co

nec

csl

oce vu

cs

ftp www

ac

com edugov mil

pub

globe

index.txt

Mana-geriallayer

Adminis-trational

layer

Globallayer

Zone

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 33 / 45

Page 63: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Space Implementation (5/5)

Item Global Administrational Managerial

1 Worldwide Organization Department

2 Few Many Vast numbers

3 Seconds Milliseconds Immediate

4 Lazy Immediate Immediate

5 Many None or few None

6 Yes Yes Sometimes

1: Geographical scale 4: Update propagation

2: # Nodes 5: # Replicas

3: Responsiveness 6: Client-side caching?

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 34 / 45

Page 64: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Name Resolution

I Iterative

I Recursive

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 35 / 45

Page 65: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Iterative Name Resolution

1 resolve(dir, [name1, ..., nameK]) sent to Server0

responsible for dir.

2 Server0 resolves resolve(dir, name1) → dir1, returning theidentification (address) of Server1, which stores dir1.

3 Client sends resolve(dir1, [name2, ..., nameK]) toServer1, etc.

Client'snameresolver

Rootname server

Name servernl node

Name servervu node

Name servercs node

1. <nl,vu,cs,ftp>

2. #<nl>, <vu,cs,ftp>

3. <vu,cs,ftp>

4. #<vu>, <cs,ftp>

5. <cs,ftp>

6. #<cs>, <ftp>

ftp

cs

vu

nl

Nodes aremanaged bythe same server

7. <ftp>

8. #<ftp>

#<nl,vu,cs,ftp><nl,vu,cs,ftp>

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 36 / 45

Page 66: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Iterative Name Resolution

1 resolve(dir, [name1, ..., nameK]) sent to Server0

responsible for dir.

2 Server0 resolves resolve(dir, name1) → dir1, returning theidentification (address) of Server1, which stores dir1.

3 Client sends resolve(dir1, [name2, ..., nameK]) toServer1, etc.

Client'snameresolver

Rootname server

Name servernl node

Name servervu node

Name servercs node

1. <nl,vu,cs,ftp>

2. #<nl>, <vu,cs,ftp>

3. <vu,cs,ftp>

4. #<vu>, <cs,ftp>

5. <cs,ftp>

6. #<cs>, <ftp>

ftp

cs

vu

nl

Nodes aremanaged bythe same server

7. <ftp>

8. #<ftp>

#<nl,vu,cs,ftp><nl,vu,cs,ftp>

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 36 / 45

Page 67: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Iterative Name Resolution

1 resolve(dir, [name1, ..., nameK]) sent to Server0

responsible for dir.

2 Server0 resolves resolve(dir, name1) → dir1, returning theidentification (address) of Server1, which stores dir1.

3 Client sends resolve(dir1, [name2, ..., nameK]) toServer1, etc.

Client'snameresolver

Rootname server

Name servernl node

Name servervu node

Name servercs node

1. <nl,vu,cs,ftp>

2. #<nl>, <vu,cs,ftp>

3. <vu,cs,ftp>

4. #<vu>, <cs,ftp>

5. <cs,ftp>

6. #<cs>, <ftp>

ftp

cs

vu

nl

Nodes aremanaged bythe same server

7. <ftp>

8. #<ftp>

#<nl,vu,cs,ftp><nl,vu,cs,ftp>

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 36 / 45

Page 68: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Recursive Name Resolution

1 resolve(dir, [name1, ..., nameK]) sent to Server0

responsible for dir.

2 Server0 resolves resolve(dir, name1) → dir1, and sendsresolve(dir1, [name2, ..., nameK]) to Server1, whichstores dir1.

3 Server0 waits for result from Server1, and returns it to client.

Client'snameresolver

Rootname server

Name servernl node

Name servervu node

Name servercs node

1. <nl,vu,cs,ftp>

2. <vu,cs,ftp>

7. #<vu,cs,ftp>3. <cs,ftp>

6. #<cs,ftp>4. <ftp>

5. #<ftp>

#<nl,vu,cs,ftp>

8. #<nl,vu,cs,ftp>

<nl,vu,cs,ftp>

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 37 / 45

Page 69: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Recursive Name Resolution

1 resolve(dir, [name1, ..., nameK]) sent to Server0

responsible for dir.

2 Server0 resolves resolve(dir, name1) → dir1, and sendsresolve(dir1, [name2, ..., nameK]) to Server1, whichstores dir1.

3 Server0 waits for result from Server1, and returns it to client.

Client'snameresolver

Rootname server

Name servernl node

Name servervu node

Name servercs node

1. <nl,vu,cs,ftp>

2. <vu,cs,ftp>

7. #<vu,cs,ftp>3. <cs,ftp>

6. #<cs,ftp>4. <ftp>

5. #<ftp>

#<nl,vu,cs,ftp>

8. #<nl,vu,cs,ftp>

<nl,vu,cs,ftp>

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 37 / 45

Page 70: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Recursive Name Resolution

1 resolve(dir, [name1, ..., nameK]) sent to Server0

responsible for dir.

2 Server0 resolves resolve(dir, name1) → dir1, and sendsresolve(dir1, [name2, ..., nameK]) to Server1, whichstores dir1.

3 Server0 waits for result from Server1, and returns it to client.

Client'snameresolver

Rootname server

Name servernl node

Name servervu node

Name servercs node

1. <nl,vu,cs,ftp>

2. <vu,cs,ftp>

7. #<vu,cs,ftp>3. <cs,ftp>

6. #<cs,ftp>4. <ftp>

5. #<ftp>

#<nl,vu,cs,ftp>

8. #<nl,vu,cs,ftp>

<nl,vu,cs,ftp>

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 37 / 45

Page 71: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Scalability issues

I Size scalability: we need to ensure that servers can handle a largenumber of requests per time unit ⇒ high-level servers are in bigtrouble.

I Solution:• Assume (at least at global and administration level) that content of

nodes hardly ever changes.• We can then apply extensive replication by mapping nodes to multiple

servers, and start name resolution at the nearest server.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 38 / 45

Page 72: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Scalability issues

I Size scalability: we need to ensure that servers can handle a largenumber of requests per time unit ⇒ high-level servers are in bigtrouble.

I Solution:• Assume (at least at global and administration level) that content of

nodes hardly ever changes.• We can then apply extensive replication by mapping nodes to multiple

servers, and start name resolution at the nearest server.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 38 / 45

Page 73: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Attribute-based Naming

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 39 / 45

Page 74: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Attribute-based Naming

I In many cases, it is much more convenient to name, and look upentities by means of their attributes⇒ traditional directory services.

I Problem: lookup operations can be extremely expensive, as theyrequire to match requested attribute values, against actual attributevalues ⇒ inspect all entities (in principle).

I Solution: implement basic directory service as database, and com-bine with traditional structured naming system.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 40 / 45

Page 75: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Attribute-based Naming

I In many cases, it is much more convenient to name, and look upentities by means of their attributes⇒ traditional directory services.

I Problem: lookup operations can be extremely expensive, as theyrequire to match requested attribute values, against actual attributevalues ⇒ inspect all entities (in principle).

I Solution: implement basic directory service as database, and com-bine with traditional structured naming system.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 40 / 45

Page 76: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Attribute-based Naming

I In many cases, it is much more convenient to name, and look upentities by means of their attributes⇒ traditional directory services.

I Problem: lookup operations can be extremely expensive, as theyrequire to match requested attribute values, against actual attributevalues ⇒ inspect all entities (in principle).

I Solution: implement basic directory service as database, and com-bine with traditional structured naming system.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 40 / 45

Page 77: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Example: LDAP

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

I answer = search(”&(C = NL) (O = Vrije Universiteit) (OU = *)(CN = Main server)”)

C = NL

O = Vrije Universiteit

OU = Comp. Sc.

Host_Name = star Host_Name = zephyr

CN = Main server

N

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 41 / 45

Page 78: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Summary

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 42 / 45

Page 79: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Summary

I Naming

I Class of naming: flat, structured, attribute-based

I Flat naming: broadcast, home-based, DHT, hierarchical

I Structured naming: global level, administration level, manageriallevel

I Attribute-based: LDAP

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 43 / 45

Page 80: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Reading

I Chapter 5 of the Distributed Systems: Principles and Paradigms.

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 44 / 45

Page 81: Amir H. Payberah amir@sics · Naming Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Based on slides by Maarten Van Steen Amir H. Payberah (Tehran

Questions?

Amir H. Payberah (Tehran Polytechnic) Naming 1393/12/26 45 / 45