Mudanças entre as edições de "ADS29009-2019-1"
Linha 30: | Linha 30: | ||
#include <sys/time.h> | #include <sys/time.h> | ||
#include <sys/types.h> | #include <sys/types.h> | ||
+ | #include <sys/wait.h> | ||
#include <unistd.h> | #include <unistd.h> | ||
#include <stdio.h> | #include <stdio.h> | ||
+ | |||
Linha 38: | Linha 40: | ||
long int i; | long int i; | ||
double tempo_bloco; | double tempo_bloco; | ||
+ | int status; | ||
+ | pid_t pid; | ||
for (i=0;i<23;i++) { | for (i=0;i<23;i++) { | ||
Linha 54: | Linha 58: | ||
printf("Tempo = %lf\n", tempo_bloco); | printf("Tempo = %lf\n", tempo_bloco); | ||
− | + | exit(0); | |
} | } | ||
} | } | ||
− | + | while ((pid = wait(&status))>0); //espera por todos os filhos terminarem | |
} | } | ||
</syntaxhighlight> | </syntaxhighlight> |
Edição das 15h04min de 27 de fevereiro de 2019
AULA 1 - Dia 26/07/2018
- Apresentar e Discutir Plano de Ensino
- Conceitos em ADS
Plano de Ensino
SLIDES DA AULA
ATIVIDADE 1
PARTE 1
O código abaixo permite estimar o tempo de execução do programa (processo) para executar um determinado loop. Modificar o programa e gerar um gráfico mostrando a média do tempo de execução para uma faixa de 1 até 100 processos. Discutir o resultado. Postar no SIGAA um mini-relatório com:
- objetivo do experimento
- dados do PC utilizado (número de cores);
- código modificado;
- gráfico tempo médio x número de processos;
- discussão do resultado.
//Modificado de https://www.geeksforgeeks.org/measure-execution-time-with-high-precision-in-c-c/
- include <sys/time.h>
- include <sys/types.h>
- include <sys/wait.h>
- include <unistd.h>
- include <stdio.h>
int main()
{
long int i;
double tempo_bloco;
int status;
pid_t pid;
for (i=0;i<23;i++) {
if (fork()==0) {
struct timeval start, end;
gettimeofday(&start, NULL);
for (i=0; i<10000000000L; i++) { // loop de interesse
}
gettimeofday(&end, NULL);
tempo_bloco = (end.tv_sec - start.tv_sec) * 1e6;
tempo_bloco = (tempo_bloco + (end.tv_usec -
start.tv_usec)) * 1e-6;
printf("Tempo = %lf\n", tempo_bloco);
exit(0);
}
}
while ((pid = wait(&status))>0); //espera por todos os filhos terminarem
}
</syntaxhighlight>
PARTE 2
Projetar um experimento para verificar se o mecanismo nice (usando setpriority()) funciona conforme o esperado. Use o programa acima como base. Defina:
- os objetivos do experimento
- métricas
- parâmetros
- fatores
- Apresente e discuta os resultados.
Incluir a PARTE 2 no relatório do experimento.
AULA 2 - Dia 18/02/2019
- Continuação da Aula anterior: Conceitos Básicos de ADS
- ATIVIDADE 1
AULA 3 - Dia 20/02/2019
- Medição em Redes
Medição Ativa e Passiva em Redes
- Referência:
- Slides: Medição Ativa - Iperf
https://www.dropbox.com/s/38qy76phjob7a3o/Medi__oEmRedes.pdf?dl=0
ATIVIDADE 2
Implemente um experimento usando o iperf para:
- determinar a vazão máxima entre PC1 e PC3 usando o protocolo UDP;
- descobrir a janela "ótima" do TCP para maximizar a vazão entre PC1 e PC2;
Use a seguinte configuração do netkit:
- Definição das máquinas
R1[type]=router
PC1[type]=generic
PC2[type]=generic
PC3[type]=generic
- Definição dos roteadores padrão
PC1[default_gateway]=10.0.0.254
PC2[default_gateway]=10.0.1.254
PC3[default_gateway]=10.0.1.254
- Definição das interfaces do roteador
R1[eth0]=lan0:ip=10.0.0.254/24:rate=10000
R1[eth1]=lan1:ip=10.0.1.254/24:rate=10000
- Definição das interfaces dos PCs
PC1[eth0]=lan0:ip=10.0.0.1/24:rate=10000
PC2[eth0]=lan1:ip=10.0.1.2/24:rate=10000
PC3[eth0]=lan1:ip=10.0.1.3/24:rate=10000
</syntaxhighlight>
ATIVIDADE 3 - Questionário Medição Ativa x Passiva em Redes
1.Explique a diferença entre medição ativa e passiva em redes.
2.Liste os benefícios advindos da a aquisição de dados/avaliação de desempenho derivado da medição ativa ou passiva.
3.Descreva como o SNMP e RMON podem ser usados no contexto de medição em redes.
4.Apresente brevemente as sete métricas de desempenho IP proposta pela IETF (IP Performance Metrics - IPPM)
5.Em medição passiva existem problemas associados ao sigilo de dados. Discuta que problemas são estes e como podem ser contornados.
6.Em medição ativa normalmente se usa o conceito de "probes". Explique o que é e discuta características desejáveis de uma pacote probe. Discuta também o conceito de intrusão neste contexto.
7.Explique como é formado o tempo de retardo (delay) fim-a-fim na comunicação de dados.
8.Explique como é computada a capacidade de um caminho (fim-a-fim) de comunicação.
9.Qual conceito de banda disponível ("Available bandwidth"). Discuta a técnica PPTD (ou SLOPS ou TOPS). Faça um esquema/procedimento inicial de como pode ser usada esta técnica em um experimento real de medição de banda disponível.
Outras Referências
https://www.caida.org/publications/papers/2003/bwestmetrics/
AULA 4 - Dia 26/02/2019
Objetivos
- Discussão da Atividade 1: Definição do experimento, métricas, caracterização da carga de trabalho, parâmetros e fatores
- Medição Ativa e Passiva: Continuação
Links Interessantes