Acceleratoarele criptografice vechi apar în inventarul PCI, și se presupune că VPN-ul va cripta acum mai repede. Patru predări separate trebuie să reușească înainte ca acest lucru să fie adevărat: sistemul găsește dispozitivul, un driver întreținut îl controlează, o interfață expune operația de care are nevoie VPN-ul, iar backend-ul activ al VPN-ului o cere. Dacă una eșuează, placa rămâne în afara căii reale a tunelului.

Detectarea este prima predare, nu ultima

Detectarea dovedește doar că magistrala vede un dispozitiv și că nucleul are o oarecare idee despre ce este acesta. Suportul driverului este următoarea poartă și depinde de versiune: un modul prezent într-o versiune veche poate lipsi complet din pachetul actual al nucleului. Mai mult, driverul trebuie să înregistreze algoritmul și modul concrete pe care le folosește canalul de date. O placă ce accelerează AES-CBC nu face nimic pentru o configurație care negociază AES-GCM.

Numiți fiecare predare separat în evaluare, deoarece o defecțiune la a patra arată din exterior identic cu una la prima.

Citiți inventarul de algoritmi al nucleului

Începeți prin a aduna ce știe deja gazda despre dispozitiv și despre algoritmii pe care i-a înregistrat.

lspci -nn | grep -i -E "crypt|hifn|soekris"
grep -E "^(name|driver|priority)" /proc/crypto | head -40

Linia PCI oferă identificatorii de producător și de dispozitiv necesari pentru orice căutare de driver, iar/proc/crypto enumeră implementările înregistrate cu driverele și prioritățile lor. Valoarea de prioritate ordonează selecția între implementările aceluiași algoritm, ceea ce nu este același lucru cu o aplicație care alege una dintre ele. Dacă algoritmul plăcii nu apare acolo, driverul nu l-a înregistrat niciodată și nicio modificare din spațiul utilizator nu îl va apela. Notați identificatorii și numele implementărilor în loc de o captură de ecran a plăcii.

VPN-ul trebuie să selecteze acea implementare

Disponibilitatea în nucleu este un meniu, nu o garanție că procesul VPN a comandat din el. Verificați ce folosește efectiv backend-ul.

openssl speed -evp aes-256-gcm
openssl engine -t -c

Comanda de viteză exersează calea proprie a bibliotecii și oferă o linie de bază pentru mașina așa cum este configurată, în timp ce listarea motoarelor arată dacă OpenSSL are deloc vreun furnizor opțional disponibil. Un VPN în spațiul utilizator cu propria bibliotecă criptografică ocolește complet implementările nucleului, așa că un driver înregistrat poate fi irelevant pentru el. Descărcarea canalului de date este încă un al treilea mecanism, care schimbă procesarea pachetelor în loc să trimită cereri de cifrare către o placă de extensie. Stabiliți care dintre aceste trei descrie implementarea dumneavoastră înainte de a cumpăra hardware pentru al patrulea.

Comparați cu calea procesorului pe care o aveți deja

Procesoarele moderne includ instrucțiuni AES pe care o bibliotecă întreținută le folosește fără hardware suplimentar și evită transferurile pe magistrală și copiile suplimentare. Un accelerator vechi poate pierde în fața acestei căi chiar raportând cifre brute de criptare impresionante. Măsurați sarcina reală: același trafic, aceleași setări de protecție, linia de bază față de candidat, cu sarcina procesorului și debitul aplicației înregistrate împreună. Includeți în decizie comportamentul la actualizare și recuperare, deoarece un modul neîntreținut crește riscul de mentenanță al gateway-ului pe toată durata lui de viață.

Motivul achiziției este un lanț susținut plus un beneficiu măsurat. O placă detectată, sau un modul pe care cineva l-a compilat cândva, nu este un motiv pentru a face un gateway întreținut dependent de hardware învechit.

Articole similare