Name services and domain name system in distributed system pdf

Posted on Tuesday, April 20, 2021 1:33:22 PM Posted by Carolumun1958 - 20.04.2021 and pdf, edition pdf 0 Comments

name services and domain name system in distributed system pdf

File Name: name services and domain name system in distributed system .zip

Size: 1907Kb

Published: 20.04.2021

What is DNS and how does it work?

Names play a very important role in all computer systems. They are used to share resources, to uniquely identify entities, to refer to locations, and more. An important issue with naming is that a name can be resolved to the entity it refers to.

Name resolution thus allows a process to access the named entity. To resolve names, it is necessary to implement a naming system. The difference between naming in distributed systems and nondistributed systems lies in the way naming systems are implemented. In a distributed system, the implementation of a naming system is itself often distributed across multiple machines. How this distribution is done plays a key role in the efficiency and scalability of the naming system.

In this chapter, we concentrate on three different, important ways that names are used in distributed systems. First, after discussing some general issues with respect to naming, we take a closer look at the organization and implementation of human-friendly names.

Typical examples of such names include those for file systems and the World Wide Web. Building worldwide, scalable naming systems is a primary concern for these types of names. Second, names are used to locate entities in a way that is independent of their current location. As it turns out, naming systems for human-friendly names are not particularly suited for supporting this type of tracking down entities.

Most names do not even hint at the entity's location. Alternative organizations are needed, such as those being used for mobile telephony where names are locationindependent identifiers, and those for distributed hash tables. Finally, humans often prefer to describe entities by means of various characteristics, leading to a situation in which we need to resolve a description by means of attributes to an entity adhering to that description.

This type of name resolution is notoriously difficult and we will pay separate attention to it. Let us start by taking a closer look at what a name actually is. A name in a distributed system is a string of bits or characters that is used to refer to an entity. An entity in a distributed system can be practically anything. Typical examples include resources such as hosts, printers, disks, and files.

Other well-known examples of entities that are often explicitly named are processes, users, mailboxes, newsgroups, Web pages, graphical windows, messages, network connections, and so on.

Entities can be operated on. For example, a resource such as a printer offers an interface containing operations for printing a document, requesting the status of a print job, and the like. Furthermore, an entity such as a 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 yet another, but 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. As a comparison, a telephone can be viewed as an access point of a person, whereas the telephone number corresponds to an address. Indeed, many people nowadays have several telephone numbers, each number corresponding to a point where they can be reached.

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 IP address and port number i.

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. Likewise, when a person moves to another city or country, it is often necessary to change telephone numbers as well.

In a similar fashion, changing jobs or Internet Service Providers, means changing your e-mail address. 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. For example, it is not uncommon to regularly reorganize a distributed system, so that a specific server is now running on a different host than previously.

The old machine on which the server used to be running may be reassigned to a completely different server. In other words, an entity may easily change an access point, or an access point may be reassigned to a different entity. 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. Likewise, if an entity offers more than one access point, it is not clear which address to use as a reference. For instance, 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.

Again, a much better solution is to have a single name for the Web service independent from the addresses of the different Web servers. These examples illustrate that 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. In addition to addresses, there are other types of names that deserve special treatment, such as names that are used to uniquely identify an entity. A true identifier is a name that has the following properties Wieringa and de Jonge, :. By using identifiers, it becomes much easier to unambiguously refer to an entity. For example, assume two processes each refer to an entity by means of an identifier. To check if the processes are referring to the same entity, it is sufficient to test if the two identifiers are equal.

Such a test would not be sufficient if the two processes were using regular, nonunique, nonidentifying names. For example, the name "John Smith" cannot be taken as a unique reference to just a single person. Likewise, if an address can be reassigned to a different entity, we cannot use an address as an identifier. Consider the use of telephone numbers, which are reasonably stable in the sense that a telephone number for some time refers to the same person or organization.

However, using a telephone number as an identifier will not work, as it can be reassigned in the course of time. Consequently, Bob's new bakery may be receiving phone calls for Alice's old antique store for a long time. In this case, it would have been better to use a true identifier for Alice instead of her phone number. Addresses and identifiers are two important types of names that are each used for very different purposes.

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 bit or bit strings. Another important type of name is that which is tailored to be used by humans, also referred to as human-friendly names. 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 characters, and which are defined entirely by the user.

Similarly, DNS names are represented as relatively simple case-insensitive character strings. Having names, identifiers, and addresses brings us to the central theme of this chapter: how do we resolve names and identifiers to addresses?

Before we go into various solutions, it is important to realize that there is often a close relationship between name resolution in distributed systems and message routing. In principle, a naming system maintains a name-to-address binding which in its simplest form is just a table of name, address pairs. However, in distributed systems that span large networks and for which many resources need to be named, a centralized table is not going to work.

Instead, what often happens is that a name is decomposed into several parts such as ftp. For example, a client needing to know the address of the FTP server named by ftp. This server may then resolve the name vu to the server NS vu. Eventually, this leads to routing the name resolution request as:.

