4º workshop de sistemas distribuídos autonômicos wosida … · de computadores e sistemas...

64
Anais 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA 2014

Upload: vankiet

Post on 08-Feb-2019

226 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

 

Anais 4º Workshop de Sistemas Distribuídos Autonômicos

WoSiDA 2014  

Page 2: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

XXXII Simpósio Brasileiro de Redes de Computadores e

Sistemas Distribuídos

5 a 9 de Maio de 2014

Florianópolis - SC

Anais

4º Workshop de Sistemas Distribuídos

Autonômicos - WoSiDA 2014

Editora

Sociedade Brasileira de Computação (SBC)

Organizadores

Sérgio Gorender (UFBA)

Tales Heimfarth (UFLA)

Carlos André Guimarães Ferraz (UFPE)

Joni da Silva Fraga (UFSC)

Frank Siqueira (UFSC)

Realização

Universidade Federal de Santa Catarina (UFSC)

Promoção

Sociedade Brasileira de Computação (SBC)

Laboratório Nacional de Redes de Computadores (LARC)

Page 3: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

i

Copyright ©2014 da Sociedade Brasileira de Computação

Todos os direitos reservados

Capa: Vanessa Umbelino (PostMix)

Produção Editorial: Roberto Willrich (UFSC)

Cópias Adicionais:

Sociedade Brasileira de Computação (SBC)

Av. Bento Gonçalves, 9500- Setor 4 - Prédio 43.412 - Sala 219

Bairro Agronomia - CEP 91.509-900 -Porto Alegre- RS

Fone: (51) 3308-6835

E-mail: [email protected]

Workshop de Sistemas Distribuídos Autonômicos (4: 2014: Florianópolis, SC)

Anais / 4º Workshop de Sistemas Distribuídos Autonômicos; organizado por

Sérgio Gorender... [et al.] - Porto Alegre: SBC, c2014

62 p.

WoSiDA 2014

Realização: Universidade Federal de Santa Catarina

ISSN: 2177-496X

1. Redes de Computadores - Congressos. 2. Sistemas Distribuídos­ Congressos.

I. Gorender, Sérgio. II. Sociedade Brasileira de Computação. III. Título.

Page 4: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

ii

Promoção

Sociedade Brasileira de Computação (SBC)

Diretoria

Presidente

Paulo Roberto Freire Cunha (UFPE)

Vice-Presidente

Lisandro Zambenedetti Granville (UFRGS)

Diretora Administrativa

Renata de Matos Galante (UFRGS)

Diretor de Finanças

Carlos André Guimarães Ferraz (UFPE)

Diretor de Eventos e Comissões Especiais

Altigran Soares da Silva (UFAM)

Diretora de Educação

Mirella Moura Moro (UFMG)

Diretor de Publicações

José Viterbo Filho (UFF)

Diretora de Planejamento e Programas Especiais

Claudia Lage Rebello da Motta (UFRJ)

Diretor de Secretarias Regionais

Marcelo Duduchi Feitosa (CEETEPS)

Diretor de Divulgação e Marketing

Edson Norberto Caceres (UFMS)

Diretor de Relações Profissionais

Roberto da Silva Bigonha (UFMG)

Diretor de Competições Científicas

Ricardo de Oliveira Anido (UNICAMP)

Diretor de Cooperação com Sociedades Científicas

Raimundo José de Araujo Macêdo (UFBA)

Diretor de Articulação de Empresas

Avelino Francisco Zorzo (PUC-RS)

Page 5: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

iii

Promoção

Sociedade Brasileira de Computação (SBC)

Conselho

Mandato 2013-2017

Alfredo Goldman (IME/USP)

José Palazzo Moreira de Oliveira (UFRGS)

Maria Cristina Ferreira de Oliveira (ICMC/USP)

Thais Vasconcelos Batista (UFRN)

Wagner Meira Junior (UFMG)

Mandato 2011-2015

Ariadne Carvalho (UNICAMP)

Carlos Eduardo Ferreira (IME - USP)

Jose Carlos Maldonado (ICMC - USP)

Luiz Fernando Gomes Soares (PUC-Rio)

Marcelo Walter (UFRGS)

Suplentes - 2013-2015

Alessandro Fabrício Garcia (PUC-Rio)

Aline Maria Santos Andrade (UFBA)

Daltro José Nunes (UFRGS)

Karin Koogan Breitman (PUC-Rio)

Rodolfo Jardim de Azevedo (UNICAMP-IC)

Page 6: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

iv

Promoção

Laboratório Nacional de Redes de Computadores (LARC)

Diretoria 2012-2014

Diretor do Conselho Técnico-Científico

Elias P. Duarte Jr. (UFPR)

Diretor Executivo

Luciano Paschoal Gaspary (UFRGS)

Vice-Diretora do Conselho Técnico-Científico

Rossana Maria de C. Andrade (UFC)

Vice-Diretor Executivo

Paulo André da Silva Gonçalves (UFPE)

Membros Institucionais

SESU/MEC, INPE/MCT, UFRGS, UFMG, UFPE, UFCG (ex-UFPB Campus Campina

Grande), UFRJ, USP, PUC-Rio, UNICAMP, LNCC, IME, UFSC, UTFPR, UFC, UFF,

UFSCar, CEFET-CE, UFRN, UFES, UFBA, UNIFACS, UECE, UFPR, UFPA,

UFAM, UFABC, PUCPR, UFMS, UnB, PUC-RS, UNIRIO, UFS e UFU.

Page 7: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

v

Realização

Comitê de Organização

Coordenação Geral

Joni da Silva Fraga (UFSC) Frank Augusto Siqueira (UFSC)

Coordenação do WoSiDA

Sérgio Gorender (UFBA) Tales Heimfarth (UFLA)

Coordenação de Workshops

Carlos André Guimarães Ferraz (UFPE)

Page 8: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

vi

Realização

Organização Local

Carlos Barros Montez (UFSC)

Edison Tadeu Lopes Melo (UFSC)

Guilherme Eliseu Rhoden (PoP-SC)

Leandro Becker (UFSC)

Mário A. R. Dantas (UFSC)

Michelle Wangham (Univali)

Ricardo Felipe Custódio (UFSC)

Roberto Willrich (UFSC)

Rodrigo Pescador (PoP-SC)

Rômulo Silva de Oliveira (UFSC)

Secretaria do SBRC 2014

Juliana Clasen (UFSC)

Jade Zart (UFSC)

Page 9: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

vii

Mensagem do Coordenador de Workshops do SBRC 2014

Confirmando a consolidação nos últimos anos, este ano o Simpósio Brasileiro de Redes

de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de

workshops, visando a discussão de temas novos e/ou específicos, como Internet do

Futuro e Tolerância a Falhas. Os workshops envolvem comunidades focadas e oferecem

oportunidades para discussões mais profundas e ampliação de conhecimentos,

envolvendo pesquisadores e muitos estudantes em fase de desenvolvimento de seus

trabalhos em andamento. Neste ano tivemos novas submissões, além dos workshops já

considerados tradicionais parceiros do SBRC, o que representa o dinamismo da

comunidade de Redes de Computadores e Sistemas Distribuídos no Brasil. Infelizmente,

estas novas submissões não puderam ainda ser acomodadas, mas certamente serão

consideradas para próximas edições do SBRC.

Neste SBRC 2014, temos a realização de workshops já consolidados no circuito

nacional de divulgação científica nas várias subáreas de Redes de Computadores e

Sistemas Distribuídos, como o WGRS (Workshop de Gerência e Operação de Redes e

Serviços), o WTF (Workshop de Testes e Tolerância a Falhas), o WCGA (Workshop de

Computação em Clouds e Aplicações), o WP2P+ (Workshop de Redes P2P, Dinâmicas,

Sociais e Orientadas a Conteúdo), o WRA (Workshop de Redes de Acesso em Banda

Larga), o WoCCES (Workshop of Communication in Critical Embedded Systems), o

WoSiDA (Workshop on Autonomic Distributed Systems) e o WPEIF (Workshop de

Pesquisa Experimental da Internet do Futuro). Há que se mencionar a importante

parceria com o WRNP (Workshop da Rede Nacional de Ensino e Pesquisa), que em sua

15a edição, cumpre o importante papel de fazer a ponte entre as comunidades técnica e

científica da área. Não tenho dúvida que a qualidade técnica e científica dos workshops

se manterá em alta compatível com o SBRC.

Agradeço aos Coordenadores Gerais, Joni da Silva Fraga e Frank Siqueira (UFSC), pelo

convite para coordenar os workshops do SBRC 2014 e por todo o apoio recebido.

Desejo muito sucesso e excelente participação nos Workshops do SBRC 2014!

Carlos André Guimarães Ferraz (UFPE)

Coordenador de Workshops do SBRC 2014

Page 10: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

viii

Mensagem dos Coordenadores do WoSiDA

The Workshop on Autonomic Distributed Systems (WoSiDA), Co-located with the

Brazilian Symposium on Computer Networks and Distributed Systems, was aimed at

bringing together researchers and practitioners from the distributed systems community

to discuss the fundamental principles, state of the art, and critical challenges of self-

managing or autonomic distributed systems.

The WoSiDA 2014 program included ten position papers selected after a careful

reviewing process, where each paper was distributed to members of the technical

program committee. The program chairs could not see the reviewers of their papers, as

the system does not permit it. The accepted papers are those with solid work covering

distinct aspects of autonomic distributed systems.

The workshop is divided in four different sessions: Autonomic Networks, Models and

Algorithms, Models and Network Security. This year a large spectrum of different areas

of autonomic distributed systems are covered by the sessions. The sessions include,

among others, articles proposing novel mechanisms for Cloud Computing, Routing

Protocols for Autonomic Networks and Models for Controlling and Monitoring

Autonomic Systems.

At the end the organizers include an open session to discuss issues related to design,

implementation and evaluation of autonomic distributed systems.

Finally, we would like to thank very much the program committee members for having

accepted the challenge of building this program, and the organizers of SBRC 2014 for

their support.

Sérgio Gorender

Tales Heimfarth

Chairs of the Wosida 2014

Page 11: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

ix

Comitê de Programa do WoSiDA 2014

Alirio Santos de Sá, Federal University of Bahia (UFBA / Brazil)

Antonio Casimiro Costa, University of Lisbon (UL / Portugal)

Edison Pignaton de Freitas, University of Brasília (UNB / Brazil)

Edmundo Madeira, University of Campinas (UNICAMP / Brazil)

Fabio Moreira Costa, Federal University of Goiás (UFG / Brazil)

Flávio Assis Silva, Federal University of Bahia (UFBA / Brazil)

Franz Rammig, University of Paderborn (UPB / Germany)

Lisandro Granville, Federal University of Rio Grande do Sul (UFRGS / Brazil)

Luís E. T. Rodrigues, Technical University of Lisbon (UTL / Portugal)

Marcos Barreto, Federal University of Bahia (UFBA/Brazil)

Neuman Souza, Federal University of Ceará (UFC / Brazil)

Raimundo J. A. Macêdo, Federal University of Bahia (UFBA/ Brazil)

Renato Cerqueira, IBM Research Brazil and Pontificial Catholic University of Rio de

Janeiro (PUC-Rio / Brazil)

Rui Oliveira, University of Minho (UMINHO / Portugal)

Sand Luz Corrêa, Federal University of Goiás (UFG / Brazil)

Sérgio Gorender, Federal University of Bahia (UFBA / Brazil)

Tales Heimfarth, Federal University of Lavras (UFLA / Brazil)

Page 12: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

x

Sumário

Sessão Técnica 1 – Modelos e Algoritmos................................................................... 1

Uma Proposta de Arquitetura Autonômica para Elasticidade em Computação

em Nuvem

Emanuel F. Coutinho (UFC), Danielo G. Gomes e José Neuman de Souza......... 3

Protocolos Auto-Gerenciáveis de Consenso para Sistemas Distribuídos

Parcialmente Síncronos

Alirio Santos de Sá (UFBA), Raimundo J. A. Macêdo, e

Heverton S. Queiroz.............................................................................................. 7

Um Mecanismo de Auto-gestão para Sistemas de Armazenamento de Dados

Replicados nas Nuvens

Fabiola L. Moreira (UFBA) e Alírio S. Sá............................................................ 11

Sessão Técnica 2 – Redes Autonômicas...................................................................... 15

Um Protocolo de Roteamento Adaptativo a Carga de Bateria e a presença de

falhas em Redes Móveis Ad hoc

Bruno J. Santos (UFBA) e Sérgio Gorender......................................................... 17

Um Protocolo de Roteamento Dinâmico para Redes Veiculares

Margarete Sá (UFBA) e Sérgio Gorender............................................................. 21

Utilização de Múltiplos Veículos Aéreos Não Tripulados para o

Estabelecimento de Comunicação em Redes de Sensores Sem Fio Particionadas

Tales Heimfarth (UFLA), João P. Araujo, Alexandre H. T. Dias e

Julio Cezar S. Diniz............................................................................................... 25

Page 13: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

xi

Sumário

Sessão Técnica 3 – Modelos.......................................................................................... 29

A Systematic Model-Based Approach for Feedback Control Trade-Off

Evaluation in Autonomic Systems

Sandro S. Andrade (UFBA), Raimundo J. A. Macêdo.......................................... 31

Revisitando uma Infraestrutura Autonômica: Uma Perspectiva Baseada em

uma Rede Definida por Software

Marcelo Santos (UFPE), Patricia Endo, Moisés Bezerra, Glauco Gonçalves,

Djamel Sadok e Stênio Fernandes........................................................................ 35

Abordagem Baseada em Correlacão Parcial para Filtragem de Métricas

Monitoradas em Sistemas Auto-Gerenciáveis

Otto J. A. Pinno (UFG), Sand L. Corrêa, Vagner J. S. Rodrigues e

Kleber V. Cardoso................................................................................................. 39

Sessão Técnica 4 – Segurança em Redes..................................................................... 43

Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de

Segurança em Redes de Computadores

Luiz Arthur F. dos Santos (UTFPR), Rodrigo Campiolo e

Daniel M. Batista................................................................................................... 45

Índice por Autor............................................................................................................ 49

Page 14: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

32º Simpósio Brasileiro de Redes de Computadores e

Sistemas Distribuídos

Florianópolis - SC

4º Workshop de Sistemas

Distribuídos Autonômicos -

WoSiDA 2014

Sessão Técnica 1

Modelos e Algoritmos

Page 15: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão
Page 16: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Uma Proposta de Arquitetura Autonomica para Elasticidadeem Computacao em Nuvem

Emanuel F. Coutinho1,3, Danielo G. Gomes2, Jose Neuman de Souza1

1Mestrado e Doutorado em Ciencia da Computacao (MDCC)2Departamento de Engenharia em Teleinformatica (DETI)

3Instituto UFC VirtualUniversidade Federal do Ceara

Fortaleza – CE – Brasil

[email protected], {danielo,neuman}@ufc.br

Abstract. Elasticity is an important characteristic of Cloud Computing, and canbe understood as how a computational cloud computing fits to variations in theirworkload by provisioning and deprovisioning resources. Autonomic Computingbrings together many concepts that can be quite useful in the construction ofelastic Cloud Computing solutions, such as loops and control rules. This paperaims to propose an elastic architecture based on concepts of Autonomic Compu-ting. An experiment was designed to validate the architecture, using benchmarksand workloads, demonstrating that Cloud Computing and Autonomic Compu-ting may well work together.

Resumo. A elasticidade e uma importante caracterıstica da Computacao emNuvem, e pode ser entendida como o quanto uma nuvem computacional seadapta a variacoes na sua carga de trabalho atraves do provisionamento e des-provisionamento de recursos. Computacao Autonomica reune diversos concei-tos que podem ser bastante uteis na construcao de solucoes elasticas em nuvenscomputacionais, como loops de controle e regras. Este trabalho tem como ob-jetivo propor uma arquitetura elastica baseada em conceitos de ComputacaoAutonomica. Um experimento foi projetado para a validacao da arquitetura,utilizando benchmarks e cargas de trabalho, demonstrando que Computacaoem Nuvem e Computacao Autonomica podem muito bem funcionar em conjunto.

1. Introducao

Com o aumento no acesso aos ambientes computacionais em nuvem e sua facilidadede utilizacao, baseada no modelo de pagamento por uso, e natural que a quantidade deusuarios e suas respectivas cargas de trabalho tambem crescam. Como consequencia, osprovedores devem ampliar seus recursos e manter o nıvel de qualidade acordado com osclientes, sob pena de quebras do Service Level Agreement (SLA) e decorrentes multas.

O monitoramento de recursos computacionais, como CPU e memoria, se tornaessencial tanto para os provedores quanto para clientes. Uma maneira de monitoraraplicacoes em nuvem de modo mais efetivo e por meio da utilizacao de mecanismos deComputacao Autonomica. Um sistema autonomo ou autonomico e composto por um con-junto de elementos autonomos. Um elemento autonomo e um componente responsavel

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

3

Page 17: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

pela gestao do seu proprio comportamento em conformidade com polıticas e por intera-gir com outros elementos autonomos que fornecem ou consomem servicos computaci-onais [Kephart and Chess 2003]. Mecanismos de Computacao Autonomica, como loopsde controle e regras, podem ser empregados no monitoramento de uma nuvem computaci-onal. Assim recursos podem ser adicionados e removidos do ambiente conforme limiaresde uso pre-estabelecidos. Esse tipo de estrategia de monitoramento esta diretamente as-sociado a uma das principais caracterısticas da Computacao em Nuvem: a elasticidade.

