Brotli straume (.brotli)
IETF StandartsBrotli ir Google izstrādāts atvērtā pirmkoda bezzudumu datu kompresijas algoritms, kas īpaši optimizēts tīmekļa tipogrāfijai (WOFF2) un HTTP satura kodēšanai (Content-Encoding: br), lai paātrinātu interneta lapu ielādi.
Konvertēt BROTLI uz GZIP
Bezmaksas BROTLI uz GZIP konvertētājs pārlūkprogrammā. Konvertējiet failus uzreiz savā ierīcē.
Pārbaudīt un metadati
Operētājsistēmas un failu analizatori identificē Brotli failus, pārbaudot sākotnējo bināro baitu secību:
Baitu līmeņa galvenes paraksts (maģiskie baiti)
Operētājsistēmas un failu analizatori identificē Brotli failus, pārbaudot sākotnējo bināro baitu secību:
HEKSADECIMĀLAIS PARAKSTS (NOBĪDE 0):
CE B2 CF 81ASCII ATTEIOLOJUMS: βÏ\x81
Standartizācija: IETF RFC 7932
Tehniskās specifikācijas
| Konteinera arhitektūra | Raw bitstream framing with optional window size declaration and meta-blocks |
| Saspiešana | LZ77 sliding dictionary (up to 16 MB), second-order context modeling, and static 120 KB dictionary |
| Baitu secība | Little-Endian bit-packing |
| Krāsu telpas | N/A (Data Compression Stream) |
| Kanāli un struktūra | General-purpose byte stream compression |
| Maks. izmēri | Arbitrary byte stream length (supports unbounded streaming) |
| Caurspīdīgums | Lossless byte-for-byte exact roundtrip data preservation |
| Straumēšana un progresīvā ielāde | Meta-block chunking allows continuous HTTP chunked transfer streaming |
Tehniskā salīdzinājuma matrica: Brotli pret konkurentiem
| Tehniskais atribūts | Brotli (Pašreizējais) | GZ | ZSTD | DEFLATE |
|---|---|---|---|---|
| Iebūvēta statiskā vārdnīca | Iekļauta 120 KB tīmekļa vārdnīca | Nav (tikai dinamiskā) | Lietotāja apmācāmas vārdnīcas | Nav (tikai dinamiskā) |
| Tīmekļa kompresija (salīdzinājumā ar Gzip) | Par 15% - 25% mazāks nekā Gzip | Bāzes standarts (Gzip) | Par 10% - 20% mazāks nekā Gzip | Bāzes Deflate |
| HTTP satura kodēšana | 'Content-Encoding: br' | 'Content-Encoding: gzip' | 'Content-Encoding: zstd' | 'Content-Encoding: deflate' |
| Galvenais dizaina mērķis | Tīmekļa teksta un tīmekļa fontu pārraide | Vispārēja Unix failu kompresija | Reāllaika datu bāze un datu ievade | Pamata kompresijas algoritms |
Biežākie bojājumu veidi un heksadecimālās atkopšanas ceļvedis
Pārlūkprogramma neizdodas ielādēt resursu ar kļūdu 'ERR_CONTENT_DECODING_FAILED'.
Pamatcēlonis: Starpniekserveris vai serveris saīsināja Brotli straumi pirms pēdējā metabloka pārraidīšanas.
Atkopšana: Notīriet pārlūkprogrammas kešatmiņu, pārbaudiet servera kompresijas iestatījumus vai lokāli dekompresējiet, izmantojot File2File.
Drošības analīze un parsētāja uzbrukuma vektori
Brotli statiskā vārdnīca un konteksta modelēšana prasa stingras atmiņas robežu pārbaudes pret ļaunprātīgi veidotām atpakaļatsaucēm.
Zināmie uzbrukuma vektori
- Ārpus robežu rādītāja lasīšana, atsaucoties uz statiskās vārdnīcas nobīdēm ārpus tabulas izmēra.
- Dekompresijas bumba (zip bumbas ekvivalents), kas izsmel klienta atmiņu no mazām datu pakotnēm.
- Bufera pārpilde slīdošā loga gredzenveida bufera izmēra maiņas laikā.
Aizsardzības labākā prakse:
Vēsturiskā izcelsme un pavērsieni
Galvenās priekšrocības un plusi
- Par 15% līdz 25% labāks kompresijas koeficients nekā Gzip HTML, CSS un JavaScript tīmekļa resursiem.
- Ietver iepriekš definētu 120 KB statisko vārdnīcu ar parastajiem tīmekļa vārdiem, HTML tagiem un frāzēm.
- Īpaši ātrs dekompresijas ātrums, kas nodrošina gandrīz tūlītēju lapas renderēšanu klienta pusē.
Tehniskie ierobežojumi un mīnusi
- Kompresija 11. līmenī ir skaitļošanas ziņā dārga (vispiemērotākā statisko resursu iepriekšējai kompresijai).
- Visās tīmekļa pārlūkprogrammās ir nepieciešams HTTPS, lai novērstu caurspīdīgā starpniekservera korupciju.
- Neapstrādātiem .br failiem trūkst iegulto failu nosaukumu vai atļauju galvenes bez ārējas konteinerizācijas.
Interesanti tehniski fakti
- Brotli ir nosaukts par godu 'Brötli', kas Šveices vācu valodā nozīmē 'mazā maizīte'.
- Statiskā 120 KB vārdnīca Brotli satur tūkstošiem parasto angļu, spāņu, vācu, ķīniešu un HTML fragmentu.
- Vairāk nekā 95% mūsdienu interneta datplūsmas Cloudflare, Fastly un Google tīklos tiek piegādāta, izmantojot Brotli kompresiju.
Bieži uzdotie tehniskie jautājumi
Kāpēc Brotli tīmekļa vietnēm ir ātrāks par Gzip?
Brotli saspiež HTML, CSS un JS failus par 20% mazākos izmēros nekā Gzip, vienlaikus veicot dekompresiju līdzīgā ātrumā, kas samazina mobilo tīklu pieprasījumu un atbilžu skaitu.
Kāpēc Brotli pieprasa HTTPS?
Tīmekļa pārlūkprogrammas atbalsta Brotli tikai, izmantojot drošus HTTPS savienojumus, jo mantoti caurspīdīgie starpniekserveri (proxies) internetā nepareizi interpretētu vai sabojātu jauno 'br' kodējumu.
Kā es varu atspiest .br failu?
Jūs varat uzreiz atspiest .br vai .brotli failus parastā tekstā vai oriģinālajos failos, izmantojot File2File.app tieši savā tīmekļa pārlūkprogrammā.