Everyone who listens to this show or reads this blog is using a network of some sort. It is becoming a very important part of our daily lives. So where does one begin when trying to understand about networks and how they work? What I have created here is a basic introduction to Home Networking. The target audience is someone who may have picked up a Home Server for the first time, or is even just trying to connect their computers to the internet. I hope that reading this will give a better understanding of how computers communicate with each other.
One of the basic premises of networking is that all devices on the network need to have an IP address. This is how they will connect and communicate with one another. Most home networks usually use IP addresses in the range of 192.168.0.1 or something like that. External networks also have IP addresses. Google.com for example, has an IP address of 22.214.171.124 (well there are multiple (.99, .105, .106, .103, .104, & .147), but that’s one of them).
Each device has to get this IP address from somewhere. They can be either statically assigned, or for most environments, they are assigned by a DHCP server. Most home routers have a built-in DHCP server. The DHCP server is configured to give an IP address to any device on the network that asks for one. The number it gives out is within a certain range, specified in the DHCP server settings.
A router is a device that simply connects multiple networks. For most home users, this connects their internal network to the World Wide Web. The router’s function is to forward requests that are for computers not inside the network outside and then to receive the response and pass it on. Most consumer routers are actually a combination device. They do routing, function as a DHCP server, do switching, some do wireless, and also serve as a firewall.
A firewall is simply an entity (hardware or software) that filters inbound and outbound content to protect a device. Windows has had a firewall built in since Windows XP (it wasn’t until Service Pack 2 that it was actually was worth anything). This does a decent job of stopping most intrusions. One of the most basic types of firewalls are blocking ports.
Ports & Port Forwarding
Each network connection has 65536 ports that you can think of as subsets of the connection. The most common is port 80, which is where regular web traffic goes. Some other common one’s are 3389 for Remote Desktop, 20/21 for FTP, 22 for ssh, 25 for SMTP, and 443 for https. Most firewalls will, by default, block all inbound ports. That way you don’t have to worry about a hacker trying to connect through anything you might have running and not even know it.
However, if you do want to have a server running, you might need to forward a port to the server to make it accessible from outside the network. Lets use the example of the web server built into WHS. When you setup a port to forward, you are actually performing 2 actions. The first is that the router’s firewall no longer blocks inbound port 80, and the second is that the router forwards all requests that it receives on port 80 to the WHS.
Back in the day, networks used to be composed of hubs. Hubs functioned in a way that any communication across the network was heard by every device on the network. If computer A was talking to computer B, Computer C would be able to hear what they are talking about, although it would pretty much ignore it. The obvious downside of this is that the network would get busy and bandwidth would be severely diminished. Recently though, hubs have been all but replaced with switches. Switches are smarter devices that transmit data directly from Computer A to Computer B in a way that Computer C isn’t involved in the communication. The major upside to this is that Computers A & B can communicate at full speed with each other and Computers C &D can communicate at full speed with each other as well, something that isn’t possible with hubs. Most people don’t see hubs anymore, so this is more for historical information than anything.
While most of us aren’t using modems in the sense of 56k (or 33.6, 28.8, 14.4, etc) most still have Cable or DSL modems. There are a few different ways that these talk to the internet, but for most people, all you have to do is connect a network cable from the modem to WAN port of the router and you are good to go. Sometimes to have to go to the router administration page and provide login information for your ISP (Internet Service provider). Some ISP’s will give you the choice of paying extra for a modem that has a router built-in, but I personally recommend against that as you can almost always get a better router by doing it separately, and not all combination modem/routers give the option of port forwarding and hosting servers. However, there is something to be said for simplicity if all you’re doing is connecting 1 or 2 computers to the internet.
Network Cables Cat5e vs Cat6
Many people wonder what the difference is between network cables. There are cat3, cat5, cat5e, cat6, and a couple other niche products. The answer is actually pretty straight forward. Cat3 was used back in the day for 10mbps networks (more on that soon). It’s pretty much only used for telephones now. Cat5 replaced cat3 and could handle up to 100mbps. Cat5e upped the ante by allowing 1gbps network connections. The big question is about cat6. To put it simply, most home users won’t get any advantage with cat6 over cat5e. There is additional shielding that allows for less interference. The cable is also made to more stringent standards. Finally, it allows for 10gbps in lengths up to 120ft on very specialized network connections. My personal recommendation for most home users? Don’t bother with cat6 unless the price differential is minimal (<10%).
One of the big performance factors that determines how good the network is at transferring files is the network speed. Back in the day, we had to mess with 10-baseT using BNC cables and t-connectors. (Actually, I was corrected that BNC used 10base2/5, not "T" which would be twisted pair. Thanks for keeping me in line.) Now, the vast majority of wired home network run at either 100mbps or 1gbps using the previously mentioned cat5/6 cables. 100 mbps can also be written as 100 megabits per second. If you remember that there are 8 bits in a byte, then this is equivalent to 12.5 megabytes per second. Likewise, 1gbps is equal to 125 megabytes/second. This is obviously much faster. One thing to note is that transferring files across the network will run at the speed of the lowest common denominator. If you are using gigabit network cards in the computers, but the switch only supports 100mbps, then your maximum transfer speed is going to be 100mbps. Also, just keep in mind that most of the time, the maximum speed that you will be transferring at is about 90% of the theoretical, due to overhead.
The last item I want to touch on is wireless networks. To break it down, there are 4 main protocols: 802.11a, 802.11b, 802.11g, and 802.11n. While, there really isn’t much use of 802.11a anymore, it did have its time. It was the first standard to run at 54mbps (theoretical speed). 802.11b was the other initial standard that was used. One thing to note is that for equivalent power, higher frequencies generally cause decreased range. 802.11b was limited to 11mbps, but ran at a more common frequency of 2.4ghz. 802.11g combined the best of both of those to run at 54mbs in the 2.4 ghz range. 802.11n, which was just recently finalized, increases that bandwidth to a theoretical 600mbps. It also brought about a technology called MIMO which basically allows for multiple concurrent connection for higher speeds and better resistance to interference. It also allows for both the 2.4ghz range and 5ghz, which some routers use simultaneously for even more speed and resistance to interference. There are many other differences between the standards, but those are main one’s. One thing to note is that some wireless routers allow for multiple types. For example, you can run both 802.11b and 802.11g on a 802.11g router. Generally, if you don’t have any 802.11b devices, you should set the router to run in 802.11g-only mode which will prevent potential slowdowns. This is similar with 802.11g and 802.11n.
This is one topic where there is some debate about what people should use. It mainly boils down to personal preferences and priorities, so I will outline here my personal feelings. First off, you shouldn’t really ever run an unsecured wireless connection. Even if you have it restricted to a DMZ, the homeowner can be taken to jail, for example, if a stranger is sitting in the street downloading kiddie porn. One thing that you also have to worry about is a hacker having access to your computers. Secondly, don’t use WEP security. It takes about 5 seconds to crack with tools that an 8 year-old can download off of the internet. Just say no. So what we have left is WPA and WPA2. For all intents and purposes, WPA & WPA don’t matter as much as the underlying security. Both of these allow for the use of AES & TKIP. Not too long ago, the TKIP system was cracked, which means that given enough time, a hacker can break the encryption of the network and have access. While it takes more time to crack that WEP does, it is still not entirely secure. That leaves us with AES. I always recommend the use of AES encryption on either WPA or WPA2.
There are 2 other options that people recommend using that I personally believe aren’t worth hassling with. The first is hiding the SSID. The SSID is the name that you give to your wireless network (by default it is usually something like ‘linksys’ or ‘netgear’). Most wireless networks allow for the name to be hidden. The idea is that you can’t connect to it if you don’t know it exists (if the SSID is hidden, it won’t show up in the Windows list of available networks unless the computer has been preconfigured). The downside is that it is much more difficult to connect new computers to the network and to troubleshoot when your computer doesn’t connect automatically like it should. The idea behind the use of this is “security to obscurity” that people won’t know to connect if they don’t see it listed in the Windows connection menu. The trouble with this is that there are many tools that can be used to show hidden networks with very little effort. The 2nd option is to do MAC address filtering. I’ll get into this more in the 2nd part of the article, but the idea is that you only allow connections from specific computers by using the key of the network card. The down-side is that while these keys are uniquely set at the factory, they can be changed by the user. All a hacker has to do is listen over an insecure network for an approved computer’s key, and then change his own computer to use that key. Then they are in. The downside of enable the MAC filtering, is that any time you want to connect a new computer, you have to look up the 16-digit hexadecimal key and type that into the wireless router. That’s more than a 5 second job. Basically my mentality behind not using these 2 options is that if you are using WEP or TKIP, while the hacker will take a little longer to go over the 2 speed bumps, they will still be able to get through. If you are using WPA & AES, then the hacker won’t get through that, so they won’t get close enough to drive over the speed bumps won’t be driven over by the hacker, but will invariable slow down the homeowner. That said, if you want to enable the options for your own peace-of-mind, they are available to you.
So reading the descriptions might not solidify one’s understanding of the subject. Let me go through a practical example: my own home network.
I have a D-Link wireless router which is connected to the internet via a cable modem. Now I have a separate switch that the computers are plugged into, but most people probably just use the one that is built into their wireless router. The router is set up as the DHCP server using the 192.168.0.1 range, so all of the computer are given an IP address within that range. I have my network printer, Windows Home Server, and the Media Center PC (as well as the xbox 360, not shown) plugged into the switch using cat5e cables. The router also has wireless turned on, running in G-only mode with WPA-AES. I have 3 laptops that use the wireless as well as a Zune HD and the Eye-Fi card.
The router is configured to forward some ports to my WHS: 80, 443, 3389. It also has a firewall built in that prevents any sort of intrusions.
I hope that this little guide helps to explain simplistically how a home network works. I plan to release the second part in the near future which will go into much greater depth on some more facets of how networks work.
by: AJ Peck