Klients ziņo, ka tunelis pievienojas, ping atbild, pieteikšanās lapa ielādējas un tad pārsūtīšana katrā mēģinājumā iesalst tajā pašā vietā. Šis modelis jau daudz ko pasaka: sasniedzamība darbojas, bet ilgtspējīga caurlaidspēja ne. Pirms atvērt ugunsmūri, noskaidrojiet, vai VPN vispār piedalās šajā kļūmē. Laidiet lielu TCP caur to pašu vārteju bez tuneļa ceļā; ja arī tas iesalst, OpenVPN nekad nav bijis iesaistīts.

pfSense viesim ar virtio tīkla karti ir ļoti labs iemesls neizdoties tieši tādā formā.

Mazie paketes iziet, lielais TCP karājas

Rokasspiedieni, DNS atbildes un ICMP atbalsis ir mazas un parasti iziet. Ilgstošas pārsūtīšanas liek viesim segmentēt, un tieši tur parādās bojāts offload ceļš. Kļūmei nav jābūt simetriskai: izejošā plūsma var būt tīra, kamēr ienākošā zūd, vai otrādi, tāpēc lietotājs var pieteikties un pēc tam apstāties pie pirmās lielās atbildes. Tā kā tas pats klients darbojas caur citu vārteju, vaina tiek uzlikta jaunākajai komponentei.

Tāpēc pārbaudiet vārteju bez tuneļa. Pietiek ar LAN uz WAN lejupielādi, kas ir pietiekami liela, lai darbotos dažas sekundes, un tā jāveic pirms jebkādu iestatījumu maiņas, lai vēlākais salīdzinājums kaut ko nozīmētu.

Ko offload patiešām sola

virtio ir paravirtualizēts: saimnieks un viesis dala darbu, saimnieks paziņo kontrolsummas un segmentēšanas iespējas un sagaida, ka viesis pabeigs iesākto. Ja viesa steka to nedara, kadri iziet ar nepilnīgām kontrolsummām vai saimnieks tos izmet. Emulēta E1000 piedāvā vienkāršāku un lēnāku modeli, kurā problēma pazūd bez nevienas pfSense izmaiņas. Iespēju apspriešana notiek katram aparātam atsevišķi, kas izskaidro, kāpēc viens viesis darbojas mēnešiem, bet tā pārbūvētais dvīnis sabrūk pirmajā dienā.

Apspriestais kopums ir atkarīgs no hipervizora versijas un izvēlētā tīkla kartes modeļa, nevis tikai no importētās konfigurācijas.

Viena izvēles rūtiņa saglabā virtio

pfSense saskarnē Sistēma, tad Papildu, tad Tīkls ir izvēles rūtiņa ar nosaukumu Atspējot aparatūras kontrolsummas offload. To atzīmējot, viesis aprēķina kontrolsummas programmatūrā, kas atbilst tam, ko FreeBSD steks aiz pfSense sagaida no paravirtualas ierīces. Divas saistītas opcijas tajā pašā lapā aptver aparatūras TCP segmentēšanas offload un aparatūras lielās uztveršanas offload. Vērsieties pie tām, kad rokasspiedieni izdodas, bet lielās pārsūtīšanas ne.

Atstājiet tīkla karti kā virtio, kamēr veicat izmaiņas. Pāreja uz E1000 dedzina procesoru katrā paketē visu VM mūžu un slēpj konfigurācijas problēmu no ikviena, kas manto saimnieku, un tas ir sliktāks darījums nekā nedaudz lēnāks, bet paredzams datu ceļš.

Izmēriet izmaksas, ko tikko pieņēmāt

Programmatūras kontrolsummu aprēķināšana pārvieto darbu uz viesi, tāpēc pēc tam izmēriet caurlaidspēju, nevis pieņemiet, ka tas neko nemaksā. Mazā VM sods ir reāls, bet tas ir redzams un stabils, atšķirībā no klusas zaudēšanas. Salīdziniet saskarnes kļūdu skaitītājus un viesa kodola žurnālu pirms un pēc. Hipervizors, kas filtrē tiltu, ir atsevišķa kļūme ar citiem pierādījumiem, un neviena offload karodziņa to neizārstēs.

Mainiet vienu lietu katrā testā un pierakstiet izvēlnes ceļu, atzīmēto rūtiņu un izmērīto skaitli. Ikviens, kas saskarsies ar nākamo pārbūvēto viesi, gribēs visus trīs.

Citi uz BSD balstīti ugunsmūri piedāvā līdzvērtīgu kontroli savos saskarnes iestatījumos, tāpēc argumentācija darbojas arī tad, kad izvēlnes ceļš ne.

Saistītie raksti