Brotli tok (.brotli)
IETF StandardnoBrotli je algoritam za kompresiju podataka bez gubitaka otvorenog koda koji je razvio Google, specijalno optimizovan za veb tipografiju (WOFF2) i kodiranje HTTP sadržaja (Content-Encoding: br) radi ubrzanja isporuke internet stranica.
Конвертујте BROTLI у GZIP
Бесплатан BROTLI у GZIP конвертор у прегледачу. Конвертујте фајлове тренутно без слања на сервер уз 100% приватност.
Pregledaj i metapodaci
Operativni sistemi i analizatori datoteka identifikuju Brotli datoteke proverom početnog binarnog niza bajtova:
Potpis zaglavlja na nivou bajtova (Magic Bytes)
Operativni sistemi i analizatori datoteka identifikuju Brotli datoteke proverom početnog binarnog niza bajtova:
HEX POTPIS (OFFSET 0):
CE B2 CF 81ASCII REPREZENTACIJA: βÏ\x81
Standardizacija: IETF RFC 7932
Tehničke specifikacije
| Arhitektura kontejnera | Raw bitstream framing with optional window size declaration and meta-blocks |
| Kompresija | LZ77 sliding dictionary (up to 16 MB), second-order context modeling, and static 120 KB dictionary |
| Bajtni redosled (Endianness) | Little-Endian bit-packing |
| Prostori boja | N/A (Data Compression Stream) |
| Kanali i struktura | General-purpose byte stream compression |
| Maksimalne dimenzije | Arbitrary byte stream length (supports unbounded streaming) |
| Transparentnost | Lossless byte-for-byte exact roundtrip data preservation |
| Strimovanje i progresivno učitavanje | Meta-block chunking allows continuous HTTP chunked transfer streaming |
Tehnička matrica poređenja: Brotli vs Konkurenti
| Tehnički atribut | Brotli (Trenutno) | GZ | ZSTD | DEFLATE |
|---|---|---|---|---|
| Ugrađeni statički rečnik | Uključen veb rečnik od 120 KB | Nema (samo dinamički) | Rečnici koje korisnik može da obučava | Nema (samo dinamički) |
| Veb kompresija (u odnosu na Gzip) | 15% - 25% manji od Gzip-a | Osnovni standard (Gzip) | 10% - 20% manji od Gzip-a | Osnovni Deflate |
| HTTP kodiranje sadržaja | 'Content-Encoding: br' | 'Content-Encoding: gzip' | 'Content-Encoding: zstd' | 'Content-Encoding: deflate' |
| Primarni cilj dizajna | Prenos veb teksta i veb fontova | Opšta kompresija Unix datoteka | Baza podataka u realnom vremenu i unos podataka | Temeljni algoritam kompresije |
Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak
Pretraživač ne uspeva da učita resurs uz poruku 'ERR_CONTENT_DECODING_FAILED'.
Osnovni uzrok: Proksi ili server je skratio Brotli tok pre nego što je prenesen konačni meta-blok.
Oporavak: Obrišite keš memoriju pretraživača, proverite podešavanja kompresije na serveru ili lokalno dekompresujte preko File2File-a.
Bezbednosna analiza i vektori napada parsera
Brotlijin statički rečnik i modeliranje konteksta zahtevaju rigorozne provere granica memorije protiv loše formiranih unazad usmerenih referenci (back-references).
Poznati vektori napada
- Čitanje pokazivača van granica pri upućivanju na pomeraje statičkog rečnika koji prevazilaze veličinu tabele.
- Dekompresiona bomba (ekvivalent zip bombe) koja iscrpljuje memoriju klijenta iz malih korisnih opterećenja.
- Prekoračenje bafera tokom promene veličine prstenastog bafera klizećeg prozora (sliding window ring buffer).
Defanzivne najbolje prakse:
Istorijat i prekretnice
Ključne prednosti
- 15% do 25% bolji odnos kompresije od Gzip-a na HTML, CSS i JavaScript veb resursima.
- Uključuje unapred definisani statički rečnik od 120 KB uobičajenih veb reči, HTML tagova i fraza.
- Izuzetno velika brzina dekompresije, koja obezbeđuje skoro trenutno renderovanje stranice na strani klijenta.
Tehnička ograničenja i nedostaci
- Kompresija na nivou 11 je računski zahtevna (najpogodnija za prethodnu kompresiju statičkih resursa).
- Zahteva HTTPS u svim veb pretraživačima kako bi se sprečilo korumpiranje od strane transparentnih proksi servera.
- Sirove .br datoteke nemaju ugrađeno ime datoteke ili zaglavlja dozvola bez spoljne kontejnerizacije.
Zanimljivosti
- Brotli je dobio ime po 'Brötli', što na švajcarskom nemačkom znači 'hlebčić' (mali hleb).
- Statički rečnik od 120 KB unutar Brotlija sadrži hiljade uobičajenih engleskih, španskih, nemačkih, kineskih i HTML isečaka.
- Preko 95% modernog internet saobraćaja preko Cloudflare-a, Fastly-ja i Google-a se isporučuje korišćenjem Brotli kompresije.
Često postavljana tehnička pitanja
Zašto je Brotli brži od Gzip-a za veb-sajtove?
Brotli kompresuje HTML, CSS i JS datoteke 20% efikasnije od Gzip-a dok ih dekompresuje sličnim brzinama, smanjujući broj zahteva i odgovora (roundtrips) potrebnih preko mobilnih mreža.
Zašto Brotli zahteva HTTPS?
Veb pretraživači podržavaju Brotli samo preko bezbednih HTTPS veza jer bi stari transparentni proksiji na internetu pogrešno protumačili ili oštetili novu 'br' enkodiranje.
Kako mogu da dekompresujem .br datoteku?
Možete trenutno dekompresovati .br ili .brotli datoteke u običan tekst ili originalne datoteke pomoću aplikacije File2File.app direktno u Vašem veb pretraživaču.