Modelo cliente-servidor: requisições HTTP, cache, filas, P2P e GET vs. POST

ComputaçãoRedes e internetIdades 17–18

Carregando…

Usar com minha turma ✨ Personalizar com IA Relatar um problema

Muitos clientes enviam requisições HTTP sem parar a um servidor. As que acertam o cache são respondidas na hora, e as demais esperam na fila até o servidor atendê-las uma a uma, num ritmo que depende do tamanho da página e da largura de banda. Os alunos aumentam o número de usuários para ver a fila crescer e o tempo de resposta disparar quando a demanda passa da capacidade, e depois aumentam a taxa de acertos do cache ou a largura de banda para normalizar o sistema. Uma visão par a par (P2P) envia o mesmo arquivo a N computadores por um servidor e pelos próprios pares, comparando tempo, carga por nó e resiliência quando o servidor ou pares saem da rede; uma visão de formulário mostra requisições GET e POST, com ou sem HTTPS.

Aula: Redes cliente-servidor e par a par: requisições e respostas HTTP, GET e POST, cache, largura de banda e carga do servidor

O que mostra

Na web, um navegador (o cliente) envia uma requisição HTTP e um servidor devolve a página. Na visão de fila, as requisições que acertam o cache são respondidas na hora e as demais esperam; quando a utilização ρ (requisições que chegam ao servidor × tempo de serviço) atinge 1, a fila cresce sem limite. A visão par a par compara o compartilhamento de um arquivo: um servidor sozinho precisa de N·F ÷ u_s, enquanto pares que repassam pedaços mantêm o tempo quase constante e resistem à queda do servidor. A visão de formulário mostra o GET na URL, o POST no corpo e o que o HTTPS esconde.

Como usar

Na visão padrão, clique em Executar, aumente Requisições que chegam por segundo até o aviso de sobrecarga e resolva com a Taxa de acertos do cache ou a Largura de banda do servidor. Na Visão par a par, adicione pares e compare tempos e carga do servidor; clique em Servidor sai do ar ou 25% dos pares saem durante o download. Na visão GET e POST, envie Entrar com cada método e com HTTPS, e compare a barra de endereço, o histórico e o bisbilhoteiro.

Parâmetros que você pode mudar

  • Requisições que chegam por segundo 1–60 requisições/s
  • Taxa de acertos do cache 0–95 %
  • Largura de banda do servidor 1–200 Mbps
  • Tamanho da página 50–3000 KB
  • Velocidade da simulação 1–5 x
  • Visão Cliente-servidor: requisições e fila, Cliente-servidor vs. par a par (compartilhar arquivos), Envio de formulário: GET e POST
  • Número de pares (visão P2P) 2–40 pares
  • Tamanho do arquivo (visão P2P) 10–1000 MB
  • Velocidade de upload de cada par (visão P2P) 1–100 Mbps
  • Método do formulário (visão GET/POST) GET, POST
  • Usar HTTPS (visão GET/POST)

Perguntas para explorar

  1. Por que uma taxa de acertos do cache mais alta reduz a carga do servidor?
  2. Com 40 Mbps de largura de banda, quantas páginas de 3000 KB por segundo o servidor consegue enviar?
  3. Quando a fila não para de crescer, o que resolve mais rápido: aumentar a largura de banda ou a taxa de acertos do cache?