Agrégation de lien pour du multi wan possible ?



  • Aloha,

    J'ai parcouru pas mal de forum et le wiki bien évidemment mais je n'ai pas trouvé de réponse claire à ma question.

    J'ai deux lignes VDSL de même débit et je voudrais faire du link agregation avec ces deux WAN pour télécharger un même fichier 2 fois plus vite. Pour être bien claire je ne parle pas de load balancing qui me permettrai d'avoir plus de débit si je télécharge des fichiers différents, moi je veux doubler ma vitesse de téléchargement sur un seul et même fichier.

    Il ya des solutions commerciales comme ovh qui propose des services comme ça: https://www.ovhtelecom.fr/overthebox/ . Mais j'aimerai bien savoir si ce serait possible avec ma pfsense box…?

    Merci de votre aide !!



  • Un peu de réflexion peut être utile :

    • des requêtes distinctes réparties sur plusieurs interfaces augmentent le débit (global), c'est clair.

    Mais qu'en est-il pour le téléchargement d'un (seul) gros fichier ?
    Si on veut augmenter la vitesse, nécessairement il faut faire des tronçons, répartir sur les interfaces et réassembler.
    Or cela n'existe pas (de façon universelle et quelque soit le protocole) !

    Cela serait possible sous plusieurs conditions, dont celle du serveur capable d'envoyer des parties, et d'un programme client dument programmé ..

    Il est notable qu'Ovh se garde bien de présenter son produit sous la forme que vous espérez ….



  • Bien sur que l’agrégation de lien fonctionne  ;)
    Par exemple LACP, c'est à dire IEEE 802.3ad qui est très courant dans l'interconnexion de switch.
    C'est une technique également employée en wifi

    Pour la solution que tu cites, "OverTheBox" de OVH, ma compréhension est que ça fait de l'agrégation de lien entre ton site local… et OVH qui eux disposent de la bande passante nécessaire. C'est donc agrégé sur un tronçon qu'il est obligatoire d'emprunter.

    Fonctionnellement, ça répond à ton besoin mais pas avec pfSense.

    J'ai lu il y a quelques temps un thread dans la section anglaise de ce forum à propos de gars qui envisageaient de faire un truc similaire à coup de VPN. Peut-être faut-il que tu cherches dans cette direction. Je ne me souviens même pas de la conclusion.
    Dans tous les cas, au niveau de l'ADSL, sans mise en oeuvre d'un hardware spécifique qui regroupe les différents liens ADSL physiques, ça me parait difficile et complètement hors pfSense.



  • L'objectif souhaité est

    J'ai deux lignes VDSL de même débit et je voudrais faire du link agregation avec ces deux WAN pour télécharger un même fichier 2 fois plus vite.

    (Et il n'est pas précisé chez quel hébergeur est situé le fichier !)

    La box 'Overthebox' d'Ovh n'est pas un simple loadbalancing, comme je l'ai indiqué initialement ou comme on pourrait le croire en lisant très en diagonale la page correspondante !

    Cette box permet d'additionner le débit de plusieurs lignes de différents FAI mais UNIQUEMENT vers Ovh, en utilisant le MTTCP (multi-path tcp) (et c'est bien indiqué).
    La page Wikipédia sur MTTCP est https://fr.wikipedia.org/wiki/Multipath_TCP
    NB : la box a un coût et ovh fournit une alternative gratuite pour hardware supportant OpenWrt, mais, surtout, il faut ajouter un abonnement mensuel !

    L'exemple indiqué en 'Description simplifiée' est très clair.
    En particulier, on comprend que cette technique suppose une (sur-)couche réseau qui traite ce MTTCP côté client … et côté serveur.

    Je confirme donc, qu'une très simple réflexion permet de comprendre qu'agréger plusieurs liens permet d'additionner des sessions distinctes mais pas une seule et même session (=télécharger 1 fichier), SAUF technos supplémentaires sans doute des 2 côtés !

    Exemple, quand un navigateur charge une page html, il récupère un fichier html avec de très multiples liens : les images, les fichiers css, ...
    Il doit ensuite charger chacun de ces objects au travers de multiples chargements pour enfin afficher la page initiale.
    Chacun des ces téléchargements pourra aisément être répartie antre les plusieurs liens par le load-balancing, ce qui donnera le résultat d'une addition des débits.
    Cela est possible parce que chacun de ces chargements est une session tcp différente !
    Et, magie (apparente), ce load-balancing n'impose rien côté serveur !

    Par exemple, quand on répond à un post sur pfSense, on peut voir l'éditeur de post (basé sur l'éditeur wysiwyg de code bbc appelé smc_Editor) :
    une case de saisie de texte surmonté de ~20 boutons et ~15 smileys,
    autant d'objets que la navigateur doit charger (s'il ne les a pas en cache) : la répartition de ces chargements sur les différents interfaces réduira d'autant le temps total nécessaire !

    (Il ne s'agit bien évidemment pas de LACP ... puisque c'est un protocole de niveau 2 niveau réseau local)



  • Si tu persistes pour faire de l'agrégation sans passer par un service "propriétaire" type OVH, il y a quelques voies que tu peux explorer:

    1 - avec un serveur hébergé chez un fournisseur. C'est l'équivalent "home made" de l'offre OVH, basé sur du VPN bonding. par exemple…

    2 - un truc à lire: MLVPN que j'avoue ne pas avoir exploré très en détail, d'autant que la version FreeBSD ne semble pas très activement maintenue. La doc est ici.



  • J'ai utilisé le OverTheBox de OVH pendant quelques mois.

    D'ailleurs, mon pfSense actuel est installé sur le boitier qui m'a été fourni par OVH, vu qu'on l'achète avec le premier mois de service.

    En fait, ça utilise plusieurs artifices pour agréger les bandes passantes.  j'ai pu identifier MPTCP, mais également ShadowSocks pour les connexions TCP et glorytun pour les connexions UDP

    C'est en effet le seul moyen que j'ai trouvé pour l'instant qui permet d'augmenter la bande passante d'une connexion TCP unique.  Facile à observer chez moi, je suis connecté au taf avec un VPN SSL.  Avec l'OTB, ma bande passante était la comme des deux liens ADSL.  Avec pfSense, je suis limité à la bande passante d'un des deux liens.

    J'ai quand même abandonné OTB pour d'autres raisons (la gestion de la QoS et l'instabilité de l'interface, notamment)



  • Ce retour d'expérience ne contredit pas ce qui a été écrit :

    • le load balancing (envoi d'une session sur la première ligne, envoi de la 2ième session sur la 2ième ligne) : permet de répartir des sessions différentes sur plusieurs lignes, aucun prérequis
    • d'autre moyens (MTTCP ou autres) : peuvent répartir la même session sur 2 lignes avec un serveur CHEZ OVH, possible du fait qu'il y a un élément de chaque côté (client : OTB, serveur - OVH : noyau supportant MTTCP).

    Cela améliore au quotidien mais cela n'améliore le téléchargement d'UN fichier que s'il réside sur un serveur OVH.



  • Ce n'est pas mon expérience.  Le téléchargement d'un fichier unique à l'extérieur d'OVH est également à vitesse "double".  La solution OVH se rapproche de la solution "double VPN" avec ifenslave mentionnée plus haut.

    Dans le cas du service OverTheBox, toutes les connexions externes se font via l'extrémité du tunnel chez OVH, qui agit comme un routeur NAT supplémentaire.  L'adresse IP de toutes les connexions sortantes est d'ailleurs une adresse IP publique du Cloud OVH, et non les adresses d'aucuns des liens WAN



  • Oui bien évidemment car l'objectif de ce dispositif est d'agréger tes liens ADSL vers OVH et de rebondir, depuis OVH, vers les serveurs et sites de ton choix, la bande passante résultante étant celle là plus faible des différents segments qui s'empilent.
    C'est très probablement ton agrégat ADSL dans ce cas, sans faire aucune supposition sur l'emplacement du serveur cible



  • La page de référence de l'offre 'Overthebox' mélange textes et images, normal.
    Mais parfois le texte dit quelque chose que le dessin ne montre pas ! Ce qui est très discutable !

    Effectivement, en relisant attentivement, je peux comprendre que votre perception, même pour le téléchargement d'un seul fichier, soit celle de l'addition des flux.
    Reste que la technologie (MTTCP et autre) doit supporter TOUS les protocoles : MTTCP, comme son nom l'indique ne s'occupe que de TCP, …
    Je serais curieux de voir si la techno est capable d'améliorer un VPN par exemple !?

    Je dois reconnaitre que
    cela améliore au quotidien (sessions distinctes) et cela améliore le téléchargement d'UN seul fichier (unique session) que le fichier soit ou non sur un serveur OVH.

    Texte (presque en haut)  et image au dessus https://www.ovhtelecom.fr/images/overthebox/new_design/schema-fonctionnement-otb-ovh.png :

    Le trafic arrive dans les datacentres OVH, vos connexions sont fusionnées et votre trafic Internet sort avec une IPv4 unique.

    Avec la boite, côté client, avec des serveurs chez OVH, le trafic est additionné … et sort sur Internet, avec une ip OVH, avec toute la bande passante (énorme) d'OVH.
    Un détail non neutre : le serveur verra une ip OVH l'accéder, et non celle, réelle, du client !

    L'image serait plus 'cohérente' si, à droite, on avait représenté un nuage indiquant que l'on repart vers Internet !

    Texte (vers la fin) et image à droite https://www.ovhtelecom.fr/images/overthebox/new_design/schema-agregation.png :

    Agrégation

    OverTheBox permet de combiner plusieurs connexions depuis votre réseau local (LAN) en routant le trafic sur les différentes connexions WAN. Le service Over The Box hébergé sur les infrastructures cloud d'OVH réassemble ensuite toute la bande passante sur l'IPv4 de sortie que nous vous fournissons. Nous utilisons la technologie MultiPath TCP (MPTCP) pour l'agrégation et des proxys SOCKS pour gérer le trafic sur chaque lien.

    L'image, vue simplifiée de celle du haut, détaille très insuffisamment le nuage 'Internet' : même remarque qu'au dessus, il y a en fait 2 nuages internet : celui des multiples accès FAI pour attendre OVH, puis celui, sortant d'OVH, vers le serveur cible.

    Pour réussir, il faut donc une boite hardware, coté client, des serveurs (intermédiaires) chez OVH, et bien sûr, un abonnement mensuel pour que cela fonctionne.
    La clé de l'addition est évidemment que la bande passante sortante d'OVH sera (très) supérieure à la somme de capacité des lignes raccordées à la boite OTB.

    Pourquoi pas ?

    On comprend que la question initiale ne peut avoir de réponse … sans des technos réseaux et, surtout, un hardware extérieur avec une bande passante énorme.
    Le loadbalancing fonctionne, sans aucun prérequis, et n'est efficace que pour des sessions distinctes : pas d'efficacité pour une seule et unique session.



  • @jdh:

    Je serais curieux de voir si la techno est capable d'améliorer un VPN par exemple !?

    Ca oui, je peux confirmer.  On utilise Junos Pulse pour se connecter au réseau du boulot lorsqu'on est en télétravail. J'ai aussi un client OpenVPN et un abonnement chez NordVPN
    J'ai testé les deux quand j'avais OverTheBox, et dans les deux cas, la bande passante en download et upload était la somme des bandes passantes des liens ADSL

    Je suis d'accord que la doc fournie par OVH est trop limitée.  J'ai par exemple essayé pendant des journées de faire fonctionner correctement la QoS, sans vrai succès.

    C'est en fouillant la conf et des docs un peu partout sur internet que j'ai pu trouver qu'en plus de MPTCP, il y a également shadowsocks et glorytun qui sont utilisés comme couches d’agrégation

    Je n'ai jamais réussi à comprendre l'interaction entre les 3, par contre, ni où tout ça vient se greffer sur le "multi-wan" de OpenWRT, sur laquelle OverTheBox est basée

    @jdh:

    On comprend que la question initiale ne peut avoir de réponse … sans des technos réseaux et, surtout, un hardware extérieur avec une bande passante énorme.
    Le loadbalancing fonctionne, sans aucun prérequis, et n'est efficace que pour des sessions distinctes : pas d'efficacité pour une seule et unique session.

    On est d'accord.  Dépasser cette limitation du load-balancing de pfsense nécessite forcément un équipement dans le réseau, qui termine une forme de tunnel et fonctionne comme proxy, ou comme routeur NAT

    J'ai d'ailleurs une seedbox qui traîne quelque part, avec plein de bande passante, et une IP publique… l'idée de faire un bonding de deux tunnels entre cette seedbox et un vieux raspberryPi qui traîne à la maison me titille depuis que j'ai vu le lien un peu plus haut  ::)



  • Bonjour,

    Je ne vais pas répondre spécifiquement à la question posé mais, si tel est la demande, il est très facile de doubler la vitesse de téléchargement d'un seul est unique fichier en disposant de 2 lignes ou plus en load-balancing :D

    Dans les faits il y aura bien 2 sessions distincte (1/ligne) mais la vitesse de dl du fichier serra à peut de chose près le cumul de la bp disponible sur les liens.

    Il suffis pour cela d'utiliser Firefox ou Waterfox et avec l'add-on : DownThemAll
    En fait, DownThemAll ouvrira 1 sessions par lien à sa disposition; de la même façon si l'on dispose d'une ligne type fibre et qu'il trouve plusieurs sources pour le fichier, il ouvrirra plusieurs sessions jusqu'a saturation de la bp disponible.
    Il a aussi d'autres fonctions très pratique, perso, j’aurai vraiment du mal à me passer de cet outils ^^

    Il doit surement en exister d'autres

    My2Cents