Taming the Home Network
April 18, 2011

I am a professional software developer and I am quite familiar with OSs, severs and networking protocols. Having said that, my journey through the networking maze was a frustrating one because networking problems can be layered. It may not be just not one problem, but several problems working in a dastardly combination to rub your nose in despair just when you thought you solved it. Everything I am about to tell you can be found on the internet, but it takes time and patience to dig it up and put the pieces together.
My home network is a pretty straight forward setup including a cable modem, wireless router, several Macs and PCs and various other internet devices like Roku boxes. My service provider is Comcast/Xfinity and they seem to be a good service provider. If you search for comments about Comcast, usually you will see comments saying Comcast “sucks” or they have no idea what they are doing. While there is an element of truth to that at times, generally it turns out be a configuration problem on the user’s end. So take such comments with a grain of salt and sift through them for clues to point you in the right direction when trying to solve your problems. Otherwise you could just sit there pointing your finger at the service provider saying it has to be their fault and get nothing done.
Incoming Cable Signal Strength
The first place you should start is making sure you have the proper signal strength and signal to noise ratio from the cable coming into your house. If the incoming signal strength is too low or high, you can change all the configuration settings you want and never have a stable internet connection. This usually requires a technician to come out and measure the signal strength and make any adjustments. In my case, a bad connector at the end of the cable needed to be replace and then the signal was back up to the proper level.
Basic Subnet Communication
The next step is to confirm your router and anything connected to the router can talk to each other. For example, can you transfer files between computers within your local subnet? If you can’t do that, then it will be next to impossible to debug your connection to the cable modem and ultimately the internet because you will be tripping over intermediate problems within the subnet.
If your equipment is old, then consider upgrading. For example, if you have an old wireless b/g only router, then upgrading to a wireless dual mode N router may make sense. If you have devices that can take advantage of the wireless N protocol, then they will be able operate at higher speeds. The second advantage is you get access to the latest firmware and this sometimes can make a huge difference when solving problems.
If your computers can use the wireless N protocol in the 5 GHz range, then you should definitely restrict them to the 5 GHz band. The 2.4 GHz band has been around for a while and can be quite crowded. The 5 GHz band in comparison is largely untapped for the moment and means you will encounter less interference and thus a more stable connection.
One thing I did was to assign static IP addresses within the router to things that don’t move or change like my main computer or TIVOs to take them out of the DHCP pool. I also set up DHCP reservations for items that can’t be assigned static IP addresses. Assigning static IP addresses, provides an element of stability and speed since it doesn’t have to use the DHCP protocol. I am not saying there is something inherently wrong with DHCP, but the goal is to shoot for stability and speed.
The next thing to consider is the channel you use for wireless transmission. In the 2.4 GHz band, channels 1, 6 and 9 do not overlap and thus they are the primary channels to choose. If there are no other wireless networks in range, you can choose any channel you want. Problems arise when there are many wireless base stations within range which can cause interference if they are on the same channel or an adjacent channel. The best thing to do is talk to your neighbors and agree on which channels each base station should transmit. The other element of this equation is to limit transmission power. Higher power means higher throughput unless you are clobbering your neighbor or they are clobbering you! Most people don’t need to 150 foot range and turning down the transmission power would be a good thing for all involved. If you are using an Apple Airport Extreme, set the multicast rate to low since setting it to medium or high will cause connection problems if your computer can’t sustain the transmission rate.
Ethernet Transmission Protocols
Assuming your subnet is working correctly, then it is time to move on to testing the connection between the router and cable modem. If your modem is an older one, it may have a fixed protocol in which it transmits data over the ethernet connection to the WAN port on your router. This is an easy thing to overlook and I was bitten by this! The cable modem I was using at the time specified that it operates in half-duplex mode. Half-duplex is where only one device at a time can talk. If the cable modem and router start talking at the same time, there will be collisions which will cause retransmissions. This will manifest itself as service that slows down and then finally goes offline and thus causing you to have to unplug the cable modem to restart it. Sound familiar? In the ethernet protocol there is an automatic setting that that will go out and detect the transmission protocol and the transmission speed being used and generally this is a good thing. Sometimes this can get screwed up and the duplex setting can be set incorrectly thus leading to collisions previously described. So if you know the duplex setting for the cable modem, then explicitly set it in your router for the WAN port.
Close, but no Cigar
In my case, fixing the duplex problem really helped a lot and I saw a dramatic drop in incidences where I had to restart my cable modem. Yet incidences still kept flaring up where I had to keep reseting the cable modem and sometimes the router. So something was still not quite right. This is what I mean by your network problems may be layered.
The Dreaded IPv6
The last big piece of the puzzle for me was looking at the implementation of IPv6. If you don’t know, IPv6 is the next generation addressing scheme to replace the IPv4 scheme used today. Most computers have software built in it to use IPv6 and will attempt to get an IPv6 address first and then use the IPv4 scheme if that fails. The problem here is the internet is not ready to do IPv6. Currently there are various beta trials going on and the infrastructure is being built, but in order for it to work, all the pieces must be in place and debugged. Unfortunately this is not the case, but in time these things will get worked out.
DOCSIS 3.0 to the Rescue
So what happens if you use IPv6 today? Well you end up frequently going to cable modem and reseting it. Again, sound familiar? What you want to do is turn off IPv6 support in your cable modem and thus for your whole subnet. But wait a minute, I had an older modem that didn’t support doing that! This necessitated that I buy a new cable modem with “new” firmware that supported the DOCSIS 3.0 standard. So I went out and bought a Zoom 5341 and installed it. After getting the latest firmware updates from Comcast for the modem, I was able to go in and set the MDD IP mode. The MDD IP mode has 4 modes including IPv4 Only, IPv6 Only, APM and DPM. In the future we all will be using IPv6 Only mode, but until then you want to set it to “IPv4 Only” mode. IPv6 is just not ready for prime time. If you have a Macintosh, you will want to go in your network setting and turn off IPv6 so it doesn’t try to use it.
DNS
Another thing you can do is replace your ISPs DNS with a more stable and faster one. DNS translates a human readable domain names like “cnn.com” into a numerical address that the computer can use. One such service is called Open DNS (www.opendns.com). Their servers are always up and cache far more domain names (faster translations) than you local ISP. This means you have a faster and more stable connection to the internet. In your router, install the IPv4 addresses “208.67.222.222” and “208.67.220.220” in the DNS server fields and your whole subnet will begin to use the new Open DNS service.
Tips and Tricks
If you want to test your current sustained speed, go to the following URL.
http://www.speedtest.net/
To access the cable modem, use the following web address in your web browser (works for most cable modems).
http://192.168.100.1/
Conclusion
After performing the above steps, my home network has been stable and fast! It is extremely rare that I have to reset the cable modem as opposed 3 to 10 times a day. So before blaming the ISP for a poor connection, look a little closer to home and make sure everything is configured correctly. You may need to change some hardware, but that may be the price to get it working. The key piece that may not seem apparent to most people is turning off IPv6 until proper support is in place across the internet.