Elasticidade pode ser definida como o grau no qual um sistema computacional ecapaz de se adaptar a variacoes na carga de trabalho pelo provisionamento e desprovisio-namento de recursos de maneira autonomica, onde a cada instante os recursos disponıveisatendam da melhor maneira possıvel as demandas [Herbst et al. 2013]. Sendo assim, aelasticidade vem se tornando uma necessidade cada vez maior devido a natureza dinamicadas diversas aplicacoes e diversas cargas de trabalho impostas por elas. Um estudo sobreelasticidade em nuvem foi realizado em [Coutinho et al. 2013], com destaque para diver-sos aspectos como: definicoes, metricas, benchmarks, estrategicas elasticas, desafios etendencias na construcao de solucoes elasticas.

Diversas arquiteturas para solucoes de provisionamento e manutencao deSLA utilizando recursos de Computacao Autonomica foram propostas na literatura[Rego et al. 2011, Tordsson et al. 2012]. Porem, devido a grande diversidade de tecno-logias e a pouca disponibilidade de informacao acerca de instalacao e configuracao, doponto de vista experimental em geral nao e facil utiliza-las. Este trabalho tem comoobjetivo propor uma arquitetura que utiliza Computacao em Nuvem em conjunto comprincıpios de Computacao Autonomica para o provimento de um ambiente elastico.

2. ArquiteturaA arquitetura proposta possui os seguintes componentes: (1) Loop de Controle Global:responsavel por organizar todas as atividades no ambiente relacionadas a elasticidade. Eo gerente do ambiente. Dispara eventos de coleta, predicao, analise e acoes; (2) Coletor:mecanismo para coletar dados do ambiente. Recupera dados de diversos recursos e arma-zena no banco de dados; (3) Banco de Dados: repositorio de informacoes do ambiente.Armazena dados, metricas e configuracoes do ambiente; (4) Atuador: resposavel por exe-cutar acoes no ambiente de adicao e remocao de maquinas virtuais no balanceador decarga; (5) Loop de Controle Local: mecanismo que gerencia as operacoes locais de coletade dados e consolidacao; (6) Balanceador de Carga: prove a distribuicao das requisicoesentre as maquinas virtuais do ambiente; (7) Cargas de Trabalho: carga de trabalho geradapor usuarios e suas aplicacoes, por tracos computacionais ou por benchmarks sinteticos;(8) Regras: condicoes que definem limites a serem monitorados de recursos do ambiente.Limiares de qualidade possuem um limite superior, inferior e intermediario, onde depen-dendo do valor coletado acoes serao executadas; (9) Predicao: mecanismo baseado emalguma tecnica, como media movel e regressao multilinear, que procura prever eventosde adicao ou remocao de recursos do ambiente, com a intencao de evitar quebras no SLAe ociosidade. Seus relacionamentos estao representados na Figura 1.

3. ExperimentosPara a validacao da arquitetura, um experimento foi projetado com a seguinteconfiguracao: nuvem privada (OpenNebula), maquinas virtuais com 1 VCPU, 1 GB de

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

4

Page 18: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Figura 1. Arquitetura autonomica para elasticidade em Computacao em Nuvem

memoria RAM e sistema operacional Ubuntu 12.04. Para a adaptacao dos recursos a cargade trabalho foi utilizada uma estrategia baseada em balanceadores de carga (elasticidadehorizontal), por meio da ferramenta NGINX. Foram utilizadas aplicacoes web por meiodo servidor Apache Tomcat. A carga de trabalho foi projetada para executar operacoesde multiplicacao de matrizes atraves de um microbenchmark desenvolvido na linguagemde programacao Java, e uma aplicacao cientıfica, o BLAST. Ambas sao orientadas a CPUe memoria, e foram projetadas para serem executadas como pequenas aplicacoes web,disparadas por meio do HTTPERF, conforme taxa pre-determinada.

Um mecanismo de Computacao Autonomica baseado na arquitetura definida em[Kephart and Chess 2003] foi construıdo. O objetivo dos experimentos e avaliar o com-portamento do ambiente diante de cargas de trabalho, e como se comportam de maneiraautonomica para adaptacao a variacoes de demanda (elasticidade) e manutencao do SLA.Foi utilizada uma estrategia de elasticidade horizontal, atraves da qual a medida em querecursos sao necessarios, novas instancias de maquinas virtuais sao adicionadas, por meiode um balanceador de carga, e retiradas caso nao sejam mais necessarias. O intervalo decoleta de dados foi definido a cada 1 segundo. A metrica utilizada para disparar acoesde elasticidade foi a media do percentual de utilizacao de CPU das maquinas virtuais.Os limiares utilizados para a execucao de acoes foram: acima de 70% (aloca uma novamaquina virtual), abaixo de 60% (desaloca uma maquina virtual), e entre 60% e 70%(mantem alocacao). Esse valor foi calculado como a media das 10 ultimas coletas deutilizacao de CPU nas maquinas virtuais. Como mecanismo de predicao foi utilizado re-gressao multilinear sobre valores de utilizacao de CPU, memoria, disco e rede, coletadosem experimentos previos, com cargas de trabalho semelhantes.

A Figura 2 descreve o comportamento medio do consumo de CPU para todas asquatro maquinas virtuais envolvidas no experimento, e suas alocacoes. Como era de seesperar pela caracterıstica da carga de trabalho, muitas variacoes na utilizacao de CPUocorreram, aumentando a medida em que novas requisicoes eram disparadas. Ao superar

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

5

Page 19: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Figura 2. Graficos de consumo medio de CPU e alocacao de maquinas virtuais

o limite estabelecido, novas instancias foram alocadas, coincidindo com a alocacao denovas instancias ao balanceador de carga. Quando a carga de utilizacao da CPU erainferior ao limite estabelecido, havia uma desalocacao de maquinas virtuais. Observou-sepelos graficos da Figura 2 que em varios intervalos de tempo o SLA foi violado. Issoindica que a quantidade de recursos do ambiente chegou ao maximo. Se houvessem maisrecursos, o consumo de CPU seria melhor distribuıdo, com valores menores na utilizacaode CPU, mais proximos aos limites definidos. Consequentemente haveria no grafico dealocacao mais “degraus”, correspondendo a alocacao e desalocacao de maquinas virtuais.

4. ConclusaoA utilizacao de mecanismos da Computacao Autonomica em ambientes de Computacaoem Nuvem para suportar o provimento da elasticidade tem se mostrado muito eficiente.Neste trabalho, uma arquitetura autonomica foi proposta para o provimento da elastici-dade em ambientes de Computacao em Nuvem, validado por meio de um experimento.

Outros recursos do ambiente podem ser utilizados como criterio para que acoesautonomicas atuem sobre o ambiente, como memoria e throughput. O mecanismo depredicao tambem deve ser evoluıdo com diferentes estrategias, como aprendizagem demaquina. Por fim, outras estrategias de elasticidade devem ser exploradas, como solucoesde elasticidade vertical (aumentando a capacidade dos recursos) e hıbridas.

ReferenciasCoutinho, E., Sousa, F. R. C., Gomes, D. G., and Souza, J. D. (2013). Elasticidade em computacao na

nuvem: Uma abordagem sistematica. In XXXI Simposio Brasileiro de Redes de Computadores e SistemasDistribuıdos (SBRC 2013) - Minicursos.

Herbst, N. R., Kounev, S., and Reussner, R. (2013). Elasticity in cloud computing: What it is, and what itis not. In Proceedings of the 10th International Conference on Autonomic Computing(ICAC 2013), SanJose, CA, pages 23–27. USENIX.

Kephart, J. O. and Chess, D. M. (2003). The vision of autonomic computing. Computer, 36(1):41–50.

Rego, P., Coutinho, E., Gomes, D., and De Souza, J. (2011). Faircpu: Architecture for allocation ofvirtual machines using processing features. In Utility and Cloud Computing (UCC), 2011 Fourth IEEEInternational Conference on, pages 371–376.

Tordsson, J., Montero, R. S., Moreno-Vozmediano, R., and Llorente, I. M. (2012). Cloud brokering me-chanisms for optimized placement of virtual machines across multiple providers. Future GenerationComputer Systems, 28(2):358 – 367.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

6

Page 20: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Protocolos Auto-Gerenciaveis de Consensopara Sistemas Distribuıdos Parcialmente Sıncronos

Alirio Santos de Sa1, Raimundo Jose de Araujo Macedo1, Heverton Santos Queiroz2

1Laboratorio de Sistemas Distribuıdos – LaSiD, Departamento de Ciencia da ComputacaoUniversidade Federal da Bahia (UFBA), Salvador, Bahia, Brasil

2Instituto Federal de Educacao, Ciencia e Tecnologia Baiano, Salvador, Bahia, Brasil{aliriosa|macedo}@ufba.br, [email protected]

Abstract. Consensus protocols are used to provide global consistency in de-pendable distributed systems. The proposed approaches for these protocols donot support automatic (re)configuration from application-defined QoS require-ments dynamically specified. However, when the computing environment beha-viour is dynamical or when the application-defined QoS requirements change,the self-configuration becomes a basic ability for such protocols – mainly forapplications with response time and high availability requirements. This pa-per introduces a novel self-manageable consensus protocol which, at runtime,self-configures its operational parameters using application-defined QoS requi-rements and observing the changes in computing environment.

1. Introducao

Protocolos de consenso oferecem um servico importante para a implementacao de umavariedade de sistemas distribuıdos confiaveis. Nesses protocolos, cada processo propoeum valor, e todos os processos (nao defeituosos) devem concordar sobre o valor quedeve ser adotado dentre os valores propostos. Em sistemas distribuıdos assıncronos, naoexiste uma solucao determinıstica para esse problema quando pelo menos um processo dosistema pode falhar [Fischer et al. 1985]. Isso motivou o desenvolvimento de abordagensconsiderando modelos de sistemas distribuıdos com hipoteses temporais mais restritivas(i.e., com sincronia adequada a obtencao de solucoes para o problema do consenso).

Muitas dessas abordagens tem considerado a implementacao de protocolos deconsenso para sistemas distribuıdos assıncronos dotados de detectores de defeitos naoconfiaveis [Chandra and Toueg 1996]. A base dessas abordagens e considerar a execucaoem rodadas, em que: cada rodada possui um coordenador, o qual propoe um valor para osdemais participantes; em seguida, o protocolo tenta obter uma maioria de votos que per-mitam decidir pelo valor proposto; caso a decisao nao seja alcancada, uma nova rodada einiciada (com um novo coordenador). Esses protocolos formam uma famılia, mas que sediferenciam quanto aos modelos de decisao, que variam desde modelos de decisao centra-lizados a modelos completamente decentralizados; e que implicam em diferentes relacoesde compromisso entre custo computacional (de processamento e de troca de mensagens)e latencia na tomada de decisao. Assim, o projeto de sistemas distribuıdos confiaveis deveser baseado em protocolos que se adequem as caracterısticas do ambiente computacionalao mesmo tempo em que atendam os requisitos determinados pelas aplicacoes.

Todavia, quando o comportamento do ambiente computacional e dinamico, ouquando os requisitos da aplicacao podem mudar, e extremamente difıcil atender a essa

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

7

Page 21: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

relacao de compromisso observando apenas decisoes tomadas em tempo de projeto – prin-cipalmente para aplicacoes modernas com requisitos de tempo de resposta e de alta dis-ponibilidade. Com isso, dotar os protocolos de consenso da habilidade de auto-configurarsuas caracterısticas (a partir da definicoes automatica de seus parametros operacionais) setorna um requisito basico e que nao tem sido discutido de forma apropriada na literatura.

Nesse contexto, este artigo introduz um protocolo auto-gerenciavel de consenso,o qual e capaz de, em tempo de execucao, auto-configurar os seus parametros operacio-nais usando requisitos dinamicamente definidos pelas aplicacoes e observando mudancasdinamicas no comportamento do ambiente computacional. Para isso, discute-se comoum protocolo de consenso existente na literatura pode ser especializado para oferecer ahabilidade de auto-configuracao.

O restante deste artigo esta organizado da seguinte forma. A Secao 2 discutetrabalhos relacionados. A Secao 3 apresenta a implementacao da proposta. Por fim, aSecao 4 faz algumas consideracoes finais e apresenta propostas de trabalhos futuros.

2. Trabalhos RelacionadosNos protocolos de consenso baseados em detectores de defeitos nao confiaveis e queusam um modelo de decisao decentralizado (e.g., [Hurfin and Raynal 1999]), as propos-tas de cada processo sao difundidas para todos os participantes da rodada. Isso implicaem um maior custo em termos de troca de mensagens, mas permite que a decisao possaser tomada mais rapidamente (sem interacao com o coordenador). Por outro lado, emmodelos de decisao centralizados (e.g., [Chandra and Toueg 1996]), as decisoes sao cen-tradas no coordenador da rodada. Assim, as propostas sao enviadas ao coordenador e estee responsavel por informar a decisao para os demais participantes. Isso reduz o custo comtroca de mensagens, mas pode implicar em uma maior latencia para a decisao, uma vezque demanda um maior numero de passos de comunicacao que o modelo decentralizado.

Alguns trabalhos apresentam protocolos de consenso adaptaveis, os quais saocapazes de emular diferentes padroes de disseminacao de decisao (ver, por exemplo[Hurfin et al. 2001] e [Pereira and Oliveira 2004]). Nesses casos, entretanto, o chavea-mento entre esses diferentes padroes (i.e., desde centralizado a totalmente decentralizado)e realizado a partir de parametros definidos em tempo de projeto. Em [Matos et al. 2008]e apresentada uma breve discussao sobre como a auto-configuracao beneficia protocolosde consenso. Contudo, ate onde sabemos, o presente artigo apresenta a primeira abor-dagem de consenso capaz de adaptar dinamicamente seus parametros operacionais paradefinir modelos de decisao que se adaptem a mudancas dinamicas nas caracterısticas doambiente computacional e atendam a requisitos dinamicamente definidos pela aplicacao.

3. A Proposto de Protocolo Auto-Gerenciavel de ConsensoA abordagem proposta neste artigo encapsula o protocolo de consenso, denominadoHMMR (ver [Hurfin et al. 2001]), de modo a habilita-lo com a facilidade de auto-gestao.O protocolo HMMR foi escolhido por oferecer um modelo de decisao adaptavel, o quepermite configurar o padrao de troca de mensagens do modelo de decisao – a abordagemde auto-configuracao proposta manipula essa caracterıstica. Por isso, o modelo de decisaodo HMMR e descrito com mais detalhes a seguir.

O Modelo de Decisao Adaptavel do Protocolo HMMR. No protocolo HMMR, a cadarodada r, os processos podem ser divididos em dois grupos: (i) processos que coletam as

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

8

Page 22: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

propostas e decidem de forma direta, representados pelo conjunto X (com cardinalidadex); e (ii) processos que precisam esperar que a decisao seja informada por um dos proces-sos de X . Cada processo pi mantem localmente sua visao do conjunto X (dita Xi). Paragarantir safety, Xi deve conter os coordenadores da rodada atual (r) e da proxima rodada(r + 1). Assim, a cardinalidade xi de Xi pode variar entre 2 e n, em que n representa onumero de processos do sistema. Quando xi = 2, os processos enviam as suas propostasapenas para os coordenadores das rodadas r e r+1. Quando xi = n, os processos enviamas suas propostas para todos os demais. Assim, e possıvel adaptar o protocolo HMMRpara usar diferentes modelos de decisao, desde um modelo centralizado (com complexi-dade de trocada de mensagens O(n)) ate um modelo completamente decentralizado (comcomplexidade de troca de mensagens O(n2)).

Abordagem de Auto-Gestao. A abordagem de auto-gestao deste artigo adapta a car-dinalidade xi do conjunto Xi (adicionando ou removendo identificadores de processosdeste conjunto) para acomodar a carga de mensagens imposta pelo protocolo de con-senso HMMR. Para isso, considera dois aspectos basicos: (i) a capacidade do ambientecomputacional – verificado pelo uso medio de banda de rede (u); e (ii) o requisito es-pecificado pelo usuario – definido pela restricao de uso de banda desejada para o proto-colo. Assim, a cada envio ou recebimento de mensagens em pi, a abordagem acumulao total de bits (bi) enviados e recebidos. Entao, a cada δ unidades de tempo, a aborda-gem usa o total de bits bi para estimar a utilizacao media atual da rede (uci ) vista porpi. O calculo de uci e feito a partir da media movel Exponencial [Aguirre 2004], isto e:uci = min (1, α ∗ uei + (1− α) ∗ uci), em que min(x, y) retorna o menor entre os valoresde x e y, enquanto uei = bi/(δ∗bwm) e a utilizacao de rede estimada, considerando o totalde bits bi, o perıodo de observacao δ e a vazao nominal da rede bwm em bits/segundo.

Antes do calculo de uci , seu valor e salvo em uoi e, apos o calculo de uci , o valor debi e zerado. Calculado o novo valor de uci , a abordagem de adaptacao verifica se o valordo mesmo e superior ao valor desejado pelo usuario (ur). Em caso afirmativo, a atualestimativa de cardinalidade para Xi (dita xci ) e salva em xoi e o valor de xci e reduzido pelametade (i.e., xci = xci/2) – para que o custo da execucao do protocolo venha convergirmais rapidamente para um valor menor ou igual ao valor desejado. Por outro lado, sea utilizacao media esta abaixo do desejado (i.e., uci ≤ ur), entao, a abordagem avalia arelacao entre a ultima variacao realizada no valor de xi e a ultima variacao observada paraa utilizacao media ui da seguinte forma:(1) A variacao de ui acompanha a variacao de xi – isto e, (xci > xoi [variacao positiva] e uci ≥ uoi

[variacao positiva]) ou (xci < xoi [variacao negativa] e uci < uoi [variacao negativa]). Nessecaso, xci e incrementado em K unidades, pois ainda existem recursos disponıveis na rede e odesempenho do protocolo pode ser melhorado sem comprometer as aplicacoes;

