• Nenhum resultado encontrado

Geração de Simuladores de Filas para Diferentes Contextos com Estudo de Casos para Redes de Computadores

N/A
N/A
Protected

Academic year: 2023

Share "Geração de Simuladores de Filas para Diferentes Contextos com Estudo de Casos para Redes de Computadores"

Copied!
84
0
0

Texto

Geração de simuladores de filas para diferentes contextos com estudos de caso para redes de computadores. Estes temas são essenciais para o objetivo principal deste projeto, o desenvolvimento do Yasc (Sim, um compilador de simuladores), um gerador de simuladores de filas para diversos contextos.

Organização do texto

Para desenvolvê-lo, é necessário estudar o ambiente em que ocorre, para construir um modelo que tenha a função de reproduzir o comportamento do sistema (BANKS et al., 2009) (CASSANDRAS; LAFORTUNE, 2008). Uma fila e um servidor: Este é o tipo básico de rede em que tanto a taxa de chegada quanto a taxa de atendimento são exponencialmente distribuídas e o número de servidores no centro de atendimento é igual a um. Caso contrário, o cliente entrará na fila e poderá ser atendido assim que receber autorização por meio do algoritmo de agendamento (BANKS et al., 2009).

O fluxograma na Figura 6 mostra como funciona o desenvolvimento de um estudo de desempenho por meio de simulação. A interface de ícones foi desenvolvida com o mesmo objetivo do Yasc, ou seja, permitir que o usuário represente seu sistema através de um modelo de forma simples, sem a necessidade de conhecimento de linguagens de programação. Com o plano de teste, cuja descrição completa se encontra no Apêndice A, iniciou-se o estudo de caso, utilizando o Yasc para gerar um simulador de rede de computadores e simular um determinado modelo de rede.

Para isso, serão apresentados a seguir os passos a serem seguidos para a criação e utilização de um simulador de rede de computadores como exemplo 2- Como utilizar a interface gráfica para criar um simulador.

Figura 1 – Diagrama gráfico de uma fila e um servidor (SOARES, 1992)
Figura 1 – Diagrama gráfico de uma fila e um servidor (SOARES, 1992)

Introdução

Teoria de Filas

Notação Kendall

Redes de Filas Básicas

Neste modelo é necessário observar que deve haver um algoritmo de seleção no momento em que o atendimento de um cliente termina, para decidir qual fila pertence ao próximo cliente que receberá o atendimento. Assim, um cliente que chega ao sistema recebe imediatamente o serviço solicitado de um dos k servidores existentes.

Simulação de sistemas

Por exemplo, o caixa de um supermercado pode ser considerado um modelo de sistema discreto, em que uma das variáveis ​​de estado consideradas é o número de clientes na fila, que muda apenas quando um novo cliente chega ao caixa ou ao final. do processo de checkout.service. Na simulação orientada a processos, cada entidade do sistema é descrita por meio de um processo, que geralmente é representado por uma sequência de funções, que podem ser do tipo lógico (representação das ações imediatas realizadas pela entidade que executa aquela função ao longo de sua duração de desenvolvimento ) ou atraso de tempo (atraso causado em unidades por um pequeno intervalo de tempo).

Figura 5 – Diagrama para a rede básica de servidor infinito (SOARES, 1992)
Figura 5 – Diagrama para a rede básica de servidor infinito (SOARES, 1992)

Simulação a partir de modelos básicos (templates)

  • Utilização de modelos básicos (templates) na construção de ferramentas 28
  • KanbanSIM
  • PowerTrainSIM
  • RapidSim

É importante reutilizar os modelos na íntegra ou com pequenas alterações de componentes ou em parte na construção de ferramentas de simulação, pois usuários não computacionais e até mesmo pessoas da área que não possuem conhecimento na área de simulação têm utilizado simuladores em suas aplicações. . Com isso, o sistema também se baseia em oferecer uma solução rápida ao usuário e na facilidade de reaproveitamento de modelos, pois permite que tanto leigos quanto usuários que trabalham com powertrains possam utilizar modelos básicos, sem a necessidade de um modelo totalmente novo. caso específico. Para construir tal biblioteca, o desenvolvedor criou uma classificação analisando diferentes modelos da área de produção.

Simuladores de redes de computadores

OMNeT++

Sinalgo

NS-3

