• Nenhum resultado encontrado

Coleta de Resultados

No documento 2010.1Monografia-ANDERSONAMORIM (páginas 81-88)

Um grande volume de dados é gerado pelo PeerRepSim durante a simulação. Uma característica importante para arquitetura do sistema é a coleta e organização destes resultados de forma simples e eciente. As estatísticas geradas devem ser apresentadas de forma clara para os usuários, preferencialmente em forma de grácos e/ou histogra- mas. Outro requisito importante é a possibilidade de reutilização dos dados gerados em outras ferramentas de geração de análise. Para isso, as saídas são também exportadas em arquivos .csv.

As estatísticas geradas pelo simulador são:

• Média global de reputação, classicada por grupo de comportamento de Peer; • Mensagens transmitidas pela rede a cada tick, agrupadas por tipo de mensagem; • Mensagens transmitidas pela rede a cada tick, agrupadas por tipo de comporta-

mento do remetente;

• Total de mensagens descartadas por tick, também agrupadas por tipo de mensa- gem;

• Percentual de mensagens descartadas com relação às demais, classicado por tipo; • Distribuição de arquivos por quantidade de Peers;

• Contagem das ofertas e pedidos de recursos por tipo de Peer, para identicação de quais comportamentos requisitam ou pedem mais recursos;

• Tempo de execução de cada tick;

• Número de transações bem e mal sucedidas;

• Número de mensagens exclusivas de sistemas de reputação na rede.

Todas as estatísticas são apresentadas em relação aos ticks da simulação. Embora elas tenham naturezas diferentes, seu formato é basicamente o mesmo. O modelo de resultados do PeerRepSim engloba, além de séries temporais, modelos de percentuais (para grácos de pizza) e histogramas. A Figura 6.9 mostra o diagrama de classes do modelo de coleta de resultados.

(a) Estrutura da interface gráca

(b) Esboço das telas do sistema

Figura 6.9: Diagrama de classes do modelo de coleta de resultados

A entidade SimulationChart representa um tipo de coleta, como a do número total de mensagens da rede. Sua função é armazenar os dados um Dataset. Cada Dataset é capaz de armazenar várias séries de amostras, sendo que cada amostra é composta por um par chave/valor (Key/Value). As séries são diferenciadas por um rótulo (Label) de hash único. Os diferentes tipos de coleta (SimulationCharts) são armazenados em uma estrutura interna a entidade SimulationLog.

O processo de coleta de resultados consiste, portanto, em amostrar valores nos diversos módulos do sistema e alimentar um SimulationChart correspondente. Em seguida, para que o Motor de Simulação, armazene os dados em disco, é necessário adicionar o SimulationChart criado ao vetor interno da entidade SimulationLog. Qualquer novo tipo de coleta deve implementar este processo.

6.5.1 Cálculo de Reputação

O cálculo de valores de reputação no simulador é feito levando-se em conta o número de recusas e colaborações dos peers. Em cada instância de reputação são mantidos dois contadores, uma para boas e outro para más ações. Dependendo da métrica implementada dos protocolos, os valores de reputação podem combinar estes índices

de diferentes formas.

Cada instância de reputação é, por sua vez, utilizada no cômputo da média global de reputação de um determinado comportamento na rede. A média global de reputação é obtida pela soma das médias locais de avaliações de um comportamento dividida pelo número representantes dele na rede.

7.

Implementação e Análise de Resultados

Os principais resultados deste trabalho são: o PeerRepSim em si, enquanto software de simulação P2P, e suas possíveis aplicações na pesquisa e desenvolvimento de protocolos de gerenciamento de reputação. Do ponto de vista do desenvolvimento de sistemas de software, uma análise de resultados possível é a vericação da conformidade dos requi- sitos e modelos estabelecidos com o software implementado. Esta análise é feita na Seção 7.1, onde são apresentadas as principais funcionalidades do sistema, bem como a sua distribuição pela interface de usuário. Por outro lado, do ponto de vista do desenvolvimento e pesquisa de soluções em P2P, uma análise de resultados deve consi- derar o sistema em funcionamento, isto é, executando protocolos em diversos cenários de comportamentos e topologias de rede. Esta análise é feita na Seção 7.2, onde são apresentados cenários e parâmetros de simulação para, em seguida, vericar as saídas geradas pelo simulador. Este capítulo tem como objetivo, portanto, a apresentação dos resultados do trabalho sob as óticas da implementação do simulador e da sua aplicação em pesquisas da área. Todos os experimentos foram realizados em uma estação de trabalho com as características apresentadas na Tabela 7.1.