(2) A variacao de ui nao acompanha a variacao de xi – isto e, (xci > xoi [variacao positiva]e uci < uoi [variacao negativa]) ou (xci < xoi [variacao negativa] e uci ≥ uoi [variacaopositiva]). Nesse caso, a rede deve estar sobrecarregada, entao xci e reduzido a metade, paradiminuir o impacto do protocolo sobre a rede.

Calculado xci , o mesmo deve ser limitado entre 2 e n. Por fim, o conjunto Xi e adaptadopara possuir dxcie participantes, incluindo os coordenadores da rodada atual e da proxima.

4. Consideracoes FinaisEste artigo apresentou uma abordagem de auto-gestao para protocolos de consenso,usando, para tanto, o protocolo de consenso HMMR. Nessa abordagem, possibilita-se

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

9

Page 23: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

ao usuario interferir na adaptacao do algoritmo a partir da definicao de restricoes deuso de banda de rede. Entretanto, a definicao dos parametros do proprio mecanismode auto-gestao (i.e., δ, K e bwm) ainda precisam ser avaliados, pois os mesmos im-pactam na qualidade dessa adaptacao. Se a vazao nominal da rede nao e conhecida,bwm pode ser estimado considerando o tempo nominal de atendimento da rede comosendo o menor atraso fim-a-fim observado durante a execucao do protocolo – abordagemsimilar as de [de Sa and Macedo 2010, Macedo et al. 2011]. Os parametros δ e K po-dem ser estimados e adaptados a partir do ferramental matematico da teoria de controle[Hellerstein et al. 2004]. Uma avaliacao experimental da abordagem de auto-gestao pro-posta esta sendo conduzida no ambito do Laboratorio de Sistemas Distribuıdos (LaSiD). Aideia e que o protocolo auto-gerenciavel proposto possa ser integrado e oferecido em con-junto com outros mecanismos auto-gerenciaveis de tolerancias a falhas previamente im-plementados (e.g., [de Sa and Macedo 2010], [Macedo et al. 2011] e [de Sa et al. 2013]).

ReferenciasAguirre, L. A. (2004). Introducao a identificacao de sistemas–Tecnicas lineares e nao-

lineares aplicadas a sistemas reais. editora UFMG.Chandra, T. D. and Toueg, S. (1996). Unreliable failure detectors for reliable distributed

systems. Journal of the ACM (JACM), 43(2):225–267.de Sa, A. S. and Macedo, R. J. A. (2010). Qos self-configuring failure detectors for

distributed systems. In Proceedings of the 10th IFIP WG 6.1 International Conferenceon Distributed Applications and Interoperable Systems (DAIS’ 2010), volume 6115of Lecture Notes in Computer Science (LNCS), pages 126–140, Berlin, Heidelberg.Springer-Verlag.

de Sa, A. S., Silva Freitas, A. E., and de Araujo Macedo, R. J. (2013). Adaptive requestbatching for byzantine replication. SIGOPS Oper. Syst. Rev., 47(1):35–42.

Fischer, M. J., Lynch, N. A., and Paterson, M. S. (1985). Impossibility of distributedconsensus with one faulty process. Journal of the ACM (JACM), 32(2):374–382.

Hellerstein, J. L., Diao, Y., Parekh, S., and Tilbury, D. M. (2004). Feedback control ofcomputing systems. Wiley-Interscience, Canada.

Hurfin, M., Macedo, R., Mostefaoui, A., and Raynal, M. (2001). A consensus protocolbased on a weak failure detector and a sliding round window. In Proceedings of the20th IEEE Symposium on Reliable Distributed Systems, SRDS’2001., pages 120–129.IEEE.

Hurfin, M. and Raynal, M. (1999). A simple and fast asynchronous consensus protocolbased on a weak failure detector. Distributed Computing, pages 209–223.

Macedo, R. J. A., Freitas, A. E. S., and de Sa, A. S. (2011). A self-manageable groupcommunication protocol for partially synchronous distributed systems. In Proceedingof Fifth Latin-Amarican Symposium on Dependable Computing, LADC’2011, pages146–155, Sao Jose dos Campos, SP, Brazil. IEEE Computer Society Press.

Matos, M., Pereira, J., and Oliveira, R. (2008). Self-tuning with self-confidence (fastabstract). In 38th Annual IEEE/IFIP International Symposium on Dependable Systemsand Networks, DSN’2008, pages 1–2.

Pereira, J. and Oliveira, R. (2004). The mutable consensus protocol. In Proceedings ofthe 23rd IEEE International Symposium on Reliable Distributed Systems, SRDS’2004,pages 218–227.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

10

Page 24: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Um Mecanismo de Auto-gestao paraSistemas de Armazenamento de Dados Replicados nas Nuvens

Fabiola de Lima Moreira1, Alırio Santos Sa1

1 Programa de Pos-Graduacao Multiinstitucional de Mestrado em Ciencia da ComputacaoLaboratorio de Sistemas Distribuıdos (LaSiD) / Departamento de Ciencia da Computacao

Universidade Federal da Bahia, Salvador, Bahia, Brasil

[email protected],[email protected]

Resumo. Sistemas replicados de armazenamento de dados sao fortes candida-tos a implantacao na nuvem. Todavia, a provisao transparente de garantias deconsistencia, escalabilidade e confiabilidade nao e uma tarefa simples quandoas condicoes de carga no ambiente e os requisitos de QoS das aplicacoes podemmudar. Neste contexto, a habilidade de auto-gestao se torna uma habilidadebasica a ser suportada por tais servicos. Assim, este artigo propoe uma me-canismo de auto-gestao para sistemas de armazenamento de dados nas nuvensque visa manter requisitos de tempo de resposta, consistencia e disponibilidade,considerando as mudancas dinamicas na carga computacional do ambiente epossıveis alteracoes nos requisitos de QoS das aplicacoes

1. IntroducaoComputacao em nuvem representa um modelo de computacao baseado em tecnologiasda Internet, no qual os recursos computacionais podem ser automaticamente provisiona-dos para reduzir custos de manutencao e prover qualidade do servico. Neste modelo decomputacao, o armazenamento de dados e um servico basico a ser provido de maneira es-calavel, transparente e segura, ao mesmo tempo em que atende a requisitos especıficos dequalidade de servico das aplicacoes. Isto representa um desafio, pois o servico de armaze-namento deve manter a consistencia dos dados, considerando, por exemplo: condicoes decarga computacionais dinamicas; e requisitos de qualidade de servico que podem mudarde acordo com o interesse da aplicacao. Assim, dotar estes sistemas de gerenciamento dedados com a habilidade de auto-gestao se torna uma questao basica.

Algumas aplicacoes toleram que as operacoes de leitura, sobre os sistemas de ar-mazenamento replicados, retornem dados desatualizados (o que caracteriza um esquemacom consistencia fraca). As solucoes que seguem esta abordagem oferecem um tipo es-pecıfico de consistencia fraca, denominada de consistencia eventual [Vogels 2009]. Nessemodelo, e possıvel calcular o perıodo entre atualizacoes dos dados replicados e estabele-cer o momento a partir do qual os dados estarao atualizados. Esse perıodo e denominadode janela de inconsistencia. A adaptacao da janela de inconsistencia permite implementarsolucoes distribuıdas de armazenamento que oferecam diferentes nıveis de consistencia ede desempenho que podem se adequar as necessidades das aplicacoes.

Neste contexto, este artigo propoe um mecanismo de auto-gestao para sistemasde armazenamento de dados nas nuvens que visa manter requisitos de tempo de resposta,consistencia e disponibilidade, considerando as mudancas dinamicas na carga do ambi-ente computacional e nos requisitos de qualidade de servico das aplicacoes.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

11

Page 25: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

O restante deste artigo esta organizado da seguinte forma. A Secao 2 discute al-guns trabalhos relacionados. A Secao 3 apresenta a proposta de auto-gestao para sistemasde armazenamento de dados. Por fim, a Secao 4 traz algumas consideracoes finais epropostas de trabalhos futuros.

2. Trabalhos Relacionados

Muitos trabalhos sobre sistemas auto-gerenciaveis de armazenamento de dados sao en-contrados na literatura. Em [Chaudhuri and Weikum 2000], discute-se a importanciada auto-configuracao para a melhoria do desempenho dos banco de dados. Em[Martin et al. 2006], sao discutidos modelos de carga de trabalho para bancos de dadosauto-gerenciaveis – modelos estes que consideram experimentos com cargas de traba-lho especıficas para identificar relacoes de compromisso e reconhecer pontos de melho-ria para a implementacao de propriedades de auto-gestao. Em [Lightstone et al. 2002]e em [Mateen et al. 2008], sao apresentadas solucoes de auto-gestao voltados para auto-configuracao e otimizacao de desempenho em sistemas de banco de dados consolidados(i.e., DB2 e SQL Server, respectivamente). Diferentes destes trabalhos, a solucao pro-posta neste artigo tenta atender aos requisitos de QoS definidos pela aplicacao em termosde desempenho (i.e., vazao de operacoes/segundo e nıvel de consistencia), observandoas condicoes dinamicas de carga impostas pelo ambiente computacional. Alem disso,nenhum destes trabalhos lida com aspectos relacionados a consistencia eventual.

O trabalho de [Kraska et al. 2009] aponta a existencia de uma relacao de compro-misso nao trivial entre custo, consistencia e disponibilidade nas solucoes de armazena-mento nas nuvens. Por conta disso, propoem um novo paradigma transacional em queas garantias de consistencia de dados sao definidas em tempo de execucao, atraves detecnicas de monitoramento dos dados. Com essas tecnicas, os registros sao categorizadosindividualmente e as suas atualizacoes serao feitas de acordo com as garantias de con-sistencia de cada categoria. Apesar de oferecer consistencia fraca, a fim de diminuir ocusto computacional, e por consequencia o tempo de resposta na leitura de dados, essetrabalho nao esta voltado a garantir que a compensacao entre consistencia e latencia sejavantajosa (diferente do que esta sendo proposto no presente trabalho).

3. Descricao da Proposta de Auto-Gestao

A abordagem proposta e implementada em uma infraestrutura de servidores de armaze-namento distribuıdos e com esquema de replicacao hıbrido. Este esquema considera aexistencia de um conjunto S de servidores de armazenamento replicados, os quais estaodivididos em dois grupos, ditos Sp e Sb, (ver Figura 1).

Figura 1. Modelo de replicacao

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

12

Page 26: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Os servidores em Sp (composto por replicas primarias) sao responsaveis por re-ceber e responder as operacoes de escrita das aplicacoes e, periodicamente, sincroni-zar seu estado com os servidores em Sb (composto por replicas secundarias). A carac-terıstica hibrıda desta infraestrutura reside no fato de que as replicas em Sp sao atuali-zadas de forma atomica (sıncrona), enquanto as replicas em Sb sao atualizadas de formaassıncrona. As operacoes de leitura podem ser respondidas por qualquer replica em S. Noentanto, caso uma replica em Sb responda uma requisicao, por ter estrategia de replicacaoassıncrona, nao ha garantia de que a versao do dado e a mais recente, caracterizandouma consistencia fraca. Para a implementacao do mecanismo de auto-gestao proposto,algumas relacoes de compromisso sao ressaltadas:

• Numero de replicas em Sp. Quanto mais replicas em Sp, maior e a resiliencia a falhasdo sistema; contudo, maior tambem e o custo das operacoes de escrita (maior carga deprocessamento e comunicacao, maior latencia de escrita e menor vazao das operacoes deescrita por segundo). Entretanto, quanto mais replicas, melhor e o balanceamento da cargapara operacoes de leitura e a sincronizacao com as replicas em Sb.

• Perıodo de atualizacao das replicas em Sb. Quanto menor o perıodo usado paraatualizacao das replicas em Sb, maior e custo computacional com processamento e trocade mensagens. Com perıodos pequenos, mais replicas podem estar atualizadas para res-ponder as requisicoes de leitura. Entretanto, perıodos muitos pequenos podem provocarsobrecarga na infraestrutura e implicar em reducao da qualidade de servico tanto da infra-estrutura quanto das aplicacoes.

Essas relacoes de compromisso sao usadas pela abordagem proposta para imple-mentar um laco de gestao, no qual: (1) verifica os requisitos de desempenho da aplicacao(determinados em funcao da latencia e da vazao das operacoes de leitura/escrita); (2)monitora o desempenho entregue pelo servico em termos dessas mesmas metricas (i.e.,latencia e vazao das operacoes); (3) compara o desempenho entregue com o desejado eentao sugere modificacoes no numero de replicas em Sp e no perıodo de atualizacoes dasreplicas em Sb, considerando as condicoes de carga do ambiente computacional. Paraisto, segue as seguintes polıticas:

• Caso a latencia media de escrita seja maior que a latencia media desejada, entao areplica mais lenta de Sp e removida do quorum;

• Caso a latencia media de leitura esteja acima da latencia media desejada, entao operıodo de atualizacao das replicas em Sb e aumentado;

• As operacoes de leitura recebidas por uma replica em Sp sao direcionadas paranos em Sp ou Sb com a maior quantidade de recursos disponıveis para atender asrequisicoes e que estejam com os dados atualizados de acordo com os requisitosde consistencia da aplicacao.

4. Consideracoes FinaisEste artigo apresentou um mecanismo de auto-gestao baseado em polıticas capaz de adap-tar parametros de um servico replicado de armazenamento de dados, usando requisitosde QoS definido pela aplicacao e observando mudancas nas caracterısticas do ambientecomputacional. Diferentes nıveis de consistencia podem ser entregues a partir de uma es-trutura de replicacao hibrıda que combine esquemas de replicacao sıncrona e assıncrona.Os requisitos de QoS da aplicacao e o desempenho entregue pela infraestrutura de arma-zenamento sao especificados/observados em termos da latencia e da vazao das operacoes

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

13

Page 27: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

de escrita/leitura. Os parametros ajustados sao representados pelo quorum de escrita nasreplicas primarias e pelo perıodo de atualizacao das replicas secundarias.

A abordagem de adaptacao dos quorum de escrita/leitura e do perıodo deatualizacao das replicas estao em desenvolvimento. Alem disso, um ambiente expe-rimental esta sendo implementado para avaliar a abordagem proposta sob diferentescondicoes de carga e falhas de componentes. Outras questoes, como o chaveamento eauto-configuracao de estrategias usadas para disseminacao dos dados entre as replicastambem precisam ser avaliados, uma vez que estes tem impacto direto no desempenhoexposto pelo sistema de armazenamento. Por fim, pretende-se integrar a abordagem pro-posta a outros mecanismos auto-gerenciaveis de tolerancia a falhas em desenvolvimento epreviamente implementados no ambito do Laboratorio de Sistemas Distribuıdos (LaSiD)– ver por exemplo [de Sa and Macedo 2010], [Macedo et al. 2011] e [de Sa et al. 2013].

ReferenciasChaudhuri, S. and Weikum, G. (2000). Rethinking database system architecture: Towards

a self-tuning risc-style database system. In Proceedings of the 26th International Con-ference on Very Large Data Bases, pages 1–10, San Francisco, CA, USA. MorganKaufmann Publishers Inc.

de Sa, A. S. and Macedo, R. J. A. (2010). Qos self-configuring failure detectors fordistributed systems. In Proceedings of the 10th IFIP WG 6.1 International Conferenceon Distributed Applications and Interoperable Systems (DAIS’ 2010), volume 6115of Lecture Notes in Computer Science, pages 126–140, Berlin, Heidelberg. Springer-Verlag.

de Sa, A. S., Silva Freitas, A. E., and de Araujo Macedo, R. J. (2013). Adaptive requestbatching for byzantine replication. SIGOPS Operating Systems Review, 47(1):35–42.

Kraska, T., Hentschel, M., Alonso, G., and Kossmann, D. (2009). Consistency rationingin the cloud: pay only when it matters. volume 2, pages 253–264. VLDB Endowment.

Lightstone, S. S., Lohman, G., and Zilio, D. (2002). Toward autonomic computing withdb2 universal database. SIGMOD Rec., 31(3):55–61.

Macedo, R. J. A., Freitas, A. E. S., and de Sa, A. S. (2011). A self-manageable groupcommunication protocol for partially synchronous distributed systems. In Proceedingof Fifth Latin-Amarican Symposium on Dependable Computing, LADC’2011, pages146–155, Sao Jose dos Campos, SP, Brazil. IEEE Computer Society Press.

Martin, P., Elnaffar, S., and Wasserman, T. (2006). Workload models for autonomicdatabase management systems. In International Conference on Autonomic and Auto-nomous Systems (ICAS’2006), pages 1–10.

Mateen, A., Raza, B., Hussain, T., and Awais, M. (2008). Autonomic computing in SQLServer. In 7th IEEE/ACIS International Conference on Computer and InformationScience (ICIS’2008), pages 113–118.

Vogels, W. (2009). Eventually consistent. Communications of the ACM, 52(1):40–44.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

14

Page 28: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

32º Simpósio Brasileiro de Redes de Computadores e

