Pourquoi plusieurs connexions provenant du même hôte obtiennent-elles un meilleur débit que plusieurs connexions provenant d'hôtes différents?Débit cumulé de plusieurs connexions (Linux)
Je suppose que c'est quelque chose lié au noyau (Linux) mais une confirmation aiderait beaucoup.
Plus de détails J'ai 1 processus de réception, appelons-le R. Il accepte les connexions entrantes et reçoit des données en utilisant select().
J'ai 3 processus d'envoi S1, S2, S3. Ils se connectent à R et envoient des données à un débit fixe, c'est-à-dire 200 Mbits par seconde chacun.
Si S1, S2 et S3 sont sur la même machine, j'obtiens de meilleurs résultats que d'avoir chacun d'entre eux sur une machine différente. (R se trouve dans les deux cas sur une autre machine)
Exemple: R sur host0, S1, S2, S3 sur host2, R reçoit à
R 600Mbit/s sur host0, S1 sur host1, S2 sur host2 , S3 sur host3, R reçoit à 480Mbit/s
Cela semble contre-intuitif pour moi, je m'attendais à l'opposé puisque dans le second cas, les expéditeurs n'ont pas à partager la carte réseau et le processeur (ce qui n'est pas attendu processeur ou carte réseau à goulot d'étranglement ...)
[Les hôtes ci-dessus sont des nœuds dans un cluster Linux avec un commutateur Gigabit full-duplex dédié. Ils exécutent 2.6.24-24-générique (le dernier Ubuntu je devine)]
Je ne m'attendais pas à ce que ce soit le problème puisque le taux d'envoi est vraiment faible. Je vais essayer la même expérience dans une configuration où il n'y a pas de conflit de switch pour voir si c'est la cause. Merci beaucoup pour votre réponse. – Marco