主板上的两个以太网端口。如何获得两倍的带宽?


16

直接问题:我的evga分类主板有两个以太网端口。我想同时使用它们以提高远程连接的速度。(是的,可以进行远程编程)。我该怎么做呢?目前/ etc / network / interfaces:

auto lo eth0 eth1

iface lo inet loopback

iface eth0 inet static
address 192.168.1.202
netmask 255.255.255.0
gateway 192.168.1.2

ifrace eth1 inet static
address 192.168.1.201
netmask 255.255.255.0

我应该改变什么?是否需要安装一个软件包来绑定两个通道。

背景:我从家到办公室以及从办公室到家都做很多远程计算。但是(让我的ISP摆脱困境),让我们来构想这个问题,好像我真的只是对最大化同一(本地)网络上的两台计算机之间的文件传输速率感兴趣。两个盒子都有双以太网主板。使用简单的Linksys WRT54GS作为5端口交换机(忽略无线和isp)-如何最大化计算机之间的传输速率?

请注意:我对负载平衡不感兴趣-如果我输入错了,请纠正我,但是我想将两个通道绑定在一起,以使该框看起来好像它的连接速度是原来的两倍。


2
我认为通过交换机会限制您并行使用2条以太网电缆所获得的任何好处。也许如果您使用了两个开关,则可能会有所帮助。我认为您将获得的唯一可能好处是直接连接。
WalterJ89 2011年

1
通常在家庭办公室连接中,瓶颈是ISP,因此在链路的两端进行链路聚合并没有太大改善。
bitwelder 2011年

Answers:


3

重要的是要注意,为了利用NIC分组功能,您所连接的交换机必须支持分组(也称为LACP)。您可以通过在NewEgg.com等上搜索找到类似的开关。

一旦有了这些,这里就是来自Wiki的简单指南:https : //help.ubuntu.com/community/UbuntuBonding

祝好运!


是的,祝您好运,因为虽然这可以起作用,但不会导致速度提高。
Scaine

13

绑定接口不太可能导致速度提高。通常,即使您成功绑定了接口并配置了交换机以支持以太网通道),您仍会发现绑定中只有一个接口用于每对源/目标TCP / UDP会话。

因此,如果您从一台服务器复制10Gb文件,然后将另一 10Gb副本启动到该服务器,并假设您还具有基于会话的绑定,则两张卡都将满载。但至关重要的是,第一个副本将仅使用一个网卡,而不是同时使用两个。

思科的以太通道肯定是这种情况。实际上,思科的etherchannel甚至不是基于会话的,而是基于源/目标的,因此在上面的示例中,您甚至都无法提高速度-您的第二个副本必须位于完全不同的服务器上,然后才能看到两者使用的卡。也许您有一个更好的开关,它允许端口通道在一个TCP / UDP会话中同时使用两个卡,但是这将需要一些非常时髦的arp / MAC操作,并且我不知道Linux中的绑定模块是否支持该功能。

对于您来说,您使用的是标准的家用路由器,因此这里没有交换机侧的支持,这意味着您的选择受到进一步的限制(请参阅下面的第一篇文章,您会在此处注意到自己无法将最佳模式用于链路聚合(模式4)。

如果您确定要继续进行下去,我发现这篇已有五年历史的文章似乎仍然很有意义。此外,这篇已有三年历史的文章涵盖了相同的领域。

希望能帮助到你。


2

我认为通过交换机会限制您并行使用2条以太网电缆所获得的任何好处。除非交换机的速度快于两个NIC的总和,否则您可能会看到速度提高。

您正在寻找负载平衡程序。 如果您不想这样做,则不必“负载均衡”,但这是合并我所知道的连接的最简单方法。这个想法不太复杂

虚拟NIC->负载平衡程序-> NIC 1 + 2

我相信这个答案符合您的需求: 使用Network Manager进行网络负载平衡

我不确定具体细节,但我确定这是一般想法。

除非NIC卡的功能远不如您的路由器/交换机强大,否则您可能会获得的唯一好处就是两台计算机之间的直接连接,或者整个过程中的并行连接。但是理论和实践并非总能奏效。

我可以想到的唯一测试网卡是否成为系统瓶颈的方法是使用所有4个NIC在每台计算机之间进行速度测试。我可以为您提供有关如何执行此操作的一般思路,但是我需要帮助的特定于Ubuntu的东西。

  1. 将每个NIC设置为具有自己的IP地址,例如对于计算机1为192.168.0.1 + 192.168.0.2,对于计算机2为* .3 + * .4
  2. 我所见过的对本地网络的唯一速度测试只是在位文件上的传输时间。我不确定是否有更好的方法,我从未见过。

    3手动设置路由,因此* .1是通向* .3的接口,而* .2是通向* .4的接口。
    PC1 192.168.0.1 <-> 192.168.0.3 PC2 192.168.0.2 <-> 192.168.0.4

我从未使用过ip表,因此这里有一些示例。

[root]# ip route add xx.xxx.239.120 via xx.xxx.239.120 dev eth0 table 4
[root]# ip route add table 4 default via xx.xxx.239.120 
[root]# iptables -t mangle -A PREROUTING -p tcp --dport 80 -s xx.xxx.239.120 -j MARK --set-mark 4 
[root]# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source xx.xxx.239.120 [root]# ip rule add fwmark 4 table 4
  1. 另一个选择是为ssh(或终端)客户端通过某些接口连接提供一种方法。我不确定客户端的效果如何。

如果IP表设置正确,则应该能够从PC 1向PC 2的两个接口发送2个文件,并且每个文件将采用不同的路由。如果使用两个连接的传输比仅一个连接的传输速度快(希望快两倍),那么您可能会有一些东西。


2

我不认为您说过是否使用千兆网卡,我想您是因为您有2个NIC,因此可能是游戏主板。

既然是这样,那么如果您尝试获得2x100的基数,那么最好购买便宜的4-8端口千兆交换机并将其插入Internet路由器。然后,您可以将所有运行以太网的计算机插入该交换机,并且所有计算机上仍可以正常使用wifi和Internet。

我之所以这样做,是因为我购买了Netgear WNDR3400并在其上安装了DD-WRT,这样我可以有一些不错的选择,包括内置的最新NAS服务器。

唯一的问题是路由器是基于以太网端口的100。因此,我花了40美元买了一个5端口千兆交换机,将其插入路由器,然后将所有计算机都插入千兆交换机,并将游戏机插入路由器。

一切正常,我可以以闪电般的速度在计算机之间传输文件。

好吧,祝你好运!




1

实际上,在通过非管理型交换机连接的两个设备上使用端口绑定和轮询策略实际上会使您的传输速率几乎翻倍。轮询策略默认情况下对多个设备进行负载平衡,如果一台设备发生故障,则回退到单端口。

但是,我相信您的WRT54GS是路由器,因此可以进行管理,因此您将无法从绑定中获得全部好处。

假设您要使用支持RR策略的便宜的8端口真实交换机,然后将其连接到路由器,则使用通过交换机的绑定以及到Internet和其余路由器的正常传输速度,可以提高两个设备之间的传输速度。网络。

您还应该增加读/写缓冲区,txqeueuelen以及netcore和tcp内存。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.