Como ferramenta de apoio para visualização dos resultados, utiliza outro software chamado Wireshark e uma biblioteca chamada Tcpdump e não possui interface gráfica, portanto as simulações e avaliações dos resultados são feitas através de um terminal, o que às vezes causa problemas para o usuário iniciante.

Comparação entre os simuladores de redes

Métricas de Desempenho

Tempo simulado: Esta medida representa o intervalo de tempo que ocorre desde o momento em que o procedimento de simulação é iniciado até o seu término. Ociosidade: A ociosidade consiste no período de tempo em que um sistema ou um de seus recursos não foi utilizado. Para mensurá-lo, são utilizados intervalos de tempo em que o recurso, embora ativo, não estava processando ou executando, mas apenas aguardando a chegada de algum tipo de tarefa a ser executada.

Considerações finais

Por fim, as seções 3.5 e 3.6 apresentam a implementação da interface icônica do simulador gerado e o motor de simulação nela utilizado. Já a segunda mudança foi permitir a validação e interpretação de modelos XML para qualquer tipo de simulador gerado pelo Yasc. Estes descrevem os tempos simulados do Network Simulator e do simulador gerado pelo Yasc que obtiveram os melhores resultados, observando-se uma diferença praticamente inexistente entre os tempos.

Assim, foram obtidos os resultados apresentados nas Tabelas 3 e 4 e seus gráficos correspondentes, que aparecem nas Figuras 35 e 36, nos quais a proximidade entre os tempos simulados e agora também entre os valores de perdas de pacotes no Simulador A rede do simulador criado com o resultado mais próximo. Estes descrevem os tempos simulados pelo Simulador de Rede e o simulador criado pelo Yasc que obteve os melhores resultados, observando-se uma diferença praticamente inexistente entre os tempos. Assim, foram obtidos os resultados apresentados nas Tabelas 6 e 7 e seus correspondentes gráficos, que aparecem nas Figuras 41 e 42, em que a proximidade entre os tempos simulados e agora também entre os valores de perdas de pacotes no Simulador A rede do simulador criado com o resultado mais próximo.

O mesmo modelo retirado de (MACDOUGALL, 1989) foi incorporado a um simulador criado pelo Yasc para simular redes básicas de filas.

Figura 11 – Diagrama conceitual da ferramenta para um simulador
Figura 11 – Diagrama conceitual da ferramenta para um simulador

Introdução

Visão geral sobre a arquitetura do Yasc

Interface gráfica para descrição de elementos e descrição de comportamento: Apesar de separadas no diagrama conceitual (Figura 11), essas interfaces funcionam juntas. Caso exista uma função de transferência, será perguntado qual função rege seu funcionamento, que pode ser criada através da interface gráfica mostrada na Figura 16. Contém as imagens disponibilizadas para os objetos e um arquivo texto de configuração, permitindo que o simulador gere pode ser salvo e recarregado a qualquer momento após ser interrompido uma vez.

Pode-se observar que o gerador de simuladores é dividido em módulos, incluindo: a interface gráfica para descrição dos elementos e descrição do comportamento do simulador a ser criado, o gerador e interpretador de bibliotecas de configuração, a interface que é gerada. ícone e o mecanismo de simulação. Na segunda, tentamos validar o simulador gerado comparando-o com outro simulador, o NS-3, conforme será apresentado na seção 4.3. Este simulador gerado foi posteriormente utilizado para renderizar um modelo específico com nós terminais, canais de comunicação e roteadores, e também um questionário com perguntas sobre a eficácia do software testado.

Na terceira fase, após já ter feito uso de todas as funcionalidades da ferramenta, o usuário respondeu ao questionário elaborado na etapa anterior e disponibilizou o simulador gerado para futuros testes.

Construção das interfaces gráficas para descrição dos objetos que

Módulos para geração e interpretação de bibliotecas

Ao final da implementação da interface gráfica responsável pela entrada de dados, foram criados dois módulos para processamento dos dados recebidos, que foram representados por dois métodos implementados em Java. No arquivo de configuração, a primeira coluna indica o tipo de parâmetro que será descrito, o que significa que além dos erros, também haverá limites de capacidade para as filas na simulação. Este será aberto e seu conteúdo reconhecido e interpretado pelo módulo read, permitindo a execução da GUI gerada (discutida na seção 3.5) trabalhando em conjunto com a engine discutida na seção 3.6 para completar o simulador gerado.

