Thursday, July 30, 2009

Rogers Internet Service: Slow connections, DNS errors, and Speed Tweaks

In my previous posts about trying to improve the speed and reliability of my Rogers internet service - Rogers Internet Service - DNS errors - Portable Internet Issues - I discussed how Rogers Internet Services changed the way their DNS (domain name system) servers handles DNS requests with Roger's "Supported search results" as they called it - make a typo in a url and you are redirected to a Rogers portal webpage displaying possible search matches and advertising (from which they earn revenue). Not only did this break the functionality of your browser (which suggest inline alternatives to misspelled links), their opt-out method was confusing and technically challenging. My service degraded considerably. So I showed how to change the DNS servers to OpenDNS' 208.67.222.222 and 208.67.220.220 or the alternate Level 3 Communications 4.2.2.2 and 4.2.2.3

(By the way, all these discussions are based on Windows XP - Vista and 7 are much different)

I use Rogers High Speed Portable which is a wireless (non- line of site) service provided by both Bell (Bell High Speed Unplugged) and Rogers, a joint venture called the Inukshuk Wireless Partnership using pre-WiMax (IEEE 802.16) transmission technology. It has an advertised speed of 1.5 mbps down and 256 kbps up which was not as fast as cable or DSL but the flexibility was all I needed. Rogers has recently announced a next gen high speed wireless service said to be many times faster - Rogers Extreme Plus and Ultimate Tier High Speed Internet packages are claimed to deliver download speeds of 25 and 50 Mbps and upload speeds of 1 Mbps and 2 Mbps respectively. They still have file transfer limits (uploads and downloads combined)of 125 GB and 175 GB respectively. (Portable is 30GB) Based on my experience with their wireless products, I would steer clear until they prove the stability and reliability.

Anyway, because my service began to seriously degrade: slowing down to a crawl every evening, numerous resets required (powering off/on the wireless modem), file downloads interrupted etc - My quest to tweak and improve that connection was on. I made extensive use of tech support forums across the internet including the major manufacturers like Cisco, Microsoft etc - using Google search to dig up the most useful exchanges of information. As I mentioned the best source I found of user support forums was DSLReports.com (not limited to DSL service, covers all major connectiom methods, cable, wireless, satellite, even dial-up). They have an extensive list of free tweaking and testing tools.

The first major improvement that I saw was changing a setting called MTU - or Maximum Transmission Unit. Discussions in different forums had even Roger's tech support targetting incorrect MTU as the culprit for slow,unreliable connections - but those same Roger's tech's showed a wide disagreement in what the best MTU for portable wireless internet was. The default MTU in Windows XP is 1500. (Vista and 7.0 settings are not tweakable, those OS's use a more dynamic internal self-reparing approach to network throughput). The MTU setting controls the maximum ethernet packet size your PC will send. Windows defaults MTU to 1500. Larger packets can be sent but basically, your ISP's routers will "fragment" the packet, ie. break it up into digestable chunks. This fragmentation (and re-assembly) add delay to your network transit times and increase the likelihood of packet loss. What? Rogers didn't tell you to change your MTU because wireless transmission requires a lower MTU - therein lies the problem.

There were three Microsoft support articles I found useful: Different MTU Settings; MTU settings for PPPoE (point to point protocol over Ethernet); and Black Hole Router discussions (no it's not sci-fi, but ya gotta love the name). The situation is made confusing because the PPPoE article says not to set MTU below 1400 and this is the value most Rogers techs were recommending - and if you set it too small (its 576 for dial-up for example) it's self defeating in that you now have too many packets to transmit and speed suffers. But in their support article on the "detection of black-hole routers", Microsoft shows how to test and lower MTU to an optimal (and often below 1400) level. The best instructions I found again were on DSLReports.com tweak forums

You'll be using Ping
- Microsoft's packet transmission test utility and the command (dos) prompt - but the testing will really show you how to zero in on the best MTU size. Basically you use the -f & l flags in Ping to fix the packet size, tell the network NOT to allow fragmentation, start at 1480 and work down until you no longer get the "packet needs to be fragmented" error message. Then increase by 1 until you are 1 less away from getting "packet need to be fragmented" message again. Add 28 more to this (since you specified ping packet size, not including IP/ICMP header of 28 bytes), and this is your MaxMTU. This actauly gave me a best MTU size of 1254 and I saw an immediate increase in speed when I changed the MTU on my system (both PC's in the home network as well as the router) Here's what the process looked like:







You're probably not comfortable with changing this value in your Windows Registry, me neither. Fortunately DSLReports has a great utility DrTCP that is a simple GUI interface short-cut into your registry. DON'T change any of the DrTCP values until you read the step by step instructions - don't randomly change DrTCP settings, just start with MTU and leave the others default. As always, back up your registry first before making any changes, so you can revert laetr if needed (I've found DrTCP to be very stable, no registry errors and has the ability to change things back to defaults with just a simple lick and re-boot - the re-boot IS mandatory after any changes or the MTU settings won't take.



Anyway - this greatly improved my connection speeds, helped lower fragmentation and made the connection much more stable. I was still seeing different times of the day where the modem needed re-booting to re-establish the wireless connection however, and using Ping was showing a huge variance in ping latency (the packet trip time across the network measured in microseconds)

None of the speed tweaks so far affect latency. Make good use of the speed tests at DSLReports to get a feel for your speed throughout the day. I suspect the Rogers fluctuations are due to network congestion as well as deep packet inspection and traffic shaping by Rogers to reduce peer to peer torrent traffic. I have found that simply connecting to a large file for download, such as NASA's Astronomy Photo of the Day , usually a large jpeg file, can help re-establish the connection speed (perhaps it is grabbing the bandwidth and acquiring some priority with the ISP's routers - don't know, not a techie).

Try this link as a manual speed test. First fire up Windows Task Manager (control-alt-del), switch to the networking tab and you should see real time graphs of your connection speed (it will show connection as 10/100 or 1,000 Mbps, your ethernet speed - not your ISP connection speed, but its Ok, that actual speed shows too). Now visit my JavaBistro blog at javabistro.blogspot.com and scroll down to the Galactic Map post. You'll see a link there to NASA's full sized 5600 x 5600 pixel jpeg of the galaxy, a large 5mb file. Click on it to download the picture and you'll see the realtime speed of your connection in the Task Manager window (and a cool desktop photo if you like too).

In my next post in this series I'll cover the next important tweak to try and overcome some of this latency.

Also, Canayjun's Canada News Blog is not really meant to be a tech forum, but post your comment here, you'd be suprised how many people are having difficulties with this and any insights you have would be useful. Our main news blog topic right now is homelessness, check it out and connect on Twitter to @canayjun and join the #whyhomeless movement.

::
::

No comments:

Post a Comment

...