Back to BT Infinity 2 With Their New Smart Hub (Modem Router)
So far everything is working as intended, I can upload videos again and browse multiple sites at the same time, (video below to show this is possible, the first thing I tried when the line was activated) watch videos whilst uploading and even perform 2 uploads, this is how things should be with any internet provider so why did it not work with Vodafone?
There are a few possibilities,
- Their supplied router simply cannot cope when the upstream is being used, a weak modem or bugged firmware.
- Vodafone as an ISP are limiting upstream bandwidth
- Vodafone as an ISP are limited due to the way the network infrastructure is laid out in the UK.
BT / OpenReach own the network and cabinets, other smaller ISPs lease a percentage of it. Because of this other ISPs will never have full control or performance greater than BT / OpenReach. With that leased percentage comes some restrictions, other ISPs will have a maximum number of allowed connections per cabinet along with bandwidth restrictions and traffic prioritisation. The question is, was my Vodafone upstream performance crippled due to these factors or something else?
I do not have the definitive answer but it is likely a combination of all 3 as their router did slow down significantly when multiple devices were being used, router slow down.
What is router slow down?
A router is just like a small PC with an embedded CPU inside, RAM and operating system (firmware). Consider this, two identical modem routers one with a 400Mhz CPU and the other with a 1Mhz CPU.
What do you think would happen if the 1Mhz version was used with say a VDSL line capable of 76Mbps / 20Mbps?
Short answer is that the internet performance of every computer in the household would be terrible and it would be even slower when multiple users tried to use it at the same time. Switch out the 1Mhz version to the 400Mhz version and you would transform the whole internet experience in that household, assuming the OS (firmware) had no issues.
This is easy to understand, a slow CPU will perform all tasks slower, the router will be slow and transferring data, accessing websites, passing this data forward, you name it all the functions of the router would be under performing as a result.
The performance related aspects of a router is something that all ISPs need to be aware of as it has a direct impact on our experience. With all the above in mind why is it that the Technical support at Vodafone fail to comprehend this simple concept? You can have the slowest performing router and their response would be to look at your line sync speeds and suggest that everything appears to be fine. Yes I can understand that someone sitting in a different building can only do so much but when an individual tries to explain all the issues they simply fail to acknowledge the underlying message.
I didn’t go technical over the phone, I kept it very simple (as reported in my previous blog entries) as that is the polite way to report a problem. This leads to the other main issue with the Vodafone router, why did it slow down significantly when multiple devices were performing online activities?
Hardware / software restrictions
So hardware such as a slow router can kill performance but what about the actual software (firmware) and other hardware capabilities? Routers are designed to handle internet traffic, the task is simply tracking a number of connections and passing the details / data forward to the PC that requested it. When you go to a website the path along the internet is not a direct path, to get to the final website there could have been at least 20 unique connections across various servers/gateways/routers.
Your router needs to know this exact path so stores this information in a table for reference, it is known as NAT table (or IP table). It is simply a list of connections that the router needs to keep alive for X time, if you leave the website the connections will eventually expire (timeout). Your router’s resources are being used, RAM and CPU will take a hit and depending on the design specifications of the hardware there will be physical limits.
A typical website might have over 150 connections due to what happens next. Assume it took 20 connections to various servers to reach the website you wanted to view, now that you are there things need to start loading, the website server starts telling your web browser where to fetch all the data. Data being everything you see on the website, a picture, lots and lots of code / scripts and guess where these are stored? Locally on that server but many are also links from other servers / different locations which means your router needs to fetch these resources by making more connections, another 20, another 30, another 35? before you know it your router just made over 150 connections just by visiting 1 website. No problem, all is stored briefly in your routers IP table and will time out at some point of inactivity but how many is to many?
This NAT/ IP table must have a limit?
Yes and its down to the physical hardware specification of your router, the amount of RAM, CPU and firmware. When you reach the limit things start to get slower as new connections take priority, old table entries are flushed out to make room for new ones. This process causes an increased workload for the router’s CPU as it is now constantly accessing RAM to make space which then has the knock on effect of limiting the CPU’s time on other tasks, everything else gets slower too. How many connections do you think a modern router should be able to handle, the maximum simultaneous number of connections possible for the device?
Years ago you would get some routers that were as low as 32, today we are well past that with some high end hardware capable of 35,000+ and this is important for heavily used routers with multiple devices. The Vodafone router status pages showed the NAT table list and number of active connections which I observed closely. When it reached over 300 connections the CPU would spike to 50%, over 300 and it varied sometimes hitting 99% CPU usage. Without knowing the Vodafone Connect router’s hardware capability I cannot be sure if this is by design or simply poor firmware but nonetheless it is why the router slowed down when being used with more than 1 device. Factor in the upstream issue with the above slow down due to a populated NAT table and it really transforms into terrible experience in every aspect.
There you have it, some background to why it didn’t work well. If you are a gamer or someone with multiple devices being used in your household, perhaps looking to add CCTV or multiple IP cameras and use VPN services, go with BT. They also allow you to use your own hardware as the PPPoE details are available.