Chapter 4 - Naming Flashcards

1
Q

What is the fundamental difference between a name and an address in a distributed system?

A

A name is a string of characters used to refer to an entity, while an address tells you how to locate that entity.

Location independence means a name is independent of its address, providing flexibility for entity migration, replacement, and easier addressing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is name resolution?

A

Name resolution is the process of finding an entity’s address given its name.

A naming system maintains name-address bindings.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How does broadcasting work for resolving flat names?

A

Broadcasting involves sending a message with the desired name to every machine in the network, where each machine checks if the name matches a local entity and replies if it does.

Limitations include wasted network bandwidth, interruption of unnecessary hosts, and lack of global knowledge.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How do forwarding pointers work for name resolution with remote objects (RPC)?

A

When an entity moves, it leaves behind a client stub on the old location that points to a server stub on the new location.

Pros: Simplicity once the initial entity is found. Cons: Long and expensive chains, need for intermediaries to maintain links, vulnerability to broken links.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is a home-based approach for flat naming?

A

A home location is designated for an entity, which tracks the entity’s current address.

It is often the creation point of the entity and is useful when mobility is common in large-scale systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a Distributed Hash Table (DHT)?

A

A DHT is a decentralized and fault-tolerant distributed system that stores key-value pairs, operating on a P2P model.

Nodes have random m-bit identifiers, and data is hashed to an m-bit key and stored on the successor node.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Briefly describe the naive name resolution approach in Chord.

A

The naive approach involves each node keeping track of its successor and predecessor in the ring, leading to a linear search.

A finger table at each node contains entries pointing to other nodes in the ring for efficient lookups.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How does a new node join a Chord network?

A

A joining node contacts an existing node to find the successor of its own ID and then inserts itself into the ring by informing its successor of its presence.

Keeping finger tables updated is crucial, especially the first entry which points to the immediate successor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How do hierarchical approaches address scalability concerns in flat naming?

A

The network is divided into domains organized in a hierarchy with a single root domain, each having a directory node tracking entities within it.

Pros: Efficient lookup caching, separate authorities. Cons: May require contacting many nodes for resolution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is a namespace in structured naming?

A

A namespace is an organization of names, represented as a naming graph.

This graph contains directory nodes and leaf nodes representing entities.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a path name?

A

A path name is a sequence of edge labels separated by a slash, used to refer to a node in the naming graph.

Absolute path names start from the root, while relative path names do not.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an alias in a naming system?

A

An alias is another name for the same entity.

Hard links allow multiple absolute path names, while soft links require resolving the name contained within.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How can different namespaces be merged?

A

Different namespaces can be merged by mounting the node identifier of one namespace into a node in the current namespace.

For network mounting, you need the access protocol, server name, and mount point.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a closure mechanism in name resolution?

A

A closure mechanism selects the implicit starting context for name resolution based on the name itself.

For example, a URL starts at a DNS server, while a file path starts at the root of the local filesystem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Describe the process of iterative name resolution.

A

In iterative resolution, the resolver sends the complete name to the root name server, which resolves as much as it can and returns the next name server to contact.

Pros: Intuitive and load balanced. Cons: Heavy work for the client.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Describe the process of recursive name resolution.

A

In recursive resolution, the client sends the request to a name server, which contacts other servers to fully resolve the name and return the result.

Advantages: Effective caching, reduced communication costs for the client. Disadvantage: Increased load on name servers.

17
Q

What is DNS?

A

DNS is a hierarchically organized and structured namespace using labels to form domain names.

Each node contains resource records with information about the domain.

18
Q

How is DNS implemented in terms of name servers?

A

Each zone is implemented by one or more name servers, typically replicated for availability, with a primary server handling updates.

Secondary servers perform zone transfers to replicate data.

19
Q

What is the main idea behind attribute-based naming?

A

Attribute-based naming allows entities to be discovered by searching for entities that possess certain attributes.

This is done using key-value or attribute-value pairs.

20
Q

What is LDAP?

A

LDAP (Lightweight Directory Access Protocol) is a protocol for distributed directory services.

It combines structured naming with attribute-based naming for queries.

21
Q

How are entities named in LDAP?

A

Each LDAP record has a unique Distinguished Name (DN), a sequence of naming attributes forming a hierarchical path.

Queries can be performed using search filters based on attribute values.