SlideShare a Scribd company logo
1 of 33
 What is a name in Distributed Systems?
A name in a distributed system is a string of bits or
characters that is used to refer to an entity.
 What is an Entity?
An entity in a distributed system can be practically
anything.
Examples include resources such as hosts, printers, disks,
and files, processes, users, mailboxes, newsgroups, Web
pages, graphical windows, messages, network
connections
 Entities can be operated on.
 For example:
1) A Printer offers an interface containing operations for
printing a document, requesting the status of a print
job, and the like.
2) Network connection may provide operations for
sending and receiving data, setting quality-of-service
parameters, requesting the status, and so forth.
 To operate on an entity, it is necessary to access it, for
which we need an Access Point. An access point is
special, kind of entity in a distributed system.
 The name of an access point is called an address.
 The address of an access point of an entity is also
simply called an address of that entity.
 An entity can offer more than one access point.
 Example:
Telephone - access point of a person
Telephone number - address.
 In a distributed system, a typical example of an access
point is a host running a specific server, with its
address formed by the combination of, for example, an
IF address and port number.
 An entity may change its access points in the course of
time.
 For example.
When a mobile computer moves to another location, it is often
assigned a different IP address than the one it had before.
When a person moves to another city or country, it is often
necessary to change telephone numbers as well.
 An address is thus just a special kind of name: it refers to an
access point of an entity. Because an access point is tightly
associated with an entity, it would seem convenient to use the
address of an access point as a regular name for the associated
entity. Nevertheless, this is hardly ever done as such naming
is generally very inflexible and often human unfriendly
 The old machine on which the server used to be
running may be reassigned to a completely different
server.
 If an address is used to refer to an entity, we will have
an invalid reference the instant the access point changes
or is reassigned to another entity.
 Therefore, it is much better to let a service be known by
a separate name independent of the address of the
associated server.
 If an entity offers more than one access point, it is not clear
which address to use as a reference.
 Many organizations distribute their Web service across several
servers. If we would use the addresses of those servers as a
reference for the Web service, it is not obvious which address
should be chosen as the best one.
 Solution: To have a single name for the Web service independent
from the addresses of the different Web servers.
 A name for an entity that is independent from its addresses is
often much easier and more flexible to use. Such a name is called
location independent.
 Identifier :Name that is used to uniquely identify an entity.
 A true identifier is a name that has the following properties
:
1. An identifier refers to at most one entity.
2. Each entity is referred to by at most one identifier.
3. An identifier always refers to the same entity (i.e., it is
never reused).
 If an address can be reassigned to a different entity, we
cannot use an address as an identifier.
eg: telephone numbers.
 In many computer systems, addresses and identifiers are
represented in machine-readable form only, that is, in the
form of bit strings.
 For example, an Ethernet address is essentially a random
string of 48 bits. Likewise, memory addresses are typically
represented as 32-bit or 64-bit strings.
 In contrast to addresses and identifiers, a human-friendly
name is generally represented as a character string. These
names appear in many different forms. For example, files in
UNIX systems have character-string names that can be as
long as 255 characters, and which are defined entirely by
the user. Similarly, DNS names are represented as relatively
simple case-insensitive character strings.
 A naming system maintains a name-to-address binding which in
its simplest form is just a table of (name, address) pairs.
 In distributed systems that span large networks and for which
many resources need to be named, a centralized table is not
going to work.
 A name is decomposed into several parts such as
ftp.cs. vu.nl
and name resolution takes place through a recursive lookup of
those parts. For example, a client needing to know the address of
the FTP server named by ftp.cs.vu.nl would first resolve nl to
find the server NS(nl) responsible for names that end with nl,
after which the rest of the name is passed to server NS(nl).
NS(.) ~ NS(nl) ~ NS(vu.nl) ~ address of ftp.cs.vu.nl
Name Spaces
 Names are commonly organized into what is called a
name space.
 Name spaces for structured names can be represented
as a labeled, directed graph with two types of nodes.
 Leaf Nodes
 Directory Nodes
 Represents a named entity and has the property that it
has no outgoing edges.
 Generally stores information on the entity it is
representing-for example, its address-so that a client
can access it.
 It can store the state of that entity, such as in the case of
file systems in which a leaf node actually contains the
complete file it is representing.
 Has a number of outgoing edges, each labeled with a
name
 Each node in a naming graph is considered as an entity
