Universidade Federal do Paraná
Departamento de Informática
Bacharelado em Ciência da Computação
Prof. Elias P. Duarte Jr.
Trabalho Prático de Redes de
Computadores II - Turma 2016/1
Artilharia UDP 2016
Entrega: Todos os trabalhos serão acessados quarta-feira dia 5 de junho de 2016; não
serão aceitos trabalhos disponibilizados após esta data. Atenção, são quase 4 semanas de prazo,
organize-se!
Os alunos devem informar por e-mail a URL do trabalho, usando o subject "TP REDES II 2016-1"
O trabalho deve preferencialmente ser feito em dupla; o
código, os testes e o relatório devem ser feitos por ambos os membros da
dupla. Use esta oportunidade para melhorar sua habilidade de trabalhar
em equipe.
Descrição do Trabalho
- Você vai implementar um sistema cliente-servidor UDP, com o objetivo
de fazer múltiplos clientes bombardearem o servidor com datagramas.
Cada cliente identifica seus datagramas sequencialmente, isto é, cada
datagrama leva seu número de sequência inteiro (1, 2, 3, ...).
- O servidor deve contabilizar qual a porcentagem dos pacotes (a)
se perdeu (b) chegou fora de ordem. Aumente o número de clientes
bombardeando até conseguir identificar perda. O servidor deve contabilizar
perdas e desordenações para cada cliente, mas dá o resultado geral.
Se for um novo cliente o fluxo começa do datagrama 1 e o servidor deve
verificar perdas e desordenações cuidadosamente.
- Faça um número significativo de testes, para reportar uma
conclusão estatisticamente significativa no seu relatório;
incluindo a média e o desvio padrão.
- O relatório deve apresentar uma comparação numérica, clara e
objetiva: para $N$ clientes, qual a porcentagem de pacotes UDP que se
perdeu? Qual a porcentagem de pacotes que chegaram fora de ordem?
- Os logs devem obrigatorimente mostrar clientes e servidores executando em
múltiplos hosts.
Para o trabalho ter resultados realmente significativos é importante a turma
se organizar para as duplas implementarem em diferentes linguagens, incluindo
C, Java e Python.
ENTREGA DO TRABALHO
Deve ser construída uma página Web, que contém em documentos HTML, os
seguintes itens:
- Relatório de como foi feito o trabalho e quais foram os
resultados obtidos. Use desenhos, diagramas, figuras, todos os recursos
que permitam ao professor compreender como a dupla estruturou o trabalho
e quais resultados obteve. O objetivo é o professor entender como a dupla
fez o trabalho, como o trabalho funciona.
- Código Fonte comentado. ATENÇÃO: acrescente
a todo programa a terminação ".txt" para que possa ser diretamente aberto em um
browser. Exemplos: cliente.py.txt ou servidor.c.txt
- Logs de execução dos processos cliente/servidores, que demonstrem a
execução correta destes processos. Os testes devem ser exaustivos até o ponto
que demonstrem com clareza a funcionalidade correta do sistema.
Observações:
- Não serão aceitos trabalhos impressos, nem em meio ótico/magnético.
- Como neste semestre a turma não está grande, todos os trabalhos serão
defendidos no laboratório, portanto
certifique-se que seu trabalho funciona aqui.
- Pode ser usada qualquer linguagem de programação. A diversidade é bem
vinda!
Prof. Elias P. Duarte Jr.
 
 
Departamento de Informática
 
 
UFPR