Presentation is loading. Please wait.

Presentation is loading. Please wait.

Naming Chapter 5. n Most of the lecture notes are based on slides by Prof. Jalal Y. Kawash at Univ. of Calgary n Some slides are from Brennen Reynolds.

Similar presentations


Presentation on theme: "Naming Chapter 5. n Most of the lecture notes are based on slides by Prof. Jalal Y. Kawash at Univ. of Calgary n Some slides are from Brennen Reynolds."— Presentation transcript:

1 Naming Chapter 5

2 n Most of the lecture notes are based on slides by Prof. Jalal Y. Kawash at Univ. of Calgary n Some slides are from Brennen Reynolds at University of California, Davis n I have modified them and added new slides Giving credit where credit is due: CSCE455/855 Distributed Operating Systems

3 Names (1) l Name: a string of bits or characters l Why we need names in a computer system? n To refer to and operate on entities such as hosts, printers, disks, and files etc. l To operate on an entity, we need to access it n i.e., to obtain an entity’s access points (addresses) u for example, the following are my access points: ylu@cse.unl.edu, (402)472-5793 ylu@cse.unl.edu u for a running server process, its transport-level address (IP address, port number) serves as its access point

4 Names (2) l How about use an address as the name to refer to an entity? n Use (129.93.165.4, TCP port 21) to refer to our dept. ftp service? n Use (402) 472 – 5793 to refer to me?

5 Names (3) l Using address to refer to an entity is n Inflexible, human unfriendly, subject to changes u an entity changes address, address reassigned to another entity n An entity has more than one address (access point), which one to use as a reference? l Easier and more flexible to use location independent names

6 A Special Type of Name: Identifier l An identifier refers to at most one entity l Each entity is referred to by at most one identifier l An identifier always refers to the same entity (prohibits reusing an identifier) l What could serve as a person’s identifier?

7 Name Types Identifier –unambiguously refers to an entity Address –access point Human Friendly Name –a name tailored to be used by humans, often a character string

8 What is a Naming System Name system maintains a name-to-address binding to resolve name (or identifier) to address The implementation of naming systems in distributed and non-distributed systems are quite different –Say, how to locate a process in a uniprocessor system?

9

10 Naming Systems Part I: Flat Naming –Resolves identifiers to addresses Part II: Structured Naming –Resolves structured human-friendly names to addresses Part III: Attributed-based Naming –Resolves descriptive names to addresses

11 Flat Naming Simple Solutions –Broadcasting –Forwarding pointers Home-based Solutions Hierarchical Solutions Distributed Hash Tables

12 Broadcasting (I) Entity(A) Need Address for Entity(A) Reply to Request Address of Entity(A) IGNORE Request Internet ARP: Network IP addresses  data-link MAC addresses

13 Broadcasting (II) Broadcasting is not suitable for larger networks –Bandwidth is wasted –Hosts are interrupted for no reason

14 Forwarding Pointers A popular method to locate mobile entities When an entity moves from A to B, it leaves a pointer to B at A Simple: use traditional naming service to locate A, then follow the pointer chain Example: postal service –One person moves from Florida  Virginia

15 Forwarding Pointers Figure 5-1. The principle of forwarding pointers using (client stub, server stub) pairs.

16 Forwarding Pointers Expensive if chain gets too large Lost pointer?

17 Forwarding Pointers Figure 5-2. Redirecting a forwarding pointer by storing a shortcut in a client stub.

18 Forwarding Pointers Figure 5-2. Redirecting a forwarding pointer by storing a shortcut in a client stub.

19 Comparison Broadcasting: –Scalability problems –Efficiency problems in large scale systems Forwarding Pointers: –Geographical scalability problems Long chains: performance problem Prone to failure

20 Home-Based Approaches Home-location: popular for supporting mobile entities in large-scale networks Keeps track of the current location

21 Mobile IP Assign a fixed IP (home location) to a mobile host Contact host through home location

22 Flat Naming Simple Solutions –Broadcasting –Forwarding pointers Home-based Solutions Hierarchical Solutions Distributed Hash Tables

23 Hierarchical Approaches Hierarchical organization of a location service into domains, each having an associated directory node.

24 Hierarchical Approaches – Lookup Operation Looking up a location in a hierarchically organized location service.

25 Hierarchical Approaches – Update Operation a)An insert request is forwarded to the first node that knows about entity E. b)A chain of forwarding pointers to the leaf node is created.

26 Hierarchical Approaches – Replicating Entities An example of storing information of an entity having two addresses in different leaf domains.

27 Hierarchical Approaches – Delete Operation Delete a replica of entry E?

28 Hierarchical Approaches – Delete Operation Delete Replica R of Entity E from domain D Delete pointer from dir(D) to R If location record of E at dir(D) is empty, delete record Apply recursively, going up the tree


Download ppt "Naming Chapter 5. n Most of the lecture notes are based on slides by Prof. Jalal Y. Kawash at Univ. of Calgary n Some slides are from Brennen Reynolds."

Similar presentations


Ads by Google