Skillnaden i throughput mellan IPsec och SSL VPN

Varför är det en ordning av magnitudskillnad mellan SSL VPN och IPsec VPN genomströmning till fördel för IPsec på Fortigate brandväggar (enligt brandväggarnas datablad)? Jag tittar på Cisco ASA datablad och de nämner bara VPN genomströmning (och en begränsning på antalet SSL VPN-användare). Det verkar vara samma för Palo Alto även om jag inte gjort mycket research där.

Det verkar som att när IKE-förhandlingen/SSL-upphandlingen är klar, använder båda protokollen i stort sett AES256 symmetrisk kryptering. Förhandlingen är en sällsynt händelse, så dess påverkan på prestanda bör vara försumbar jämfört med själva krypteringen/avkrypteringen av paket. Så varför är det då en så stor skillnad?

IPsec-trafikksessioner kan helt avlastas i hårdvara, så kärnan behöver inte bekymra sig alls om dem när de väl är etablerade.
Å andra sidan kan SSL-VPN inte helt avlastas, så paketen kommer alltid att träffa kärnan.

Andra leverantörer kommer sannolikt att ha skillnader i genomströmning också, de avslöjar dem bara inte.

Vår verkliga erfarenhet på en 601E är att SSL VPN genomströmning faktiskt är mycket högre med DTLS.

På en 101E är skillnaden stor. SSL VPN når max 60-70 Mbps och IPSec 140 Mbps.

IPsec är avlastat och SSL VPN hanteras enbart av CPU:n.

För att förstärka detta, kan IPSEC dra nytta av den specialbyggda NP ASIC för IPSEC men SSL måste använda CPU:n.

Menar ni att eftersom paketen når kärnan när man använder SSL VPN gör det det långsammare? Skulle det vara rättvist att säga att detta inte har så mycket att göra med att kryptera/avkryptera paketen och mer med process switching/CEF (på Cisco-språk)?

Om jag minns rätt finns det någon hårdvarubaserad crypto-avlastning även för SSL-VPN (beror på modellens möjligheter), men huvudpoängen är om sessionerna själva kan undvika att träffa kärnan eller inte.

Det innebär att Cisco och PAN inte har ASIC:er som helt tar över IPSec-sessionen vid gigabits genomströmning. Därför har FortiGates NP7-chip eller NP6lite eller NP6xlite-chip som hanterar det utanför system-CPU:erna (om du använder rätt krypteringsalgoritmer förstås).

Ett TLS-paket måste däremot fullständigt avkodas, så det träffar den huvudsakliga CPU:n för proxy-delen av det.

Är du spelentusiast? Det här kan hjälpa:

Om du kör Crysis på ett Intel-integrerat grafikkort på den senaste i7, ja, det kan knappt spelas. Det här är motsvarigheten till SSL VPN som körs i kärnan/CPU.

Om du har ett snyggt RTX 3080, med nämnda specifikationer, kommer det att köra det som en dröm. Detta är ASIC-avlastningen.