3x3cut0r
Goto Top

Mit Multipath-TCP mehrere Internet-Leitungen bündeln. Möglich? und mit welcher Hardware?

Hallo
meine Frage ist etwas umfangreicher und passt vom Thema her auch in die verschiedensten Kategorien.

Kurz zur Situation und was ich eigentlich vor habe:
Ich habe zu Hause eine VDSL-Leitung von 1&1 mit 25/5 MBit/s über eine FritzBox 7490.
Ebenso habe ich einen Handytarif von Vodafone mit UltraSIM in einem Huawei E5377-s32 LTE-Router mit 150/50 MBit/s.
Und ich empfange ein WLAN von einem Nachbar, der ebenfalls eine VDSL-Leitung bei 1&1 mit 50/10 MBit/s besitzt, kaum zu Hause ist und dessen Erlaubnis ich habe, diese Leitung mitzunutzen.

Jetzt möchte ich diese 3 Leitungen über einen Multipath-TCP-Router bündeln um die Leitungskapazitäten so zu addieren.
Gleich vorweg: Ich möchte hier nicht über Sinn- und Unsinn dieses Vorhabens diskutieren und warum eine 25 MBit-Leitung daheim nicht ausreichen würde usw ...
Mir geht es hier rein um die technische Umsetzung einer MPTCP-Umgebung, weil es mich interessiert was Vor- und Nachteile betrifft und sonst nichts.

Hier kurz ein Bild zum besseren Verständnis:
27b985b35ddbefcb3b64f8414f2a2e6e

Frage 1: Ist das was ich möchte so überhaupt umsetzbar?
Wenn ich zum Thema MPTCP recherchiere sind die Szenarien immer von einem Endgerät aus bezogen, zB. Handy oder direkt von einem WAN-Router aus zu einem MPTCP kompatiblen Web-Server.
Ich möchte ja erreichen, das ich zu jedem NICHT-kompatiblen Webserver einen Gewinn der Leitungskapazität erziele, in dem Ich meine 3 Leitungen über einen im Internet stehenden V- oder Root-Server, der als MPTCP-Proxy fungiert schicke. Dieser macht aus meinen MPTCP-Paketen wieder normale und schickt die Anfragen dann an das eigentliche Ziel weiter. Das funktioniert logischerweise nur, wenn der V- oder Root-Server mindestens so gut angebunden ist, wie meine 3 Leitungen zusammen, was ja kein Problem darstellen dürfte.
Mein Router steht ja in meinem Fall in einem Privaten Netz. Das dadurch entstehende Routing-Problem müsste sich ja mittels VPN-Verbindung zum MPTCP-Proxy lösen lassen oder?
Ist das soweit von der Theorie her schon so umsetzbar oder scheitert es an etwas Grundlegendem, an das ich bisher noch nicht gedacht habe?

Frage 2: Welche Hardware für den MPTCP-Router?:
Grundsätzlich habe ich mehr oder weniger 3 Möglichkeiten, die mir nach langem recherchieren in den Sinn gekommen sind:
- OpenWRT-kompatibler Router
- Raspberry Pi 2 mit LAN/WLAN-Adaptern
- APU1D4 mit WLAN-Adaptern/Modulen

MPTCP lässt sich laut Homepage sowohl auf Linux-Distributionen, als auch für OpenWRT kompilieren. Da ich 3 Leitungen bündeln möchte und zusätzlich noch eine Schnittstelle für ein Clientnetz benötige, brauche ich also einen Router mit mind. 4 Layer-3 Schnittstellen. Und genau da wird es bei OpenWRT-Routern schon wieder eng. Korrigiert mich wenn ich falsch liege aber die Switche in handelsüblichen OpenWRT-kompatiblen Routern, wie zb. ein LinkSys WRT1200AC/WR1900AC oder TP-Link TL-WR1043nd sind nicht mit einer IP-Adresse versehbar, richtig? Fallen dann solche Router schon mal grundsätzlich weg, da sie neben der WAN-Schnittstelle meistens nur 1-2 konfigurierbare LAN-Schnittstellen besitzen, vom WLAN mal abgesehen.

Bei einem Raspberry Pi 2 bin ich etwas skeptisch was den Stromverbrauch bei so vielen Adaptern, die ich bräuchte, betrifft. Deswegen halte ich ihn auch nicht für die optimale Wahl.

Zuversichtlicher bin ich bei dem APU1D4, den ich im Netz gefunden habe. Dieser wird hauptsächlich für pfSense Lösungen benutzt und sollte für meinen Zweck genau richtig sein. 3 Gigabit-LAN Schnittstellen, 2x1GHz AMD Prozessor, 12V und Optionale WLAN-Adapter bieten alles was ich brauche.

