Deux lignes internet peuvent rendre un VPN plus disponible, et le rendre plus rapide pour certaines charges de travail, mais le mécanisme décide laquelle de ces deux choses se produit. Un routeur avec deux routes par défaut n’est pas agrégé, et un tunnel transportant des milliers de connexions internes reste un seul flux externe. Nommer la promesse d’abord est la différence entre une conception et une déception coûteuse. Le tableau ci-dessous sépare les options selon ce que chacune exige à l’extrémité distante et ce qu’une perte de lien fait à un transfert.

Trois promesses, et une seule a besoin d’un partenaire

La bascule maintient un chemin disponible lorsque le lien préféré disparaît. La répartition par hachage de flux répartit des flux indépendants sur les deux liens montants. L’agrégation d’un seul flux permet à un transfert d’utiliser les deux liens à la fois. Ce sont des produits différents avec des exigences différentes, et seul le dernier a besoin de la coopération de quelque chose au-delà de votre routeur.

MechanismFar-end requirementEffect on one transferWhat breaks under a link loss
Packet-spraying overlayA cooperating endpoint that reassembles the streamPackets can spread across both linksReordering and buffering on the surviving path; its own recovery logic decides what continues
MPTCP subflowsA peer or proxy that accepts subflowsSubflows can share one connectionSurviving subflows continue if the peer keeps them alive
Flow-hash balancingNothing new; the existing tunnel endpoint is enoughOne outer flow still follows one linkFlows hashed onto the dead link move; established sessions break
Link failoverNothing newOne path at a time; the second link sits idleThe session stalls or restarts on the other link

Rien dans ce tableau n’est une raison d’acheter une seconde ligne. Ce qu’il fait, c’est empêcher qu’une conception de bascule soit évaluée comme s’il s’agissait d’agrégation.

Pourquoi un tunnel ressemble à un seul flux pour le routeur

Un routeur qui répartit la charge hache les adresses source et destination avec les ports, puis envoie tout le flux là où le hachage pointe. Un tunnel VPN est un tel flux du point de vue du routeur, quoi qu’il fasse tourner à l’intérieur. Les connexions internes n’atteignent jamais la décision de hachage, car l’en-tête externe a déjà décidé du chemin. C’est pourquoi un second lien montant peut doubler la capacité totale pour de nombreux utilisateurs et ne rien changer au gros transfert d’un seul utilisateur.

Deux tunnels séparés peuvent vous donner deux candidats, mais ils ont encore besoin d’une politique délibérée qui attribue le trafic et garde les réponses sur le chemin qui a porté la requête. Le routage asymétrique est le résultat habituel de l’omission de cette étape. Le minimum est une politique qui nomme le flux, le lien préféré et le lien de secours.

L’agrégation Ethernet ne traverse pas des fournisseurs non liés, car l’extrémité distante doit participer au protocole d’agrégation. Une agrégation entre deux fournisseurs d’accès est un projet de recherche à moins qu’un point de terminaison coopératif n’existe.

Ce que le TCP multipath exige aux deux extrémités

La documentation de Linux sur Multipath TCP décrit plusieurs sous-flux appartenant à une connexion. Le support du noyau à une extrémité ne change rien à lui seul, car le pair doit aussi accepter ces sous-flux. Un proxy à l’extrémité distante est l’autre disposition courante, et il devient un composant avec sa propre capacité et sa disponibilité à planifier. La même logique écarte une réponse facile pour WireGuard, dont le transport est UDP : MPTCP fait croître des sous-flux TCP et ne peut pas agréger ce tunnel sans autre chose dans la conception.

Vérifiez si la fonction du noyau est activée avant de concevoir autour d’elle, car beaucoup de distributions la livrent désactivée. Ces trois commandes y répondent en une minute.

sysctl net.mptcp.enabled
ss -M | head
ip mptcp limits show

Choisissez d’après la charge de travail, pas d’après la brochure

Si la charge de travail est constituée de nombreuses sessions indépendantes, la répartition par hachage peut ajouter de la capacité sans coopération à l’extrémité distante. S’il s’agit d’un seul gros transfert, seule une conception d’agrégation aidera, et cette conception a besoin d’un pair coopératif. Si l’exigence est que le travail continue lorsqu’un lien meurt, la bascule est la réponse et le débit d’un seul transfert est sans importance.

Écrivez l’exigence en une phrase avec un verbe dedans : une sauvegarde se termine deux fois plus vite, ou un lien tombé ne met pas fin à une session. Des objectifs vagues produisent des conceptions que personne ne peut accepter ni rejeter. Décidez ensuite ce que l’extrémité distante est autorisée à être, car l’option la moins chère est souvent celle qui n’exige rien de nouveau là-bas. Cette contrainte élimine la plupart des affirmations de la brochure avant la première réunion.

Gardez les trois promesses séparées dans le document d’exigences. Une conception qui revendique les trois en livre généralement une et suppose silencieusement les autres. La section suivante teste laquelle est réellement livrée.

Testez un transfert et plusieurs, puis tirez un lien

Comparez un transfert soutenu avec plusieurs transferts parallèles vers la même destination, et enregistrez la perte, le délai et l’utilisation par lien pour chacun. Un gain seulement avec des sessions parallèles indique une répartition des flux, pas une agrégation d’un seul flux. Testez la perte d’un lien montant séparément, car la capacité lorsque les deux liens fonctionnent ne dit rien de la bascule pour une session établie. Capturez la route, la socket et les compteurs de retransmission avant et après chaque test.

ip route show default
ip route get 10.80.0.5
mtr -n -c 20 -r 10.80.0.5

Lorsque le transfert unique utilise encore un seul lien montant, la conception fait exactement ce qu’implique un hachage de flux. Lorsque les transferts parallèles se répartissent sur les deux, la répartition fonctionne et l’agrégation non. Notez laquelle des trois promesses la conception tient réellement, et la prochaine conversation sur la capacité partira de preuves plutôt que d’une affirmation de fournisseur.

Articles similaires