Byte servering - Byte serving
HTTP |
---|
Anmodningsmetoder |
Sidehovedfelter |
Statuskoder |
Sikkerhedsadgangskontrolmetoder |
Sikkerhedsproblemer |
Byte-servering (andre navne: RFC 7233 siger, at klienten foretager rækkevidde-anmodninger, når den fremsætter en delvis anmodning om indhold; klienter foretager rækkevidde-anmodninger ; byte-rækkevidde-servering ; side efter behov ) er processen med kun at sende en del af en HTTP /1.1-meddelelse en server til en klient. Byte servering begynder, når en HTTP-server reklamerer sin villighed til at tjene delvise anmodninger ved hjælp af Accept-Ranges svarheader . En klient anmoder derefter om en bestemt del af en fil fra serveren ved hjælp af rækkevidde for anmodning om rækkevidde . Hvis intervallet er gyldigt, sender serveren det til klienten med en statuskode for 206 Delvist indhold og en Content-Range- overskrift, der viser det sendte interval. Hvis intervallet er ugyldigt, reagerer serveren med en 416 anmodet rækkevidde Ikke tilfredsstillende statuskode.
Kunder, der anmoder om byte-servering, kan gøre det i tilfælde, hvor en stor fil kun er delvist leveret, og en begrænset del af filen er nødvendig i et bestemt interval. Byte-servering er derfor en metode til båndbreddeoptimering . I HTTP / 1.0-standarden var klienter kun i stand til at anmode om et helt dokument. Ved at tillade byte-servering kan klienter vælge at anmode om en hvilken som helst del af ressourcen. En fordel ved denne funktion er, når der anmodes om en stor mediefil, og at mediefilen er korrekt formateret, kan klienten muligvis kun anmode om de dele af filen, der vides at være af interesse. Dette er vigtigt for visning af videofiler; Hvis en server mangler denne funktion, kan videoer, der hostes på denne server, muligvis ikke afspilles, før hele filen er downloadet af klienten, og søgning i filen kan deaktiveres. Tilsvarende kan PDF- filer optimeres til betjening af byte, så multigigabyte-filer øjeblikkeligt kan ses i browseren ved kun at anmode om de data, der kræves for at gengive den aktuelle side.
Byte-servering kan også bruges af multihomed- klienter til samtidigt at downloade en ressource via flere netværksgrænseflader. For at opnå denne type anvendelse-lags link aggregation er flere HTTP-sessioner etableret og logiske fil segmenter er kollaborativt downloades fra serveren og samles igen på klienten. Dette muliggør fuld udnyttelse af flere ende-til-ende stier og fører derfor til en øget downloadhastighed.
Brugen af Chunked Transfer-Encoding er ikke byte-servering, men er i stedet en metode, hvor en HTTP / 1.1-server sender hele ressourcen, men i flere separate dele (eller bidder) af data. Det bruges ofte, når en server ikke ved nøjagtigt, hvor meget data der vil være i det samlede svar, så serveren kan begynde at sende data til klienten med det samme uden at skulle buffere svaret og bestemme den nøjagtige længde, før den begynder at sende det til klienten. Dette forbedrer latens og reducerer hukommelseskrav, samtidig med at muligheden for at genbruge forbindelsen bevares, når svaret er afsluttet. Byte servering og chunking er kompatible og kan bruges med eller uden den anden.
Se også
Referencer
- ^ Apache-ugen. HTTP / 1.1
- ^ Nøgleforskelle mellem HTTP / 1.0 og HTTP / 1.1
- ^ byte servering definition af byte servering i Free Online Encyclopedia
- ^ Nøgleforskelle mellem HTTP / 1.0 og HTTP / 1.1 "Et typisk eksempel er, at en server sender en hel (stor) ressource, når klienten kun har brug for en lille del af den. Der var ingen måde i HTTP / 1.0 at anmode om delvise objekter .. . HTTP / 1.1 rækkevidde anmodninger tillader en klient at anmode om dele af en ressource. "
- ^ Aktivér hurtig webvisning i en PDF
- ^ Forbedring af video-on-demand-afspilning over flere heterogene adgangsnetværk af D. Kaspar, KR Evensen, PE Engelstad, AF Hansen, P. Halvorsen og C. Griwodz. I: IEEE Consumer Communications and Networking Conference (CCNC), ISBN 978-1-4244-5176-0 , 2010
- ^ "HTTP Chunking" . Arkiveret fra originalen 08-02-2012.
eksterne links
- RFC 7233: Hypertext Transfer Protocol (HTTP / 1.1): Range Requests