Brotli-virta (.br)
IETF StandardiBrotli on Googlen kehittämä avoimen lähdekoodin häviötön tietojenpakkausalgoritmi, joka on optimoitu erityisesti verkkotypografialle (WOFF2) ja HTTP-sisällön koodaukselle (Content-Encoding: br) internet-sivujen latausnopeuden parantamiseksi.
Muunna tiedostot muodosta BROTLI muotoon GZIP
Ilmainen selaimessa toimiva muunnin, jolla voit muuntaa tiedostoja muodosta BROTLI muotoon GZIP. Muunna tiedostot hetkessä laitteellasi.
Tarkastele tiedostoa ja sen metatietoja
Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat Brotli-tiedostot tarkistamalla tiedoston alun binäärisarjan:
Otsaketunniste tavutasolla (tunnistetavut)
Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat Brotli-tiedostot tarkistamalla tiedoston alun binäärisarjan:
HEKSADEKSIMAALINEN TUNNISTE (SIJAINTI 0):
CE B2 CF 81ASCII-ESITYSTAPA: βÏ\x81
Standardointi: IETF RFC 7932
Tekniset tiedot
| Säiliöarkkitehtuuri | Raaka bittivirta, jossa on valinnainen ikkunakoon määritys ja metablokkeja |
| Pakkaus | LZ77-liukusanakirja (enintään 16 Mt), toisen kertaluvun kontekstimallinnus ja kiinteä 120 kt:n sanakirja |
| Tavujärjestys (Endianness) | Little-Endian-bittipakkaus |
| Väriavaruudet | Ei sovellu (datan pakkausvirta) |
| Kanavat ja rakenne | Yleiskäyttöinen tavuv,irta |
| Suurimmat mitat | Mielivaltaisen pituinen tavujono (tukee rajoittamatonta suoratoistoa) |
| Läpinäkyvyys | Häviötön, tavu tavulta täsmälleen palautuva datan säilytys |
| Suoratoisto ja progressiivinen lataus | Metablokkeihin jako mahdollistaa jatkuvan HTTP-lohkosiirron suoratoistona |
Tekninen vertailumatriisi: Brotli vs. kilpailijat
| Tekninen attribuutti | Brotli (Nykyinen) | GZ | ZSTD | DEFLATE |
|---|---|---|---|---|
| Sisäinen staattinen sanakirja | Sisältää 120 kt:n verkkosanakirjan | Ei mitään (vain dynaaminen) | Käyttäjän koulutettavat sanakirjat | Ei mitään (vain dynaaminen) |
| Verkkopakkaus Gzipiin verrattuna | 15-25 % pienempi tiedostokoko kuin Gzipillä | Perustason standardi (Gzip) | 10-20 % pienempi tiedostokoko kuin Gzipillä | Perustason Deflate |
| HTTP Content-Encoding | 'Content-Encoding: br' | 'Content-Encoding: gzip' | 'Content-Encoding: zstd' | 'Content-Encoding: deflate' |
| Ensisijainen suunnittelutavoite | Verkkotekstin ja verkkofonttien siirto | Yleinen Unix-tiedostojen pakkaus | Reaaliaikainen tietokanta- ja datan syöttö | Perustavaa laatua oleva pakkausalgoritmi |
Yleiset vioittumistavat ja heksadesimaalinen palautusopas
Resurssin lataus epäonnistuu selaimessa virheen 'ERR_CONTENT_DECODING_FAILED' vuoksi.
Perussyy: Välityspalvelin tai palvelin typisti Brotli-virran ennen viimeisen metalohkon siirtoa.
Korjaus: Tyhjennä selaimen välimuisti, tarkista palvelimen pakkausasetukset tai pura paikallisesti File2File.appn kautta.
Tietoturva-analyysi ja tiedostojäsentimien hyökkäysvektorit
Brotlin staattinen sanakirja ja kontekstimallinnus edellyttävät tiukkoja muistorajojen tarkistuksia virheellisiä takaisinviittauksia vastaan.
Tunnetut hyökkäysvektorit
- Muistialueen rajat ylittävä osoittimen luku viitattaessa staattisen sanakirjan siirtymiin taulukon koon ulkopuolella.
- Purkupommi (zip-pommin vastine), joka kuluttaa asiakkaan muistin loppuun pienistä hyötykuormista.
- Puskurin ylivuoto liukuvan ikkunan rengaspuskurin koon muutoksen aikana.
Tietoturvan parhaat käytännöt: Pakota tulostuspuskurin enimmäiskoot epäluotettavien Brotli-virtojen purkamisen aikana.
Historia ja virstanpylväät
Tärkeimmät edut
- HTML-, CSS- ja JavaScript-verkkosisältö pakkautuu 15-25 % pienemmäksi kuin Gzipillä.
- Sisältää valmiiksi määritetyn 120 kt:n staattisen sanakirjan yleisistä verkkosanoista, HTML-tunnisteista ja lausekkeista.
- Erittäin nopea purkunopeus, joka varmistaa lähes välittömän sivun hahmonnuksen asiakaspäässä.
Tekniset rajoitukset
- Pakkaus tasolla 11 vaatii paljon laskentatehoa (sopii parhaiten staattisen sisällön esipakkaukseen).
- Edellyttää HTTPS-suojausta kaikissa verkkoselaimissa läpinäkyvän välityspalvelimen vioittumisen estämiseksi.
- Raaoista .br-tiedostoista puuttuvat upotetut tiedostonimi- tai käyttöoikeusotsakkeet ilman ulkoista säiliöintiä.
Mielenkiintoisia teknisiä faktoja
- Brotli on saanut nimensä sanasta 'Brötli', joka tarkoittaa 'pientä leipää' sveitsinsaksaksi.
- Brotlin sisäinen 120 kt:n staattinen sanakirja sisältää tuhansia yleisiä englannin-, espanjan-, saksan- ja kiinankielisiä sekä HTML-katkelmia.
- Brotlia tukevat suuret verkkopalvelimet ja selaimet, mutta sen osuus liikenteestä vaihtelee palvelun ja vastaustyypin mukaan.
Usein kysytyt tekniset kysymykset
Miksi Brotli on Gzipiä nopeampi verkkosivustoilla?
Brotli voi joissakin tapauksissa pakata verkkotekstitiedostot Gzipiä pienemmiksi, mutta ero riippuu sisällöstä, pakkausasetuksista ja toteutuksesta.
Miksi Brotli vaatii HTTPS-yhteyden?
Verkkoselaimet tukevat Brotlia vain suojattujen HTTPS-yhteyksien kautta, koska internetin vanhat läpinäkyvät välityspalvelimet tulkitsisivat uuden 'br'-koodauksen väärin tai vioittaisivat sen.
Miten voin purkaa .br-tiedoston?
Voit purkaa .br- tai .brotli-tiedostot puhtaaksi tekstiksi tai alkuperäisiksi tiedostoiksi välittömästi File2File.app-palvelun avulla suoraan selaimessasi.