J'ai 2 boîtes Linux en cours d'exécution Centos 6.5 chacune avec 2 interfaces liées ensemble, liées à un commutateur Cisco 2960-S avec des ports configurés LACP.
La configuration sur le commutateur
port-channel load-balance src-dst-mac
!
interface Port-channel1
switchport access vlan 100
switchport mode access
!
interface Port-channel2
switchport access vlan 100
switchport mode access
!
interface FastEthernet0
no ip address
!
interface GigabitEthernet0/1
switchport access vlan 100
switchport mode access
speed 1000
duplex full
spanning-tree portfast
channel-protocol lacp
channel-group 1 mode active
!
interface GigabitEthernet0/2
switchport access vlan 100
switchport mode access
speed 1000
duplex full
spanning-tree portfast
channel-protocol lacp
channel-group 1 mode active
!
interface GigabitEthernet0/3
switchport access vlan 100
switchport mode access
speed 1000
duplex full
spanning-tree portfast
channel-protocol lacp
channel-group 2 mode active
!
interface GigabitEthernet0/4
switchport access vlan 100
switchport mode access
speed 1000
duplex full
spanning-tree portfast
channel-protocol lacp
channel-group 2 mode active
!
et sur les deux côtés Linux, j'ai chargé le module de liaison du noyau avec la configuration
alias bond0 bonding
options bond0 miimon=100 mode=4 lacp_rate=1
Maintenant, le problème est que je transfère de nombreux fichiers d'un serveur à une autre surveillance des graphiques de trafic indiquant que la vitesse ne dépasse pas la vitesse de 1 Go/s de l'interface de liaison bond0
.
y a-t-il un problème avec la configuration? La vitesse ne devrait-elle pas être doublée à 2 Go/s?
LACP ne fraculera pas les paquets sur plusieurs interfaces pour un seul flux/fil. Par exemple, un seul TCP Stream sera toujours envoyer/recevoir des paquets sur la même carte réseau.
Voir le message suivant pour référence:
Agrégation de liaison (LACP/802.3AD) Débit maximum
J'espère que cela t'aides.
La manière dont les travaux d'agrégation de liaison consistent à utiliser un algorithme de hachage pour décider quels paquets devraient sortir du port.
Les paquets de la même adresse MAC Source, à la même adresse MAC Adresse MAC, ira toujours le même port.
Certaines implémentations d'agrégation de liaison prennent en charge à l'aide de la couche 3 (adresses IP) et même de la couche 4 (numéro de port TCP/UDP) dans le cadre du hachage, mais ce n'est pas ce courant.
C'est pourquoi vous obtenez seulement 1 GBIT/SEC lorsque vous transférez des fichiers de 1 serveur à un autre.
Si le système d'exploitation et le commutateur supportez la couche 3, vous pouvez obtenir plus de vitesse en utilisant plusieurs adresses IP. Cependant, à cause de la façon dont l'algorithme de hachage fonctionne, il y a une chance de 50/50 que les deux flux finissent par sortir du même lien.
Ma compréhension de la liaison réseau est que vous ne pouvez pas dépasser la vitesse de liaison des interfaces membres dans une connexion. Une connexion collera à une interface dans la liaison après sa mise en place.
Cependant, les connexions sont maintenant divisées entre les deux interfaces. Si vous deviez avoir deux connexions exécutées du serveur A au serveur B, les connexions ne devraient pas démarrer la bouteille les uns des autres en ce qui concerne la bande passante car ils se déplaceront sur différentes interfaces. Votre bande passante totale utilisant plusieurs connexions doit être de 2 Go/s, mais chaque connexion sera limitée à un maximum de 1 Go/s.
Il vaut également la peine d'envisager l'algorithme de hachage utilisé par Linux. Certaines versions du pilote d'obligations utilisent des algorithmes de hachage très simplistes E.G L2 HASH sur Linux 3.6.5 est que le XOR du dernier octet de la source et de destination Mac, ce qui conduit à un trafic non équilibré dans de nombreuses circonstances. Changer l'algorithme de hachage à L2 + L3 aidera beaucoup.