in a distributed system and has an associated identifier.
 A directory node stores a table in which an outgoing
edge is represented as a pair (edge label, node
identifier). Such a table is called a directory table.
 Each path in a naming graph can be referred to by the
sequence of labels corresponding to the edges in that
path, such as
N:<label-I, label-2, ..., label-n>
 where N refers to the first node in the path. Such a
sequence is called a path name. If the first node in a
path name is the root of the naming graph, it is called
an absolute path name. Otherwise, it is called a
relative path name.
 In a naming graph for UNIX,
 a directory node represents a file directory,
 a leaf node represents a file.
 There is a single root directory, represented in the naming
graph by the root node.
 The implementation of the naming graph is an integral part
of the complete implementation of the file system. That
implementation consists of a contiguous series of blocks
from a logical disk, generally divided into a boot block, a
superblock, a series of index nodes (called inodes), and
file data blocks.
1) Boot block:
 Used to load the operating system into main memory.
 Special block of data and instructions that are
automatically loaded into main memory when the
system is booted.
2) Superblock:
 contains information on the entire file system. such as
its size, which blocks on disk are not yet allocated,
which inodes are not yet used
3) Inodes:
 Referred by an index number, starting at number zero,
which is reserved for the inode representing the root
directory.
 Each inode contains information on where the data of
its associated file can be found on disk.
 An inode contains information of its owner, time of
creation and last modification, protection, and the like.
 When given the index number of an inode, it is possible
to access its associated file.
 Name spaces offer a convenient mechanism for storing
and retrieving information about entities by means of
names. More generally, given a path name, it should be
possible to look up any information stored in the node
referred to by that name. The process of looking up a
name is called name resolution.
 To explain how name resolution works,
Consider a path name such as
N:<label 1,label 2, ... .labeln>
 Resolution of this name starts at node N of the naming
graph, where the name label1 is looked up in the
directory table, and which returns the identifier of the
node to which label1 refers. Resolution then continues
at the identified node by looking up the name label2 in
its directory table, and so on.
 A name lookup returns the identifier of a node from
where the name resolution process continues.
 Knowing how and where to start name resolution is
generally referred to as a closure mechanism.
 Name resolution can take place only if we know how
and where to start.
 A closure mechanism deals with selecting the initial
node in a name space from which name resolution is to
start.
 Example 1:
 Consider the string representation of a file name such as
/home/steen/mbox.
 To resolve this name, it is necessary to already have access
to the directory table of the root node of the appropriate
naming graph. Being a root node, the node itself cannot
have been looked up unless it is implemented as a different
node in a another naming graph, say G.
NOTE:
 Use of string
“0031204430784”
 People will not know what to do with this
unless they are told that it’s a telephone
number.
 Telephone System will do the rest.
 Strongly related to name resolution is the use
of aliases.
 ALIAS: Another name for the same entity.
 In naming graph there are two ways to
implement an alias:
1) First Approach
2) Second Approach
 First Approach
To simply allow multiple absolute paths names to refer
to the same node in a naming graph.
 Example:
Node n5 can be referred to by two different path
names. In UNIX terminology, both path names /keys
and /home/steen/keys in figure are called hard links to
node n5.
 Second Approach
To represent an entity by a leaf node, say N, but instead
of storing the address or state of that entity, the node
stores an absolute path name.
 This principle corresponds to use of symbolic links in
UNIX file systems.
 Example:
The path name /home/steen/keys, which refers to a
node containing the absolute path name /keys, is a
symbolic link to node n5 .
 Name resolution can also be used to merge different name
spaces in a transparent way.
 Example: mounted file system
 A mounted file system corresponds to letting a directory
node store the identifier of a directory node from a different
name space, which we refer to as a foreign name space. The
directory node storing the node identifier is called a mount
point. Accordingly, the directory node in the foreign name
space is called a mounting point. Normally, the mounting
point is the root of a name space. During name resolution,
the mounting point is looked up and resolution proceeds by
accessing its directory table.
 If we want to mount a foreign name space NS 2 into a
name space NS 1, it may be necessary to communicate
over a network with the server of NS 2, as that server
may be running on a different machine than the server
for NS1. To mount a foreign name space in a
distributed system requires at least the following
information:
1. The name of an access protocol.
2. The name of the server.
3. The name of the mounting point in the foreign name
space.
 The client machine and the file server are both configured
