Q

Home » Work » Optimizing internet connectivity 101 – Name resolution optimization (a somewhat technical article)

Optimizing internet connectivity 101 – Name resolution optimization (a somewhat technical article)

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 43 other followers

Wireless internet connections in public locations such as Starbuck’s and public libraries tend to – for lack of better words – suck balls.

And even at home, sometimes it’s an effort in frustration at night when everyone else gets home from work at the same time.

Is it possible to ‘speed things up’?

But of course!

With my little Asus Netbook PC, I try to eek as much speed by customizing it as possible.

One little trick I learned involves a little bit of name server manipulation.

First, I will explain why you do it.

And second. And this is important. Sometimes you’re going to see some weird and unexpected shit when you optimize your systems.

I ask that you provide a comment or a video or drop me a message – youtube videos are helpful – when you see weirdness associated with my advice.

I kinda enjoy weirdness, and it’s nice to understand when my ‘help’ has unexpected results!!


In your internet web browser – whether it’s Firefox (mozilla), Chrome, or Internet Explorer (or other competitors) – when you go type in a web address, “www.slashdot.org” for instance, this is – at first – like trying to drop a letter in the mailbox with the name “Mike Smith” placed on it.

…. and nothing more.

What I just learned over the last couple days has been – there’s MUCH more truth to this analogy than I previously ever thought.

But before I get to that –

One optimization technique I use to is a pretty simple one:

Like real life company addresses – a company’s online presence can have several different addresses. These addresses typically correlate to servers.

Typically these addresses are ‘in the form’ of XXX.XXX.XXX.XXX, where XXX can each range from 0 to 255.

You can look up your current address by doing this command at the command line.

Here’s how:

ComandLine

CommandLine2

IPCONFIG

Now as you can see, the address of my machine on this network resolves to 172.31.98.72, this is in the form previously mentioned XXX.XXX.XXX.XXX.

With this numeric scheme, this provides 2^32 different potential internet address locations, or more specifically 4,294,967,296 different combinations of addresses available on the public internet.

And since my computer sits behind a router and access point, my location is simply not normally accessible to the outside

Now for machines exposed to the outside world, when I type in an address like ‘www.cnn.com’  this name is translated to all the possible addresses by something called ‘name servers’.

Here’s how to find all the names http://www.cnn.com can translate to:

NSLOOKUP

Now as you can see, in this instance, http://www.cnn.com translated to two different addresses, using Google’s Domain Name Server – otherwise known as DNS.

Now the process inside the web browser is similar: Your computer – when connecting to your internet service provider – first asks the service provide for it’s address, this was shown in my first command. Then from there – it asks for the address of the remote system to use for looking up names – the Domain Name Server (DNS) addresses.

This is usually configured by the administrator.

Now I’m a techie. And when I go to public locations, I know they are often misconfigured by novice administrators, and/or rarely can handle the amount of simultaneous users.

And a dead giveaway this is occurring when I connect to any network location is I might see this in my web browser’s status bar:

ResolvingHost

Sometimes I will even see a ‘server connection timed out’, and other various – and typically annoying messages.

So the last couple of days, the vast majority of users at Starbuck’s has not been able to access the internet, because it  has been poorly configured.

Meanwhile, my connection keeps on chugging.

So I helped a man out by explaining this to him yesterday:

NetworkSettings

(Right Clicking on Wireless Network Connection)

NetWorkConnections

Now as you can see, I have disabled nonessential services on the next screen,
a part of my optimization.  If you’re not connecting to other computers on your home or within your network, this is something you can safely do as well.

TCPIP

TCPIP2

Now as you can see on this last screen, I have changed my Primary DNS and Alternate DNS server FROM ‘Obtain DNS Server address automatically’ to ‘Use the following DNS Server addresses’.

Now this site has a list of DNS Servers, http://pcsupport.about.com/od/tipstricks/a/free-public-dns-servers.htm which can be used *instead* of the automatically assigned ones, and not only will you not encounter ‘wait times’ for the lookups, but who knows what else you might find!

Now another method I have found to optimize my connections – rather than relying on these external servers, is to use my local ‘hosts’ file.

THE VERY first thing your computer does is check a file called ‘hosts’ in your windows\system32\drivers\etc directory for a simple interpretation/translation between a web site name and it’s corresponding address.

Now for web sites you might visit regularly, it’s not a bad idea to update this HOSTS file with a translation of the name to the number, that way you hit the web site as fast as possible.

Here’s a screenshot example of the command line notepad and a review of the hosts file itself. I visit CNN regularly, so this is what I used as my example:

CommandHosts

As you can see, i translated BOTH http://www.cnn.com AND cnn.com – to its corresponding address I had found several days ago. These were different than the ones I found for my example screenshot today.

But in any case.

Kaboom! The web page comes up pretty fast!

cnn

Now for a speed comparison, here’s how to comment out an entry in the hosts file, which provides for a magnificent way to test out differences between lookups.

Here’s how to do that:

CNN2

And this screen shot, taken right after I commented out those lines in the host file, I have no doubt the next screen pretty much speaks for itself about the differences!

CNN3

Pretty crazy, huh?

Now while these kind of results aren’t always so dramatic, you can – particularly when using public connections, expect some consistently improved access times and speeds with pretty much everything you do on the internet.

Now an interesting ‘side benefit’ of name resolution has been what I demonstrated above – different name servers very frequently resolve different names to different hosts.

It’s quite interesting to experiment with 🙂

Until next time….


Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Enter your email address to follow this blog and receive notifications of new posts by email.