Sistemas Distribuídos

Florianópolis - SC

4º Workshop de Sistemas

Distribuídos Autonômicos -

WoSiDA 2014

Sessão Técnica 2

Redes Autonômicas

Page 29: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão
Page 30: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Um Protocolo de Roteamento Adaptativo a Carga de Bateria e a

presença de falhas em Redes Móveis Ad hoc

Bruno de Jesus Santos1, Sérgio Gorender

1

1Laboratório de Sistemas Distribuídos (LASID) – Departamento de Ciência da

Computação (DCC) – Universidade Federal da Bahia (UFBa)

40.170-11 – Av. Adhemar de Barros S/N, Ondina, Salvador – Ba – Brasil

{brunosantos,gorender}@ufba.br

Abstract. Mobile Ad hoc networks (MANET) are composed of mobile nodes which

communicate through wireless network. These nodes make use of different protocols to

manage the process of route discovery. Considering these mobile devices, features related

to mobility, to the use of batteries, and the presence of communication failures are

challenges to be faced. Given these challenges, the authors present a routing protocol to

the automation of such problems, incorporating diverse concepts to your model from the

area of autonomic computation, seeking partial solution of the current challenges in the

area of Mobile Ad Hoc Networks.

Resumo. Redes Móveis Ad hoc (MANETs) são redes compostas por nós móveis que se

comunicam utilizando interface sem fio e fazem uso de diversos protocolos para gerenciar

o processo de descoberta de rotas. Por serem dispositivos móveis, apresentam desafios

relacionados à mobilidade, ao uso de baterias, e à presença de falhas de comunicação.

Frente a esses desafios, os autores propõem um protocolo que visa a automatização de

tais problemas, incorporando ao seu modelo diversos conceitos da área da computação

autonômica, visando a solução parcial dos atuais desafios da área de Redes Móveis Ad

hoc.

1. Introdução

Redes Móveis Ad hoc (MANET) são redes compostas por dispositivos móveis que

utilizam interface de comunicação sem fio, sendo sua arquitetura projetada para proporcionar

conexão em rede. Por ser uma rede formada por dispositivos móveis, possui topologia dinâmica, e

despreza a necessidade de um dispositivo de rede central para conectar outros dispositivos [Bansal

et al, 1999; Sankar et al, 2005]. Nela, todos os dispositivos conectados assumem o papel de

roteadores móveis [Qin and Kunz, 2004], utilizando-se de protocolos de roteamento e de

tecnologias de comunicação (802.11 - Wi-Fi, 802.15 - Bluetooth, ZigBee, Mesh) [Sankar et al,

2005]. Arquiteturas de redes auto-gerenciáveis têm sido desenvolvidas como soluções emergentes

para as redes móveis [Sankar et al, 2005; Baccelli and Perkins, 2012].

Protocolos para Redes Ad Hoc gerenciam arquiteturas de redes dinâmicas [Qin and Kunz,

2004], compostas por conjuntos de nós que possuem comportamentos individuais, caracterizados

pela mobilidade individual e independente de cada nó, pela carga variável da bateria de cada nó, no

processamento de requisições independentes e na potência de sinal da interface de rede de cada nó,

dentre outros aspectos [Baccelli and Perkins, 2012]. A mobilidade dos nós, a ausência de carga na

bateria de um nó, ou uma falha do dispositivo podem gerar falhas na conexão da rede [Baccelli and

Perkins, 2012, Huang et al, 2009].

Apresentamos um protocolo de roteamento para MANETs, capaz de gerenciar de forma

autonômica a formação de rotas, monitorar a presença de falhas de comunicação, e a possibilidade

de falha de um nó devido a queda no nível da carga de sua bateria. A arquitetura de rede proposta

para este protocolo possibilita a construção de rotas em MANETs, priorizando a maior carga de

bateria dos dispositivos da rede. A carga da bateria dos nós na rota é considerada pelo protocolo

como prioritária, em detrimento de uma rota mais curta, para formar rotas que se mantenham

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

17

Page 31: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

estáveis por maior tempo. Atualmente existem diversos modelos de mobilidade, sendo que o nosso

modelo leva em consideração que os nós podem se movimentam livremente, assumindo uma

velocidade padrão de movimentação para todos os nós.

O restante do artigo foi organizado da seguinte forma: a Seção 2 introduz o conceito de

redes autonômicas e descreve os desafios encontrados na Gerencia de Redes Móveis Ad hoc, a

proposta de uma arquitetura do nosso modelo de protocolo é descrito na Seção 3; e por fim, as

conclusões da nossa pesquisa são apresentadas na Seção 4.

2. Redes Móveis Ad hoc e seus desafios

MANETs apresentam grandes desafios à sua construção e utilização, devido à sua

dinamicidade, caracterizada pela mobilidade dos dispositivos, pela limitada carga da bateria destes

dispositivos, e pela necessidade da rede em se adaptar às constantes mudanças de estado [Bakht,

2010; Misra, 2012].

Topologia Dinâmica e tempo de duração das rotas criadas. A maioria dos protocolos

tradicionais de roteamento em MANETs (AODV, DSR, OLSR, DSDV, TORA), elegem rotas com

base em inundação de mensagens na rede, sofrendo restrições de desempenho para promoção de

novas rotas em tempo hábil [Bakht, 2010]. Alguns protocolos levam em consideração tais

problemas, mas normalmente possuem restrições relacionadas ao modelo de busca por novas rotas

quando uma rota é desfeita [Qin and Kunz, 2004; Sankar et al, 2005].

Consumo de energia dos dispositivos móveis. Dispositivos em MANETs são

dependentes de energia, sofrendo considerável consumo por parte dos processadores, memórias e

interfaces de rede sem fio. Alguns poucos protocolos para MANETs consideram a carga da bateria

na construção de rotas [Baccelli and Perkins, 2012].

O desenvolvimento de mecanismos autonômicos de busca e de recuperação de rotas. Provê aos nós a possibilidade de elencar rotas secundárias à rota principal. A replicação de rotas

proporciona o compartilhamento de rotas alternativas para todos os dispositivos no processo de

roteamento em rede [Huang et al, 2009; Zeinab et al, 2012 ].

Auto-gestão da rede, tendo a capacidade de percepção das alterações internas e

externas. Os próprios nós da rede tomam decisões com relação à otimização e recuperação de rotas

existentes. A auto-gestão [Zeinab et al, 2012] deve ser obtida a partir do monitoramento dos

dispositivos que compõe a rota [Huang et al, 2009].

3. Um Protocolo de Roteamento adaptativo à carga de bateria e à presença de

falhas de comunicação em Redes Móveis Ad hoc

Assumimos uma rede formada por dispositivos móveis, com a capacidade de comunicação

sem fio. Os nós podem se mover em qualquer direção, entretanto, a movimentação não é constante,

e não ocorre a grandes velocidades. A rede não é confiável, podendo ocorrer perda de pacotes e não

pode ser particionada.

Os dispositivos possuem uma carga limitada em sua bateria, a qual reduz em maior ou

menor velocidade, dependendo, entre outros aspectos, da potência do sinal de comunicação

utilizada. A mobilidade dos nós, que acontece de forma aleatória, pode gerar a desconexão, quando

dispositivos conectados se movimentam para distâncias superiores às do alcance de seus sinais. Esta

desconexão gera a perda de rotas de comunicação, previamente construídas.

3.1 O princípio de funcionamento do protocolo

O protocolo de formação de rotas adaptativo à carga da bateria leva em consideração os

dois atuais modelos de eleição de rotas em Redes Móveis Ad hoc, o reativo e o pró-ativo.

O protocolo estabelece a construção de rotas em duas etapas: primeiro é gerada a Rota

Principal, entre o nó que originou conexão e o nó destino, ilustrado na Figura 1 como Rota principal

(Linha em negrito que conecta o nó origem, e o nó destino, marcados com um círculo). Este

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

18

Page 32: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

primeiro modelo de busca de rotas é executado sob demanda, de forma similar ao protocolo AODV.

A partir do nó origem é efetuada uma inundação de mensagens na rede (Flooding) até que o nó

destino seja encontrado. A formação da rota levará em consideração o nível de carga de bateria,

selecionando para a rota principal os nós que possuem maior nível de carga de bateria.

Figura 1. Modelo de arquitetura autonômica para Redes MANET

Após a rota principal ser formada, de forma reativa, os nós que fazem parte desta rota

executarão, de tempos em tempos, uma descoberta de rotas locais, formando assim rotas

denominadas como rotas secundárias (Ilustradas na Figura 1). Este procedimento é feito de forma

pró-ativa, de forma similar ao DSR. Essas rotas servirão como base de redirecionamento automático

da conexão principal (Rota Principal) em caso de falhas.

Todos os nós monitoram periodicamente o nível de sua carga de bateria. Se for atingido um

limite mínimo de carga, o nó informará para o nó anterior em todas as rotas em que participar sua

situação. A formação das rotas secundárias segue o mesmo princípio de escolha da Rota Principal,

levando em consideração apenas os dois nós mais próximos aos nós que compõem a rota principal,

e que possuam maior carga de bateria. Este processo se replicará em dois níveis (Ilustrados na

Figura 1 como Nível 1 e Nível 2, sendo o Nível 0 o nível da Rota Principal).

Caberá ao mecanismo de monitoração, o redirecionamento da rota principal para alguma

rota secundária. A arquitetura utiliza o modelo de zonas (Ilustrado na Figura 1 como Zonas 1, 2 e 3)

para permitir que os nós que formarão a Rota Secundária só se conectem com zonas à frente da sua

própria zona. As zonas serão formadas tendo como base o número mínimo de três nós que fazem

parte da rota principal, e a cada novo conjunto de três nós da rota principal uma nova zona é

formada. Atualmente os autores estudam a possibilidade de alteração deste padrão de forma

adptativa a quantidade de nós que compõem a rede.

No caso de o mecanismo de monitoração identificar um nó com o nível da bateria abaixo

do limite mínimo, a rota principal também será reconstruída, da mesma maneira, assumindo o nó

monitorado como estando com falha. Por possuir a característica de mobilidade, de tempos em

tempos o mecanismo deverá analisar a consistência da rota. Na presença de falhas inesperadas, o

mecanismo deverá ser capaz de redirecionar a conexão utilizando o mesmo modelo descrito acima.

4. Implementação e resultados

A Tabela 1 demonstra alguns resultados de simulações executadas através do simulador

OMNET++. O nosso protocolo está sendo referênciado na tabela como EARP. Foram evidênciados

5 cenários para cada protocolo (AODV, DSR e EARP), possuindo características distintas,

levantando resultados que foram comparados, demonstrados abaixo na Tabela 1.

Através de uma análise inicial, fica evidente que os protocolos AODV e DSR conseguem

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

19

Page 33: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

eleger suas rotas principais com alguns segundos de vantagem frente a nossa proposta. Contudo,

vale ressaltar o tempo de durabilidade (Funcionamento) da rota principal no nosso modelo. Nos 5

cenários evidenciados, o nosso modelo consegue estabilizar por maior tempo o funcionamento da

rota principal até a presença da primeira falha.

5. Conclusões

Redes Ad Hoc autonômicas fazem parte de um campo relativamente novo no estudo das

redes. As redes Ad Hoc são dinâmicas, e por tal caracteristica precisam ser auto-gerenciáveis,

otimizando a criação de rotas, a recuperação ou o redirecionamento de rotas que possam vir a

apresentar falhas. Entre os diversos desafios apresentados por Redes Móveis Ad Hoc Autonômicas,

está o de gerenciar o uso da carga da bateria dos dispositivos móveis, de forma a otimizar a

comunicação.

Protocolos Tempo de

Simulação Área do Projeto

Tipo de

Mobilidade e

Quant. nós

Tecnologia Tempo de formação

rota principal

Uso da rota principal até a 1ª

falha

C1 AODV 240min 80mX20m Massa – 50 802.11n 0.22s 21min

C1 DSR 240min 80mX20m Massa – 50 802.11n 0.18s 19min

C1 EARP 240min 80mX20m Massa – 50 802.11n 0.29s 62min

C2 AODV 240min 60mX20m Massa – 40 802.11n 0.20s 17min

C2 DSR 240min 60mX20m Massa – 40 802.11n 0.17s 20min

C2 EARP 240min 60mX20m Massa – 40 802.11n 0.24s 67min

C3 AODV 240min 50mX20m Massa – 30 802.11n 0.16s 13min

C3 DSR 240min 50mX20m Massa – 30 802.11n 0.11s 18min

C3 EARP 240min 50mX20m Massa – 30 802.11n 0.20s 44min

C4 AODV 240min 40mX30m Massa – 10 802.11n 0.8s 14min

C4 DSR 240min 40mX30m Massa – 10 802.11n 0.6s 11min

C4 EARP 240min 40mX30m Massa – 10 802.11n 0.10s 34min

C5 AODV 240min 20mX20m Massa – 25 802.11n 0.12s 26min

C5 DSR 240min 20mX20m Massa – 25 802.11n 0.10s 19min

C5 EARP 240min 20mX20m Massa – 25 802.11n 0.14s 39min

* C - Cenário

Tabela 1.Resultados das simulações executadas com o simulador OMNET++

Apresentamos neste artigo a ideia de um protocolo para construção e manutenção de rotas

em MANETs, que leva em consideração a carga da bateria dos dispositivos e a possível presença de

falhas de comunicação entre eles. O objetivo é descobrir rotas que possam se manter estáveis por

um tempo maior, possibilitando a comunicação entre os dispositivos móveis, por um maior período

de tempo, com menor probabilidade de ocorrência de falhas.

Referências

Baccelli, e.; Perkins, c. (2012) “Multi-hop Ad Hoc Wireless Communication” IETF: Internet Draft.

p. 11.

Bakht, H (2010) “Survey of Routing Protocols for Mobile Ad-hoc Network” International Journal

of Information and Communication Technology Research, Manchester, v. 1, n. 6, p. 13.

Bansal, M.; Rajput, R.; Gupta, G (1999) “RFC 2501: Mobile Ad hoc Networking (MANET):

Routing Protocol Performance Issuesand Evaluation Considerations”. IETF: RFC Network

Working Group. p. 12.

Huang, Yangcheng; Handurukande, Sidath; Bhatti, Saleem (2009) “Autonomic MANET Routing

Protocols” Journal of Networks, vol. 4, no. 8, Irlanda.

Misra, P (2012). “Routing Protocols for Ad Hoc Mobile Wireless Networks” Washington

University in St.Louis - Department of Computer Science & Engineering, p. 45.

Qin, L.; Kunz, T (2004) “Survey on mobile ad hoc network routing protocols and cross-layer

design” Carleton University: Systems and Computer Engineering, Technical Report SCE-04-14.

p. 26.

Sankar, R.; et al (2005) “Routing and Mobility Management in Wireless Ad Hoc Networks” In:

Mobile computing handbook. 1ª Ed.: CRC Press, v. 1, Cap. 27, p. 659-683.

Zeinab Movahedi, Mouna Ayari, Rami Langar, and Guy Pujolle (2012) “A Survey of Autonomic

Network Architectures and Evaluation Criteria” IEEE Communications Surveys & Tutorials,

Vol. 14, No. 2, Second Quarter

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

20

Page 34: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Um Protocolo de Roteamento Dinamico para Redes Veiculares

Margarete Sa, Sergio Gorender

1 Laboratorio de Sistemas Distribuıdos (LaSiD)Departamento de Ciencia da Computacao

Universidade Federal da Bahia (UFBA) – Salvador, BA – Brasil

{magsa,gorender}@ufba.br

Resumo. VANETs (Vehicular Ad hoc Networks) sao redes de comunicacaointer–veicular, dinamicas, nas quais os links de comunicacao entre os veıculossao criados e destruıdos a todo o momento. Esta dinamicidade caracterizauma dificuldade para a criacao de rotas para a transmissao de mensagens en-tre os veıculos, uma vez que estas rotas sao quebradas rapidamente pela perdada comunicacao entre os veıculos. Apresentamos um protocolo baseado emheurısticas para a construcao de rotas que se adaptam ao estado do ambientede comunicacao. Este protocolo esta inserido na arquitetura I–CAR, utilizandoa base de conhecimento do ambiente de comunicacao provida pela arquiteturapara a construcao das rotas.

Abstract. VANETs (Vehicular Ad hoc Networks) are inter-vehicular networks,in which the communication links between vehicles are created and destroyeddynamically. Due to this dynamism it is difficult to create stable communicationroutes in VANETs. In this networks, the communication routes are broken downquickly by the loss of communication between vehicles. We present a routingprotocol based on heuristics for the construction of communication routes inVANETs. The routes are dynamically adapted to the current state of the com-munication environment. This protocol is embedded in the I–CAR architecture,and uses the knowledge base provided by the architecture for the constructionof the routes.

1. IntroducaoVANETs (Vehicular Ad hoc Networks) sao redes de comunicacao inter-veicular, consi-deradas uma subclasse das redes MANETs (Mobile Ad hoc Networks – Redes MoveisAd hoc)[Sichitiu and Kihl 2008]. Devido a alta mobilidade dos veıculos, associado aobstaculos fısicos, a comunicacao entre os agentes torna-se vulneravel a perdas de co-nexao e interferencias diversas a comunicacao.

