Distributed Systems - Naming and Name Service
Naming in Distributed Systems
- Name: Unique identifier for an entity in a system.
- Naming Space: Closed/open space where names hold meaning, ensuring no ambiguity.
- Name Resolution: Process of mapping a name to its respective entity.
Common Naming Methods
- Address: Access point entity; can be static/dynamic (1:1 or 1:M).
- Identifier: Integer/binary string; identifies one entity uniquely.
- Textual Name: Human-friendly string independent of location; e.g., file names, DNS names.
Name Spaces
- Example tree structure:
- Leaf nodes containing user data
- Directory nodes organizing hierarchy
Path Names
- Absolute Path: Full path from root (e.g., UNIX:
/nfs/server1/u1/book/Chapter5/). - Relative Path: Path based on current directory (e.g.,
book/Chapter5).
Naming Space Topologies
- Global Name: Same entity, regardless of context (absolute path).
- Local Name: Meaning varies with context (relative path).
- Root: Node with no incoming edges.
File System Structure Components
- Boot Block: Loaded to setup OS in main memory.
- Super Block: Info about the file system.
- Index Node: Details about associated file.
- Disk Block: Contains file data chunks.
Linking and Mounting
- Linking: Allows multiple paths to the same node.
- Mounting: Makes external nodes accessible in different name spaces.
NFS (Network File System)
- Maps absolute paths to physical files across the network.
- NFS RPC: Handles operations like open/close, read/write, etc.
DNS (Domain Name System)
- Global Layer: Highest-level nodes (e.g.,
.com, .edu). - Administrative Layer: Organization-specific nodes.
- Managerial Layer: Frequently changing nodes (e.g., user accounts).
DNS Name Resolution Methods
- Iterative Resolution: Client requests and resolves through layers.
- Recursive Resolution: Client sends request, and local server queries until resolved.
DNS Resource Record Types
- SOA: Zone info.
- A: IP address of a host.
- MX: Mail server info.
- CNAME: Alias for a node.
Naming vs Locating Entities
- Direct mapping (names to addresses) vs Two-level mapping (using identities).
Locating Mobile Entities
- Broadcasting: Querying machines for entities in local networks.
- Forward Pointer: References location of entity after moving.
- Home Based: Central tracking for current entity location, managing movements efficiently.