I am trying to determine what I can truly expect for bandwidth on a few router boards. Each of the tests i have done show different outcomes and then lead me to different theories as to why.
My setup is a 1100 dude edition as a head end router. I can do a btest to 1100 from pc using btest program. I can get up to 500 meg on tcpip when cpu maxes out. When I add a bridge to the 1100 it goes down to about 400 meg throughput before the cpu maxes out. I then do a bw using at@t bw test web app and I get my full 300 meg connection.
Next I take a 951G the device in question and connect it behind the 1100 let it pull dhcp and hook a pc up to the 951G. I then do a bwtest from pc to the 1100 through the 951g acting as a router and get the 400 meg I was expecting from what I saw previous tests. Next still same setup I do a I then do a bw using at@t bw test web app and I get 100 megs is i am lucky?
So next I take mt 951G and place directly on my modem and get maybe 150meg and cpu is not maxing ou at all maybe at 50%. So I then do a btest to 951g from pc using btest program and get 75 megs cpu not even at 40%
My big question is why does the 951G even with gig ports only get half of what 1100 does? I get that there are lost of differences but if all i was going to get is 200 meg on a good day through a 951G:
where can i find this data
why if i btest to the 1100 through the 951 as a router do I get 400megs. That tells me its capable.
Both router have very limited cfg on the only static IP on the wan port and single port dhcp server on it and one fw filter masqurade rule.
Any thoughts addtioanl question or possible cfg i am missing would be great.
So, just to start. An RB1100AHx4 (Dude Edition) has a 4 core CPU running at 1.4GHz per core. The RG951G-2HnD has a 1 core CPU running at 600MHz. If you are using bridges in anything other than 6.40rc36 or 6.40rc38 (at least until 6.41rc is released) you are doing software based bridging and relying on the CPU to do the heavy lifting from a bridging perspective on top of NAT.
So the start of your comparison needs to account for a significantly weaker device resource wise.
Moving onto bandwidth testing. This is a strange and arcane art. MikroTik posts some sample rates you can find at the bottom of each products page. They generate the statistics with a well known piece of specialized testing equipment. It’s still not an exact science. Many variables can impact the numbers you see report.
Diving into one of your examples, the 1100AHx4 “routing” and the 951G acting as a client (I assume you mean not doing NAT or any routing, just an Ethernet bridge). I assuming my interpretation is correct, the 1100AHx4 performing NAT and the 951G acting as just a bridge, the differences in performance can be found in what you are asking the 951G to do. The 951G has a switch chip and is capable of bridging packets in hardware. This means it is likely capable of moving bits and bytes very fast up to your 1100AHx4. The slow-down going to ATT isn’t easily explained. The only thought I have there is the difference in connection type or packet sizes used to determine the speeds. It’s possible the local speed test is using UDP (iperf defaults to UDP, not sure about MikroTik’s tool as I rarely use it) and the web-site based application is almost certainly TCP based unless they are doing something crazy in JavaScript to open a UDP connection from your PC (not sure if they can even do that). This difference in protocol can have a profound impact on performance. The other item is packet-sizes used during the test. If the MikroTik tool uses full frame (1500 MTU let’s say) packets and the web-site uses smaller packets (say 512 byte) performance would be adversely affected.
Looking on my LAN, if I speed-test through my cap lite acting as a layer 2 bridge (AP) my speed test is almost half for TCP than it is for UDP of equal packet-sizes. This can be attributed to additional overhead for processing each packet (UDP has a significantly smaller header than TCP).
Again, a lot of this drastically depends on how the device is connected and exactly what operations each device is executing. The numbers listed on MikroTik’s website for each product need to be taken with a grain of salt as they are very narrowly defined and executed tests. In the real world all of your packets are never going to be 1518 byte packets just like they are never always going to be 64 byte packets. From a design perspective it is always good to pad your solution resource wise. Looking at the 951G even at peak performance of routing (likely doesn’t include NAT) with 25 IP filter rules you get < 700 Mbps. The default firewall rule set is in the teens of rules for sure and you’re doing NAT on top of it.
This is one of the reasons my defacto approach has been to use a hEX for higher speed home connections. I’ve been pairing them with APs acting as bridges (layer 2 only) for wireless. The stronger CPU of the hEX hasn’t faltered yet.
Thanks for the input on the upload and download speeds. It sounds like from you experience I have done all I can to increase the performance and have it at the best it will go.
As a side not I purchase a 70$ dlink router just to make sure it didnt work better and got maybe 120 meg on the download.
You just made my day with that part. My home network is not exactly normal, but I have had two RB750r2 routers that are both connected to my DSL (different public IPs and different LANs). I recently added a 100 x 10 Mbps cable internet connection and one of the routers was replaced with a RB750Gr3 since the RB750r2 is only 10/100 Mbps. Glad to hear I made a good choice! So far it has worked perfectly for me. BTW, when testing from the RB750Gr3 to the Public Mikrotik Bandwidth Test Servers listed in the first thread in the General section of this forum, I am actually getting between 120 - 124 Mbps download and about 12.4 Mbps upload on my cable connection.