Figura 16 – Interface gráfica para o desenvolvimento de uma função de transferência que rege o funcionamento do objeto
Figura 16 – Interface gráfica para o desenvolvimento de uma função de transferência que rege o funcionamento do objeto

Interface Icônica

O arquivo de texto é armazenado junto com as imagens em um diretório chamado simulatorlibrary. , que será discutido na Seção 3.6, completando o simulador gerado.

Motor de simulação

Para reutilizar o componente, foram necessárias duas mudanças importantes no motor de simulação: alterar a implementação de classes relacionadas ao tratamento de filas e alterar a forma de validar e interpretar os modelos XML gerados pela interface icônica tornada Assim, todos os modelos básicos de filas podem ser implementados e utilizados para a geração de simuladores, além de agregar dois novos centros de atendimento que serão utilizados em trabalhos futuros, permitindo um processamento instantâneo e durável, regulado por uma função de transferência aos eventos a eles apresentados é. Com isso, a engine passou a ser capaz de rodar a simulação de qualquer modelo gerado pelo Yasc.

Figura 21 – Diagrama conceitual do motor de simulação - Adaptado de (MENEZES et al., 2012) Deve-se destacar também que o módulo de métricas, responsável por efetuar cálculos a respeito destas e apresentá-las no formato de resultados para o usuário também e
Figura 21 – Diagrama conceitual do motor de simulação - Adaptado de (MENEZES et al., 2012) Deve-se destacar também que o módulo de métricas, responsável por efetuar cálculos a respeito destas e apresentá-las no formato de resultados para o usuário também e

Considerações Finais

Na segunda fase, foi elaborado um plano de teste, no qual foi definido que o avaliador deveria utilizar uma ferramenta para criar um simulador de redes de computadores. Foram realizadas duas séries de testes, a primeira foi a capacidade das filas presentes nos elementos da rede serem infinitas sem perda de pacotes, e a segunda foi a capacidade desses 30.000 pacotes por fila com perda. Assim, tais simuladores foram excluídos da avaliação e apenas os tempos simulados corretos foram comparados.

Os demais procedimentos foram todos repetidos, com duas séries de testes, sendo que a primeira teve capacidade de fila infinita, sem perda de pacotes, e a segunda teve capacidade de 30.000 pacotes por fila, com perda. Novamente, os simuladores gerados incorretamente foram excluídos da avaliação e apenas os tempos simulados corretos entre as duas ferramentas foram comparados.

Figura 24 – Resultado obtido para a primeira questão objetiva apresentada no questionário
Figura 24 – Resultado obtido para a primeira questão objetiva apresentada no questionário

Trabalhos futuros

Este estudo se fez necessário devido à importância de se observar o comportamento dos sistemas, o que deve ser feito através de formas eficientes que permitam uma redução significativa de tempo no processo de desenvolvimento de software. Torna imprescindível a utilização de modelos básicos para oferecer diretamente ao usuário um gerador de simuladores, ferramenta que possibilita a avaliação de sistemas. Como principal contribuição, o Yasc permitirá que usuários leigos que não conheçam linguagens de programação, ou que tenham dificuldade em trabalhar com essas linguagens por não serem especialistas em processamento de dados, desenvolvam simuladores que permitam avaliar o desempenho de seu trabalho. . sua interface gráfica simples e amigável.

Publicações

Esta parte do manual descreve como criar um simulador de rede de computadores que contém roteadores, switches e nós terminais e links de comunicação. 4º Selecione que deseja simular falhas e que o simulador deve ter limites de desempenho e clique em "OK". Utilização do Servidor: Definida pela relação entre o tempo total em que o servidor esteve ocupado e o tempo simulado obtido.

Tempo médio no servidor: o tempo médio que os clientes gastam recebendo serviços. Tempo total de ocupação do servidor: a quantidade total de tempo que os clientes passaram no servidor.

Imagem

Figura 2 – Diagrama gráfico de uma fila e vários servidores (SOARES, 1992)
Figura 4 – Diagrama para a rede básica com múltiplas filas e múltiplos servidores (SOARES, 1992)
Figura 3 – Diagrama da rede básica múltiplas filas e um servidor (SOARES, 1992)
Figura 6 – Fluxograma de simulação (BANKS et al., 2009) - Traduzido
+7

Referências

Documentos relacionados

As aulas do Formancipa não são tradicionais, pois ao propor o trabalho com uma metodologia que visa a emancipação do aluno levando-o a reconhecer sua comunidade e o