Was haltet Ihr Alles in Allem hiervon, was die Umsetzung betrifft?

Danke für Anregungen

Gruß

Content-Key: 284343

Url: https://administrator.de/contentid/284343

Printed on: April 24, 2024 at 19:04 o'clock

Member: aqui
aqui Oct 01, 2015 at 09:10:56 (UTC)
Goto Top
Eine Bündelung ist nur möglich mit einem Dual WAN Load Balancing Router. Draytek 29xx Serie, Linksys LRT224, pfSense Firewall, Mikrotik oder Cisco 880er Serie sind so klassische Vertreter.

Diese Systeme machen immer ein Session basierendes Balancing. Du kannst also entweder im Wechsel einen Session hier, eine da verteilen oder auch dediziert mit Accesslusten das die Traffic nach Absender oder Ziel IP oder auch über TCP Ports nach Applikationen (Email, Browser etc) dediziert auf deine multiplen WAN Links verteilen.
Das alles natürlich auch mit automatischem gegenseitigen Failover der Links
Das ist simpler Standard.

Ein sog. Per Paket Balancing wie bei MPPP ist nicht möglich weil kein provider sowas supportet für Consumer Anschlüsse. Wenigstens nicht in D.
Bei einem Raspberry Pi 2 bin ich etwas skeptisch was den Stromverbrauch bei so vielen Adaptern, die ich bräuchte, betrifft. Deswegen halte ich ihn auch nicht für die optimale Wahl.
Weniger der Stromverbrauch, denn der liegt auch mit 4 Adaptern unter 20 Euro im Jahr. Beim Raspi ist die generelle Crux das die LAN Ports alle am USB Bus hängen und so Bandbreiten Limitiert sind. OK bei DSL Links bis 16 Mbit ist das kein Thema aber was darüber liegt ist dann eher kritisch. Du hast also recht das das nicht die optimale Plattform ist.
APU1D ist dann eher das richtige:
Details dazu hier:
Netzwerk Management Server mit Raspberry Pi
Preiswerte, VPN fähige Firewall im Eigenbau oder als Fertiggerät
https://doc.pfsense.org/index.php/Multi-WAN
Member: Chonta
Chonta Oct 01, 2015 at 09:27:58 (UTC)
Goto Top
Hallo,

ein adieren der Gesamten Bandbreite ist so nicht möglich, wenn wie schon aqui gesagt hat.
Über einen Multiwanrouter oder einen PC mit z.B. Zeroshell über die man auch Multiwan machen kann ist ein Loadbalancing möglich.

Eine Bastellösung gibt es auch noch, aber dazu braucht es einen Server in einem Rechenzentrum dessen Bandbreite auch nicht gedrosselt wird ab Volumen X.
Ein adieren der einzelnen bandbreiten gibt es aber trozdem nicht, könnte mit Glück aber über 50Mbit liegen. (Ein gutes Loadbalancing wäre aber vermutlich sinnvoller)
Der LTE Router wegen Volumenlimit ist keine so tolle ide, denn ab Drosselung würde der vermutlich ausbremsen und evtl gibt es Probleme mit VPN.
Die Bastellösung schaut im Prinzip so aus, das Du einen Router (LinuxPC) auf deiner Seite hast und einen im RZ.
Der Linux Rechner bei Dir baut zum Server über jede Internetleitung ein VPN-Tunnel auf und diese Tunnel werden an beiden Stellen per bonding zusammen gelegt.

Dein Gesamte Internetverhkehr geht dan von deinem Netzwerk zum Linuxrechner bei Dir der schickt alles über die gebündelten Tunnel zum Server im Rechenzentrum und der baut dann die Verbindung zum Ziel auf.

Das ganze hat viel overhead, ist störanfällig und hat wenn Du Glück hast effektiv etwas mehr Bandbreite als der solo 50Mbit anschluss.
Aber die Latenz dürfte steigen.

Wenn Du Dich an sowas versuchen willst, dann berichte mir mal obs geklappt hat face-big-smile
Ansonsten ist Loadbalancing vermutlich besser.

Gruß

