Professional Documents
Culture Documents
Chapter 5
Naming System in DS
Objectives
•After accomplishing this chapter, Students will be able to understand:
Names are used to share resources, uniquely identify entities and refer to
Names play a very important role in all computer systems and they are used
An important issue with naming is that a name can be resolved to the entity
A Name is a string composed of a set of symbols chosen from a finite alphabet
an object.
A name may also be supposed of as a logical object that identifies a physical
Therefore, the correspondence between names and objects is the relation of
binding logical and physical objects for the purpose of object identification.
Cont…
The essential issue with naming in the distributed system is that a name can be
resolved to the entity it refers to and Name Resolution thus allows a process to access
To Resolve Names, it is necessary to implement a naming system and the difference
between naming in distributed systems and non distributed systems lies in the way
In a distributed system, the implementation of a naming system is itself often
assign character-string names to objects and subsequently use these names to refer to
those objects.
The locating facility, which is an integral part of the naming facility, maps an object's
The naming and locating facilities jointly form a naming system that provides the
users with an abstraction of an object that hides the details of how and where an object
It provides a further level of abstraction when dealing with object
replicas.
Given an object name, it returns a set of the locations of the object's
replicas.
The Naming System Plays a very important role in achieving the goal
A name in a distributed system is a string of bits or characters that is used to refer
Typical examples include resources such as hosts, printers, disks, and files.
Other well-known examples of entities that are often explicitly named are
address) pairs.
•1. Location Transparency: Location transparency means that the name of an object
should not disclose any hint as to the physical location of the object.
system.
Cont…
•3. Scalability: Distributed systems vary in size ranging from one with a few nodes to one
with many nodes.
•Moreover, distributed systems are normally open systems, and their size changes
dynamically.
•Therefore, it is impossible to have an a priori idea about how large the set of names to be
dealt with is liable to get.
•Hence a naming system must be capable of adapting to the dynamically changing scale of
a distributed system that normally leads to a change in the size of the name space.
Cont…
•For example, file names typically differ from user names and process
names and instead of using such nonuniform naming conventions, a good
naming system should use the same naming convention for all types of
5. Multiple User-Defined Names for the Same Object: For a shared object, it is
desirable that different users of the object can use their own convenient names for
accessing it.
•Therefore, a naming system must provide the flexibility to assign multiple user-
•In this case, it should be possible for a user to change or delete his or her name for
•6. Group Naming: A naming system should allow many different objects to be
identified by the same name.
•However, for users, meaningful names are preferred to lower level identifiers such
as memory pointers, disk block numbers, or network addresses.
Cont…
•Therefore, a naming system should be efficient in the sense that the number of
messages exchanged in a name-mapping operation should be as small as
possible.
Cont…
•That is, if not necessary, a user should not be aware that multiple
copies of an object are in use.
Cont…
Cont…
•11. Locating the Nearest Replica. When a naming system supports the
use of multiple copies of the same object, it is important that the object-
consideration.
Cont…
• In the following, we will take a look at how flat names can be resolved, or, equivalently, how we
can locate an entity when given only its identifier.
• To do this the following resolve technique will used in the flat naming system:
• Typically, such facilities are offered by local-area networks in which all machines are
connected to a single cable or the logical equivalent thereof. Also, local-area wireless
networks fall into this category.
• Only the machines that can offer an access point for the entity send a reply message
containing the address of that access point.
Broadcasting
• Broadcasting becomes inefficient when the network grows and not only is
network bandwidth wasted by request messages, but, more seriously, too many
hardware.
Broadcasting
Forwarding Pointers
• Another popular approach to locating mobile entities is to make use of forwarding pointers and the
principle is simple: when an entity moves from A to B, it leaves behind in A a reference to its new location
at B.
• The Main Advantage of this approach is its simplicity: as soon as an entity has been located, for example
by using a traditional naming service, a client can look up the current address by following the chain of
forwarding pointers.
One person moves from Arba Minch Hawassa Addis Ababa Adama Dire Dawa Harar…….
Forwarding Pointers…
Second, all intermediate locations in a chain will have to maintain their part of the chain of
forwarding pointers as long as needed.
As soon as any forwarding pointer is lost (for whatever reason) the entity can no longer be reached.
• An important issue is, therefore, to keep chains relatively short, and to ensure that forwarding
pointers are robust.
Broadcast vs. Forward Pointer
• Broadcasting:
• Scalability problems
• Efficiency problems in large scale systems
• Forwarding Pointers:
• Geographical scalability problems
• Long chains: performance problem
• Prone to failure
Home-Based Approach
• The use of broadcasting and forwarding pointers imposes scalability problems
and broadcasting or multicasting is difficult to implement efficiently in largescale
networks whereas long chains of forwarding pointers introduce performance
problems and are susceptible to broken links.
• Otherwise, it is tunneled to the host's current location, that is, wrapped as data in
an IP packet and sent to the care-of address.
• At the same time, the sender of the packet is informed of the host's current
location. This principle is shown in next slid.
• Note that the IP address is effectively used as an identifier for the mobile host.
Cont….
Home-Location: popular for supporting mobile entities in large-scale networks.
Keeps track of the current location and often, the place where an entity is created
Hierarchical Approaches
• Each domain can be subdivided into multiple, subdomains and a lowest-level domain,
called a leaf domain, typically corresponds to a local-area network in a computer
network or a cell in a mobile telephone network.
• Each domain D has an associated directory node dirt D that keeps track of the entities
in that domain.
• The directory node of the top-level domain, the root (directory) node, knows about all
entities and this general organization of a network into domains and directory nodes.
Cont…
Cont…
• A directory node has a number of outgoing edges each labeled with a name.
Attributed-Based Name System
Flat and structured names generally provide a unique and location-independent way
of referring to entities.
However, location independence and human friendliness are not the only criterion
for naming entities.
It is up to the naming system to return one or more entities that meet the user's
description.
• Naming organization of names and name resolution are key issue in any
distributed systems.
• Locating entities is an open research issues and there are few methods like
Forwarding pointers, hierarchical approaches, home based approaches and pointer
• Reference counting, advanced reference counting and Reference listing are few
methods that can be used for unreferenced objects.
Thank You!!