QUIC
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 17. december 2017; checks kræver
27 redigeringer .
QUIC (forkortelse for engelsk Quick UDP Internet Connections ; udtales quick ) er en eksperimentel internetprotokol udviklet af Google [1] [2] i slutningen af 2012 [3] .
QUIC tillader multipleksing af flere datastrømme mellem to computere, der kører oven på UDP-protokollen og indeholder krypteringsfunktioner svarende til TLS og SSL . Har lavere forbindelse og transmissionsforsinkelse end TCP . Det tolererer tabet af en del af pakkerne godt ved at tilpasse grænserne for kryptografiske blokke med pakkegrænser . Protokollen inkorporerer muligheden for fremadrettet (proaktiv) fejlkorrektion på pakkeniveau, men i praksis er den deaktiveret [4] .
Support
Koden til QUIC-understøttelse er blevet tilføjet til Google Chrome [5] siden version 29 (i pre-release dev- og canary-grenene siden juni 2013, i udgivelsesgrenen siden 20. august 2013). Det kan aktiveres på chrome://flags/#enable-quic , aktive sessioner er synlige på chrome://net-internals/#quic .
En C++- implementering til QUIC-support er tilgængelig under BSD-licensen . Klientsiden af protokollen er tilgængelig på Git [6] [7] .
En eksperimentel server med QUIC-understøttelse er tilgængelig som en del af Chromium -projektet [8] .
En HTTP-server MÅ annoncere til klienten, at den understøtter QUIC-protokollen med en ekstra "Alternate-Protocol: 80:quic" eller "Alternate-Protocol: 443:quic" header.
I maj 2021 blev protokollen vedtaget som den officielle RFC 9000-standard. Det sociale netværk VKontakte annoncerede implementeringen af protokollen for alle brugere af dens applikationer [9] .
Svagheder ved implementeringen på klientsiden
Fra 2015 er der en åben implementering af protokollen udviklet af Google. Den præsenterede implementering har følgende ulemper :
- serverdelen bruger epoll , som i det mindste ikke tillader at samle og køre serverdelen af protokollen på andre operativsystemer , undtagen Linux [10] uden yderligere ændringer ;
- implementeringen er integreret i Chromium , hvilket gør den svær at bruge i andre projekter, både hvad angår integration og hvad angår synkronisering og kodebaseopdateringer.
Der er en protokolimplementering på klientsiden ekstraheret fra Chromium-kildetræet kaldet libQUIC [11] . Udvinding og synkronisering med kodebasen, samt en vis forfining, håndteres af Devsisters. Denne forgrening fra hovedimplementeringen eliminerer manglen på integration i Chromium-projektet.
Serverimplementering
Der er en serverimplementering i Go-sproget [12] , som gør det muligt at bruge det i andre projekter. 11. juli 2017 LiteSpeed Technologies, Inc. begyndte officielt at understøtte QUIC [13] i deres load balancer (WebADC) og webserver (LiteSpeed Web Server).
I slutningen af 2020 dukkede Microsofts implementering af IETF QUIC-protokollen op - MsQuic, skrevet i C. MsQuic siges at adskille sig fra andre biblioteksmuligheder ved at:
- Optimeret til klient- og serversiden.
- Optimeret til maksimal gennemstrømning og samtidig minimeret latens.
- asynkront arbejde.
- Understøttelse af skalering på modtagesiden (RSS).
- Understøttelse af fletning af modtage og sende over UDP [14] .
Se også
- SPDY er en anden eksperimentel protokol fra Google.
- DTLS
- HTTP/2
- SCTP
- μTP er en transportprotokol over UDP med leveringskontrol i μTorrent
Noter
- ↑ Det ser ud til, at Google arbejder på en UDP-erstatning kaldet QUIC . Hentet 29. oktober 2017. Arkiveret fra originalen 4. juli 2013. (ubestemt)
- ↑ Google gør internettet hurtigere med en protokol, der reducerer rundrejser . Dato for adgang: 29. juni 2013. Arkiveret fra originalen 4. juli 2013. (ubestemt)
- ↑ Udgave 11125002: Tilføj QuicFramer og venner. — Kodegennemgang . Hentet 17. december 2017. Arkiveret fra originalen 13. april 2020. (ubestemt)
- ↑ https://www.blackhat.com/docs/us-16/materials/us-16-Pearce-HTTP2-&-QUIC-Teaching-Good-Protocols-To-Do-Bad-Things.pdf#page=61 Arkiveret 11. december 2021 på Wayback Machine "FEC (aktuelt deaktiveret)"
- ↑ Chromium Code Anmeldelser: Udgave 12317026: Forskellige små QUIC oprydninger efter sammenlægning til Chrome. . Dato for adgang: 22. februar 2013. Arkiveret fra originalen 24. december 2013. (ubestemt)
- ↑ chromium/chromium/src/net/refs/heads/main/. /hurtig . Hentet 30. juni 2013. Arkiveret fra originalen 16. maj 2013. (ubestemt)
- ↑ Indeks for /trunk/src/net/quic . Hentet 2. november 2020. Arkiveret fra originalen 10. april 2021. (ubestemt)
- ↑ Chromium Code Search: net/tools/quic . Hentet 22. september 2021. Arkiveret fra originalen 16. marts 2022. (ubestemt)
- ↑ VKontakte accelererede 2 gange . RIA Novosti (20. september 2021). Hentet 22. september 2021. Arkiveret fra originalen 21. september 2021. (Russisk)
- ↑ chromium/src/net/tools/quic/quic_server.h . Hentet 30. september 2013. Arkiveret fra originalen 3. juni 2016. (ubestemt)
- ↑ Devsisters libQUIC repository på github . Hentet 12. december 2015. Arkiveret fra originalen 7. december 2020. (ubestemt)
- ↑ quic-go/README.md hos master lucas-clemente/quic-go GitHub Arkiveret 6. februar 2022 på Wayback Machine GitHub
- ↑ QUIC - LiteSpeed Technologies . Hentet 18. august 2017. Arkiveret fra originalen 18. august 2017. (ubestemt)
- ↑ Cross-platform, C implementering af IETF QUIC-protokollen. . github.com . github.com (01/06/2021). Hentet 5. marts 2021. Arkiveret fra originalen 9. maj 2022. (ubestemt)
Litteratur
Links
Web og hjemmesider |
---|
globalt |
|
---|
Lokalt |
|
---|
Typer af websteder og tjenester |
|
---|
Oprettelse og vedligeholdelse |
|
---|
Typer af layout, sider, websteder |
|
---|
Teknisk |
|
---|
Markedsføring |
|
---|
Samfund og kultur |
|
---|