Chonta
Member: 3x3cut0r
3x3cut0r Oct 01, 2015 at 10:06:33 (UTC)
Goto Top
Hallo
erstmal danke für die Antworten.
Ich muss da jetzt nochmal genau nachhacken. Ihr sagt beide ein addieren der Bandbreiten gibt es nicht, bzw. nur mit Multi-WAN-Routern möglich.
Aber genau das verspricht doch Multipath-TCP?!
http://multipath-tcp.org/
https://de.wikipedia.org/wiki/Multipath_TCP
Zitat Wikipedia:
"Durch das logische Zusammenschließen von mehreren TCP-Verbindungen bietet MPTCP erhöhte Redundanz und Durchsatz. Der Durchsatz ist gleich der Summe der zur Verfügung stehenden Bandbreite auf den jeweiligen Netzwerk-Schnittstellen. Multipath-TCP ist rückwärtskompatibel mit regulärem TCP."

@Chonta:
Deine Bastellösung ist ja genau die, die ich anstrebe nachzu-"basteln" face-wink
Ein Client hat als GW den Linux-PC, der mittels VPN einen Tunnel über mehrere Leitungen (Subflows) zu einem Rechenzentrum aufbaut, der die Anfragen an die Server im Internet weiterleitet.
Das mit der LTE-Volumenbegrenzung mal außenvorgelassen. In der Theorie spielt es keine Rolle über welche Pfade die einzelnen TCP-Subflows laufen oder geroutet werden oder wie viele es letztendlich wirklich sind, wenn ich das mit MPTCP richtig verstanden habe.

Und das mit den Overhead ist dann genau so ein Punkt, den ich eben versuche herauszufinden.
Und wie kommst du auf 50MBit?

Gruß
Member: Chonta
Chonta Oct 01, 2015 at 10:24:06 (UTC)
Goto Top
Hallo,

wenn die Bastellösung richtig funktioniert, wird die Bandbreite höher sein als die 50Mbit einzelleitung die Du ja schon hast.
Es ist nicht ein VPN Tunnel sondern pro Internetleitung einer.
LTE kann aber ggf bei VPN Probleme machen und wenn es runtergeschaltet wird, kann es wegen der zu geringen bandbreite alles ausbremsen.

Deine Bastellösung ist ja genau die, die ich anstrebe nachzu-"basteln"
In derner Skitze fehlt aber dann noch der Server im Rechenzentrum der dann alles zusammenbaut und der kostet auch noch Geld.
Das Problem ist aber das die Server alle ab einem bestimmten Volumen gedrsselt werden, die Frage ist auf was die gedrosselt werden und ab wan und natürlich wie die angebunden sind.

Oft sind die Server mit 100Mbit angebunden und werden auf 10Mbit gedrosselt.
Da wird es schon schwer für Dich effektiv mehr als 50Mbit raus zu holen (permanent).

Mit einem per Giabit angebundenen Server würde es dann klappen, aber die werden auch irgendwan gedrosselt und ggf untersagen auch die AGB dein Vorhaben.

Gruß

Chonta
Member: 3x3cut0r
3x3cut0r Oct 01, 2015 updated at 11:04:00 (UTC)
Goto Top
Hi
ja ist natürlich pro Strecke eine VPN-Verbindung, sonst macht es keinen Sinn. Habe ich mich falsch ausgedrückt ...
Lassen wir das LTE mal außen vor. Das interessiert mich dann wenn es alles funktioniert zwecks Latenz usw. aber das ganze über 2 Stabile ungedrosselte DSL-Leitungen würde auch schon reichen.

Zu meiner Skizze: Der MPTCP-Proxy soll den Server im RZ darstellen. Dieser ist VPN-Server und gleichzeitig MPTCP-Proxy, der alle Leitungen wieder zusammenführt.
Mit V-/Root-Servern kenne ich mich zu wenig aus.
Schauen wir uns mal als Beispiel folgenden an:
https://www.hetzner.de/hosting/produkte_vserver/cx10
Dieser verspricht 2TB/Monat Traffic ... an die ich wohl kaum kommen werde. Und er sagt 960 GBit Gesamtbandbreite. Was soll das sein? Die Anbindung ans Internet?
Würde so einer ausreichen? Zwecks AGB würde ich mich dann noch einlesen oder mich einfach mal an den Support von denen wenden.

Gruß

EDIT:
Überlesen: da steht ja 1GBit/s Anbindung. Bleibt die Frage was sind diese 960 GBit Gesamtbandbreite?
Member: Chonta
Chonta Oct 01, 2015 at 12:15:42 (UTC)
Goto Top
Hallo,

die Gesamtbandbreite steht für das Rechenzentrum in dem der Server steht zur Verfügung.
Bevor Du dir was Kaufst, mach eine Teststellung mit VMs wo du jeder eine 10Mbit oder max 100Mbit Nic gibst, dann kannst Du testen ob es überhaupt so realisierbar bist, ohne vorher Geld auszugeben und wenns klappt kannst Du nachher alles schneller einrichten.

Gruß

Chonta