在 Ubuntu 服务器中创建为以太网交换机的网桥吞吐量较低

在 Ubuntu 服务器中创建为以太网交换机的网桥吞吐量较低

设置如下。我有一台带有 NIC(eth0 和 eth1)的服务器。我创建了一个桥 br0。我的想法是我想将从 eth0 通过 br0 收到的数据包发送到 eth1。

(笔记本电脑)___________ Ubuntu 服务器___________(笔记本电脑)

Iperf服务器----------eth0--br0--eth1--------------------Iperf客户端

eth0 的吞吐量为 5 Gbps,而 eth1 的吞吐量最大仅为 3 Gbps。

我跟着本教程创建网桥。

桥接接口中禁用了 STP。我还禁用了通过 iptables 发送的数据包,以便使用此命令进行处理。

net.bridge.bridge-nf-call-arptables
net.bridge.bridge-nf-call-ip6tables
net.bridge.bridge-nf-call-iptables

答案1

我遇到了类似的问题,我发现在进行速度测试等时,通过网桥的 ping 操作会失败。

将 MTU 提高到 9000 对我来说是固定的事情,现在 ping 延迟几乎没有变化,而速度测试下载速度为 500mbps,请注意,在我的情况下,我只修改了 mtu br1,这是我的内部接口,br0 连接到仅执行 1500 和 upping 的 mtu 的路由器接口 MTU 性能较差。

查看网桥接口 MTU 的

bridge link
chris@pcibridge-v2:~$ bridge link
2: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 2 
3: ens256: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 master br1 state forwarding priority 32 cost 2 
4: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 master br1 state forwarding priority 32 cost 4 
5: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 100 

我的网络规划 /etc/netplan/xxxxx.yml

# This is the network config written by 'subiquity'
network:
  ethernets:
    ens160:
      mtu:  9000
      dhcp4:  no
    ens192:
      mtu:  1500
      dhcp4:  no
    ens224:
      mtu:  1500
      dhcp4:  no
    ens256:
      mtu:  9000
      dhcp4: no
  bridges:
    br0:
      dhcp4:  true
      interfaces:
        -  ens192
        -  ens224
    br1:
      dhcp4:  true
      interfaces:
        -  ens160
        -  ens256
  version: 2

我希望这有帮助

相关内容