我已经configuration我的服务器作为绑定接口,以达到2Gbit的networking速度,但似乎Ubuntu的不能超过1gbit和从服务器的输出stream量不平衡超过2接口。
此服务器后面的交换机是Juniper交换机,所有configuration都由Juniper JTacvalidation,因此交换机端不应该有任何问题。 它被configuration为LACP 802.3ad。
Ubuntu的configuration如下:
auto p255p1 iface p255p1 inet manual bond-master bond0 auto p255p2 iface p255p2 inet manual bond-master bond0 auto bond0 iface bond0 inet static address xx.xx.xx.x netmask 255.255.255.248 gateway xx.xx.xx.xx bond-mode 4 bond-miimon 100 bond-lacp-rate 1 bond-slaves none
有没有谁有这种configuration的经验,并知道是否有任何特殊的configuration来解决这个问题?
再说一次:这里的问题是,从服务器传出的stream量不平衡,只能通过一个接口,传入的stream量是平衡的,来自两个接口,但是它根本不能超过1gbit,不能达到2gbit。
谢谢
以下configuration适用于我。 基本部分是bond-xmit-hash-policy layer3 + 4,它控制传输数据包的接口哈希策略。 https://www.kernel.org/doc/Documentation/networking/bonding.txt这也是交换机在负载平衡数据包方面的大致等价物。 http://kb.juniper.net/InfoCenter/index?page=content&id=KB22943默认使用目标MAC地址的简单XOR,因此当目的地是同一台服务器时会产生相同的接口。 使用layer3 + 4时,源端口号和目的端口号也会起作用,从而使大多数单服务器stream量均匀分布。
auto bond0 iface bond0 inet manual up ifconfig $IFACE up slaves eth4 eth5 bond-mode 4 bond-miimon 100 bond-downdelay 200 bond-updelay 200 bond-lacp-rate 1 bond-xmit-hash-policy layer3+4 6: eth4: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000 link/ether 90:e2:ba:69:b6:c8 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 605614572345 28863625 0 14 0 11413 TX: bytes packets errors dropped carrier collsns 13213800052 20824630 0 0 0 0 7: eth5: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000 link/ether 90:e2:ba:69:b6:c8 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 601225223800 25966547 0 14 0 11219 TX: bytes packets errors dropped carrier collsns 8500820678 14501120 0 0 0 0
请注意,我在configuration中省略了mtu 9000语句,因为您的交换机可能configuration为1500的MTU。