Linux 路由器的性能降低多少才算可以?

Linux 路由器的性能降低多少才算可以?

我正在进行以下(简化)设置:我有一个私有子网,我的 PC 就位于其中。子网通过虚拟服务器接入互联网。服务器内部使用两个子网:一个用于内部服务,一个是某种 DMZ。所有子网之间都有路由流量的(虚拟)Linux 机器。目前,除了传出路由器外,没有实施任何防火墙。因此它看起来像这样(路由器 3 有防火墙):

[PC] -- [router1] -- {subnet int} -- [router2] -- {subnet dmz} -- [router3] -- {wan}

我现在对网络速度进行了一些测试。我iperf在 PC 和路由器之间进行了测试。我得到了

[ ID] 间隔传输带宽
[ 3] 0.0-10.0 秒 684 MBytes 574 Mbits/秒

连接是千兆以太网连接。可能是电缆没有完全布线,所以我认为这可能没问题。

现在我尝试使用 int 子网内的主机:

[ ID] 间隔传输带宽
[ 3] 0.0-10.0 秒 381 MBytes 320 Mbits/秒

您会发现流量可能只有上限值的一半。如果我使用来自 dmz 子网的虚拟机重做这些事情,输出是

[ 3] 0.0-10.0 秒 254 MBytes 213 Mbits/秒

所以,这甚至更低。从子网 int 到 dmz 的直接连接会导致类似

[ 3] 0.0-10.0 秒 1.00 GBytes 860 Mbits/秒

我的问题是:

  • 速度大幅下降正常吗?
  • 我应该在哪里寻找问题?(见下文)

我想到几个可能的问题来源:

  • 由于整个路由器的物理 RAM 不多,因此路由器的虚拟 RAM 有点不足。它们分配了大约 80MB 的 RAM。我可以给更多,但我不知道多少才够。
  • 虚拟化基于 XEN。我使用桥接进行网络连接。我没有发现任何关于桥接是否会降低性能的说法。
  • 虚拟子网实现为无需添加物理设备的网桥。同上。也许存在更好的方法在虚拟环境中创建虚拟网络。

相关内容