Hello,
My company is moving away from an MPLS for better/faster service through multiple ISPs. As a part of this, I’ve setup GRE tunnels to handle routing between our locations. Everything seems to be working well except for the throughput I’m getting. Site A has a 40/40Mb connection and Site B has a 1000/1000Mb connection and I’m only able to peak at about 7Mb when doing things like file transfers, etc. When I run the built-in bandwidth tester (Tools → Bandwidth tester) I’m almost able to saturate the 40Mb link (35 Mb in TCP receive, UDP receive and UDP send, 21 Mb with TCP send).
I do have some mangle rules at Site A to control traffic for a tenant company (they have their own internet connection, but we’re all on the same network), and to route to another site that hasn’t upgraded their ISP yet. I don’t think it’s anything too extensive though.
I also have simple queues, but those should only be applying to traffic to specific services (youtube, facebook), or specific hosts in the network. If I watch them while I’m attempting a transfer none of the queues hit their thresholds.
I’ve seen posts about CPU usage when using GRE over IPSec, but I’m only seeing 5-7% usage on each core while trying to do file transfers.
As another troubleshooting step I disabled IPSec and with just the GRE tunnel I still see the same throughput so IPSec doesn’t seem to be the culprit here.
I’ve attached the sanitized configs from sites A and B. Here’s the basic setup:
Site A: 10.1.1.0/24, serviced by ISP A and ISP B, RB3011 UiAS w/ RouterOS 6.45.6
Site B: 10.1.3.0/24, serviced by ISP A and ISP C, RB3011 UiAS w/ RouterOS 6.45.5
Site C: 10.1.2.0/24, serviced by ISP A
Once I get the tunnels performing better we’re planning on no longer using ISP A at sites A and B.
Thanks for looking at this.
Moved from the Beginning Basics forum.
Config SITEB.txt (3.93 KB)
Config SITEA.txt (15 KB)