NS vu. It is interesting to note that the boundaries between name resolution and message routing are starting to blur. In the following sections we will consider three different classes of naming systems. First, we will take a look at how identifiers can be resolved to addresses.

In this case, we will also see an example where name resolution is actually indistinguishable from message routing. After that, we consider human-friendly names and descriptive names i. Above, we explained that identifiers are convenient to uniquely represent entities. In many cases, identifiers are simply random bit strings, which we conveniently refer to as unstructured, or flat names.

An important property of such a name is that it does not contain any information whatsoever on how to locate the access point of its associated entity. 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. We first consider two simple solutions for locating an entity. Both solutions are applicable only to local-area networks. Nevertheless, in that environment, they often do the job well, making their simplicity particularly attractive.

Consider a distributed system built on a computer network that offers efficient broadcasting facilities. 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. Locating an entity in such an environment is simple: a message containing the identifier of the entity is broadcast to each machine and each machine is requested to check whether it has that entity. Only the machines that can offer an access point for the entity send a reply message containing the address of that access point.

Du måste aktivera JavaScript för att få tillgång till den här sidan.

At its most basic, DNS is a directory of names that match with numbers. The numbers, in this case are IP addresses, which computers use to communicate with each other. Most descriptions of DNS use the analogy of a phone book, which is fine for people over the age of 30 who know what a phone book is. Then multiply that contact list by everyone else on the planet. It's still possible to type a specific IP address into a browser to reach a website, but then, as now, people wanted an address made up of easy-to-remember words, of the sort that we would recognize as a domain name like networkworld. In the s and early '80s, those names and addresses were assigned by one person — Elizabeth Feinler at Stanford — who maintained a master list of every Internet-connected computer in a text file called HOSTS. This was obviously an untenable situation as the Internet grew, not least because Feinler only handled requests before 6 p.

Naming in distributed systems is modelled as a string translation problem. Viewing names as strings and name resolution mechanisms as syntax directed translators provides a formal handle on the loosely understood concepts associated with naming: we give precise definitions for such informal terminology as name spaces, addresses, routes, source-routing, and implicit-routing; we identify the properties of naming systems, including under what conditions they support unique names, relative names, absolute names, and synonyms; and we discuss how the basic elements of the model can be implemented by name servers. Download to read the full article text. Commun ACM — Google Scholar. Cheriton D, Mann T Uniform access to distributed name interpretation.

Anonytun Dns Numbers Settings. We'll go through them with you below You've changed the DNS server your Mac will use to communicate with websites. Currently there are 1, Nameservers from countries in the database. In this guide, we'll walk you through the steps to start using the Cloudflare's 1. In this guide, we'll show you three methods to change the DNS settings on Windows 10 for more Quick tip: If you need to add even more DNS addresses, you can repeat the above steps, but increase the number of the index option by 1. The Domain Name System DNS is used to translate the easy-to-understand and remember web addresses that we are familiar with There are a number of reasons why you might want, or need, to change your DNS settings that is, change the default DNS. Write down any existing DNS server entries for future reference.

Anonytun Dns Numbers Settings

The issue of naming Mapping names onto computational entities E. A name is something that refers to an entity A string, a sequence of symbols, In large, distributed, mobile, open systems, in particular? Distributed Systems.

The Domain Name System DNS is a hierarchical and decentralized naming system for computers, services, or other resources connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities. Most prominently, it translates more readily memorized domain names to the numerical IP addresses needed for locating and identifying computer services and devices with the underlying network protocols. By providing a worldwide, distributed directory service , the Domain Name System has been an essential component of the functionality of the Internet since

At its most basic, DNS is a directory of names that match with numbers. The numbers, in this case are IP addresses, which computers use to communicate with each other. Most descriptions of DNS use the analogy of a phone book, which is fine for people over the age of 30 who know what a phone book is. Then multiply that contact list by everyone else on the planet. It's still possible to type a specific IP address into a browser to reach a website, but then, as now, people wanted an address made up of easy-to-remember words, of the sort that we would recognize as a domain name like networkworld.

Understanding naming in distributed systems

Names play a very important role in all computer systems. They are used to share resources, to uniquely identify entities, to refer to locations, and more. An important issue with naming is that a name can be resolved to the entity it refers to.

Internet Domain Name System

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy. See our Privacy Policy and User Agreement for details. Published on Oct 3, Domain name service.

To browse Academia. Skip to main content. By using our site, you agree to our collection of information through the use of cookies. To learn more, view our Privacy Policy.

When DNS was not into existence, one had to download a Host file containing host names and their corresponding IP address. But with increase in number of hosts of internet, the size of host file also increased. This resulted in increased traffic on downloading this file. To solve this problem the DNS system was introduced. Domain Name System helps to resolve the host name to an address. It uses a hierarchical naming scheme and distributed database of IP addresses and associated names. IP address is a unique logical address assigned to a machine over the network.

What is DNS and how does it work?

COMMENT 0

LEAVE A COMMENT