with Sun's Network File System (NFS).
 NFS is a distributed file system that comes with a protocol
that describes precisely how a client can access a file stored
on a (remote) NFS file server.
 To allow NFS to work across the Internet, a client can
specify exactly which file it wants to access by means of an
NFS URL, for example, nfs://flits.cs. vu.nl//home/steen.
This URL names a file (which happens to be a directory)
called /home/steen on an NFS file server flits.cs. vu.nl,
which can be accessed by a client by means of the NFS
protocol.
 1) Broadcasting and Multicasting
 2) Forwarding Pointers
 Home Based Approach- Mobile IP

More Related Content

What's hot

Design Goals of Distributed System
Design Goals of Distributed SystemDesign Goals of Distributed System
Design Goals of Distributed SystemAshish KC
 
directory structure and file system mounting
directory structure and file system mountingdirectory structure and file system mounting
directory structure and file system mountingrajshreemuthiah
 
Free Space Management, Efficiency & Performance, Recovery and NFS
Free Space Management, Efficiency & Performance, Recovery and NFSFree Space Management, Efficiency & Performance, Recovery and NFS
Free Space Management, Efficiency & Performance, Recovery and NFSUnited International University
 
3. distributed file system requirements
3. distributed file system requirements3. distributed file system requirements
3. distributed file system requirementsAbDul ThaYyal
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing modelsishmecse13
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure callSunita Sahu
 
Chapter 11 - File System Implementation
Chapter 11 - File System ImplementationChapter 11 - File System Implementation
Chapter 11 - File System ImplementationWayne Jones Jnr
 
Kernel security of Systems
Kernel security of SystemsKernel security of Systems
Kernel security of SystemsJamal Jamali
 
Unit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsUnit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsNandakumar P
 
Segmentation in Operating Systems.
Segmentation in Operating Systems.Segmentation in Operating Systems.
Segmentation in Operating Systems.Muhammad SiRaj Munir
 
Process management in linux
Process management in linuxProcess management in linux
Process management in linuxMazenetsolution
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OSvampugani
 
Process management os concept
Process management os conceptProcess management os concept
Process management os conceptpriyadeosarkar91
 
System models in distributed system
System models in distributed systemSystem models in distributed system
System models in distributed systemishapadhy
 

What's hot (20)

Design Goals of Distributed System
Design Goals of Distributed SystemDesign Goals of Distributed System
Design Goals of Distributed System
 
directory structure and file system mounting
directory structure and file system mountingdirectory structure and file system mounting
directory structure and file system mounting
 
Free Space Management, Efficiency & Performance, Recovery and NFS
Free Space Management, Efficiency & Performance, Recovery and NFSFree Space Management, Efficiency & Performance, Recovery and NFS
Free Space Management, Efficiency & Performance, Recovery and NFS
 
3. distributed file system requirements
3. distributed file system requirements3. distributed file system requirements
3. distributed file system requirements
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
 
Chapter 11 - File System Implementation
Chapter 11 - File System ImplementationChapter 11 - File System Implementation
Chapter 11 - File System Implementation
 
Kernel security of Systems
Kernel security of SystemsKernel security of Systems
Kernel security of Systems
 
Coda file system
Coda file systemCoda file system
Coda file system
 
Unit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsUnit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed Systems
 
Segmentation in Operating Systems.
Segmentation in Operating Systems.Segmentation in Operating Systems.
Segmentation in Operating Systems.
 
Distributed File Systems
Distributed File SystemsDistributed File Systems
Distributed File Systems
 
Firewalls
FirewallsFirewalls
Firewalls
 
Process management in linux
Process management in linuxProcess management in linux
Process management in linux
 
Linux file system
Linux file systemLinux file system
Linux file system
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
 
DBMS - RAID
DBMS - RAIDDBMS - RAID
DBMS - RAID
 
Distributed Operating System_4
Distributed Operating System_4Distributed Operating System_4
Distributed Operating System_4
 
Process management os concept
Process management os conceptProcess management os concept
Process management os concept
 
System models in distributed system
System models in distributed systemSystem models in distributed system
System models in distributed system
 

Similar to Naming Entities and Locating Mobile Entities

Chapter 5-Naming in distributed system.pptx
Chapter 5-Naming in distributed system.pptxChapter 5-Naming in distributed system.pptx
Chapter 5-Naming in distributed system.pptxAschalewAyele2
 