Diversos protocolos para o roteamento em VANETs tem sido desenvolvidos, ba-seados em diferentes aspectos da rede [Jagadeesh et al. 2011]. Alguns protocolos sebaseiam em caracterısticas fısicas do ambiente de comunicacao, como a localizacaogeografica dos veıculos, obtida por um GPS (Global Positioning System – Sistemade Posicionamento Global), a distancia entre os agente ou a existencia de obstaculos,identificados em um mapa. Tambem informacoes sobre o trafego podem ser utiliza-das por alguns protocolos. Outros utilizam informacoes obtidas pela monitoracao dacomunicacao, construindo uma topologia da rede, ou dividindo os veıculos em zonas

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

21

Page 35: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

de comunicacao, por exemplo. Muitos trabalhos estao sendo realizados para desen-volver protocolos de roteamento eficientes na tomada de decisao sobre qual o no ca-paz de encaminhar mensagens. Redes auto-gerenciaveis, que se adaptam dinamica-mente a alteracoes no ambiente de comunicacao sao adequadas para redes veiculares[Jagadeesh et al. 2011, Legendre et al. 2005], monitorando as condicoes da rede e otimi-zando e reconfigurando sua comunicacao, assim como provendo a recuperacao de falhas[Dobson et al. 2006].

Apresentamos uma estrategia para um protocolo de roteamento para redes vei-culares. Este protocolo foi desenvolvido para a arquitetura I-CAR (Intelligent Commu-nication Mechanism for Multi-Agent Vehicular Applications) [Sa and Gorender 2012b,Sa and Gorender 2013], a qual e uma arquitetura autonomica para redes veiculares. Aarquitetura prove servicos de comunicacao entre os agentes veiculares, a partir da analisedo estado de comunicacao da rede, percebido por cada agente a partir de um servico demonitoracao [Sa and Gorender 2012a].

Na proxima secao teremos uma breve apresentacao sobre as principais estrategiasde roteamento encontradas na literatura. Na secao 3 apresentaremos a descricao da es-trategia proposta. Na secao 4 teremos as consideracoes finais.

2. Trabalhos RelacionadosEm VANETs o padrao de encaminhamento de mensagens em multiplos saltos e muito uti-lizado, principalmente, para aplicacoes nao tolerantes a atrasos [Sichitiu and Kihl 2008].Muitos destes trabalhos baseiam-se em abordagens como [Jagadeesh et al. 2011,Legendre et al. 2005]: inundacao por difusao – encaminham uma mensagem para to-dos os veıculos retransmitindo uma copia de cada mensagem recebida; regiao geograficaalvo – possuem um alvo geografico conhecido e apenas os nos nestes alvos recebem asinformacoes; localizacao dos nos – realizam o encaminhamento de mensagens usandoinformacoes sobre a posicao geografica para selecionar o proximo no; em grupo de nos –por meio de alguma estrategia de consenso, um no lıder e eleito e o encaminhamento dospacotes e feito por ele para todos os nos do grupo; topologia da rede – sao aqueles queprecisam descobrir e manter as rotas em tabelas antes de enviar os dados; informacoes dotrafego das vias – sao aqueles que precisam detectar e manter dados sobre as condicoesdo trafego de veıculos em uma via.

Neste trabalho propomos uma estrategia de encaminhamento de mensagens ba-seada em caminhos de multiplos saltos. Os caminhos sao construıdos por meio de re-gras que verificam a base de conhecimento do agente do I-CAR envolvido na trans-missao. Esta base de conhecimento possui informacoes sobre a localizacao e o estadoda comunicacao dos agentes que sao mantidas pelo sistema de monitoramento do I-CAR[Sa and Gorender 2012a]. Neste sentido, as regras sao construıdas usando algumas es-trategias das abordagens descritas nesta secao com o objetivo de aumentar as garantiasnos servicos de transmissao de dados fim-a-fim, inicialmente, do I-CAR, posteriormente,comparar o desempenho com outras estrategias utilizadas.

3. Servico de transmissao de mensagensAssumimos uma rede veicular, formada por agentes veiculares que interagem por meiode comunicacao sem fio. A comunicacao entre os agentes e nao confiavel, sendo que a

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

22

Page 36: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

comunicacao destes pode falhar por colapso (crash). Todos os agentes veiculares execu-tam o modulo do I–CAR, o qual prove ao agente servicos de comunicacao. A rede nao eparticionada.

A base de conhecimento do I–CAR armazena informacoes coletadas do ambientede comunicacao, atraves de um servico de monitoracao. Cada agente possui informacoessobre seus vizinhos, agentes comunicaveis, tempos de comunicacao estimados, entre ou-tras [Sa and Gorender 2012b]. O I–CAR define o estado de comunicacao entre dois agen-tes como comunicavel quando um agente conseguiu transmitir e receber mensagens, emum perıodo recente, de um outro agente. Agentes sao vizinhos quando estao no alcancede seus sinais de comunicacao.

3.1. Funcionamento Geral do protocolo de roteamentoDurante a transmissao de uma mensagem ate o agente destino, assumimos que s e o agentede origem da mensagem e d o agente de destino da mensagem. Tambem consideramos quef e um agente de encaminhamento da mensagem e l e o agente local, que esta executandoo protocolo em um dado momento. Assim, durante a transmissao de uma mensagem deum agente s para o agente d, os agentes envolvidos na transmissao realizam os seguintespassos:

• Enquanto a mensagem nao chegar ao agente destino, o tempo de vida da mensa-gem nao for alcancado e existir um proximo agente escolhido:

– O agente que esta com a mensagem para transmissao verifica se existeuma rota de comunicacao valida ja definida, para o agente destino d.Caso esta rota nao exista, o agente executa as heurısticas para construcaode rotas. Se existe um proximo agente valido, a mensagem e transmitidapara este proximo agente. A mensagem leva informacoes sobre a rotaconstruıda ou modificada.

Cada agente em uma rota armazena uma identificacao da rota, agentes de origeme destino, tempo de validade e proximo agente. Assim, a partir da segunda mensagem,uma rota valida podera estar disponıvel, desde que o agente correspondente verifique econsidere que a rota continua valida.

Heurısticas para construcao de rotas As heurısticas a seguir sao utilizadas por cadaagente na construcao de uma rota, para selecionar um proximo agente para esta rota.

• R1 – Listar os agentes que sao vizinhos tanto para o agente l quanto para o d.• R2 – Caso a regra R1 nao seja aplicavel, liste os agentes que sao comunicaveis

para d e vizinhos de l.• R3 – Caso a regra R2 nao seja possıvel, liste os agentes que sao vizinhos de l.

A lista resultante, no caso das regras R1 e R2, e ordenada pelo tempo decomunicacao de cada agente listado em relacao ao d, sendo selecionado o agente commenor valor. Vale ressaltar que, o tempo de comunicacao corresponde ao atraso dacomunicacao entre dois agentes o qual e calculado, estimado e mantido pelo I–CAR.

Caso tenha sido aplicada a regra R3, assumimos que nao ha no agente informacaosuficiente para transmitir a mensagem ate o destino. Neste caso a rota (ou o restante darota) sera construıda por um processo sob demanda, usando flooding, similar ao protocoloem [Korkmaz et al. 2004].

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

23

Page 37: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Verificacao de uma rota valida Cada agente de encaminhamento ao receber uma men-sagem, verifica se o proximo agente nesta rota se mantem como seu agente vizinho, e setambem se mantem comunicavel com o agente destino. Caso estas condicoes nao sejamsatisfeitas, as regras do paragrafo anterior podem ser novamente executadas, para adaptara rota a nova situacao da rede.

4. Consideracoes FinaisO protocolo de roteamento aqui apresentado esta sendo implementado no simulador derede OmNet++ para validacao. Esta sendo inserido na implementacao do prototipo daarquitetura I–CAR, tambem feita neste mesmo simulador.

Acreditamos que o uso das heurısticas, somado ao fato de a rota ser construıdadinamicamente, durante o envio de uma mensagem, caracterize uma otimizacao do pro-cesso de construcao de rotas. Considerando a dinamicidade deste ambiente, nao existemgarantias em nenhuma situacao, de que uma dada rota de comunicacao seja a mais rapida,ou a mais segura. Entretanto, mantendo uma monitoracao constante do ambiente, e efetu-ando uma, tambem constante, verificacao das rotas utilizadas, e possıvel adaptar as rotasde comunicacao, as alteracoes que acontecem de forma veloz e constante, no ambientedas redes veiculares.

ReferenciasDobson, S., Denazis, S., Fernandez, A., Gaıti, D., Gelenbe, E., Massacci, F., Nixon, P.,

Saffre, F., Schmidt, N., and Zambonelli, F. (2006). A survey of autonomic communica-tions. ACM Transactions on Autonomous and Adaptive Systems (TAAS), 1(2):223–259.

Jagadeesh, K., Siva Sathya, S., Govinda Laxmi, B., and Ramesh, B. (2011). A survey onrouting protocols and its issues in vanet. International Journal of Computer Applicati-ons, 28(4):38–44.

Korkmaz, G., Ekici, E., Ozguner, F., and Ozguner, U. (2004). Urban multi-hop broadcastprotocol for inter-vehicle communication systems. In Proceedings of the 1st ACMinternational workshop on Vehicular ad hoc networks, pages 76–85. ACM.

Legendre, F., de Amorim, M. D., and Fdida, S. (2005). Some requirements for autono-mic routing in self-organizing networks. In Autonomic Communication, pages 13–24.Springer.

Sa, M. and Gorender, S. (2012a). Monitoracao inteligente de estados de comunicacao paraaplicacoes sobre redes veiculares. In IX Encontro Nacional de Inteligencia Artificial,ENIA’2012, Parana, Brasil.

Sa, M. and Gorender, S. (2012b). Um servico de comunicacao baseado em regras paraveıculos autonomos em redes moveis. In VII Congresso Nacional de EngenhariaMecanica, Maranhao, Brasil.

Sa, M. and Gorender, S. (2013). Uma arquitetura de rede para servicos de comunicacaoautonomicos. In III Workshop em Sistemas Distribuıdos Autonomo (WoSiDA) – 31oSimposio Brasileiro de Redes de Computadores e Sistemas Distribuıdos.

Sichitiu, M. and Kihl, M. (2008). Inter-vehicle communication systems: a survey. Com-munications Surveys & Tutorials, IEEE, 10(2):88–105.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

24

Page 38: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Utilizacao de Multiplos Veıculos Aereos Nao Tripulados para oEstabelecimento de Comunicacao em Redes de Sensores Sem

Fio Particionadas

Tales Heimfarth1, Joao Paulo de Araujo1,Alexandre Henrique Teixeira Dias1, Julio Cezar Santos Diniz1

1Departamento de Ciencia da Computacao – Universidade Federal de Lavras (UFLA)

[email protected], [email protected]@computacao.ufla.br, [email protected]

Resumo. O presente trabalho apresenta uma proposta para o estabelecimentode comunicacao em redes particionadas por meio da utilizacao de um conjuntode veıculos aereos nao tripulados (VANTs). Cada particao elege um clusterhead que recebe pacotes enderecados para particoes distintas. Os cluster headssao periodicamente visitados por um VANT que transporta os pacotes fisica-mente (message ferrying) ate o cluster head do segmento destino. A area darede e dividida em regioes e cada VANT e responsavel pelas particoes dentro dasua regiao. A troca de pacotes pertencentes a regioes distintas e realizada porum encontro periodico dos VANTs. Simulacoes demonstraram que a utilizacaode dois VANTs reduziu a latencia media de comunicacao e aumentou a taxa deentrega quando comparado a cenarios com um unico veıculo aereo.

1. IntroducaoRedes de Sensores Sem Fio (RSSFs) podem ser empregadas em diversas situacoes como,por exemplo, monitoramento de florestas ou gerenciamento de desastres.

Em RSSFs, o ambiente apresenta condicoes adversas que podem levar a umnumero de falhas, isolando grupos de nos sensores. Nos pertencentes a diferentesparticoes da rede sao incapazes de se comunicarem, reduzindo drasticamente a qualidadedo servico.

Diferentes abordagens foram propostas para tratar desse problema de desco-nexoes em RSSFs. O trabalho apresentado em [Li and Hou 2005] trata do pro-blema da incorporacao de alguns poucos nos adicionais dentro do limite da rede deforma a conectar uma rede inicialmente particionada. O uso de sink moveis e abor-dado por [Al-Turjman et al. 2011]. [Hunjet and Hui 2011] apresenta uma proposta parao calculo de posicionamento de Veıculos Aereos Nao Tripulados (VANTs) como retrans-missores, de forma a restaurar a conectividade da rede.

Em [Heimfarth and de Araujo 2014] foi proposta a utilizacao de nos moveis pararestaurar a conectividade de uma RSSF particionada, com segmentos distantes entre si.Para isso, VANTs transportam pacotes entre as diferentes particoes. O trabalho baseia-seno modelo de message ferrying [Zhao et al. 2004]. Nesse modelo, nos moveis sao usadospara transportar fisicamente os pacotes de uma particao para outra. Na proposta, somenteum VANT e utilizado para cobrir a desconexao de uma rede vasta, resultando em uma altataxa de perdas. O presente trabalho e uma extensao da proposta original com o objetivo

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

25

Page 39: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

de permitir a utilizacao de mais VANTs em um mesmo campo de operacao e formar umaRede Tolerante a Atrasos (DTN). Com o aumento do numero de VANTs pode-se aumentara taxa de entrega de pacotes e reduzir a latencia.

2. Definicao do ProblemaO trabalho trata do restabelecimento da conexao em uma RSSF formada por diversasparticoes desconexas utilizando multiplos VANTs.

A rede e modelada como um grafo G = (V, A), onde V e um conjunto de nos euma aresta {u, v} ∈ A, se e somente se ha um link de comunicacao entre u ∈ V e v ∈ V .

Ha n particoes na rede, contidas no conjunto P = {p1, p2, ..., pn}. Umaparticao e um subconjunto de vertices, ou seja, pi =

{v ∈ V | ∀u ∈ pi com

u 6= v, ∃L{u,v}}

. L{u,v} e um caminho conexo entre u e v, definido como L{u,v} ={{v, x1}, {x1, x2}, ..., {xg−1, xg}, {xg, u}

}, para g ∈ N e L{u,v} ⊂ A. Uma propriedade

inerente a rede e dada por: ∀u,∀v, com u ∈ pi, v ∈ pj e i 6= j, @L{u,v}. Essa propriedadeexpressa a desconexao entre as particoes.

O estabelecimento da conexao entre nos de particoes distintas e solucionado em[Heimfarth and de Araujo 2014] utilizando um VANT e um modelo de movimento base-ado na versao euclideana do problema do caixeiro viajante (ETSP). O presente trabalho,diferentemente da abordagem inicial, utiliza m VANTs, criando m sub-grafos, doravantedenominados regioes, contidos em R = {r1, r2, ..., rm}. E, cada regiao contem um con-junto exclusivo de particoes, ou seja, ri = {p ∈ P | ∀rj ∈ R, com i 6= j, ri ∩ rj = ∅}.

Como cada VANT sobrevoa uma unica regiao, este trabalho tambem aborda acomunicacao entre os m VANTs, de forma a garantir a comunicacao entre particoes emregioes distintas.

3. Restabelecimento de Conexao com Multiplos VANTsInicialmente, em uma rede desconexa, cada particao elege um no cluster head que tem amissao de interagir com o VANT. Esse no especial tem a responsabilidade de armazenaros pacotes cujos destinos estao em outras particoes.

Dentro de uma mesma particao, os pacotes sao roteados por meio de um proto-colo de roteamento geografico. Entretanto, quando nao e possıvel enviar o pacote para odestino, devido a inexistencia de caminho conexo, o pacote e encaminhado para o clusterhead, utilizando a mesma estrategia de roteamento. No cluster head, o pacote pode serarmazenado ou descartado, dependendo da capacidade de seu buffer.

A comunicacao entre particoes e realizada pelo VANT, que periodicamente so-brevoa cada cluster head, entregando os pacotes que tem como destino aquela particao ecoletando os que se destinam a outras. A capacidade de coleta do VANT e limitada pelotamanho de seu buffer.

Diferindo da proposta inicial, as particoes sao divididas igualmente em m regioes,uma para cada VANT. A comunicacao entre as regioes e realizada por meio do encon-tro dos VANTs em um ponto fixo no centro da area da rede. A divisao das particoesem regioes e feita de forma que o somatorio total do ETSP calculado em cada regiao(incluindo o ponto central) seja o menor possıvel.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

26

Page 40: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

A Figura 1 ilustra um exemplo de rede desconexa, composta por 6 particoes.Como forma de tratar a desconexao, sao utilizados 2 VANTs e as regioes foram definidasrespeitando o criterio supracitado.

Partição Região Ponto de encontro entre os VANTs

Trajeto do VANT 2Trajeto do VANT 1

Figura 1. Modelo de movimento para dois VANTs

4. Resultados e Discussao

Nesta secao, os resultados obtidos a partir de simulacoes sao apresentados para diferentescenarios, como forma de avaliar o metodo proposto. As simulacoes foram realizadasutilizando o simulador GrubiX. O raio de alcance dos radios e de 50 metros e a area desimulacao possui 9km2. A rede e particionada em 6 e a velocidade dos VANTs e 60km

h.

Os cenarios simulados variam em quantidade de VANTs, tamanho de buffer paraVANTs e cluster heads e a quantidade de fluxos de pacotes transmitidos. Cada cenariofoi simulado 50 vezes.

