[go: up one dir, main page]

0% found this document useful (0 votes)
78 views28 pages

Naming Strategies in Distributed Systems

This document discusses several distributed naming schemes and systems: - Naming in distributed systems provides a way to map names to objects to enable sharing, locating, and accessing objects across a network. Various naming schemes like hierarchical, descriptive, and flat are discussed. - INS is an intentional naming system that allows clients to specify "intents" like attributes and values to discover services, rather than specifying exact addresses. It uses a distributed overlay of INRs that register and relay service information. - The Muse operating system uses relative names without unique identifiers to provide location transparency and scale to extremely large systems, with local naming contexts and translation of names during message passing or object migration.

Uploaded by

Hussien Mekonnen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views28 pages

Naming Strategies in Distributed Systems

This document discusses several distributed naming schemes and systems: - Naming in distributed systems provides a way to map names to objects to enable sharing, locating, and accessing objects across a network. Various naming schemes like hierarchical, descriptive, and flat are discussed. - INS is an intentional naming system that allows clients to specify "intents" like attributes and values to discover services, rather than specifying exact addresses. It uses a distributed overlay of INRs that register and relay service information. - The Muse operating system uses relative names without unique identifiers to provide location transparency and scale to extremely large systems, with local naming contexts and translation of names during message passing or object migration.

Uploaded by

Hussien Mekonnen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Naming in Distributed

Systems
Outline

• Introduction
• Some basic Concepts
• INS :)
• Yet another naming Scheme.
Why Name?
Convenience in Accessing/Sharing
Objects (Files)
Fundamental concept in
Communication (mailboxes, remote nodes)
What does Naming get us?
• Mapping between names->objects
• Provide info on those objects
• Locate/discover objects and their attributes

Thus it directly affects :


• Sharing, migration, replication, security
Names
• Most definitions are inadequate.
• ISO : It is an identifier that denotes an
object.

Classification
• Non-Ambiguous. 1->N (Name->Object)
• Non-Unique. N->1
• Global.
Names, Addresses And Routes

• Name specifies WHAT, address WHERE, routes


HOW to get there.
• Each is a tighter binding of information.
• System names / Communication names.
• Name is usually user-friendly. Naming facility
translates names-> addresses-> routes.
Routing is part of naming!
Name Structure

• Flat : No internal structure.


• Partitioned : Usually hierarchical and have a
naming context.
• Descriptive : Attribute Based.
Partitioned name is subclass. Non-unique
Names. Std. Structure & Semantics needed.
Naming Context/Domain

• A context can be defined as the


environment in which a name is valid.
(Global names have no context.)

• Helps partition the name space.


• Implicit Context : Relative naming
conventions.
Naming schemes
• Hierarchical :
– Extensible/scalable.
– Goes with logical view of the system.
– Implicit context -> smaller names.
– Configuration is (usually) not simple.
Naming Schemes (cont’d)

• Descriptive :
– Supports ‘services’.
– Scalable.
– Easily supports fault-tolerance, group
communication.
– Processing overhead is usually large.
Naming Schemes (cont’d)

• Flat :
– No internal structure.
– Names remain same even if object moves.
– Easily hashed and stored (no processing
overhead) : efficient.
– Easier to implement?
– Not scalable.
Factors in Designing Naming
Facility
• Ease of Name generation.
• Location Transparency: Dynamic binding of names-
>addresses. Object mobility.
• Two levels of identification : user-friendly,
machine-friendly.
• Efficient : Delay, #messages exchanged must be
minimum.
• Support for 1->N mapping between
names & addresses :
– Fault Tolerance
– Group Communication.
INS

• LCS, MIT. 1999


• Part of self-organizing adaptive networks
research.
Motivation
• How to adapt to dynamicity in networks seamlessly -
mobility of devices and services.
• Dynamic resource discovery and service location.
• Software and service mgmt cost > HW
• E.g. : good ol’ printer, finding least loaded server, etc.
Design Goals
• Expressiveness : in finding/discovering
devices/services.
• Responsiveness : adapt quickly to mobility.
• Robustness : Name service failures, inconsistent
state.
• Easy Configuration : minimal manual
intervention, dynamic load distribution.
What is meant by INS
• Describe ‘what’ (intent) to look for, not
where.
• Intentional names implemented using
name-specifiers :- Hierarchy of attributes
and values.
• Message headers contain name-specifiers
not IP addresses.
INS Architecture
• INRs form overlay network.
• Services register with the INRs (periodic
advertisement)
• Clients send messages to INRs.
• Early/Late binding.
• Intentional anycast/multicast.
INR boot-up

• DSR (Domain Space Resolver) maintains


list of active/candidate INRs.
• New INR : ping every other INR.
Establish neighbour relation.
• Spanning tree of INRs.
Service Registration

• Soft State, Soft State, Soft State! :-


robustness.
• Periodically advertise intentional names
to INR.
• INR relays names to other INRs
periodically :- All INRs know all names!
Client side
• Intentional Anycast : Send to any server
satisfying request.
• Intentional Multicast : All servers satisfying
request
• Early Binding : Similar to DNS.
• Late Binding : Message routing at name
resolution time.
Load Balancing, Scaling
• Spawn INRs on candidates. Kill if below
threshold.
• Divide name-space :
– Handle only part of name space.
– Cache popular ones.
– Refer to root (DSR) otherwise.
Naming & Addressing without
Unique Identifiers

• Sony CSL.
• Muse operating system.
Motivation

• Scalability. Ability to generate unique ids


regardless how how big system grows.
• Mobility : Of hosts and dynamically
adapting to it.
Design Goals

• Uniqueness : One name should only represent


one object.
• Location transparency.
• Scalability
• Short repstn. to logically nearby objects.
• Availability and fault tolerance of name service.
Assumptions

• Ultra large scale : broadcast impossible.


• Communication with distant objects is
rare compared to local ones.
• Local naming contexts with hierarchical
structure.
Design
• One root naming context
• Relative representation.
• OIDs, OADs, LIDs, LADs :
– Format of OID.
– Interpretation of OID
– Translation of OID/OAD
– Message Passing
– Object Migration
Close

You might also like