DNS ( Domain Name System)
DNS ( Domain Name System)DNS ( Domain Name System)
DNS ( Domain Name System)Prakhar Rastogi
 
Application layer
Application layerApplication layer
Application layerSisir Ghosh
 
Name a naming mechanism for delay disruption tolerant network
Name a naming mechanism for delay disruption tolerant networkName a naming mechanism for delay disruption tolerant network
Name a naming mechanism for delay disruption tolerant networkIJCNCJournal
 
Domain Name System DNS
Domain Name System DNSDomain Name System DNS
Domain Name System DNSAkshay Tiwari
 
telnet ftp email
telnet ftp emailtelnet ftp email
telnet ftp emailswatihans
 
X.500 More Than a Global Directory
X.500 More Than a Global DirectoryX.500 More Than a Global Directory
X.500 More Than a Global Directorylurdhu agnes
 
Introduction to the core.ns application framework
Introduction to the core.ns application frameworkIntroduction to the core.ns application framework
Introduction to the core.ns application frameworkVladimir Ulogov
 
Chapter Six Application Layer.ppt
Chapter Six Application Layer.pptChapter Six Application Layer.ppt
Chapter Six Application Layer.pptGirT2
 
19 structured files
19 structured files19 structured files
19 structured filesashish61_scs
 

Similar to Naming Entities and Locating Mobile Entities (20)

Chapter 5-Naming in distributed system.pptx
Chapter 5-Naming in distributed system.pptxChapter 5-Naming in distributed system.pptx
Chapter 5-Naming in distributed system.pptx
 
Chapter 4-Naming.ppt
Chapter 4-Naming.pptChapter 4-Naming.ppt
Chapter 4-Naming.ppt
 
DS_Unit_05.pptx
DS_Unit_05.pptxDS_Unit_05.pptx
DS_Unit_05.pptx
 
DNS
DNS DNS
DNS
 
The Application Layer
The Application LayerThe Application Layer
The Application Layer
 
Namespace.pdf
Namespace.pdfNamespace.pdf
Namespace.pdf
 
DNS AND DDNS
DNS AND DDNSDNS AND DDNS
DNS AND DDNS
 
DNS ( Domain Name System)
DNS ( Domain Name System)DNS ( Domain Name System)
DNS ( Domain Name System)
 
Application layer
Application layerApplication layer
Application layer
 
IP Addresses and Its Uses
IP Addresses and Its UsesIP Addresses and Its Uses
IP Addresses and Its Uses
 
Name a naming mechanism for delay disruption tolerant network
Name a naming mechanism for delay disruption tolerant networkName a naming mechanism for delay disruption tolerant network
Name a naming mechanism for delay disruption tolerant network
 
Domain Name System DNS
Domain Name System DNSDomain Name System DNS
Domain Name System DNS
 
telnet ftp email
telnet ftp emailtelnet ftp email
telnet ftp email
 
Domain name system
Domain name systemDomain name system
Domain name system
 
Domain Name System
Domain Name SystemDomain Name System
Domain Name System
 
X.500 More Than a Global Directory
X.500 More Than a Global DirectoryX.500 More Than a Global Directory
X.500 More Than a Global Directory
 
Introduction to the core.ns application framework
Introduction to the core.ns application frameworkIntroduction to the core.ns application framework
Introduction to the core.ns application framework
 
Dns And Snmp
Dns And SnmpDns And Snmp
Dns And Snmp
 
Chapter Six Application Layer.ppt
Chapter Six Application Layer.pptChapter Six Application Layer.ppt
Chapter Six Application Layer.ppt
 
19 structured files
19 structured files19 structured files
19 structured files
 

Recently uploaded

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfUmakantAnnand
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 

Recently uploaded (20)

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.Compdf
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 

