Serviço de bytes - Byte serving

Serviço de byte (outros nomes: RFC 7233 diz que o cliente faz Solicitações de intervalo quando faz uma solicitação de conteúdo parcial; os clientes fazem solicitações de intervalo ; Serviço de intervalo de bytes ; Página sob demanda ) é o processo de envio de apenas uma parte de uma mensagem HTTP /1.1 de um servidor para um cliente. A exibição de bytes começa quando um servidor HTTP anuncia sua disposição de atender a solicitações parciais usando o cabeçalho de resposta Accept-Ranges . Um cliente então solicita uma parte específica de um arquivo do servidor usando o cabeçalho de solicitação Range . Se o intervalo for válido, o servidor o envia ao cliente com um código de status 206 Partial Content e um cabeçalho Content-Range listando o intervalo enviado. Se o intervalo for inválido, o servidor responderá com um código de status 416 Requested Range Not Satisfiable .

Os clientes que solicitam a entrega de bytes podem fazê-lo nos casos em que um arquivo grande foi apenas parcialmente entregue e uma parte limitada do arquivo é necessária em um determinado intervalo. O Byte Serving é, portanto, um método de otimização da largura de banda . No padrão HTTP / 1.0, os clientes só podiam solicitar um documento inteiro. Ao permitir o serviço de bytes, os clientes podem optar por solicitar qualquer parte do recurso. Uma vantagem desse recurso é que, quando um grande arquivo de mídia está sendo solicitado e esse arquivo de mídia está formatado corretamente, o cliente pode solicitar apenas as partes do arquivo que sabe ser de seu interesse. Isso é essencial para veicular arquivos de vídeo; se um servidor não tiver esse recurso, os vídeos hospedados nesse servidor podem não ser reproduzidos até que o arquivo inteiro seja baixado pelo cliente e a busca no arquivo pode ser desabilitada. Da mesma forma, os arquivos PDF podem ser otimizados para fornecimento de bytes para permitir que arquivos de vários gigabytes sejam visualizados instantaneamente no navegador, solicitando apenas os dados necessários para renderizar a página atual.

O serviço de bytes também pode ser usado por clientes com hospedagem múltipla para baixar simultaneamente um recurso em várias interfaces de rede. Para obter esse tipo de agregação de link de camada de aplicativo , várias sessões HTTP são estabelecidas e segmentos de arquivos lógicos são baixados de forma colaborativa do servidor e remontados no cliente. Isso permite a utilização total de vários caminhos ponta a ponta e, portanto, leva a um aumento na velocidade de download.

O uso de Chunked Transfer-Encoding não serve para byte, mas é um método no qual um servidor HTTP / 1.1 envia todo o recurso, mas em várias partes separadas (ou blocos) de dados. É frequentemente usado quando um servidor não sabe exatamente quantos dados haverá na resposta total, permitindo que o servidor comece a enviar dados ao cliente imediatamente, sem ter que armazenar a resposta em buffer e determinar o comprimento exato antes de começar a enviá-la para o cliente. Isso melhora a latência e reduz os requisitos de memória, preservando a capacidade de reutilizar a conexão após a conclusão da resposta. A distribuição e o agrupamento de bytes são compatíveis e podem ser usados ​​com ou sem o outro.

Veja também

Referências

  1. ^ Semana Apache. HTTP / 1.1
  2. ^ Principais diferenças entre HTTP / 1.0 e HTTP / 1.1
  3. ^ serviço de byte definição de serviço de byte na Free Online Encyclopedia
  4. ^ Principais diferenças entre HTTP / 1.0 e HTTP / 1.1 "Um exemplo típico é um servidor enviando um recurso inteiro (grande) quando o cliente só precisa de uma pequena parte dele. Não havia como no HTTP / 1.0 solicitar objetos parciais. . As solicitações de intervalo HTTP / 1.1 permitem que um cliente solicite partes de um recurso. "
  5. ^ Habilite o Fast Web View em um PDF
  6. ^ Reforçando o Playout Video-on-Demand sobre múltiplas redes de acesso heterogêneas por D. Kaspar, KR Evensen, PE Engelstad, AF Hansen, P. Halvorsen, e C. Griwodz. In: IEEE Consumer Communications and Networking Conference (CCNC), ISBN  978-1-4244-5176-0 , 2010
  7. ^ "Chunking HTTP" . Arquivado do original em 08/02/2012.

links externos

  • RFC 7233: Protocolo de transferência de hipertexto (HTTP / 1.1): solicitações de intervalo