Material de Apoio - Kurose 5ª
13652 palavras
55 páginas
Tarefa de Programação 1: Construindo um servidor Web multithreadedNeste laboratório, será desenvolvido um servidor Web em duas etapas. No final, você terá construído um servidor Web multithreaded, que será capaz de processar múltiplas requisições de serviços simultâneas em paralelo. Você deverá demonstrar que seu servidor Web é capaz de enviar sua home page ao browser Web.
Implementaremos a versão 1.0 do HTTP, definido na RFC-1945, onde requisições HTTP separadas são enviadas para cada componente da página Web. Este servidor deverá manipular múltiplas requisições simultâneas de serviços em paralelo. Isso significa que o servidor Web é multithreaded. No thread principal, o servidor escuta uma porta fixa. Quando recebe uma requisição de conexão TCP, ele ajusta a conexão TCP através de outra porta e atende essa requisição em um thread separado. Para simplificar esta tarefa de programação, desenvolveremos o código em duas etapas. No primeiro estágio, você irá escrever um servidor multithreaded que simplesmente exibe o conteúdo da mensagem de requisição HTTP recebida. Assim que esse programa funcionar adequadamente, você adicionará o código necessário para gerar a resposta apropriada.
Enquanto você desenvolve o código, pode testar seu servidor a partir de um browser Web. Mas lembre que o servidor não está atendendo pela porta padrão 80; logo, é preciso especificar o número da porta junto à URL que você fornecer ao browser Web. Por exemplo, se o nome da sua máquina é