Die meisten Debatten über L2TP gegen GRE zerfallen aus demselben Grund: Die Namen liegen auf verschiedenen Ebenen des Problems. Zwei davon beschreiben eine Kapselung, die Sie auf Ihren eigenen Routern konfigurieren. Eine beschreibt einen Dienst, den Ihnen jemand anderes verkauft. Beginnen Sie mit der Nutzlast, welche die Endpunkte tragen müssen, und der Vergleich wird zu einer kurzen Liste von Konsequenzen statt zu einem Streit über Funktionen.

Nutzlast zuerst, Protokoll danach

In der Praxis ist die Nutzlast eines von vier Dingen: eine PPP-Sitzung, ein rohes Ethernet-Frame, ein IP-Paket oder ein MPLS-Frame, das an einen Anbieter übergeben wird. Jedes stellt andere Anforderungen an Adressierung, Broadcast-Behandlung und Fehlererkennung. Wer diese Liste falsch aufstellt, rettet das Design mit keiner noch so guten Kapselungsabstimmung.

PayloadNatural fitWhat it needs
PPP sessionL2TPv2UDP reachability, PPP negotiation on both ends
Ethernet frameL2TPv3 or VPWSPseudowire signalling, matched MTU on both sides
IP packetGRE, with IPsec alongsideRouted underlay, protocol type supported by both devices
MPLS frameVPWSProvider attachment circuits and demarcation points

Alles außerhalb dieser Zeilen kommt später hinzu, etwa Verschlüsselung, Kompression oder Verkehrsformung. Wählen Sie zuerst die Zeile.

L2TPv2 und L2TPv3 teilen einen Namen und sonst wenig

L2TPv2 existiert, um PPP-Sitzungen über ein IP-Netz zu transportieren, deshalb liest es sich wie ein Fernzugriffsprotokoll und nicht wie ein allgemeiner Rahmentransport. L2TPv3 verallgemeinert diese Idee: Eine Kontrollverbindung handelt Sitzungen aus, und jede Sitzung trägt eine definierte Verbindung der Schicht 2 zwischen zwei IP-Endpunkten. Gleicher Familienname, anderes Kontrollprotokoll, anderes Sitzungsmodell. Eine Anforderung, die nur L2TP nennt, ist unvollständig, und eine aus der falschen Version kopierte Vorlage handelt nicht einmal.

Wer PPP braucht, kommt an L2TPv2 als einzigem realistischen Familienmitglied nicht vorbei; wer Ethernet-Frames über einen gerouteten Kern braucht, ist im L2TPv3-Revier.

Transportdetails unterscheiden sich auf Wegen, die bei einer Firewall-Prüfung sichtbar werden. L2TPv3 kann direkt über IP-Protokoll 115 oder innerhalb von UDP reisen, üblicherweise auf Port 1701, während L2TPv2 auf UDP 1701 mit PPP darin bleibt. Eine für die eine Version geschriebene Regel kann völlig korrekt aussehen und die andere trotzdem verwerfen.

GRE ist ein Header, kein Dienst

GRE verpackt eine Nutzlast in einen Vier-Byte-Header mit optionalem Schlüssel- und Sequenzfeld und übergibt das Ergebnis dann zur Zustellung an IP. Es behauptet nichts darüber, was die Nutzlast bedeutet, daher können Implementierungen IPv4, IPv6 oder Ethernet tunneln, wenn diese Protokolltypen unterstützt werden. Allgemein ist nicht dasselbe wie universell: Prüfen Sie den Protokolltyp und das Fragmentierungsverhalten auf dem tatsächlichen Gerät.

Das Schlüsselfeld macht GRE nützlich, wenn mehrere Tunnel ein Paar Endpunktadressen teilen, weil der Empfänger anhand dieses Werts demultiplext. GRE über IPv4 kostet etwa 24 Byte vor allen Zusatzoptionen, was auf Links, die bereits für 1500-Byte-Frames ausgelegt sind, zu wirken beginnt. Für sich genommen bietet GRE keine Vertraulichkeit, daher kombiniert das übliche Muster es mit IPsec und lässt IPsec die Krypto-Grenze besitzen. Diese Paarung funktioniert, aber das MTU-Budget muss dann beide Header abdecken.

GRE trägt außerdem Multicast und Broadcast durch den Tunnel, wenn die Nutzlast Ethernet ist, was ein einfacher Unicast-IP-Tunnel nicht kann. Diese Eigenschaft, nicht das Kürzel, ist meist der Grund, warum ein Design es wählt.

VPWS kauft man, statt es zu konfigurieren

Ein Virtual Private Wire Service liefert eine Punkt-zu-Punkt-Verbindung der Schicht 2 über das Netz eines Anbieters. Ihre Anschlussleitung endet an einem Anbieter-Edge-Gerät, und die Pseudowire über den Kern gehört dem Anbieter. Die Fragen, die zählen, sind betrieblich: Wo sitzt die Demarkation, wer besitzt die erste und die letzte Meile, und was macht der Anbieter mit übergroßen Frames.

Hier kippt der Vergleich. L2TPv3 und GRE sind Dinge, die Sie Ende zu Ende betreiben, also debuggen Sie sie mit Ihren eigenen Zugangsdaten und Ihren eigenen Mitschnitten. VPWS ist ein Vertrag mit Übergabe, also beginnt ein Ausfall mit einem Ticket statt mit einem Paketmitschnitt. Keines der Modelle gewinnt bedingungslos; sie scheitern an verschiedenen Stellen, und die Wahl hängt davon ab, ob Sie die letzte Meile besitzen wollen.

Der Label-Stack der Pseudowire bleibt im Netz des Anbieters, daher verändert er Ihre MTU-Rechnung nicht so wie ein sichtbarer Tunnel-Header.

Wählen Sie eine Zeile und schreiben Sie sie auf

Halten Sie die Entscheidung in einem Satz mit drei Teilen fest: Nutzlast, Kapselung und Transporteigentümer. Hängen Sie dann die Zahlen an, die sie überprüfbar machen.

Notieren Sie für jeden Kandidaten den Overhead auf der Leitung, den größten Frame, den der Pfad annimmt, und den ersten Hop, der ein MTU-Problem melden würde. Bestätigen Sie, dass beide Endpunkte den gewählten Protokoll- oder Sitzungstyp unterstützen, nicht nur den Marketingbegriff im Datenblatt. Entscheiden Sie, wie Multiplexing aussähe, wenn im nächsten Jahr eine zweite Verbindung hinzukommt, denn GRE-Schlüssel und L2TPv3-Sitzungs-IDs sind keine austauschbaren Lösungen für dieses Problem. Senden Sie dann einen übergroßen und einen normalen Frame; dieses Paar fängt die meisten Designs ab, die auf dem Papier gut aussahen.

Tunnel nach Namen zu vergleichen erzeugt weiterhin Streit, den niemand beilegen kann. Sie nach Nutzlast, Overhead und Eigentum zu vergleichen, liefert eine Entscheidung an einem Nachmittag, dazu die Belege, um sie später zu verteidigen.

Ähnliche Artikel