As Figuras 2 e 3 contem os resultados obtidos para 10 e 20 fluxos, respectiva-mente, sendo que cada fluxo possui 100 pacotes, transmitidos em uma vazao de 0,1 pacotepor segundo. Em situacoes onde o trafego e moderado ha pouca variacao na taxa mediade entrega, fato justificado pela capacidade de um unico VANT poder percorrer todas asparticoes em um tempo onde perdas nao ocorrem. A latencia media com a utilizacao de2 VANTs cai por dois motivos: um unico VANT nao e suficiente para transportar de umaunica vez todos os pacotes contidos nos cluster heads e tambem o percurso realizado porcada VANT e menor (contido na sua regiao).

0

200

400

600

800

1,000

1,200

100−200 100−400

me

ro d

e P

aco

tes E

ntr

eg

ue

s

Tamanho do Buffer: Cluster head − VANT

1 VANT

2 VANTs

0

100

200

300

400

500

100−200 100−400

La

tên

cia

(s)

Tamanho do Buffer: Cluster head − VANT

1 VANT

2 VANTs

Figura 2. Taxa de entrega e latencia para cenario com 10 fluxos de pacotes

Ja a Figura 3 exibe os resultados para um cenario onde a rede esta mais saturada,devido aos 20 fluxos presentes. Nesse caso, a utilizacao de 2 VANTs traz ganho na taxade entrega de pacotes em ambas as combinacoes de tamanhos de buffers, devido a menorrota realizada pelos VANTs e o fato de um unico VANT nao ser capaz de coletar todos ospacotes de uma vez sem gerar perdas e aumentar a latencia.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

27

Page 41: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

0

500

1,000

1,500

2,000

100−200 100−400

me

ro d

e P

aco

tes E

ntr

eg

ue

s

Tamanho do Buffer: Cluster head − VANT

1 VANT

2 VANTs

0

100

200

300

400

500

600

100−200 100−400

La

tên

cia

(s)

Tamanho do Buffer: Cluster head − VANT

1 VANT

2 VANTs

Figura 3. Taxa de entrega e latencia para cenario com 20 fluxos de pacotes

5. ConclusaoO presente artigo trouxe uma extensao da proposta apresentada em[Heimfarth and de Araujo 2014] para o estabelecimento, por meio de message fer-rying realizado por VANTs, de comunicacao em redes particionadas. Na correnteabordagem, a area da rede e dividida em regioes e cada VANT e responsavel porreceber os pacotes das particoes pertencentes a sua regiao. Um ponto central na area eestabelecido para o encontro dos VANTs e troca de pacotes entre regioes distintas.

Simulacoes demonstraram que, para redes com maior trafego, a utilizacao de doisVANTs reduziu a latencia media de comunicacao e aumentou a taxa de entrega.

Como trabalho futuro sera feito um estudo do comportamento do sistema paracenarios com trafego mais localizado e regioes maiores. Alem disso, planeja-se autilizacao de particoes comuns entre diferentes regioes para serem utilizadas como pontode troca de pacotes entre VANTs.

6. AgradecimentosOs autores agradecem a FAPEMIG, CNPq e CAPES pelo apoio e o pelo recurso financeiropara o desenvolvimento do presente trabalho.

ReferenciasAl-Turjman, F., Hassanein, H., and Ibnkahla, M. (2011). Optimized wireless sensor

network federation in environmental applications. In Global Telecommunications Con-ference (GLOBECOM 2011), 2011 IEEE, pages 1–5.

Heimfarth, T. and de Araujo, J. P. (2014). Using unmanned aerial vehicle to connectdisjoint segments of wireless sensor network. In The 28th IEEE International Confe-rence on Advanced Information Networking and Applications (AINA-2014), Victoria,Canada.

Hunjet, R. and Hui, P. (2011). Maintaining connectivity in mobile adhoc networks usingdistributed optimisation. In Communications and Information Systems Conference(MilCIS), 2011 Military, pages 1–6.

Li, N. and Hou, J. (2005). Improving connectivity of wireless ad hoc networks. InMobile and Ubiquitous Systems: Networking and Services, 2005. MobiQuitous 2005.The Second Annual International Conference on, pages 314–324.

Zhao, W., Ammar, M., and Zegura, E. (2004). A message ferrying approach for datadelivery in sparse mobile ad hoc networks. In Proceedings of the 5th ACM interna-tional symposium on Mobile ad hoc networking and computing, MobiHoc ’04, pages187–198, New York, NY, USA. ACM.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

28

Page 42: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

32º Simpósio Brasileiro de Redes de Computadores e

Sistemas Distribuídos

Florianópolis - SC

4º Workshop de Sistemas

Distribuídos Autonômicos -

WoSiDA 2014

Sessão Técnica 3

Modelos

Page 43: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão
Page 44: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

A Systematic Model-Based Approach for Feedback ControlTrade-Off Evaluation in Autonomic Systems

Sandro S. Andrade1,2, Raimundo Jose de A. Macedo1

1Distributed Systems Laboratory (LaSiD) - Department of Computer ScienceFederal University of Bahia. Salvador-Ba. Brazil

2GSORT Distributed Systems GroupFederal Institute of Education, Science, and Technology of Bahia. Salvador-Ba. Brazil

{sandros,macedo}@ufba.br

Abstract. Nearly thirteen years have elapsed in the autonomic systems researchfield and approaches with different underpinnings have been proposed over thatperiod. Of these, the use of feedback control theory and architecture-centricmechanisms has enabled the early reasoning of self-* properties and the devel-opment of reusable solutions. Nevertheless, becoming familiar with the vast ar-ray of control techniques available and accurately evaluating the involved trade-offs are still challenging tasks. In this paper, we discuss how meta-modeling canbe used to capture distilled design knowledge in the autonomic systems domain.Our approach relies on the use of multi-objective optimization to elicit trade-offarchitectures in an unbiased and well-informed way. Such mechanism has beenused to evaluate different control strategies in MapReduce architectures as abasis for controlling the performance of Hadoop-based distributed jobs.

1. IntroductionA number of approaches for endowing systems with autonomic and self-management ca-pabilities have been proposed over the last years, usually relying on technologies suchas dynamic architectures, graph grammars, intelligent agents, nature-/bio-inspired mech-anisms, just to mention a few [Lemos 2013]. Of these, control-theoretical approaches[Hellerstein et al. 2004] have proven to be effective in enabling the early reasoning ofself-* properties and addressing highly dynamic and uncertain environments.

Having once decided for a control-theoretical approach, architects still struggle tobecome familiar with the large design/solution space available [Patikirikorala et al. 2012].Decisions on the use of a specific control strategy, filtering mechanism, tuning parametersvalues, and inter-loop arrangement should be taken in an unbiased and well-informedway since they extensively influence the resulting quality attributes. Such attributes arecommonly conflicting and the cause-effect mapping between architectural decisions andquality attributes is usually not straightforward.

Current software engineering research towards autonomic systems focus mainlyon the proposal of modeling frameworks, reference architectures, and architectural pat-terns catalogs. Whereas such approaches indeed contribute to the capture and documenta-tion of autonomic systems design expertize, the lack of systematically structured knowl-edge representations and accurate mechanisms for eliciting and deciding about trade-offsmake it harder a wider and easier adoption of such capabilities in the industry.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

31

Page 45: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Create annotatedmanaged element model

Validate SA:DuSE designdimension instances

Optimizearchitecture

Select final candidatefrom Pareto-front

Sensors/Actuators Capabilities+

System DynamicsInitial system model

(non-autonomic)

OptimizationParameters

SA:DuSE(autonomic systems-specific

DuSE instance)App-specific design

space instancePareto-optimal

candidate architectures

repeat as necessary

Final autonomicmanager architecture

Figure 1. SA:DuSE design process overview

In this paper, we present a model-based approach for capturing autonomic systemsdesign knowledge which, in association with multi-objective optimization mechanisms,can help architects in the tasks of choosing a particular near-optimal feedback controlarchitecture and getting insights about the involved quality attribute trade-offs.

We have been evaluating our design approach in some autonomic computing sce-narios, including self-adaptive web servers, virtualization environments, and MapReducedistributed architectures. Case studies results and outcomes from controlled experimentsshow that our approach can help architects to design more effective architectures and findout subtle solutions for particular autonomic computing problems.

2. The Proposed ApproachAs depicted in Figure 1, our approach aims at supporting the automated design and anal-ysis of feedback control loops (autonomic managers) by enabling the optimization of aninitial UML model describing the system to be controlled (managed element). Such in-put model uses specific UML stereotypes to indicate any controllable and monitorableinterfaces (e.g., for adjusting a buffer size and measuring response time, respectively)comprising the original system.

In order to support the systematic capture of multiple design alternatives for feed-back control and their impacts on quality attributes, we have designed a domain-specificmodeling language named DuSE. DuSE provides the basic constructs for specifying ar-chitecture design spaces in terms of design dimensions (degrees of freedoms), their as-sociated variation points (describing how new architectural elements are configured andadded to the initial system so that a particular control strategy is achieved), and qualitymetrics (enabling the evaluation of resulting candidate architectures).

DuSE can be specialized in distinct design space domains. As such, SA:DuSEis such an instantiation of DuSE aimed at capturing the most prevalent design dimen-sions, variation points and quality metrics in the autonomic systems domain. Currently,SA:DuSE supports the automated design of autonomic managers regarding six differ-ent control laws (P, PI, PID, static state feedback, precompensated static state feedback,and dynamic state feedback), seven empirical tunning approaches (four Chien-Hrones-Reswick variations, Ziegler-Nichols, Cohen-Coon, and LQR), three mechanisms for con-trol adaptation (gain-scheduling, model-reference, and model-identification), and threedifferent control loops deployment arrangements (global, local control + shared refer-ence, and local control + shared error). In addition, four quality metrics related to controloverhead, average settling time, average maximum overshoot, and control robustness arealso available.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

32

Page 46: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Designing a particular feedback control strategy requires to decide on the adoptionof a specific variation point for each one of the aforementioned design dimensions (controllaw, tunning approach, control adaptation, and control loop deployment). Some combi-nations – eventually subtle ones – may exhibit outstanding quality values, while othersmay reflect poor design or invalid candidate architectures. DuSE provides constructs forspecifying validation rules, so that invalid architectures are automatically discarded.

It is worth mentioning that such decisions should be taken for each managed el-ement (controllable component) represented in the initial system. As a consequence, thesearch space (possible control architectures) rapidly becomes huge as the complexity ofthe initial model increases. For instance, models with three controllable components yield54,010,152 candidate architectures. That figure increases to 20,415,837,000 for inputswith four controllable components.

Such scenario – in association with the inherent difficulties to cope with con-flicting quality attributes and to elicit solutions that explicitly characterize the in-volved trade-offs – motivated us to adopt multi-objective optimization techniques[Deb and Kalyanmoy 2001] for better supporting the architect’s decisions. Over the pastyears, search-based approaches have been successfully used to solve many problems inSoftware Engineering and, in particular, in automated software design [RaIha 2010]. Evo-lutionary multi-objective optimization have been proven effective in finding near-optimaland uniformly distributed sets of non-dominated solutions (Pareto-front). All these solu-tions represent optimal architectures, differing only in which quality metric they favor.

Our approach has been fully implemented in a tool named DuSE-MT1 – a cross-platform application developed in C++/Qt which provides a fully integrated environmentfor meta-modeling, definition of new domain-specific design spaces, and multi-objectivearchitecture optimization. We have developed our own meta-modeling stack implemen-tation (QtModeling2), currently supporting the MOF, UML, and DuSE languages. As forthe optimization step, the NSGA-II evolutionary multi-objective optimization algorithm[Deb and Kalyanmoy 2001] was also implemented as part of DuSE-MT. Further informa-tion about our approach can be found in [Andrade and Macedo 2013].

3. Evaluation

SA:DuSE has been used to support the automated design of effective autonomic managersfor MapReduce architectures. The controller aims at regulating a job’s response time byadjusting the number of concurrent map tasks that run in each cluster’s data node. Asecondary control loop operates at a slower pace, regulating the provision of new datanodes whenever the inner control loop is unable to delivery the specified response time.

The resulting Pareto-front when optimizing a model which describes such auto-nomic scenario include around 4-10 (because of algorithm randomness) different architec-tures, mostly highlighting the conflict between settling time and maximum overshoot asthe most noticeable trade-off. We have performed experimental studies by comparing theSA:DuSE predicted quality attribute values with measurements from a real cluster formedby 21 machines with 4Gb of RAM, 2.6GHz quad-core CPU, running Hadoop 2.3 and the

1http://duse.sf.net2http://qt-project.org/wiki/QtModeling

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

33

Page 47: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

ArchLinux operating system. The results indicate that our approach yields autonomicmanager structures which, in the most of optimal architectures, induce quality attributeswith a ±2% and ±3% errors in predicted settling time and overshoot, respectively.

Potential improvements in the quality of resulting autonomic manager architec-tures, design process productiveness, and effectiveness in conveying distilled designknowledge have been investigated in a controlled experiment. The experiment goal wasto compare our search-based design approach and an architecture design method based onthe use of architectural styles catalogs. The subjects of the experiment were 22 graduatestudents, conducting an autonomic system design task as a block subject-object quasi-experiment. Results show, with a significance level of 0.05, that there are improvementsin autonomic manager quality and effectiveness in conveying design knowledge whenusing our approach. We found no evidence for improvements in process productiveness.

4. ConclusionIn this paper, we presented a search-based approach for automated design and analysisof autonomic managers architectures. Our approach differs from previous related workin that we capture distilled design knowledge in a systematic machine-consumable way,making it amenable to optimization and well-informed eliciting of trade-off solutions.

Our approach assumes that an initial quality-annotated model of the managed el-ement is available and that a particular DuSE instance (domain-specific design space)has already been created by the domain expert. We also cannot guarantee real Pareto-optimality since meta-heuristics are used. On the other hand, the NSGA-II algorithm iswell-known for its effectiveness in finding out near-optimal solutions, making the result-ing candidates still useful architectures.

ReferencesAndrade, S. S. and Macedo, R. J. d. A. (2013). A search-based approach for architectural

design of feedback control concerns in self-adaptive systems. In Proceedings of the 7thIEEE International Conference on Self-Adaptive and Self-Organizing Systems, SASO2013, Philadelphia, PA, USA. IEEE.

Deb, K. and Kalyanmoy, D. (2001). Multi-Objective Optimization Using EvolutionaryAlgorithms. John Wiley & Sons, Inc., New York, NY, USA.

Hellerstein, J. L., Diao, Y., Parekh, S., and Tilbury, D. M. (2004). Feedback Control ofComputing Systems. John Wiley & Sons.

Lemos, R. (2013). Software engineering for self-adaptive systems: A second researchroadmap. In Lemos, R., Giese, H., Muller, H., and Shaw, M., editors, Software En-gineering for Self-Adaptive Systems II, volume 7475 of Lecture Notes in ComputerScience, pages 1–32. Springer Berlin Heidelberg.

Patikirikorala, T., Colman, A., Han, J., and Wang, L. (2012). A systematic survey onthe design of self-adaptive software systems using control engineering approaches. InSoftware Engineering for Adaptive and Self-Managing Systems (SEAMS), 2012 ICSEWorkshop on, pages 33 –42.

RaIha, O. (2010). A survey on search-based software design. Computer Science Review,4(4):203–249.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

34

Page 48: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Revisitando uma Infraestrutura Autonômica: Uma Perspectiva Baseada em uma Rede Definida por Software

Marcelo Santos1, Patricia Endo1, Moisés Bezerra1, Glauco Gonçalves1, Djamel Sadok1, Stênio Fernandes1

1Grupo de Pesquisa em Redes de Computadores e Telecomunicações (GPRT) Universidade Federal de Pernambuco (UFPE)

Recife – PE - Brasil

{marcelo, patricia, moises, glauco, jamel, stenio}@gprt.ufpe.br

Abstract. Autonomic Networks and Software Defined Networks (SDN) have a great potential to work together, due to the management power provided by SDN protocols and technologies. This paper has as contribution an autonomic infrastructure proposal based on SDN. The SDN and autonomic network solution is done in a practical way through the use of a FloodLight controller, creating a flexible infrastructure to several scenarios. Taking into consideration the proposed infrastructure, different strategies can be implemented and analyzed in real physical networks, by using well-defined protocols and the power of flow handling provide by a SDN.

Resumo. Redes autonômicas e redes definidas por software (SDN) possuem um grande potencial para trabalhar de forma conjunta, dado o poder de gerenciamento fornecido pelos protocolos e tecnologias utilizadas em SDN. Este artigo tem como contribuição uma proposta de infraestrutura autonômica, baseada em SDN. A junção de SDN e redes autonômicas é alcançada de forma prática através da utilização do controlador FloodLight, criando um ambiente flexível para diversos cenários. Considerando a infraestrutura proposta, diferentes estratégias podem ser facilmente implementadas e avaliadas em redes físicas reais, utilizando-se de protocolos bem definidos e do poder de manipulação dos fluxos fornecida por uma SDN.

1. Introdução

Enquanto a arquitetura da Internet é um sucesso consolidado para seus usuários finais, especialmente em relação a diversidade de aplicações e serviços disponíveis atualmente; para a indústria e operadoras de rede, ela se tornou um sistema complexo, caro e pouco flexível. Software Defined Networking (SDN) é um novo paradigma que promete fornecer a capacidade de amplo controle sobre fluxos de tráfego da rede, com o objetivo principal de simplificá-la e de torná-la mais barata e flexível. Este controle é alcançado através da separação dos planos de controle e de encaminhamento. Desta forma, o tráfego pode ser explicitamente roteado e inspecionado por elementos de rede de controle com segurança e com políticas de gerenciamento eficientes.