Naming Entities and Locating Mobile Entities

  • 1.
  • 2.  What is a name in Distributed Systems? A name in a distributed system is a string of bits or characters that is used to refer to an entity.  What is an Entity? An entity in a distributed system can be practically anything. Examples include resources such as hosts, printers, disks, and files, processes, users, mailboxes, newsgroups, Web pages, graphical windows, messages, network connections
  • 3.  Entities can be operated on.  For example: 1) A Printer offers an interface containing operations for printing a document, requesting the status of a print job, and the like. 2) Network connection may provide operations for sending and receiving data, setting quality-of-service parameters, requesting the status, and so forth.
  • 4.  To operate on an entity, it is necessary to access it, for which we need an Access Point. An access point is special, kind of entity in a distributed system.  The name of an access point is called an address.  The address of an access point of an entity is also simply called an address of that entity.
  • 5.  An entity can offer more than one access point.  Example: Telephone - access point of a person Telephone number - address.  In a distributed system, a typical example of an access point is a host running a specific server, with its address formed by the combination of, for example, an IF address and port number.
  • 6.  An entity may change its access points in the course of time.  For example. When a mobile computer moves to another location, it is often assigned a different IP address than the one it had before. When a person moves to another city or country, it is often necessary to change telephone numbers as well.  An address is thus just a special kind of name: it refers to an access point of an entity. Because an access point is tightly associated with an entity, it would seem convenient to use the address of an access point as a regular name for the associated entity. Nevertheless, this is hardly ever done as such naming is generally very inflexible and often human unfriendly
  • 7.  The old machine on which the server used to be running may be reassigned to a completely different server.  If an address is used to refer to an entity, we will have an invalid reference the instant the access point changes or is reassigned to another entity.  Therefore, it is much better to let a service be known by a separate name independent of the address of the associated server.
  • 8.  If an entity offers more than one access point, it is not clear which address to use as a reference.  Many organizations distribute their Web service across several servers. If we would use the addresses of those servers as a reference for the Web service, it is not obvious which address should be chosen as the best one.  Solution: To have a single name for the Web service independent from the addresses of the different Web servers.  A name for an entity that is independent from its addresses is often much easier and more flexible to use. Such a name is called location independent.
  • 9.  Identifier :Name that is used to uniquely identify an entity.  A true identifier is a name that has the following properties : 1. An identifier refers to at most one entity. 2. Each entity is referred to by at most one identifier. 3. An identifier always refers to the same entity (i.e., it is never reused).  If an address can be reassigned to a different entity, we cannot use an address as an identifier. eg: telephone numbers.
  • 10.  In many computer systems, addresses and identifiers are represented in machine-readable form only, that is, in the form of bit strings.  For example, an Ethernet address is essentially a random string of 48 bits. Likewise, memory addresses are typically represented as 32-bit or 64-bit strings.  In contrast to addresses and identifiers, a human-friendly name is generally represented as a character string. These names appear in many different forms. For example, files in UNIX systems have character-string names that can be as long as 255 characters, and which are defined entirely by the user. Similarly, DNS names are represented as relatively simple case-insensitive character strings.
  • 11.  A naming system maintains a name-to-address binding which in its simplest form is just a table of (name, address) pairs.  In distributed systems that span large networks and for which many resources need to be named, a centralized table is not going to work.  A name is decomposed into several parts such as ftp.cs. vu.nl and name resolution takes place through a recursive lookup of those parts. For example, a client needing to know the address of the FTP server named by ftp.cs.vu.nl would first resolve nl to find the server NS(nl) responsible for names that end with nl, after which the rest of the name is passed to server NS(nl). NS(.) ~ NS(nl) ~ NS(vu.nl) ~ address of ftp.cs.vu.nl
  • 12. Name Spaces  Names are commonly organized into what is called a name space.  Name spaces for structured names can be represented as a labeled, directed graph with two types of nodes.  Leaf Nodes  Directory Nodes
  • 13.  Represents a named entity and has the property that it has no outgoing edges.  Generally stores information on the entity it is representing-for example, its address-so that a client can access it.  It can store the state of that entity, such as in the case of file systems in which a leaf node actually contains the complete file it is representing.
  • 14.  Has a number of outgoing edges, each labeled with a name  Each node in a naming graph is considered as an entity in a distributed system and has an associated identifier.  A directory node stores a table in which an outgoing edge is represented as a pair (edge label, node identifier). Such a table is called a directory table.
  • 15.
  • 16.  Each path in a naming graph can be referred to by the sequence of labels corresponding to the edges in that path, such as N:<label-I, label-2, ..., label-n>  where N refers to the first node in the path. Such a sequence is called a path name. If the first node in a path name is the root of the naming graph, it is called an absolute path name. Otherwise, it is called a relative path name.
  • 17.  In a naming graph for UNIX,  a directory node represents a file directory,  a leaf node represents a file.  There is a single root directory, represented in the naming graph by the root node.  The implementation of the naming graph is an integral part of the complete implementation of the file system. That implementation consists of a contiguous series of blocks from a logical disk, generally divided into a boot block, a superblock, a series of index nodes (called inodes), and file data blocks.
  • 18.
  • 19. 1) Boot block:  Used to load the operating system into main memory.  Special block of data and instructions that are automatically loaded into main memory when the system is booted. 2) Superblock:  contains information on the entire file system. such as its size, which blocks on disk are not yet allocated, which inodes are not yet used
  • 20. 3) Inodes:  Referred by an index number, starting at number zero, which is reserved for the inode representing the root directory.  Each inode contains information on where the data of its associated file can be found on disk.  An inode contains information of its owner, time of creation and last modification, protection, and the like.  When given the index number of an inode, it is possible to access its associated file.
  • 21.  Name spaces offer a convenient mechanism for storing and retrieving information about entities by means of names. More generally, given a path name, it should be possible to look up any information stored in the node referred to by that name. The process of looking up a name is called name resolution.
  • 22.  To explain how name resolution works, Consider a path name such as N:<label 1,label 2, ... .labeln>  Resolution of this name starts at node N of the naming graph, where the name label1 is looked up in the directory table, and which returns the identifier of the node to which label1 refers. Resolution then continues at the identified node by looking up the name label2 in its directory table, and so on.  A name lookup returns the identifier of a node from where the name resolution process continues.
  • 23.  Knowing how and where to start name resolution is generally referred to as a closure mechanism.  Name resolution can take place only if we know how and where to start.  A closure mechanism deals with selecting the initial node in a name space from which name resolution is to start.
  • 24.  Example 1:  Consider the string representation of a file name such as /home/steen/mbox.  To resolve this name, it is necessary to already have access to the directory table of the root node of the appropriate naming graph. Being a root node, the node itself cannot have been looked up unless it is implemented as a different node in a another naming graph, say G. NOTE:
  • 25.  Use of string “0031204430784”  People will not know what to do with this unless they are told that it’s a telephone number.  Telephone System will do the rest.
  • 26.  Strongly related to name resolution is the use of aliases.  ALIAS: Another name for the same entity.  In naming graph there are two ways to implement an alias: 1) First Approach 2) Second Approach
  • 27.  First Approach To simply allow multiple absolute paths names to refer to the same node in a naming graph.  Example: Node n5 can be referred to by two different path names. In UNIX terminology, both path names /keys and /home/steen/keys in figure are called hard links to node n5.
  • 28.  Second Approach To represent an entity by a leaf node, say N, but instead of storing the address or state of that entity, the node stores an absolute path name.  This principle corresponds to use of symbolic links in UNIX file systems.  Example: The path name /home/steen/keys, which refers to a node containing the absolute path name /keys, is a symbolic link to node n5 .
  • 29.
  • 30.  Name resolution can also be used to merge different name spaces in a transparent way.  Example: mounted file system  A mounted file system corresponds to letting a directory node store the identifier of a directory node from a different name space, which we refer to as a foreign name space. The directory node storing the node identifier is called a mount point. Accordingly, the directory node in the foreign name space is called a mounting point. Normally, the mounting point is the root of a name space. During name resolution, the mounting point is looked up and resolution proceeds by accessing its directory table.
  • 31.  If we want to mount a foreign name space NS 2 into a name space NS 1, it may be necessary to communicate over a network with the server of NS 2, as that server may be running on a different machine than the server for NS1. To mount a foreign name space in a distributed system requires at least the following information: 1. The name of an access protocol. 2. The name of the server. 3. The name of the mounting point in the foreign name space.
  • 32.  The client machine and the file server are both configured with Sun's Network File System (NFS).  NFS is a distributed file system that comes with a protocol that describes precisely how a client can access a file stored on a (remote) NFS file server.  To allow NFS to work across the Internet, a client can specify exactly which file it wants to access by means of an NFS URL, for example, nfs://flits.cs. vu.nl//home/steen. This URL names a file (which happens to be a directory) called /home/steen on an NFS file server flits.cs. vu.nl, which can be accessed by a client by means of the NFS protocol.
  • 33.  1) Broadcasting and Multicasting  2) Forwarding Pointers  Home Based Approach- Mobile IP