How to get better throughout?

I’m running Zerotier on Opnsense firewalls on two different cloud providers. Between the cloud providers using straight Internet access, I get around 800-900 megabits per second throughput using Iperf and wget. Each Opnsense firewall is directly connected with a public IP, not nat involved. When I bring up the zerotier interfaces and run iperf between them, I only get about 100 megabits each way. Each Opnsense VM has 2GB RAM and 2 cores at 3 ghz. Total CPU usage across both cores is about 30-40% when running iperf continously. I would really like to get between 200-300 megabits. Any ideas?