O HTTP (Hypertext Transfer Protocol) é um protocolo cliente-servidor orientado a transições que usa o TCP para fornecer confiabilidade. Em relação às três formas do sistema intermediário (proxy, gateway e túnel) definidas na especificação HTTP, assinale a INCORRETA.
- A)Proxy: atua como um servidor ao interagir com um cliente e como um cliente ao interagir com um servidor.
Certa: o proxy atua como cliente perante o servidor e como servidor perante o cliente.
- B)Proxy: funciona em nome de outros clientes e apresenta as solicitações de outros clientes para um servidor.
Certa: o proxy pode funcionar em nome de outros clientes e encaminhar suas solicitações ao servidor.
- C)Túneis: usados quando deve haver um sistema intermediário entre o cliente e o servidor, sendo necessário que tal sistema entenda o conteúdo da mensagem.
Errada: túnel não exige entendimento do conteúdo da mensagem, pois sua função é apenas transportar os dados entre as pontas.
- D)Gateway: servidor que aparece para o cliente como se fosse de origem; atua em nome de outros servidores que podem não ser capazes de se comunicar diretamente com o cliente.
Certa: o gateway age como servidor para o cliente e como intermediário em nome de outros servidores.
Gabarito: C
O HTTP trabalha em cima de uma troca cliente-servidor, e a especificação dele define três tipos clássicos de sistema intermediário: proxy, gateway e túnel. A ideia é simples: às vezes a comunicação não vai direta do navegador para o servidor, e entra um intermediário no meio para representar, traduzir ou apenas encaminhar a conversa. O proxy age como uma espécie de representante. Para o cliente, ele se comporta como servidor; para o servidor, ele se comporta como cliente. Já o gateway é mais “tradutor”: ele aparece para o cliente como se fosse o servidor de origem, mas pode falar com servidores que não conseguem se comunicar diretamente com o cliente. O túnel, por sua vez, é diferente porque ele apenas cria um caminho entre as duas pontas sem precisar entender o conteúdo da mensagem. Ou seja, ele transporta os dados, mas não fica interpretando o que está dentro do pacote. É por isso que a alternativa C está errada: ela diz que o túnel exige que o sistema intermediário entenda o conteúdo da mensagem, e isso é justamente o contrário do conceito de túnel no HTTP. Essa distinção aparece na própria padronização do HTTP (como nas RFCs do protocolo), e costuma cair em prova exatamente para confundir “intermediário que entende” com “intermediário que só encaminha”.