Tabela 7.1: Plataforma de simulação

7.1 Descrição do Ambiente Gráco de Simulação

A Figura 7.1 mostra a tela inicial do PeerRepSim em modo gráco e seus principais componentes. Ela é composta por quatro módulos principais cuja a descrição é feita a seguir:

(a) PeerRepSim: Conguração de Simulação (b) PeerRepSim: Conguração de Protocolo

(c) PeerRepSim: Componentes da interface gráca

Figura 7.1: PeerRepSim: interface gráca de usuário

Conguração de Simulação e Protocolo. Este módulo é composto por dois formulá- rios: o de conguração de simulação e o de conguração de protocolo. O primeiro recebe os parâmetros gerais de simulação, dentre eles os números de nós e arquivos na rede, a taxa de entrada e saída do sistema, a probabilidade de busca dos arquivos populares, o total de ticks e o número máximo de interações por tick. Este formulário também contém campos para informar o caminho do diretório onde devem ser armazenados os arquivos de saída e indicadores para a geração de grácos e/ou arquivos de dados em formato CSV. O segundo formulário contém parâmetros especícos de conguração dos protocolos selecionados, como os pesos de informações de primeira e segunda mão da Abordagem Bayesiana, o tamanho dos anéis de testemunhos do STORM e os valores mínimos de conança e reputação para saída voluntária de peers perturbadores.

Conguração de Cenários. É fundamental que o usuário pesquisador possa avaliar cenários com diferentes percentuais de comportamentos de Peers, com o intuito de es- timar a resposta dos protocolos em diversos ambientes e formas de ataque. Ao todo, o PeerRepSim implementa cinco modelos de comportamentos que podem ser combi- nados de diferentes formas. A tabela de conguração de comportamentos possibilita ao usuário denir diferentes percentuais de comportamentos com relação ao total de nós na rede. Os percentuais devem inseridos com valores inteiros entre zero e cem, representando o montante desejado para cada comportamento.

O usuário pode ainda determinar quantos cenários devem ser simulados em seqüência, adicionando ou removendo linhas à tabela. O simulador realiza uma execução para cada linha completa da tabela, salvando os resultados em diretórios correspondentes. Por m, uma vez preenchida, a tabela pode ser salva em um arquivo de texto separado por vírgula para futura reutilização. Esta funcionalidade é importante para reduzir o trabalho quando um grande número de cenários precisa ser simulado várias vezes. De maneira análoga, a tabela pode ser carregada de um arquivo devidamente formatado.

Registro de Atividades. O registro de atividades é uma característica importante para informar o usuário sobre as diferentes etapas da simulação. O console de atividades exibe mensagens informativas sobre a simulação, bem como alertas e relatórios de erros.

Controles de Simulação. Este componente possibilita ao usuário executar os cenários descritos na tabela de comportamentos individualmente, ou todos em seqüência. Além disso, as opções "Pause"e "Kill"permitem interromper um processo em andamento, ou nalizá-lo respectivamente.

Após preencher os formulários de conguração e carregar um conjunto de comporta- mentos, o usuário pode escolher entre simular os cenários individualmente ou todos em seqüência. Os dados gerados pelo simulador são armazenados no diretório informado no formulário de conguração de simulação. Ao iniciar um experimento, o sistema apresenta estatísticas em tempo de simulação, como é ilustrado na Figura 7.2.

No documento 2010.1Monografia-ANDERSONAMORIM (páginas 81-88)

Documentos relacionados