L2TPv2, L2TPv3, GRE og VPWS: vælg efter nyttelasten
Sammenlign L2TPv2, L2TPv3, GRE og MPLS VPWS efter den nyttelast, de bærer, det overhead, de tilføjer, og hvem der reelt driver transporten.
De fleste L2TP mod GRE-diskussioner falder sammen af samme grund: navnene ligger på forskellige lag af problemet. To af dem beskriver indkapsling, som du konfigurerer på dine egne routere. Et beskriver en tjeneste, som en anden sælger dig. Start med den nyttelast, endepunkterne skal bære, og sammenligningen bliver en kort liste af konsekvenser i stedet for en kamp om funktioner.
Nyttelasten først, protokollen derefter
I praksis er nyttelasten en af fire ting: en PPP-session, en rå Ethernet-ramme, en IP-pakke eller en MPLS-ramme, der overdrages til en udbyder. Hver stiller forskellige krav til adressering, håndtering af broadcast og fejldetektion. Tager du fejl af denne liste, redder ingen justering af indkapslingen designet.
| Payload | Natural fit | What it needs |
|---|---|---|
| PPP session | L2TPv2 | UDP reachability, PPP negotiation on both ends |
| Ethernet frame | L2TPv3 or VPWS | Pseudowire signalling, matched MTU on both sides |
| IP packet | GRE, with IPsec alongside | Routed underlay, protocol type supported by both devices |
| MPLS frame | VPWS | Provider attachment circuits and demarcation points |
Alt uden for disse rækker tilføjes senere, som kryptering, komprimering eller trafikformning. Vælg rækken først.
L2TPv2 og L2TPv3 deler et navn og næsten intet andet
L2TPv2 findes for at bære PPP-sessioner over et IP-netværk, og derfor læses det som en fjernadgangsprotokol snarere end en generel rammetransport. L2TPv3 generaliserer den idé: en kontrolforbindelse forhandler sessioner, og hver session bærer en defineret lag 2-forbindelse mellem to IP-endepunkter. Samme familienavn, anden kontrolprotokol, anden sessionsmodel. Et krav, der kun siger L2TP, er ufuldstændigt, og en skabelon kopieret fra den forkerte version vil ikke engang forhandle.
Har du brug for PPP, er L2TPv2 det eneste realistiske medlem af familien; har du brug for Ethernet-rammer over en routet kerne, er du på L2TPv3-territorium.
Transportdetaljerne adskiller sig på måder, der dukker op under en firewall-gennemgang. L2TPv3 kan rejse direkte over IP-protokol 115 eller inde i UDP, oftest på port 1701, mens L2TPv2 bliver på UDP 1701 med PPP indeni. En politik skrevet til den ene version kan se helt korrekt ud og alligevel droppe den anden.
GRE er en header, ikke en tjeneste
GRE pakker en nyttelast ind i en fire-byte-header med et valgfrit nøgle- og sekvensfelt og giver derefter resultatet til IP for levering. Det udtaler sig ikke om, hvad nyttelasten betyder, så implementeringer kan tunnele IPv4, IPv6 eller Ethernet, hvis disse protokoltyper understøttes. Generel er ikke det samme som universel: bekræft protokoltypen og fragmenteringsadfærden på den faktiske enhed.
Nøglefeltet er det, der gør GRE nyttig, når flere tunneler deler et par endepunktsadresser, fordi modtageren demultiplekser på den værdi. GRE over IPv4 koster omkring 24 byte før eventuelle ekstra valgmuligheder, og det begynder at betyde noget på links, der allerede er dimensioneret til 1500-byte-rammer. Alene tilbyder GRE ingen fortrolighed, så det sædvanlige mønster parrer det med IPsec og lader IPsec eje kryptogrænsen. Den parring virker, men MTU-budgettet skal så dække begge headere.
GRE bærer også multicast og broadcast gennem tunnelen, når nyttelasten er Ethernet, hvilket en almindelig unicast-IP-tunnel ikke kan. Det er den egenskab, snarere end forkortelsen, der normalt får et design til at vælge det.
VPWS købes, det konfigureres ikke
En virtuel privat ledningstjeneste leverer et punkt-til-punkt-lag 2-kredsløb gennem en udbyders netværk. Dit tilslutningskredsløb terminerer på en udbyderrandenhed, og pseudowiren gennem kernen tilhører udbyderen. De spørgsmål, der betyder noget, er driftsmæssige: hvor demarkationen ligger, hvem der ejer den første og sidste mil, og hvad udbyderen gør med overdimensionerede rammer.
Det er her, sammenligningen vender. L2TPv3 og GRE er ting, du kører ende til ende, så du fejlretter dem med dine egne legitimationsoplysninger og dine egne optagelser. VPWS er en kontrakt med en overdragelse, så et udfald starter med en ticket i stedet for en pakkeoptagelse. Ingen af modellerne vinder uden videre; de fejler forskellige steder, og valget afhænger af, om du vil eje den sidste mil.
Pseudowirens labelstak bliver inde i udbyderens netværk, så den ændrer ikke din MTU-aritmetik, som en synlig tunnel-header gør.
Vælg én række og skriv den ned
Notér beslutningen som én sætning med tre dele: nyttelast, indkapsling og transporteier. Vedhæft derefter de tal, der gør den kontrollerbar.
For hver kandidat skal du skrive overheaden på linket ned, den største ramme, stien accepterer, og det første hop, der ville rapportere et MTU-problem. Bekræft, at begge endepunkter understøtter den protokoltype eller sessionstype, du valgte, ikke bare marketingtermen på databladet. Beslut, hvordan multipleksing ville se ud, hvis et andet kredsløb dukker op næste år, fordi GRE-nøgler og L2TPv3-sessions-id’er ikke er indbyrdes udskiftelige løsninger på det problem. Send derefter en overdimensioneret ramme og en normal ramme; det par fanger de fleste designs, der så fine ud på papiret.
At sammenligne tunneler efter navn bliver ved med at skabe diskussioner, som ingen kan afgøre. At sammenligne dem efter nyttelast, overhead og ejerskab giver en beslutning på en eftermiddag plus de beviser, der er nødvendige for at forsvare den senere.