IoT 101: A Brief Overview of the Domain Name System

April 7, 2021 - 9 minutes read

IoT app developmentThe Internet of Things (IoT) seems to work seamlessly once everything is set up and configured properly. But what makes IoT applications function so smooth is a stable, strong Internet connection. The Internet is a relatively easy-to-use technology for many of us, but it wouldn’t be so user-friendly without the Domain Name System (DNS).

The Internet depends on DNS to deliver webpages and allow web access, but many people are unaware of what exactly DNS is, what it entails, and how it works. Keep on reading to expand your knowledge of one of the Internet’s most important features.

What Is DNS? How Does It Work?

DNS is an Internet tool that we all use every day without explicitly seeing it working. It makes browsing the web more accessible and easier to navigate. While browsers and computers look at websites with their numerical identifiers as IP addresses, like 123.45.678, humans are unburdened with memorizing these numbers to get to their favorite retailer or social media website. Humans actually see domain names, like facebook.com or nordstrom.com.

IoT app development

To make the transformation from numerical IP addresses to user-friendly domain addresses, DNS is needed. DNS translates the domain names we type into the browser into IP addresses for the computer and browser to understand and access. For users, DNS saves us headaches and complications that come with memorizing a string of numbers, not to mention multiple number strings.

To understand how DNS looks up the corresponding IP address and translates it for the browser, we need to cover the process of a DNS lookup as it r0utes information through four different servers: resolving name server, root name server, TLD name server, and the authoritative name server. These four servers handle different tasks in the DNS process and work together in tandem like a well-oiled Internet browsing machine.

When you type in a domain name, the resolving name server gets the request and sends it to each subsequent server in the search for the corresponding IP address. The root name server points the resolving name server in the right direction so that it can find the corresponding TLD name server. The TLD name server handles the last part of the domain name (.com, .co.uk, .org, etc.), and there’s a TLD server for every type of TLD. The last server, the authoritative name server, returns the correct IP address to the resolving name server, closing the loop.

IoT app development

A Real-Life Example

To understand more about each of the four servers, let’s go through a real-life example of the DNS process with additional details about parallel processes. Say you’re searching for dogtownmedia.com. You type dogtownmedia.com into your browser’s URL bar.

What happens next is that your browser will check its cache (internal memory) to see if you’ve visited our site before. Let’s say this is your first time visiting dogtownmedia.com. Because your browser doesn’t have our site in its cache, it’ll need to fetch its IP address manually.

The computer’s operating system sends the request for the IP address lookup to the resolving name server, which starts the DNS lookup process. The resolving name server says it doesn’t know the IP address, so it asks the root name server for it. The root name server doesn’t know it either, but it can narrow down the possibilities by asking the domain name’s TLD name server (in this case, .com).

The resolving name server asks the .com TLD name server if it knows the IP address for dogtownmedia.com. The TLD name server has a master list of all .com domains and verifies that dogtownmedia.com is on the list. It then tells the resolving name server to ask the authoritative name server for the IP address.

IoT app development

Ultimately, the authoritative name server has the correct IP address, and it returns it to the resolving name server. The resolving name server then tells your computer what IP address it just found for dogtownmedia.com. The computer sends the IP address to the browser, and the browser loads the dogtownmedia.com home page.

You might think this entire process takes minutes to complete, but in reality, it takes less time than it takes you to blink once. Let’s jump into how DNS works so quickly.

How DNS Affords Speed

DNS works so fast that you don’t even know you’re waiting for it to work its magic when you type in a new domain name. It happens so seamlessly and quickly that it seems built-in or not even there. But DNS has several speed optimizations put into place to ensure it works extremely quickly and efficiently.

One way, as we saw earlier, to save time is to maintain a browser cache. This cache is stored on your local machine in its memory. Once you visit a site one time, the IP address is logged for faster retrieval in the event you visit the website again. Caching helps circumvent the creation of a new DNS lookup request. Your computer’s operating system may also have a caching system that stores IP addresses. When your browser doesn’t find a match for a corresponding IP address, it first checks your computer’s operating system’s cache before launching a new DNS lookup request.

Another way DNS maintains its speed and efficiency is by running different types of queries. The three main types are: recursive, iterative, and non-recursive queries. The lookup request uses a recursive query to get the correct IP address from four DNS servers.

IoT app development

An iterative query will work to find an answer too, whether it’s an error message or an IP address. Iterative queries are used to check the browser’s and operating system’s cache for an existing IP address, but if there’s no cached IP address, the query will keep going down the chain until it gets an answer back. Non-recursive queries are the fastest type, and they are used to look up the domain name in the browser and operating system’s cache. If there’s no cached IP address, this query won’t keep pursuing the lookup request in search for an answer, however.

It’s easy to see how DNS could work quickly with these types of queries to help a user located in London access a website hosted in Singapore with a TLD of .sg.

The Beauty of DNS

DNS works in the background so efficiently that it’s difficult to pinpoint when exactly it has been activated. As users, we are highly dependent on DNS to work quickly and correctly for us. But without DNS, navigating the Internet would be much less user-friendly, and it would create more complexity in IoT development. Thanks to DNS, our jobs as IoT developers are a little bit easier to accomplish.

Tags: , , , , , , , , , , , , , , , , , ,