As redes autonômicas têm se tornado um importante campo de pesquisa para a Internet do Futuro, utilizando-se de propriedades como auto-cura, auto-configuração, auto-proteção, auto-otimização e auto-organização [IBM 2005], visando diminuir a complexidade do controle da rede e consequentemente facilitar seu gerenciamento. Em

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

35

Page 49: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

outras palavras, a principal característica das redes autonômicas é a minimização do grau de interferência humana, deixando que o próprio elemento autônomo tome a decisão a partir de uma base de conhecimento. Embora a ideia principal por trás de uma SDN seja a centralização do plano de controle, é possível utilizar a interface de gerenciamento oferecida e aplicá-la em uma estrutura de rede autonômica. SDN oferece um conjunto de protocolos e tecnologias bem definidas que permite que aplicações autonômicas sejam executadas sobre uma rede de forma prática e fácil, saindo de um campo abstrato e aproximando de um cenário cada vez mais real de redes. Esse artigo tem como objetivo principal discutir os desafios de construir uma infraestrutura autonômica baseada em SDN utilizando o controlador Floodlight1 e o switch virtual OpenVSwitch2, ambos compatíveis com o protocolo OpenFlow3. A infraestrutura proposta neste artigo possibilita testes de soluções autonômicas já conhecidas, além de levantar discussões de como empregar novas heurísticas autonômicas através deste novo cenário, explorando também suas limitações. O restante do artigo está estruturado da seguinte forma: a Seção 2 apresenta uma breve introdução sobre SDN; a Seção 3 descreve a infraestrutura composta por SDN e redes autonômicas; e por fim, as conclusões e trabalhos futuros são delineados na Seção 4.

2. Software Defined Networking (SDN) Software Defined Networks tem atraído significante atenção tanto da academia quanto da indústria. Fabricantes e provedores de serviços formaram a Open Networking Foundation (ONF) [Open Networking Foundation 2014], enquanto a academia tem trabalhado em grupos de pesquisa pelo IETF e IRTF buscando definir padrões e novos desafios em SDN [SDNRG 2014]. Uma análise da arquitetura atual dos switches permite observar que se trata de um modelo formado basicamente por duas camadas bem distintas: o software de controle (control plane) e o hardware dedicado ao encaminhamento de pacotes (data plane). SDN tem como base a dissociação dos planos de controle e de dados, visando tornar os switches mais baratos, rápidos e flexíveis. Em vez de diversas políticas de gerenciamento e execução de protocolos em uma convolução de dispositivos distribuídos, os elementos da rede (switches e roteadores) são simplificados para cumprir bem unicamente a tarefa de encaminhar os pacotes de acordo com uma tabela de repasse, enquanto os controladores da rede tomam a decisão de como criar esta tabela em cada dispositivo da rede [Mendonça 2014]. O protocolo OpenFlow tem sido utilizado como padrão para permitir a comunicação entre switches e controlador. Cada switch possui uma tabela de fluxos utilizada para o repasse de pacotes. Cada entradas da tabela é chamada de fluxo e determina como um fluxo de pacotes será processado e encaminhado. Um fluxo na tabela é formado pelos seguintes conjuntos de campos: (1) campos de identificação; (2) contadores, usados para coletar estatísticas de um fluxo; e (3) um conjunto de instruções, ou ações, a ser aplicado sobre uma correspondência [Mendonça 2014].

1 http://www.projectfloodlight.org/floodlight 2 http://openvswitch.org 3 https://www.opennetworking.org/sdn-resources/onf-specifications/openflow

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

36

Page 50: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

3. Uma infraestrutura autonômica baseada em SDN Em [IBM 2005], os autores definem que a Computação Autonômica é um ambiente computacional com habilidade de se gerenciar e se adaptar dinamicamente à mudanças de acordo com políticas e objetivos pré-estabelecidos. Os ambientes auto-gerenciáveis são capazes de, autonomicamente, executar suas atividades baseados no estado observado, sem requerer alguma entidade central e controladora. Essas tarefas são realizadas em um ciclo de controle, por vezes denominado MAPE-K (Monitor, Analyse, Plan, Execute, and Knowledge). Baseado no ciclo MAPE-K, propõe-se uma infraestrutura autonômica fundamentada em SDN que, diferentemente das SDNs padrão, procura distribuir a tarefa de controle entre os elementos da rede (Figura 1a). A ideia é manter o plano de controle e o plano de encaminhamento juntos no switch, mas com um controlador SDN distribuído em cada switch (Figura 1b). Quando comparado com soluções autonômicas que executam apenas em nível de aplicação, temos como diferencial o controle sobre todos os pacotes, além de protocolos e ferramentas para desenvolver aplicações autonômicas em cada switch, buscando um comportamento emergente baseado em aplicações executadas por cada switch.

(a) (b)

Figura 1. Utilizando SDN de forma autonômica

Na infraestrutura proposta cada switch possui a organização mostrada na Figura 2. Utiliza-se o controlador FloodLight (ou pode-se utilizar outros controladores como o POX5, por exemplo) juntamente com o switch virtual OpenVSwitch (tutorial de instalação em [OVS e Floodlight 2012]). A aplicação autonômica inserida é independente da linguagem do controlador por se comunicar com ele através de uma interface RESTfull. Toda a parte de monitoramento de fluxos é realizada pelo próprio switch e fornecida através de uma API REST bem definida6.

Figura 2. Nó da rede autonômica baseado em tecnologias SDN

A manipulação da tabela de fluxos pode ser realizada através da mesma API REST oferecida pelo Floodlight. As etapas de Analyse, Plan, Execute, e Knowledge oriundas do MAPE-K são implementadas pela aplicação autonômica seguindo qualquer

5 http://www.noxrepo.org/pox/about-pox/ 6 http://www.openflowhub.org/display/floodlightcontroller/Floodlight+REST+API

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

37

Page 51: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

heurística autonômica desejável. É importante notar que devido a utilização do protocolo OpenFLow tem-se informações sobre o fluxo desde a camada de enlace (endereço MAC origem e destino) até a camada de aplicação (protocolo TCP, UDP e respectivas portas utilizadas). É possível criar regras autonômicas para bloqueio de fluxos, multicasting, balanceamento de carga ou reengenharia de tráfego. A capacidade de gerenciamento é ampla em nível de rede, sendo possível manipular campos dos cabeçalhos de pacotes que passam pelos switches com regras simples. É possível ainda definir novos protocolos para troca de mensagens entre switches (vislumbrando monitorar o comportamento de seus vizinhos e obter informações que o ajudem na tomada de decisão), dado que a aplicação em cada switch é totalmente programável.

A infraestrutura descrita está ligada diretamente às primitivas fornecidas pelo protocolo OpenFlow, por este motivo, este aspecto atua como uma limitação aos tipos de cenários autonômicos que podem ser implementados nesta infraestrutura devido à inexistência de comunicação direta com serviços disponíveis na rede. No entanto, como alternativa, é possível criar extensões na camada da aplicação autonômica (Figura 2) para atender a requisitos específicos. Para este fim, o trabalho de Wendong et al. (2012) pode servir como ponto de partida para aplicação e extensão da abordagem apresentada.

4. Considerações finais Este trabalho apresentou uma infraestrutura autonômica de rede baseada em recursos de uma SDN. A partir desta infraestrutura é possível delinear discussões sobre como desenvolver aplicações autonômicas fazendo uso de uma interface de manipulação de fluxos capaz de abranger aspectos da camada de enlace até a camada de aplicação da rede.

Um ponto importante a ser discutido é a realização de testes e a implantação de aplicações autonômicas em cada switch. Como o esperado é um comportamento emergente da rede, há a dificuldade de testes em larga escala em um cenário real devido ao fato da implantação de cada aplicação ser realizada manualmente em cada switch. Dessa forma, realizar constantes atualizações nesse cenário pode-se tornar custoso. Em trabalhos futuros pretende-se adaptar diversas estratégias autonômicas na infraestrutura apresentada, avaliando sua flexibilidade e suas limitações.

Referências IBM (2006), “An architectural blueprint for autonomic computing”. IBM White Paper. Mendonça, M. et al. (2014) “A Survey of Software-Defined Networking: Past, Present, and Future of Programmable Networks”, in submission. Disponível em: http://hal.inria.fr/docs/00/93/29/82/PDF/hal_final.pdf. Acesso em Março de 2014. Open Networking Foundation (ONF) (2014). Disponível em: https://www.opennetworking.org/. Acesso em Março de 2014. OVS e Floodlight (2012). Disponível em: http://networkstatic.net/how-to-build-an-sdn-lab-without-needing-openflow-hardware. Acesso em Março de 2014. Software Defined Networking Research Group (SDNRG) (2014). Disponível em: http://trac.tools.ietf.org/group/irtf/trac/wiki/sdnrg. Acesso em Março de 2014. Wendong, W., Yannan, H. U., Que, X., & Xiangyang, G. (2012). “Autonomicity design in OpenFlow based Software Defined Networking”. In IEEE Globecom, pp. 818-823.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

38

Page 52: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Abordagem Baseada em Correlacao Parcial para Filtragem deMetricas Monitoradas em Sistemas Auto-Gerenciaveis

Otto Julio A. Pinno1, Sand Luz Correa1, Vagner Jose do Sacramento Rodrigues1,Kleber Vieira Cardoso1

1Instituto de Informatica (INF) – Universidade Federal de Goias (UFG)Caixa Postal 131 – 74.001-970 – Goiania – GO – Brasil

{ottosilva,sand,vagner,kleber}@inf.ufg.br

Resumo. Monitoramento baseado em correlacao e uma tecnica de monitora-mento de sistemas que utiliza correlacoes estatısticas estaveis para detectar fa-lhas. Uma dificuldade, no entanto, e escolher um numero mınimo de metricas aserem monitoradas e ainda assegurar a deteccao de falhas. Este trabalho utilizacorrelacao parcial para esse proposito.

1. Introducao

Mecanismos atuais de identificacao de falhas ainda dependem excessivamente daintervencao humana. A atuacao do administrador de sistemas ainda e necessaria tanto nofornecimento de entrada de dados para os modelos que rastreiam o comportamento dasaplicacoes quanto na interpretacao dos resultados gerados por esses modelos. Uma con-sequencia direta dessa intervencao e o alto tempo necessario para detectar determinadostipos de falhas. Em 2004, estudos [Chen et al. 2004] ja mostravam que a identificacao e oisolamento de falhas correspondia a 75% do tempo total de recuperacao de um problema.Essa situacao tende a se agravar a medida que os sistemas computacionais crescem emescala e em complexidade.

Nesse contexto, cresce a necessidade de mecanismos de identificacao de falhasque atuem de forma autonoma, exigindo o mınimo de intervencao humana. Uma abor-dagem que tem se mostrado promissora para a construcao de mecanismos dessa naturezae o monitoramento baseado em correlacao [Jiang et al. 2006, Jiang et al. 2009]. Basica-mente, essa abordagem consiste em coletar dados de metricas que representam o estadodo sistema durante perıodos de normalidade. Esses dados sao entao usados para capturarcorrelacoes estaveis entre metricas monitoradas usando modelos matematicos. Os mode-los de correlacao capturados permitem prever o comportamento ou valor de uma metricaem funcao do comportamento exibido por outra em um passado recente. Como apenascorrelacoes estaveis sao consideradas, os valores previstos por esses modelos se mantemvalidos enquanto o sistema opera livre de falhas. No entanto, o valor previsto se desviasignificantemente daquele observado quando ocorre uma falha no sistema.

O monitoramento baseado em correlacao nao exige nenhuma informacao de en-trada por parte do administrador, pois nenhum conhecimento previo da estrutura do sis-tema e requerido. Alem disso, essa abordagem e generica, podendo ser aplicada em qual-quer sistema que monitora dados. Apesar dessas vantagens, o monitoramento baseadoem correlacao apresenta algumas dificuldades. Alguns trabalhos assumem um conjuntopequeno de metricas monitoradas [Jiang et al. 2006], o que dificulta uma analise acurada

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

39

Page 53: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

da falha. Outros trabalhos monitoram um grande conjunto de metricas [Jiang et al. 2009],o que dificulta a analise dos resultados devido ao numero excessivo de modelos, alem deelevar a carga de gerencia do sistema.

Este trabalho usa o conceito de correlacao parcial [Kenett et al. 2010] para manterum numero mınimo de metricas monitoradas e ainda assegurar a capacidade de deteccaode falhas. A correlacao parcial descreve o quanto o relacionamento entre duas variaveis eresultado de suas correlacoes com uma variavel intermediaria. Diferentemente de tecnicastradicionais que analisam o relacionamento entre pares de variaveis, a correlacao parcialtem sido empregada em areas como Economia para construir uma rede de correlacoesonde e possıvel mostrar a influencia de algumas variaveis na estrutura de correlacao deoutras. Isso permite excluir relacionamentos que sao resultados de correlacoes indiretas.

2. PropostaNossa proposta divide o monitoramento baseado em correlacao nas 4 atividades descritasa seguir.

1. Identificacao de correlacoes: para cada par de metricas X e Y monitoradas, consi-deramos que existe correlacao entre X e Y se, para qualquer metrica Z diferente de X ede Y , a correlacao entre X e Y removendo-se a influencia de Z, denotada coeficiente decorrelacao parcial (ρ(X,Y : Z)), e maior que um limiar C. O coeficiente de correlacaoparcial e definido pela Equacao 1:

ρ(X,Y : Z) =ρ(X, Y )− ρ(X,Z)ρ(Y, Z)√[1− ρ2(X, Y )][1− ρ2(Y, Z)]

(1)

onde, ρ(X, Y ), ρ(X,Z) e ρ(Y, Z) sao os coeficientes de Pearson para os seguintes paresde metricas: X e Y , X e Z, Y e Z. O coeficiente de Pearson para duas variaveis A e

B quaisquer e expresso por∑n

i=1(Ai−A)(Bi−B)√∑n

i=1(Ai−A)2

∑n

i=1(Bi−B)2

, onde Ai e Bi (i = 1, ..., n) sao

observacoes das variaveis A e B, respectivamente; A e B sao os valores medios dasobservacoes de A e B, nesta ordem.

2. Construcao de modelos: para cada par de metricas X e Y para o qual o passo anterioridentificou a existencia de correlacao, utilizamos uma tecnica de regressao linear e cons-truımos um modelo matematico Y = f(X) para descrever o relacionamento entre essepar de metricas.

3. Validacao de modelos: cada modelo matematico construıdo no passo anterior e vali-dado com o intuito de avaliar sua estabilidade. Para isso, para cada modelo, construımosum limite de aceitacao de resıduo1. Para determinar os limiares superior e inferior doslimites de aceitacao, utilizamos a mesma abordagem empregada em [Jiang et al. 2006].Essa abordagem consiste em encontrar um valor R que e maior que 99, 5% dos resıduosobservados (R(t)) e amplificar o resultado em 10%, como descrito na Equacao 2. Osvalores positivos e negativos do limiar resultante (τ ) sao usados, respectivamente, comolimiares superior e inferior do limite de aceitacao do modelo.

τ = 1, 1× argR{prob(|R(t)| ≤ R) = 0.995} (2)1resıduo e a diferenca entre o valor previsto pelo modelo matematico e o valor realmente observado.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

40

Page 54: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

A validacao dos modelos acontece submetendo-os a testes sem anomalias. Nessestestes, sao considerados estaveis apenas os modelos em que ate uma porcentagem p deobservacoes de resıduos estao fora do limite de aceitacao do modelo, isto e, ate umaporcentagem p de valores discrepantes (outliers).

4. Deteccao de falhas: a deteccao de falhas ocorre atraves do monitoramento dos mo-delos matematicos estaveis. Periodicamente, esses modelos sao alimentados com novasobservacoes de metricas e os resıduos sao calculados. Se algum resıduo viola o limite deaceitacao, o modelo correspondente e violado, indicando a ocorrencia de uma falha.

3. Resultados IniciaisAvaliamos nossa proposta atraves de um ambiente real de testes formado por um servidorde banco de dados MySQL, um servidor de aplicacao Web Tomcat e um emulador de cli-entes. Implantamos todo ambiente com base no TPC-w [Menasce 2002], um benchmarkpara transacoes Web do tipo e-Commerce. O emulador de clientes gera requisicoes queenvolvem diferentes tipos de transacoes da aplicacao Web, tais como navegacao de pro-dutos, produtos mais vendidos, carrinho de compras, etc. Utilizamos tambem o aplicativocollectd [collectd 2014] para coletar, a cada 5 segundos, 396 metricas, incluindo metricasrelacionadas a CPU, memoria, disco, rede, SO, banco de dados e JVM.

Em nossa avaliacao, configuramos o limiar de correlacao C, descrito no passo1 da Secao 2, em 50% e utilizamos o algoritmo proposto em [Kenett et al. 2010] paracalcular o coeficiente de correlacao parcial. Para computar os modelos matematicos des-critos no passo 2 da Secao 2, utilizamos o metodo de mınimos quadrados. Comparamosnossa proposta com uma estrategia semelhante, mas que utiliza o coeficiente de Pearson,ao inves do coeficiente de correlacao parcial. Apresentamos a seguir os resultados dosexperimentos realizados.

