4,950 views
Consider the resolution of the domain name $\textsf{www.gate.org.in}$ by a $\text{DNS}$ resolver. Assume that no resource records are cached anywhere across the $\text{DNS}$ servers and that iterative query mechanism is used in the resolution. The number of $\text{DNS}$ query-response pairs involved in completely resolving the domain name is ________________.

Number of query-response pairs = 4.

The name of the url is www.gate.org.in and not www.gate.in.

If it was www.gate.in , then there would have been 3 pairs because of 3 levels, namely, root DNS server, TLD server for .in and Authoritative server.

But given URL is www.gate.org.in and so there will be 4 pairs because of 4 levels, namely, root DNS server, TLD server for .in, TLD server for .org and the authoritative server.

It should be noted that the iterative query can have more than 3 levels and it is not necessary that whatever be the URL, number of levels have to be exactly 3. It can be more than that.

by

@Abhrajyoti00

@Abhrajyoti00 so does it mean that there will be no difference in answer by how we r resolving it? recursively or iteratively

@viniit For this q it is no. Can't say about other qs xD. @Pranavpurkar You can see @Sachin Mittal 1 Sir’s answer below, he has given reference from Kurose. It shows both iterative and recursive.

In iterative query mechanism (left diagram), there are total 4 pairs of queries used

3 iterative quires + 1 recursive query

I’m not sure, could you explain why we’re using local DNS server in this case. If we weren’t provided with local DNS server to begin with let’s say we’re building a DNS server of our own that doesn't have any records and wishes to cache for some of the domains it requires, wouldn't that point to root DNS directly?

And, could it be the case we haven’t been provided with a local DNS server, just a pointer to root?

@Kanwae Kan

Please refer below screenshot from Kurose, where they haave menntioned that each ISP has local DNS server.

Thanks for the reply, I did go through it but also, I found a conflicting Wikipedia entry. Where I think it’s possible for the client to directly contact Root DNS server without the intermediate caching server.

It’s explicitly stated in the question that there are no cached records anywhere in the server, and the ISP isn’t required to provide a caching DNS server although providing a DNS cache is highly ubiquitous.

So the client if it wishes can query the Root DNS directly without the intermediate request at the caching server, it can do so. One use case where I think it would be useful is when you can’t rely on your local DNS server, say it filters websites(a DNS firewall). The only way to actually resolve is to query the Authoritative DNS servers.

Sorry if it's a bit unclear.

I think default is local dns server. And then there are 3 more DNS servers – Root, TLD and authoritative DNS server (in same order).

Now if we somehow know (or cache) address of authoritative DNS server then there is only one DNS query required. But we don't know any of the DNS server address including Root DNS.

Hii

Self Doubt:

If we have one more sub-domain like www.cse.gate.org. then how many number of DNS query-response pairs involved in completely resolving the domain name ??

Is this correct??

@Sachin Mittal 1 sir , why is it not 5 , pc/client machine will make DNS query to local DNS server, why is it not counted?

As it is – www.gate.org.in the why isn’t .org and .in counted as seperate levels/ top level servers ? Couls someone pls help.

@Sachin Mittal 1 sir,

here the domain name is  www.gate.org.in.

Why don’t we consider .org and .in top level domain separately?

If we consider the answer should be 5 not 4.

@Sachin Mittal 1 Sir, why didn’t you consider TLD server for .org?

The URL is www.gate.org.in and not www.gate.in.

The question asks: “The number of DNS query-response pairs involved in completely resolving the domain name is ” Also it has been said that resolution is done by a DNS resolver.

Hence we need not consider the query-response pair of host & local DNS server.

Solution:-

Query-response pair 1 : DNS resolver – Root Server

Query-response pair 2 : DNS resolver – TLD Server for .in

Query-response pair 3 : DNS resolver – TLD Server for .org

Query-response pair 4 : DNS resolver – Authorative Server [www.gate.org.in]

Answer : 4 Query Response Pairs

total no. of query response pairs = 5

total no. of DNS query response pairs = 4 (don’t consider the pair between the host(resolver) and the local DNS because that’s the host-DNS query response pair)

ref2: Andrew S. Tanenbaum 5th edition (section 7.1.3 figure 7.5)

I think this question has some ambiguity. we don’t know whether the gate belongs to the org domain or not.if it is then org name server becomes the authortative server else gate has it’s own name server ??

Please Correct me if i’m wrong.

@Sachin Mittal 1 We should not consider local DNS server by default because they are present only when there is a local network as in an organisation.

@Arjun Sir,

I think this question has some ambiguity. we don’t know whether the gate belongs to the org domain or not.if it is then org name server becomes the authortative server else gate has it’s own name server ??

Please tell me whether this comment is correct or not ??

First the Diagram how the request response is occured.The Value of the IP address in each Root,Top level ,Authoritative server are taken randomly so that people have easy understanding .

1. First the host ask the Local DNS server what is the IP address of www.gate.org.in .Now there is a question how the host know the IP address of the local DNS server? The answer is It know when it boot it gather some basic information about it’s IP address, Default Router IP address,Local DNS server IP address by DHCP.

2. Now Local DNS server has the IP address of the Root DNS server so it ask the Root DNS server What is the IP address of the www.gate.org.in .

3. Now Root DNS server don’t know that it only have top level DNS server IP address. So in our Host name www.gate.org.in , the top level server is .in server. So Root level server say I don’t know the address of www.gate.org.in but why don’t you ask .in server .So It provide .in server address.

4. Now local DNS server ask the same question to .in server what is the IP address of www.gate.org.in .

5. Now .in server check and reply I don’t have the IP address of the www.gate.org.in but why I have the IP of their Authoritative server . Say a.ns.gate.org.in is their authoritative server and 69.171.239.12 is their IP address.

6. Local DNS server ask the Gate authoritative server the same question what is the IP address of www.gate.org.in .

7. So Gate authoritative server checks the request and replied with appropriate IP address as reply to the local server.

8. Local DNS server replied it to Host as it asked and Host give it to concern transport layer protocol.

So, there are 4 pairs of request reply responses involved .

@Kabir5454 Why didn’t you consider TLD server for .org?

The URL is www.gate.org.in and not www.gate.in.

This was my doubt as well when I start writing this but after coming to .in server , the .in server has the IP of authoritative server gate.org as org is itself.

As this server is distributive they can store all this entry for authoritative servers.
edited

@Kabir5454,

As we know that number of name server for name resolution depends on levels and no of zones.So if www.gate belongs to the same zone in .org then we can say that name server in .org zone is the authoritative server for www.gate  else it will subdivided in next level zone(www.gate).

University of Washington has a zone for washington.edu that handles eng.washington.edu but does not handle   cs.washington.edu.That is a separate zone with its own name servers

ref: tanenbaum 5th edition page 620