Inicialmente, avaliamos a estabilidade dos modelos matematicos gerados a partirda filtragem promovida pelos coeficientes de correlacao parcial e de Pearson. Para essaavaliacao, submetemos os modelos a testes onde nenhuma anomalia e injetada e observa-mos a quantidade de modelos que passam nos testes, ou seja, que reportam estado livre defalhas. Realizamos essa avaliacao considerando valores entre 0 e 100% de p, ou seja, deporcentagem de outliers aceitaveis. Variamos tambem de 1 a 10 a quantidade de testes devalidacao executados. Na Figura 1, apresentamos alguns valores de p dentro desse inter-valo. Podemos perceber que: 1) a filtragem pelo coeficiente de correlacao parcial resultaem uma quantidade muito menor de modelos que aquela feita por Pearson; 2) alem de se-rem em menor quantidade, os modelos derivados do coeficiente de correlacao parcial saomais estaveis, pois a quantidade de modelos remanescentes, ou seja, que passam nos tes-tes, nao varia significativamente a medida que o numero de testes de validacao aumenta.Portanto, esses modelos tem menor probabilidade de emitir falso positivo.

Para avaliar a eficacia dos modelos matematicos na deteccao de anomalias, rea-lizamos 4 tipos de experimentos. Em cada um, injetamos uma falha diferente, a saber:perda de pacote com probabilidade de 0, 01%; atraso anormal de 100 milissegundos naentrega de um pacote; laco de espera ocupada; e vazamento (leaking) de memoria. Nova-mente, realizamos os experimentos considerando valores entre 0 e 100% de p. A Figura 2apresenta a quantidade de falhas detectada pelos modelos. Podemos observar que mesmoutilizando uma quantidade muito menor de modelos que a abordagem por Pearson, para

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

41

Page 55: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

250 280

700 800

1000

1200

1400

1 2 3 4 5 6 7 8 9 10

Núm

ero

de m

odel

os a

ceito

s

Número de testes de validação

Correlação parcial Pearson

p=0.01p=0.10p=0.90p=0.01p=0.10p=0.90

Figura 1. Numero de modelosaceitos em funcao do numero detestes de validacao.

0

20

40

60

80

100

0.03 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

Acu

ráci

a (%

)

Porcentagem de resíduos discrepantes permitidos

PearsonCorrelação parcial

Figura 2. Acuracia da deteccao defalhas em funcao da porcentagemde resıduos discrepantes permiti-dos.

alguns valores de p, os modelos derivados do coeficiente de correlacao parcial podemdetectar 100% das falhas.

4. ConclusaoNeste trabalho, apresentamos uma tecnica baseada em correlacao parcial para reduzir onumero de metricas no contexto de monitoramento baseado em correlacao. Resultadosmostram que nossa proposta e capaz de identificar os modelos mais estaveis. Como con-sequencia, nossa proposta apresenta resultados promissores na deteccao acurada de falhascom reduzido custo de monitoramento e processamento das informacoes. Como trabalhosfuturos, pretendemos ampliar os experimentos com injecao de falhas para avaliarmos commais detalhes a solucao proposta, alem de compara-la com outras solucoes da literatura.

ReferenciasChen, M. Y., Accardi, A., Kiciman, E., Lloyd, J., Patterson, D., Fox, A., and Brewer,

E. (2004). Path-based faliure and evolution management. In Proceedings of the 1stConference on Symposium on Networked Systems Design and Implementation - Volume1, pages 23–37.

collectd (2014). collectd. The system statistics collection daemon. http://collectd.org. Ultimo acesso: 05/03/2014.

Jiang, G., Chen, H., and Yoshihira, K. (2006). Modeling and tracking of transaction flowdynamics for fault detection in complex systems. Dependable and Secure Computing,IEEE Transactions on, 3(4):312–326.

Jiang, M., Munawar, M. A., Reidemeister, T., and Ward, P. A. (2009). System monitoringwith metric-correlation models: Problems and solutions. In Proceedings of the 6thInternational Conference on Autonomic Computing, pages 13–22.

Kenett, D. Y., Tumminello, M., Madi, A., Gur-Gershgoren, G., Mantegna, R. N., andBen-Jacob, E. (2010). Dominating clasp of the financial sector revealed by partialcorrelation analysis of the stock market. PLoS ONE, 5(12):e15032.

Menasce, D. (2002). Tpc-w: a benchmark for e-commerce. Internet Computing, IEEE,6(3):83–87.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

42

Page 56: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

32º Simpósio Brasileiro de Redes de Computadores e

Sistemas Distribuídos

Florianópolis - SC

4º Workshop de Sistemas

Distribuídos Autonômicos -

WoSiDA 2014

Sessão Técnica 4

Segurança em Redes

Page 57: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão
Page 58: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Uma Arquitetura Autonomica para Deteccao e Reacao aAmeacas de Seguranca em Redes de Computadores

Luiz Arthur Feitosa dos Santos1,2, Rodrigo Campiolo1,2, Daniel Macedo Batista1

1 Departamento Academico de Computacao (DACOM)Universidade Tecnologica Federal do Parana (UTFPR)

{luizsantos,rcampiolo}@utfpr.edu.br

2Instituto de Matematica e Estatıstica (IME)Universidade de Sao Paulo (USP)

[email protected]

Abstract. In this paper we present an autonomic architecture that aims to de-tect and react to security incidents on local networks. The architecture is basedon the union of intrusion detection systems and software defined networks. Toevaluate the performance of the architecture, we measure the effectiveness of de-tection against different attacks. Some preliminary results identified a decreaseof 89% packets when the architecture was used against DoS attacks. Besides,other malicious flows were mitigated in just a few seconds.

Resumo. Neste trabalho e apresentada uma arquitetura para detectar e reagirautonomicamente a ataques em redes locais. A arquitetura usa uma solucaode seguranca baseada na uniao de sistemas de deteccao de intrusao e redesdefinidas por software. A arquitetura e avaliada considerando a efetividade dedeteccao e a forma de reacao a diferentes ataques. Alguns resultados prelimina-res mostram que e possıvel evitar cerca de 89% de pacotes gerados por ataquesde DoS. Alem disso, fluxos suspeitos conseguem ser mitigados em poucos se-gundos.

1. IntroducaoSegundo pesquisas realizadas por empresas especializadas em seguranca de computa-dores [Percoco 2013], o numero de ataques contra redes locais tem aumentado a cadaano. Atualmente muitos ataques sao compostos por varias etapas, o que dificulta aidentificacao e reacao a essas ameacas. Muitas ferramentas que deveriam evitar essesataques so conseguem identifica-los em etapas muito avancadas, o que e tarde demais, ounao sao capazes de detectar que as etapas separadas, em conjunto, constituem um ataque.Mecanismos de seguranca como firewalls, antivırus e outros nao conseguem lidar plena-mente com a diversidade das ameacas quando utilizados isoladamente. Uma forma dereduzir a ineficacia dessas ferramentas e combina-las criando novas formas de protecao.Tambem, a computacao autonomica permite retirar o onus da manutencao da segurancado administrador da rede. Neste artigo e apresentada uma arquitetura autonomica queune Sistemas de Deteccao de Intrusao (IDS) e Redes Definidas por Software (SDN), nafigura do OpenFlow, para mitigar acoes maliciosas em redes de computadores locais.O OpenFlow ja tem sido utilizado como suporte para novos mecanismos de seguranca

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

45

Page 59: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

[SRI and ATM 2013]. Solucoes usando a combinacao entre OpenFlow e IDS foram pro-postas [Xing et al. 2013, Nagahama et al. 2012], mas nao ha uma analise crıtica do im-pacto e limitacoes na implantacao dessas solucoes, nem pesquisas que unem essas tec-nologias com computacao autonomica. A arquitetura proposta neste artigo e avaliada emtermos de efetividade, limitacoes e impactos na deteccao e reacao a ameacas de seguranca.Sao mostrados resultados com experimentos em diferentes cenarios de ameacas. Comoprincipal contribuicao tem-se a avaliacao de viabilidade de uma arquitetura autonomicaque combina informacoes de fontes heterogeneas, no caso IDS e OpenFlow, para deteccaoe reacao a incidentes de seguranca, alem da propria arquitetura.

2. Arquitetura - Proposta e Experimentos

A arquitetura autonomica proposta e apresentada na Figura 1.

Figura 1. Arquitetura autonomica proposta.

De forma resumida, a arquitetura (Figura 1) gera um ciclo autonomico, que iniciacom sensores coletando dados dos elementos passivos (hosts, roteadores, IDS) e ativos(controlador e switches Openflow) da rede. Os elementos passivos so enviam informacoessobre o estado da rede e os ativos podem enviar informacoes para os sensores bem comoreceber comandos via atuadores. Os dados coletados sao repassados ao modulo Monitor,que remove inconsistencias e envia para o modulo Base de Conhecimento. O moduloAnalise e Planejamento fica constantemente analisando o comportamento da rede atravesda base de conhecimento e, se identificados problemas na rede, o modulo planeja umasolucao e envia um plano de acoes ao modulo de Execucao. O modulo de Execucao traduzas acoes em comandos e encaminha aos atuadores. Os atuadores enviam esses comandosaos elementos ativos da rede. Os comandos tem o intuito de afetar o comportamento doselementos que compoem a rede e esse novo comportamento alterado e retroalimentadopelos sensores, fechando o ciclo. A arquitetura monitora se as acoes tomadas resolveramou nao o problema. Em caso negativo, novas acoes devem ser lancadas ciclo a ciclo, ateque o equilıbrio seja restabelecido. Caso o modulo de Analise e Planejamento fique emduvida sobre um comportamento da rede, esse pode recorrer a informacoes externas arede, que podem ser extraıdas de bases de vulnerabilidades da Internet e ameacas citadasem redes sociais [Campiolo et al. 2013]

A aplicacao autonomica OpenFlow Intrusion Detection and Prevention System(Of-IDPS) foi desenvolvida como prova de conceito da arquitetura. Com o Of-IDPS e

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

46

Page 60: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

possıvel investigar a efetividade e limitacoes da uniao de IDS e OpenFlow na mitigacaode problemas de seguranca em redes de computadores locais. O codigo da aplicacao,scripts dos experimentos e outros codigos relacionados estao disponıveis em https://github.com/luizsantos/Of-IDPS. O Of-IDPS e executado de forma centra-lizada no controlador OpenFlow e e responsavel por analisar informacoes dos switches edo IDS Snort, evidenciando situacoes que indiquem riscos ao equilıbrio do sistema. Ocontrolador com Of-IDPS opera de forma similar a um controlador OpenFlow comum.Porem, o Of-IDPS verifica, antes de instalar um fluxo, se o pacote analisado esta associadoa alguma notificacao do IDS ou se o endereco de origem nao e responsavel por um ataqueDoS. Para estudo de caso, neste artigo, e caracterizado como ataque DoS a ocorrencia de100 fluxos OpenFlow compostos por no maximo 5 pacotes cada, entre dois hosts, cria-dos em um intervalo menor ou igual a 5 segundos. Ressalta-se que o objetivo e avaliara deteccao e reacao autonomica do Of-IDPS e nao propor um algoritmo de deteccao deataques DoS. No Of-IDPS os alertas gerados, tanto pelo IDS quanto pela analise de es-tatısticas de rede dos switches, podem representar riscos baixo, medio ou alto a seguranca.Assim, a reacao do Of-IDPS contra o fluxo suspeito pode ser: (1) se nao for retornado umalerta, o fluxo e adicionado normalmente no switch; (2) se o alerta corresponder a riscobaixo, e aplicada uma reducao leve na largura de banda para o novo fluxo e os existentesque coincidam com o pacote; (3) se corresponder a nıvel medio, e aplicada uma reducaosevera de largura de banda para o novo fluxo e os existentes que coincidam com o pacote;(4) por fim, se corresponder a risco alto, todos os fluxos com o mesmo IP de origem saoremovidos dos switches e o pacote analisado e bloqueado. Entao, o Of-IDPS, ao contrariode outras ferramentas similares, utiliza a abordagem de restringir taxa de transmissao dedados e so bloqueia pacotes em casos extremos. A premissa e dificultar ou confundir aacao do atacante, pois simplesmente bloquear os pacotes pode mostrar ao atacante queo sistema de seguranca existe e instiga-lo a utilizar outras abordagens, enquanto que di-minuir a taxa de transferencia de dados pode desencorajar ou frustrar o atacante, pois oambiente de rede se tornara relativamente lento.

3. ResultadosA arquitetura foi avaliada por meio de quatro experimentos distintos.

No 1o experimento foram analisados o tempo de resposta e se o trafego de redemalicioso detectado pode ser regulado usando switches Openflow sem influenciar nega-tivamente a rede. O experimento comeca com dois fluxos de rede em paralelo e ambossao considerados normais pelo sistema de deteccao. Pouco tempo depois um dos fluxos econsiderado suspeito e sao emitidos alertas de seguranca passando respectivamente pelosnıveis baixo, medio e alto. Os resultados sao apresentados na Figura 2(a). Observou-seque sao necessarios em media 9 segundos para reacao a ameaca, o que e consideradopositivo se comparado ao tempo de reacao que um administrador humano levaria paracorrigir o problema.

No 2o experimento foi analisada a efetividade da reacao em relacao a ataquesDoS. Foram feitas medicoes em dois cenarios, sendo um com Of-IDPS e outro com umswitch comum. A analise foi realizada sobre a media da quantidade de pacotes tratadospor atacante e vıtima. A Figura 2(b) apresenta os resultados. Observa-se uma reducaode 45% nos pacotes gerados pelo atacante e principalmente uma diminuicao acentuadade 89,05% no numero de pacotes destinados a vıtima que usa o Of-IDPS. O tempo de

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

47

Page 61: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Figura 2. (a) Reacao a alertas de seguranca (b) Pacotes por ataque

resposta do Of-IDPS nesse ataque e de 20 segundos, sendo o ataque bloqueado totalmentecom 39 segundos.

No 3o experimento foi analisado o comportamento da arquitetura contra procedi-mentos de varreduras de portas. Notou-se que o Of-IDPS nao impede a identificacao dasportas abertas na primeira execucao, mas identifica o ataque e cria regras autonomicas quebloqueiam varreduras seguintes do mesmo atacante, o que evita o mapeamento da rede,que e uma etapa comumente utilizada no inıcio de ataques. A falta de sucesso na etapa demapeamento da rede tenderia a levar um atacante a desistir de seguir adiante.

No 4o experimento foi analisada a integracao entre os sensores (IDS) e o Of-IDPS.Para isso, foram gerados varios pacotes com caracterısticas normais e suspeitas no cenariode rede. Os primeiros pacotes maliciosos sao comutados normalmente, mas na sequencia,a arquitetura autonomica constata o problema e comeca a criar regras que restringem oubloqueiam os fluxos suspeitos. Assim, os fluxos sao controlados de forma a nao interferirnegativamente no trafego de rede.

4. ConclusoesA arquitetura proposta consegue identificar desequilıbrios causados por problemas deseguranca e reagir evitando a degradacao massiva nos recursos da rede. Logo, a criacaode um sistema de seguranca autonomico que integra IDS e OpenFlow mostra-se umasolucao efetiva e pratica para detectar ameacas de seguranca em redes locais. Como tra-balhos futuros, pretende-se explorar mais a integracao das estatısticas de redes obtidascom o OpenFlow, a correlacao de informacoes obtidas a partir de outras fontes locali-zadas em segmentos comuns e distintos da rede, e utilizar metodos de aprendizado demaquina para a geracao de polıticas de seguranca baseadas nos ataques anteriores.

ReferenciasCampiolo, R., Santos, L. A. F., Batista, D. M., and Gerosa, M. A. (2013). Evaluating the

utilization of twitter messages as a source of security alerts. In 28th ACM SAC.

Nagahama, F. Y. et al. (2012). Ipsflow – uma proposta de sistema de prevencao de intrusaobaseado no framework openflow. In XII SBSeg, pages 324–330.

Percoco, N. J. (2013). 2013 global security report. Technical report, Trustwave Holdings.

SRI and ATM (2013). Openflowsec.org. Acessado em 17/11/2013. Disponıvel emhttp://www.openflowsec.org.

Xing, T. et al. (2013). Snortflow: A openflow-based intrusion prevention system in cloudenvironment. In GREE, 2013 Second GENI.

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

48

Page 62: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão

Anais do 4º Workshop de Sistemas Distribuídos Autonômicos - WoSiDA 2014

49

Índice por Autor

A

Andrade, S.S. .....................................31

Araujo, J.P. .........................................25

B

Batista, D.M. ......................................45

Bezerra, M. ........................................35

C

Campiolo, R. ......................................45

Cardoso, K.V. ....................................39

Corrêa, S.L. ........................................39

Coutinho, E.F. .....................................3

D

Dias, A.H.T. .......................................25

Diniz, J.C.S. .......................................25

E

Endo, P. ..............................................35

Fernandes, S. ......................................35

G

Gomes, D.G. ........................................3

Gonçalves ...........................................35

Gorender, S. .................................17, 21

H

Heimfarth, T. ......................................25

M

Macêdo, R.J.A. ..............................7, 31

Moreira, F.L .......................................11

P

Pinno, O.J.A. ......................................39

Q

Queiroz, H.S. .......................................7

R

Rodrigues, V.J.S. ...............................39

S

Sá, A.S. ..........................................7, 11

Sá, M. .................................................21

Sadok, D. ............................................35

Santos, B.J ..........................................17

Santos, L.A.F......................................45

Santos, M. ..........................................35

Souza, J.N. ...........................................3

Page 63: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão
Page 64: 4º Workshop de Sistemas Distribuídos Autonômicos WoSiDA … · de Computadores e Sistemas Distribuídos (SBRC 2014) apresenta mais uma série de workshops, visando a discussão