ANAIS DO WoSiDA 2015

31
ANAIS DO WoSiDA 2015

Transcript of ANAIS DO WoSiDA 2015

Page 1: ANAIS DO WoSiDA 2015

ANAIS DO WoSiDA 2015

Page 2: ANAIS DO WoSiDA 2015

V Workshop de Sistemas Distribuıdos Autonomicos

(WoSiDA)

Avancos nas tecnologias de redes e computacao estao resultando em sistemas eaplicacoes cada vez mais complexos e difıceis de gerenciar, especialmente quando osservicos relacionados precisam ser escalaveis, seguros e continuamente disponıveis.A adaptacao desses sistemas de software durante sua execucao e necessaria para lidarcom desafios tais como variabilidade de recursos, requisitos de usuario mutaveis, eintrusoes e falhas no sistema. Como consequencia, esses sistemas necessitam da ha-bilidade de ser auto-geridos, continuamente reconfigurando e ajustando eles mesmospara atingir certos objetivos e, ao mesmo tempo, mantendo sua complexidade ocultados usuarios. Por isso, o estudo de tais sistemas auto-geridos tem atraıdo grandeatencao de muitas areas da computacao, tais como robotica, engenharia de software,gerencia de redes, sistemas de automacao e controle, computacao tolerante a falhase confiavel, e computacao biologica. Entre os esforcos para estudar e entender sis-temas auto-geridos, o paradigma de computacao autonomica, inspirado no sistemanervoso autonomico humano, esta sendo adotado por muitos no projeto de sistemase aplicacoes que precisam funcionar de acordo com regras de alto-nıvel fornecidaspor seres-humanos, que sao caracterizadas pelas denominadas auto-* propriedades,tais como auto-configuracao, auto-cura, auto-otimizacao, auto-protecao, etc. Esteworkshop tem como objetivo principal reunir pesquisadores da comunidade de siste-mas distribuıdos para discutir os princıpios fundamentais, o estado da arte e desafioscrıticos de sistemas distribuıdos auto-geridos ou autonomicos. O workshop nao focaapenas em modelos e algoritmos de sistemas distribuıdos, mas tambem nos aspec-tos, ferramentas e tecnologias de engenharia de software relacionadas que podem serusadas para permitir um comportamento auto-gerido em sistemas distribuıdos.

Os topicos de interesse incluem, mas nao estao limitados a: modelos e algo-ritmos de sistemas distribuıdos; suporte de programacao, projeto, middleware elinguagens de programacao para sistemas distribuıdos autonomicos; modelagem eanalise de sistemas distribuıdos autonomicos; verificacao e validacao; aspectos deconfianca (dependability) em sistemas distribuıdos autonomicos; aspectos de auto-organizacao, como suporte ao comportamento autonomico em grades, sistemas P2Pe redes de sensores; algoritmos e tecnicas inspiradas em sistemas biologicos; e redeautonomicas.

Esta e a quinta edicao do WoSiDA. Em todas as edicoes, se observa um pro-cesso cuidadoso de revisao e selecao com cada artigo distribuıdo para ao menostres membros do comite de programa. Os artigos selecionados sao os com potencialde gerar discussoes durante o workshop e baseados em alguma forma de validacaoexperimental, inclusive, mas nao se limitando a implementacoes. Ainda, a pro-gramacao do WoSiDA e complementada com palestras convidadas e paineis. Nasedicoes anteriores, tivemos paineis de discussao e palestras convidadas, como as doprof. Franz Rammig (Universidade de Paderborn, Alemanha) e do prof. KennethBirman (Universidade de Cornell, EUA).

Nesta edicao, teremos seis artigos selecionados de oito submetidos e a palestraconvidada do prof. Ozalp Babaoglu (Universidade de Bolonha, Italia), bem comoum painel de discussao.

Page 3: ANAIS DO WoSiDA 2015

Allan Freitas e Antonio CasimiroChairs do WoSiDA

3

Page 4: ANAIS DO WoSiDA 2015

Comite de Programa

• Allan Edgard Silva Freitas, Instituto Federal da Bahia (IFBA, Brasil) – Co-Chair;

• Antonio Casimiro Costa, Universidade de Lisboa (UL, Portugal) – Co-Chair.

• Alirio Santos de Sa, Universidade Federal da Bahia (UFBA, Brasil);

• Alysson Bessani, Universidade de Lisboa (UL, Portugal);

• Edison Pignaton de Freitas, Universidade de Brasılia (UNB, Brazil);

• Edmundo Madeira, Universidade Estadual de Campinas (UNICAMP, Brazil);

• Fabio Moreira Costa, Federal University of Goias (UFG, Brazil);

• Flavio Assis Silva, Universidade Federal da Bahia (UFBA, Brasil);

• Franz Rammig, Universidade de Paderborn (UPB, Alemanha);

• Luıs E. T. Rodrigues, Universidade de Lisboa (UL, Portugal);

• Marcos Barreto, Universidade Federal da Bahia (UFBA, Brasil);

• Raimundo J. A. Macedo, Universidade Federal da Bahia (UFBA, Brasil);

• Renato Cerqueira, IBM Research do Brasil e Pontıficia Universidade Catolicado Rio de Janeiro (PUC-Rio, Brazil);

• Romildo Bezerra, Instituto Federal da Bahia (IFBA, Brazil);

• Rui Oliveira, Universidade do Minho (UMINHO, Portugal);

• Sand Luz Correa, Universidade Federal do Goias (UFG / Brazil);

• Sergio Gorender, Universidade Federal da Bahia (UFBA, Brasil);

• Tales Heimfarth, Universidade Federal de Lavras (UFLA, Brazil).

Comite Consultivo

1. Raimundo J. A. Macedo, Universidade Federal da Bahia (UFBA, Brasil);

2. Alirio Santos de Sa, Universidade Federal da Bahia (UFBA, Brasil);

3. Sand Luz Correa, Universidade Federal do Goias (UFG, Brasil);

4. Sergio Gorender, Universidade Federal da Bahia (UFBA, Brasil);

5. Tales Heimfarth, Universidade Federal de Lavras (UFLA, Brazil).

Page 5: ANAIS DO WoSiDA 2015

Indice

1. Elasticity Provisioning in Hybrid Computational Clouds Based on AutonomicComputing ConceptsEmanuel F. Coutinho (UFC), Danielo G. Gomes (UFC), Jose Neuman deSouza (UFC) 1

2. Self-management of Distributed Peers via an Extended Joint IntentionProtocolClauirton A. Siebra (UFPB), Denise A. Costa (UFPB) 5

3. Uma Heurıstica Hıbrida para o Roteamento por Multiplos Caminhosem RSSFsMatheus A. de Paulo (UNIFESP), Maria C. V. Nascimento (UNIFESP), Va-lerio Rosset (UNIFESP) 9

4. Uma Proposta Arquitetural de Sistema Autonomico para Reducao do Custode Energia em Laboratorios de InformaticaDavi Cabral de Oliveira (UFC), Leonardo O. Moreira (UFC), Emanuel F.Coutinho (UFC), Gabriel A. L. Paillard (UFC) 13

5. Avaliando o Impacto da Disseminacao Assıncrona de Operacoes na QoS deBases de Dados ReplicadasFabiola de Lima Moreira (UFBA), Alırio Santos de Sa (UFBA), Allan EdgardSilva Freitas (IFBA) 17

6. Adicionando CBR na Gerencia Autonomica de RedesRomildo Martins da Silva Bezerra (IFBA), Joberto Sergio Barbosa Martins(UNIFACS) 21

Page 6: ANAIS DO WoSiDA 2015

Agradecimentos

• Ao Comite Consultivo e ao Comite de Programa do WoSiDA pelo trabalho dealto nıvel desenvolvido que tornou possıvel este evento;

• A Comissao Organizadora do XXXIII Simposio Brasileiro de Redes de Com-putadores e Sistemas Distribuıdos, especialmente na pessoa do Coordenadorde Workshops; e

• Ao Palestrante Convidado, prof. Ozalp Babaoglu.

Page 7: ANAIS DO WoSiDA 2015

Elasticity Provisioning in Hybrid Computational CloudsBased on Autonomic Computing Concepts

Emanuel F. Coutinho1, Danielo G. Gomes2, Jose Neuman de Souza3

1Virtual University Institute (UFC VIRTUAL)2Department of Teleinformatics Engineering (DETI)

3Computer Science DepartmentFederal University of Ceara (UFC) – Fortaleza – Brazil

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

Abstract. The current level of cloud computing use has led to a discussion forother aspects such as availability and service quality. One way to monitor cloudapplications more effectively is using Autonomic Computing mechanisms, whichallows resources added and removed from the environment according to pre-established thresholds. This monitoring strategy is directly associated with oneof the main characteristics of cloud computing: elasticity. Moreover, elasticityis becoming a growing need due to the dynamic nature of applications. Thispaper describes an extension of a proposed elasticity cloud architecture, basedon some concepts of Autonomic Computing, to enhance its use in hybrid clouds.

1. IntroductionCloud computing is currently being widely used by academia or companies. The amountof applications and services migrated from traditional datacenters to computational cloudsis increasing. With this increasing, other aspects emerge, such as availability and servicequality. Aligned with the SLA (Service Level Agreement) maintenance needs, some es-sential features of cloud computing are discussed for the improvement of service qualityapplications. These features are: on-demand self-service, broad network access, resourcepooling, rapid elasticity and measured service [Mell and Grance 2009].

The computing resources monitoring, such as CPU and bandwidth, becomes es-sential for providers, who provide the services, and their customers. One way to evaluatean environment is monitoring the resources usage, and often cloud elasticity is associatedto a resource of the provider. One way to monitor cloud applications more effectively isusing Autonomic Computing mechanisms, which resources are added and removed fromthe environment according to pre-established thresholds. Many architectures for main-tenance of SLA using features of Autonomic Computing in computational clouds havebeen proposed [Emeakaroha et al. 2012, Jamshidi et al. 2014]. In general is not trivial touse such architectures, much less apply them in cloud environments.

An autonomous or autonomic system consists of a set of autonomous elements.An autonomous element is a component responsible for managing its own behavior inaccordance with policies, and interact with other autonomous elements that provide orconsume computational services [Kephart and Chess 2003]. Mechanisms of AutonomicComputing, such as control loops and rules, can be used in monitoring of a computa-tional cloud. Thus, resources can be added and removed from the environment as pre-established thresholds. This type of monitoring strategy is directly associated with one ofthe main characteristics of cloud computing: elasticity.

1

Page 8: ANAIS DO WoSiDA 2015

According to the National Institute of Standards and Technology (NIST) defini-tion, resources can be elastically provisioned and released, in some cases automatically, toscale rapidly outward and inward commensurate with demand [Mell and Grance 2009].Coutinho et al. [Coutinho et al. 2014b] performed a study of cloud elasticity, highlightingvarious aspects such as: definitions, metrics, benchmarks, elastic strategies, challengesand trends in the construction of elastic solutions. Therefore, elasticity is becoming agrowing need due to the dynamic nature of different applications and diverse workloads.

This paper propose an extension of the elasticity cloud architecture proposed by[Coutinho et al. 2014a], based on some concepts of Autonomic Computing. Our maincontributions are: (1) a hybrid architecture based on some concepts of Autonomic Com-puting for the provisioning of elasticity in cloud computing; and (2) an experiment per-formed in a hybrid cloud to validate the proposed architecture.

2. Extended Autonomic Architecture for Elasticity in a Hybrid Cloud[Coutinho et al. 2014a] proposed an architecture for elasticity provisioning in cloud en-vironment, based on some concepts of Autonomic Computing described by Kephart andChess [Kephart and Chess 2003], mainly using control loops, collectors, actuators, rulesand self configuration, showed in Figure 1(a). However, the proposed architecture didnot highlight the use in hybrid clouds. Thus, this new architectural vision shows a com-plement for elasticity providing in hybrid clouds. Figure 1(b) describes the proposedarchitecture with its components and relationships. These components are: Global Con-trol Loop, Collector, Database, Actuator, Local Control Loop, Load Balancer, Workloads,Rules, Prediction and Metrics. They were described in [Coutinho et al. 2014a].

Various aspects of this architecture are flexible in terms of implementation. Forexample, virtual machines can be pre-allocated or dynamically instantiated. These situ-ations do not affect the architecture, because the load balancer uses the available virtualmachines in the cloud. What changes basically is the way in which the global control loopmanages the allocation, creating and removing virtual machines dynamically.

This architecture is independent of the cloud type (private, public, communityor hybrid). Thus, the architecture is flexible for the use by any technology and cloudinfrastructure. Figure 1(b) displays a private and public cloud together, demonstrating the

(a) Generic cloud [Coutinho et al. 2014a] (b) Hybrid cloud

Figure 1. Autonomic architecture for cloud computing elasticity in hybrid clouds

2

Page 9: ANAIS DO WoSiDA 2015

application of the proposed architecture for a hybrid cloud. Moreover, the events used totrigger elasticity actions can use any strategy, such as the generating virtual machines atruntime (dynamically), replicas of virtual machines, or virtual machine migration.

3. Material and MethodsWe built a private cloud with OpenNebula 3.8, virtual machines with 1 VCPU and 1GB of RAM memory. For public cloud, we used Microsoft Azure, with A1 Standardtype instance (1 core and 1.75 GB of RAM memory). The experiment used four vir-tual machines. We used Apache Tomcat as web container, HTTPERF tool as workloadgenerator, and NGINX as load balancer. Workloads were generated directly on load bal-ancer’s virtual machine, coming from web browsers and HTTPERF. Thus, requests couldbe distributed among the other virtual machines. The idea is to emulate competition forresources, quite common in cloud computing environments.

The objective of the experiment was to verify the performance of the environmentwhen a virtual machine from a public cloud was used together with a private cloud tomaintain the SLA. To trigger elasticity actions, we used the percentage average of virtualmachines CPU usage. The thresholds used for performing elasticity actions were: above70% (allocates a new virtual machine), below 60% (deallocates a virtual machine), andbetween 60% and 70% (maintains allocation). This value was calculated as the averageof the last 10 samples of CPU usage in the virtual machines. The sampling intervalwas set in 1 second added to the cost of collection and analysis of results. We used anhorizontal elasticity strategy, where new virtual machines instances are added to the loadbalancer when resources are needed, and removed if no longer needed. For prediction,we used multilinear regression on CPU, memory, disk and network values, collected fromprevious experiments, with similar workloads.

Whenever the threshold of 70% established as upper limit was exceeded, the loadbalancer added in sequence the other two virtual machines of private cloud, and in caseof need for more resources, the virtual machine of the public cloud is added in sequence.Even so, the SLA violations occurred, but in shorter quantities, as shown in graphic ofaverage CPU usage of Figure 2. The requests response time initially had the lowest values,and almost all requests allocated to the first virtual machine. When workload increased,more allocations were done as needed, around a third of experiment’s time. From thattime, many requests had a high duration for completion, even with the allocation of fourvirtual machines. The highest response times occurred in the virtual machine of publiccloud. We highlighted three aspects in this discussion:

• Provision of elasticity: The proposed architecture enabled a mechanism that adds moreresources whenever necessary, to allow the SLA maintenance. When resources wereno longer needed, they were deallocated, avoiding resources idleness and waste.• Elasticity effect on the SLA: Since the architecture enabled elastic actions on the in-

frastructure, the SLA was maintained in most cases. Sometimes, the resources wereused at maximum, and there was no option to add more resources, violating the SLA.• Autonomic Computing Principles: In general, the use of Autonomic Computing con-

cepts was satisfactory. Local control loops were essential to collect data on the virtualmachines, with the support of collectors. Another level of control loop (global controlloop) was used for the management of elasticity actions, and drive actuators. The rules

3

Page 10: ANAIS DO WoSiDA 2015

Figure 2. Average CPU usage (%), allocation, and response time of virtual ma-chines (miliseconds) graphs

for performing elasticity actions also allowed a certain control level over the SLA de-fined for the experiments. Finally, the self configuration allow the infrastructure couldbe adjusted as need for more or less resources.

4. ConclusionThe use of Autonomic Computing in cloud environments to support the elasticity provi-sioning is becoming a good practice. Here, we propose an extension of an architecture forproviding elasticity in computational clouds based on Autonomic Computing concepts.An experiment for validating the architecture shows it is possible to use Autonomic Com-puting and cloud computing in a satisfactory way. As future work, different criteria shouldbe used for rules design, e.g. response time of requests and throughput. Furthermore, theuse of other levels of control loops may improve the effectiveness of architecture, focus-ing a better performance. Other elasticity strategies should be explored, such as verticalelasticity solutions (increasing the capacity of resources) and hybrid solutions.

ReferencesCoutinho, E., Gomes, D. G., and Souza, J. D. (2014a). Uma proposta de arquitetura autonomica para

elasticidade em computacao em nuvem. In WOSIDA2014.

Coutinho, E. F., de Carvalho Sousa, F. R., Rego, P. A. L., Gomes, D. G., and de Souza, J. N. (2014b).Elasticity in cloud computing: a survey. annals of telecommunications, pages 1–21.

Emeakaroha, V. C., Netto, M. A., Calheiros, R. N., Brandic, I., Buyya, R., and Rose, C. A. D. (2012).Towards autonomic detection of sla violations in cloud infrastructures. Future Generation ComputerSystems, 28(7):1017 – 1029. Special section: Quality of Service in Grid and Cloud Computing.

Jamshidi, P., Ahmad, A., and Pahl, C. (2014). Autonomic resource provisioning for cloud-based software.In Proceedings of the 9th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2014, pages 95–104, New York, NY, USA. ACM.

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

Mell, P. and Grance, T. (2009). The nist definition of cloud computing. National Institute of Standards andTechnology, 53(6):50.

4

Page 11: ANAIS DO WoSiDA 2015

Self-management of Distributed Peers via an Extended

Joint Intention Protocol

Clauirton A. Siebra1,2

, Denise A. Costa1,2

1Laboratory of Applied Artificial Intelligence

Federal University of Paraiba – Joao Pessoa, PB – Brazil

2Informatics Center

Federal University of Paraiba – Joao Pessoa, PB – Brazil

[email protected], [email protected]

Abstract. Self-management is one of the properties that should be provided by

autonomic distributed systems when their independent peers intend to carry

out collaborative activities. However, the correct presentation of this property

requires an implementation of collaborative notions from the beginning,

embedded into the peer specification, rather than separately provided as an

external process that artificially manages the collaborative interactions. This

paper presents the Joint Intention Theory as a basis for this native

implementation and discusses how this theory could be extended to ensure the

collaborative control. A distributed simulation is also carried out as a way to

demonstrate the potential of this approach.

1. Introduction

Studies such as [Downling 2004] show how decentralised coordination of self-managed

components can establish autonomic properties for distributed systems in dynamic and

uncertain environments, such as wireless ad-hoc and peer-to-peer networks. Our work,

in particular, focuses on distributed peers that must present a self-managed behaviour to

collaboratively execute activities. The field of autonomic distributed system addresses

such kind of scenario and uses the concepts of autonomic computing [IBM 2001] to

design and build distributed computing systems that can manage themselves given high-

level objectives [Macedo 2012]. In order, the use of the autonomic metaphor is not

exclusive of distributed systems and many other areas, such as our work in the Samsung

test automation platform [Siebra et al. 2009], have also used such metaphor to improve

their standard operations and reduce their management complexity.

In this autonomic distributed domain, we argue that the self-management sense

should be specified from the beginning and embedded into the distributed processes

rather than implemented via external elements, or controlled via a central unit. This

means, computational processes that intend to collaborate in a distributed environment

must be created as self-managed units since their conception. To that end, our work

discusses the Joint Intention Theory [Levesque et al. 1990] as a basis to implement self-

managed collaborative units. This theory is extended so that distinct processes are able to

coordinate themselves to achieve a goal via commitments on parts of a plan that has such

goal as final state.

5

Page 12: ANAIS DO WoSiDA 2015

2. Joint Intention Theory

The Joint Intention Theory [Levesque et al. 1990] proposes a set of principles to lead the

behavior of distributed process that intend to perform joint activities. Such principles are

built around two main concepts. First, Weak Goals (WG) that specify the conditions

under which a process holds a goal, and the actions it must take if the goal is satisfied,

irrelevant or impossible. Second, Joint Persistent Goals (JPG) that specify a joint

commitment of a set of processes in achieving a goal. According to this theory, if the

process has a WG to carry out an activity p while e is not irrelevant (e is not false), one

of the following conditions will hold:

believes that p is not true and intends that p be true at some future time;

Having privately discover p to be true, intends that all the involved set of

processes mutually believes that p is true;

Having privately discovered p to be irrelevant because e has become false,

intends that mutually believes that p is (temporally) unachievable.

In practical terms, if has a WG to carry out p, has a commitment to perform

p (or try at least), or to communicate its completion, failure or irrelevance to . The term

e specifies the conditions under which processes may drop their intentions while still

believing that p is untrue and satisfiable. With this definition in place, a Joint Persistent

Goal JPG(,p,e) holds if all the following conditions are satisfied:

mutually believes that p is currently false;

mutually believes that holds p as a goal ( mutually intend to do p);

Each process of holds p as a WG until mutually believes that p is true,

unachievable or irrelevant.

A JPG ensures that joint processes cannot decommit until p is mutually believed

to be achieved, impossible or irrelevant. This commitment also ensures that a process

stay updated about the status of other processes’ activities, and thus do not unnecessarily

face risks or waste their time along unproductive actions.

3. Theory Extensions for Self-managed Peers

The Joint Intention theory presents a conceptual limitation once it does not explicitly

distinguish the concept of activity, which is in fact the team goal, from the steps (plan) to

reach this goal. An important reason for explicitly distinguishing between goals and plan

states becomes evident by examining what happens after a commitment failure. In the

former case, the processes’ activity with respect to the particular goal is over. However

if the group becomes uncommitted to the common solution (a plan) there may still be

useful processing to be carried out. For example, if the plan is deemed invalid, the agents

may try a different sequence of actions which produce the same result. Thus dropping

commitment to the common solution plays a different functional role than dropping a

goal. The next function implements a Joint Intention based protocol, which forces a

commitment among peers that intend to collaborate, and considers this disjunction

between goal and plan. According to our approach, each plan p is composed of a set of

plan nodes ni. If a peer, that has p as goal, sends such nodes (parts of the activity) to its

6

Page 13: ANAIS DO WoSiDA 2015

joint peers, then a commitment must be made between them. Algorithm 1 defines a

function called AgentCommitment that implements this idea.

Algorithm 1. AgentCommitment function for collaborative peers

Based on this function, we can discuss some of its implications and features.

First, ni has a set of constraints associated with it. Thus, the “GenerateNodes” function

(step 04) considers such a set to return a subplan (list of nodes) to perform ni. If there is

a subplan (step 05) and it does not depend on anyone else (step 06) then the process can

commit to ni (step 09). However, if the option depends on the commitments of

subordinates, then the process must await their answers (step 07). This implies that

commitments are made between a superior-peer process and their subordinate-peers and,

starting from the bottom, an “upper-commitment” can only be done if all “down-

commitments” are already stabilised. Second, if some subordinate is not able to commit

(step 08), the process returns to generate a new subplan (invalid commitments to the old

subplan must be cancelled) rather than sending a no-committed report to its superior.

This approach implements the idea of enclosing problems inside the sub-group where

they were generated. Finally if the process is not able to generate a subplan for ni (e.g., a

deadline for such generation is a possible reason) it reports a NO-COMMITTED to its

superior (step 11). However the process must also warn their subordinates that subplan

has failed and consequently their subnodes (subplans) can be abandoned (step 13).

4. Experiments and Results

Our experiment used 10 distributed peers that control virtual entities acting as search and

rescue agents in a simulation environment, which represents part of the Kobe city as a

graph, along 150 cycles of one second. Each process is able to perform three different

tasks: Move to a requested node, Search for blocked edges and Clear blocked edges.

First graphic (Figure 1.a) shows that processes spend great part of the simulation

moving, rather than clearing edges. This mainly happens because processes in this

experiment are self-coordinating their own activities according only to the features of the

environment. Thus, it is common that a process moves its agent to a position that must

be cleared, however such a position was already cleared by another process.

7

Page 14: ANAIS DO WoSiDA 2015

Second graphic (Figure 1b) shows the performance of agents whose processes

implement Algorithm 1. According to this graphic, agents are able to deal with their

activities faster than in the previous experiment. This fact is mainly represented by the

rate of the move action that increases until the cycle 80 and after that starts to decrease.

The principal reason for this improvement is that the commitment function avoids that a

process moves its agent to a place where another agent is already working on. When a

process is not able to execute its part of the plan (clear an edge), it reports a NO-

COMMIT to the process that generated the demand. Then this process maintains the

former goal and tries to creates a new plan to solve it (e.g., ask assistance to other

processes). Only if this new plan is not possible, the goal is abandoned.

(1.a)

(1.b)

Figure 1. Percentage of tasks that are carried out by 10 peers along 150 cycles

5. Conclusions and Research Directions

The main aim of this project was to create distributed peers with a native sense of

collaboration, so that they are able to self-manage their actions toward appropriate

solutions for collaborative problems. In this context, it is fundamental that distributed

processes commit on steps to solve a problem rather than goals, as explored in this

project. Future directions intend to explore more complex distributed domains and the

idea of reports on execution, what could support the use of self-optimization practices.

References

Downling, J. (2004) “The Decentralised Coordination of Self-Adaptive Components for

Autonomic Distributed Systems”, PhD Thesis, University of Dublin, Trinity College.

IBM (2001) “Autonomic computing: Ibm’s perspective on the state of information

technology”. Technical report, IBM Coorporation, USA, New York.

Jennings, N. (1990) Coordination Techniques for Distributed Artificial Intelligence.

Foundations of Distributed Artificial Intelligence, London,Wiley, pp. 187-210.

Macedo, R. (2012) “A Vision on Autonomic Distributed Systems”, Proceedings of the

2nd Workshop on Autonomic Distributed Systems, pp. 31-34.

Siebra, C., Lino, N., Silva, F. and Santos, A. (2009) “An Application of Autonomic

Concepts for Handset Network Test Control”, Proceedings of the IEEE International

Symposium on Intelligent Control, pp. 671-676.

8

Page 15: ANAIS DO WoSiDA 2015

Uma Heurıstica Hıbrida para o Roteamento por MultiplosCaminhos em RSSFs

Matheus A. de Paulo1, Maria C. V. Nascimento1, Valerio Rosset1

1Departamento de Ciencia e TecnologiaUniversidade Federal de Sao Paulo (UNIFESP)

Sao Jose dos Campos, Sao Paulo, BrasilEmail: {antunes.matheus, mcv.nascimento, vrosset}@unifesp.br

Abstract. One of the main challenges in large-scale Wireless Sensor Networks(WSNs) is the development of routing solutions with appropriated levels of datadelivery reliability and energy consumption. In this paper, we introduce a heu-ristic that combines Community Detection and Ant Colony Optimization (ACO)for constructing paths in a WSN aiming at the energy efficiency. We comparedthe proposed hybrid heuristic with a heuristic based on ACO, not consideringcommunities. Simulation results indicate that the larger is the path maintenancefrequency, the more energy efficient is the proposed heuristic.

Resumo. Um dos principais desafios em Redes de Sensores Sem Fio (RSSFs)de larga escala e desenvolver solucoes de roteamento com nıveis adequados deconfiabilidade de entrega de dados e consumo energetico. Neste trabalho, apre-sentamos uma heurıstica que combina deteccao de comunidades e Otimizacaopor Colonias de Formigas (ACO) para a construcao de caminhos energetica-mente eficientes em uma RSSF. Para fins avaliacao comparamos o desempe-nho da heurıstica hibrida proposta com outra baseada apenas em ACO, semuso de comunidades. Os resultados das simulacoes indicam que, quanto maiora frequencia de manutencao de caminhos, mais energeticamente eficiente e aheurıstica hıbrida proposta.

1. Introducao

Redes de Sensores Sem Fio (RSSFs) de larga escala desassistidas sao compostas poruma grande quantidade de nos sensores distribuıdos em um ambiente. Neste tipo derede, observa-se um maior numero de falhas de transmissao, principalmente devido ainterferencia, esgotamento energetico precoce e ate mesmo a destruicao dos nos sen-sores. Nesse contexto, existe a necessidade de que protocolos de roteamento sejamtolerantes a falhas com o objetivo de maximizar a confiabilidade de entrega de da-dos [Sha et al. 2013]. Entretanto, a escalabilidade dificulta a centralizacao do gerenci-amento e manutencao da RSSF, o que sugere o desenvolvimento de solucoes de rote-amento distribuıdas. Segundo [Dressler and Akan 2010], algoritmos bio-inspirados po-dem oferecer uma alternativa distribuıda para tratar o problema de roteamento. Emespecial, a Otimizacao por Colonia de Formigas (ACO) [Dorigo et al. 2006] e em-pregada com sucesso em outros protocolos de roteamento por multiplos caminhos[Okdem and Karaboga 2006, GhasemAghaei et al. 2007, Yang et al. 2010]. Nesses pro-tocolos, a construcao e manutencao de caminhos e realizada entre cada no sensor e uma

9

Page 16: ANAIS DO WoSiDA 2015

estacao base (EB) considerando redes de pequena e media escala. Uma vez que a quan-tidade de dispositivos tem influencia sobre quantidade de operacoes necessarias na buscapor solucoes para o problema de roteamento, tais protocolos podem nao ser energetica-mente eficientes quando aplicados sobre RSSFs de larga escala.

Dessa forma, visando balancear a confiabilidade de entrega de dados e a eficienciaenergetica em ambientes de larga escala, propoe-se um protocolo de roteamento baseadoem uma heurıstica distribuıda para construcao e manutencao de multiplos caminhos consi-derando a capacidade energetica dos nos sensores e a hierarquizacao dos nos sensores emagrupamentos, denominados comunidades. Nesse caso, obtem-se solucoes heurısticas, ouseja, caminhos partindo de um no sensor e terminando em nos sensores especiais (cha-mados de VS) ou na estacao base (EB) que visam maximizar uma certa funcao objetivo,como a energia residual de seus nos sensores. Uma vez que o ACO exige uma grandequantidade de transmissoes, principalmente em aplicacoes de larga escala, a heurısticaproposta restringe a busca realizada pelo ACO internamente as comunidades.

2. Descricao do Protocolo

Seja 𝐺 = (𝑉,𝐸) um grafo nao direcionado que representa uma RSSF, isto e, 𝑉 e oconjunto de nos sensores e 𝐸 o conjunto de arestas de 𝐺 tal que (𝑣𝑖, 𝑣𝑗) ∈ 𝐸 se e so-mente se 𝑣𝑖 e 𝑣𝑗 sao capazes de efetuar comunicacoes sem fio. A primeira etapa doprotocolo consiste na deteccao de comunidades que e realizada por meio da adaptacaode uma tecnica conhecida como Label Propagation [Raghavan et al. 2007]. Assim comoem [Paulo et al. 2014], a deteccao de comunidades e realizada de forma distribuıda eassıncrona, utilizando somente informacoes locais sobre a vizinhanca1 de cada vertice.Em seguida, ocorre uma hierarquizacao das comunidades com relacao a EB, a qual con-siste na determinacao do menor numero de comunidades entre um vertice e a EB. Ahierarquizacao permite ainda a identificacao de vertices adjacentes a uma ou mais comu-nidades de menor nıvel. Um vertice com essa caracterıstica, denominado Virtual Sink(VS), sera um destino local para o roteamento em sua comunidade. Sendo assim, umasolucao para o problema de roteamento e representada por uma caminho factıvel entre 𝑣𝑖e algum VS de sua comunidade, de forma que todos os seus vertices pertencem a umamesma comunidade.

𝑝𝑖𝑗𝑑 =

⎧⎪⎪⎨⎪⎪⎩

𝜏𝑖𝑗𝑑∑

𝑘∈𝑁𝑖

𝜏𝑖𝑘𝑑se 𝑗 ∈ 𝑁𝑖,

0 se 𝑗 /∈ 𝑁𝑖.

(1) 𝑓(𝑤|𝑡) =1

|𝑤| ��(𝑤). (2)

Em cada vertice, mensagens de busca (MB) sao transmitidas periodicamente como objetivo de realizar passeios2 estocasticos em busca de um determinado VS de suacomunidade. Seja 𝑣𝑖 ∈ 𝑉 um vertice intermediario em um passeio com destino ao VS𝑣𝑑 ∈ 𝑉 . Se 𝜏𝑖𝑗𝑑 e a quantidade de feromonio verificada entre os vertices 𝑣𝑖 e 𝑣𝑗 , relativo

1A vizinhanca de um vertice 𝑣𝑖 e definida como o conjunto de vertices adjacentes a 𝑣𝑖 em 𝐺. Denota-setal conjunto por 𝑁𝑖.

2Um passeio entre 𝑣0 e 𝑣𝑛 de 𝑉 e uma sequencia finita 𝑤 = (𝑣0, 𝑞1, 𝑣1, . . . , 𝑣𝑛−1, 𝑞𝑛, 𝑣𝑛) tal que∀𝑘 ∈ {0, 1, . . . , 𝑛}, 𝑣𝑘 ∈ 𝑉 e ∀𝑖 ∈ {1, . . . , 𝑛}, 𝑞𝑖 ∈ 𝐸, tal que 𝑣𝑖−1 a 𝑣𝑖 sao seus vertices pontas. Ainda,|𝑤| representa a quantidade de vertices no passeio.

10

Page 17: ANAIS DO WoSiDA 2015

ao 𝑣𝑑, entao a probabilidade de transicao para 𝑣𝑗 , ou seja, a probabilidade de inclusao de𝑣𝑗 na solucao e dada pela Equacao (1).

Durante o processo de busca por novas solucoes, cada MB armazena a energia re-sidual dos vertices da solucao construıda ate o momento. Se 𝑤 = (𝑣𝑖, 𝑣1, 𝑣2, . . . , 𝑣𝑛, 𝑣𝑑),𝑒(𝑘) e ��(𝑤) sao, respectivamente, a solucao encontrada por uma MB, a porcentagem deenergia residual do vertice 𝑣𝑘 e a media das porcentagens de energia residual do passeio𝑤, entao o custo da solucao e dado pela Equacao (2). Considerando que |𝑤| esta relacio-nado com a probabilidade da ocorrencia de falhas de transmissao entre origem e destino,solucoes com um numero excessivo de vertices devem ser evitadas. Durante o processode retorno ao vertice origem, cada MB atualiza os feromonios dos vertices da solucao deacordo com a Equacao (3).

𝜏𝑖,𝑖+1,𝑑 = [1 + 𝑓(𝑤)] 𝜏𝑖,𝑖+1,𝑑, ∀𝑖 ∈ {0, 1, . . . , 𝑛}. (3)

No processo de roteamento de dados, cada replica do dado original e destinadaa um dos VSs pertencentes a comunidade do vertice origem. E funcao do VS enviardados recebidos de sua comunidade a uma comunidade de nıvel inferior. Ainda, replicasrecebidas de vertices pertencentes a comunidades de nıvel superior sao consideradas comodados gerados pela propria comunidade, ate que sejam entregues ao destino final porvertices adjacentes a EB.

3. Resultados e ConclusaoAvaliamos o desempenho do protocolo proposto, por meio do simulador OM-NeT++/Castalia, considerando um cenario composto por 1000 nos sensores distribuıdosaleatoriamente sobre uma area de 500𝑚× 500𝑚. A Figura 1 apresenta a eficiencia de ro-teamento obtida por uma abordagem baseada em ACO sem o uso de comunidades, deno-minada RACO (Routing protocol with ACO), em comparacao com o protocolo proposto,denominado CB-RACO (Community-Based Routing protocol with ACO). A metrica deeficiencia energetica utilizada mede a razao entre a quantidade total de mensagens utili-zadas por dois protocolos. Em especial, se os protocolos 𝑎 e 𝑏 efetuam, respectivamente,𝑇𝑋(𝑎) e 𝑇𝑋(𝑏) transmissoes, entao a eficiencia energetica de 𝑎 em relacao a 𝑏 e dadapela Equacao (4).

𝑊 (𝑎, 𝑏) =𝑇𝑋(𝑎)

𝑇𝑋(𝑏). (4)

Note que, para perıodos menores de envio de uma MB, a eficiencia de roteamentoobtida e maior do que 1, ou seja, o protocolo CB-RACO efetua uma quantidade inferior detransmissoes com relacao ao protocolo RACO. Dessa forma, a utilizacao de comunidadese hierarquizacao pode ser justificada pelo gasto energetico inferior apresentado quando oprotocolo necessita de uma atualizacao mais recorrente das solucoes. Apesar do aprimo-ramento na eficiencia energetica observado, a proposta ainda precisa de refinamentos umavez que os resultados obtidos para a confiabilidade de entrega ainda nao atingiram nıveisadequados.

4. AgradecimentosOs autores agradecem pelo apoio financeiro da Fundacao de Amparo a Pesquisa do Estadode Sao Paulo (FAPESP) e Coordenacao de Aperfeicoamento de Pessoal de Nıvel Superior

11

Page 18: ANAIS DO WoSiDA 2015

Figura 1. Eficiencia de roteamento dos protocolos RACO e CB-RACO. Cadacurva corresponde a eficiencia de roteamento obtida pela media de 5 simulacoesconsiderando-se uma determinada quantidade de replicas de dados e diferentesperıodos de envio de uma MB.

(CAPES).

ReferenciasDorigo, M., Birattari, M., and Stutzle, T. (2006). Ant colony optimization. Computational

Intelligence Magazine, IEEE, 1(4):28–39.

Dressler, F. and Akan, O. B. (2010). A survey on bio-inspired networking. ComputerNetworks, 54(6):881 – 900. New Network Paradigms.

GhasemAghaei, R., Rahman, M. A., Gueaieb, W., and El Saddik, A. (2007). Ant colony-based reinforcement learning algorithm for routing in wireless sensor networks. InInstrumentation and Measurement Technology Conference Proceedings, 2007. IMTC2007. IEEE, pages 1–6. IEEE.

Okdem, S. and Karaboga, D. (2006). Routing in wireless sensor networks using antcolony optimization. In Adaptive Hardware and Systems, 2006. AHS 2006. FirstNASA/ESA Conference on, pages 401–404.

Paulo, M. A. D., Nascimento, M. C., and Rosset, V. (2014). Rlp: A community detection-based routing protocol for wireless sensor networks. In Network Computing and Ap-plications (NCA), 2014 IEEE 13th International Symposium on, pages 237–244.

Raghavan, U. N., Albert, R., and Kumara, S. (2007). Near linear time algorithm to detectcommunity structures in large-scale networks. Physical Review E, 76(3):036106+.

Sha, K., Gehlot, J., and Greve, R. (2013). Multipath routing techniques in wireless sensornetworks: A survey. Wireless Personal Communications, 70(2):807–829.

Yang, J., Xu, M., Zhao, W., and Xu, B. (2010). A multipath routing protocol basedon clustering and ant colony optimization for wireless sensor networks. Sensors,10(5):4521–4540.

12

Page 19: ANAIS DO WoSiDA 2015

Uma Proposta Arquitetural de Sistema Autonomico paraReducao do Custo de Energia em Laboratorios de Informatica

Davi Cabral de Oliveira1, Leonardo O. Moreira1,Emanuel F. Coutinho1, Gabriel A. L. Paillard1

1Instituto Universidade Virtual (UFC Virtual)Universidade Federal do Ceara (UFC)

Fortaleza – CE – Brasil

[email protected], {leoomoreira,emanuel,gabriel}@virtual.ufc.br

Abstract. Smart Cities can use Internet for automating urban aspects, using fe-atures of Internet of Things. These concepts have played an important role inacademia and industry, with the development of applications that simplify pro-cesses and use devices for automation provisioning. In computer labs is commonto find idle computers that expend energy unnecessarily. This work aims to pro-pose an architecture to reduce idleness in computer labs, using the features ofSmart Cities and Internet of Things, and thus provide solutions that increase thecomputers lifespan bringing benefits such as reducing carbon emissions.

Resumo. Cidades Inteligentes podem utilizar Internet para a automatizacaode aspectos urbanos, empregando caracterısticas da Internet das Coisas. Estesconceitos tem desempenhado um papel importante na academia e industria, como desenvolvimento de aplicacoes que simplificam processos e utilizam dispositi-vos para o provimento da automatizacao. Em laboratorios de informatica e co-mum encontrar computadores ociosos que gastam energia desnecessariamente.Este trabalho tem como objetivo propor uma arquitetura para a reducao daociosidade em laboratorios de informatica, utilizando as caracterısticas de Ci-dades Inteligentes e Internet das Coisas, e assim proporcionar solucoes que au-mentam o tempo de vida dos computadores trazendo benefıcios como a reducaoda emissao de carbono.

1. Introducao e MotivacaoAs Cidades Inteligentes, ou melhor, Smart Cities, implementam um conceito que re-presenta o uso da Internet de modo mais promissor e voltado para, principalmente,automatizacao dos aspectos urbanos, empregando as caracterısticas da Internet das Coi-sas, do termo em ingles, Internet of Things (IoT) [Komninos et al. 2014]. Nos ultimosanos, Smart Cities tem desempenhado um papel importante tanto na academia quantona industria, com o desenvolvimento e implantacao de aplicacoes para simplificar algumprocesso de automatizacao por meio da Internet e o uso de dispositivos que interagemcom o objeto alvo da automatizacao [Petrolo et al. 2014]. Devido a variedade de disposi-tivos existentes e suas capacidades de se unirem a Internet, a popularidade do uso da IoTtem aumentado. Em um cenario tıpico de IoT existem varios dispositivos heterogeneosinterconectados por uma Rede de Sensores sem Fio (RSSF), onde cada dispositivo e res-ponsavel por um servico e cooperam com os demais para resolver algum problema deautomatizacao [Petrolo et al. 2014] [Auge-Blum et al. 2012].

13

Page 20: ANAIS DO WoSiDA 2015

Instituicoes de ensino e pesquisa podem se servir das Tecnologias de Informacaoe Comunicacao (TIC) como ferramenta para auxiliar em suas atividades. Dentre essastecnologias, destacam-se o uso dos laboratorios de informatica, de onde e possıvel encon-trar computadores ociosos e que gastam energia desnecessariamente [Perez et al. 2007].Diante desta problematica, este trabalho tem como objetivo propor uma arquitetura de sis-tema para a reducao da ociosidade dos computadores em laboratorios de informatica, uti-lizando as RSSFs que sao empregadas em cenarios caracterısticos de IoT e Smart Cities.Com isso, resultando em uma solucao que aumenta o tempo de vida dos computadorespor meio da reducao do seu desgaste ou uso desnecessario, alem da potencial reducao naemissao de carbono [Rajakaruna and Islam 2011] [Brebner et al. 2009].

2. Trabalhos Relacionados

[Sarmento et al. 2012] utilizaram RSSFs conjuntamente com dispositivos de Identificacaopor Radio Frequencia (RFID) para aplicacoes de educacao a distancia no contextoweb, monitorando ambientes experimentais de apoio ao aprendizado dos discentes.[Przybyla and Pegah 2007] ressaltam a preocupacao sobre ambientes onde ha ociosi-dade de computadores em laboratorios de informatica, enfatizando gastos com energiae emissao de gas carbonico e seus impactos no meio ambiente. O trabalho analisa inici-ativas para ambientes de computacao ecologicamente responsaveis e detalha passos paraque o uso de tecnologias sejam eficientes e sustentaveis. [Talebi and Way 2009] discu-tiram tecnicas para promocao da conscientizacao do impacto no meio ambiente do usodesnecessario de computadores no ambito educacional de uma universidade. Neste sen-tido, o trabalho serve de guia para o uso de tecnicas que envolvem professores e alunospara tornarem os laboratorios de informatica mais ecossustentaveis. Por fim, foram feitasavaliacoes empıricas de cada tecnica relatada e comparando sua eficacia em termos deenergia, reducao dos impactos ambientais e financeiros. Diante dos trabalhos relaciona-dos, ha uma escassez de uma arquitetura padrao para promover a reducao do gasto deenergia e os impactos no meio ambiente, caracterısticas contempladas neste presente tra-balho. Em [Sarmento et al. 2012] e proposto um ambiente de laboratorio de informaticapara auxiliar e promover o ensino mais eficaz. Apesar de utilizar sensoriamento e tecnicasde identificacao de usuarios, o trabalho nao leva em consideracao os impactos ambientaise o uso ineficiente da energia. As demais iniciativas relatadas sao voltadas para aplicacoesespecıficas ou descrever metodos para reducao do gasto de energia e seus impactos ambi-entes em laboratorios de informatica.

3. Arquitetura

A arquitetura foi projetada para prover distribuicao dos recursos computacionais ecolaboracao. Como exemplo dos recursos computacionais que sao utilizados na solucaopode-se citar: sensores, uma aplicacao para reunir os dados coletados pelos sensores e to-mar alguma decisao, aplicacoes que servem de atuadores nos computadores do laboratoriode informatica e a aplicacao mobile que exibe uma visao geral do dos laboratorios.

A Figura 1 ilustra a visao geral da arquitetura e que pode ser dividida em quatrogrupos de grandes componentes. O primeiro grupo possui todos os sensores envolvidosna coleta de dados do ambiente de cada laboratorio de informatica. O proximo grupo, de-nominado Controlador de Laboratorio, e aquele que coordena as acoes a serem realizadas

14

Page 21: ANAIS DO WoSiDA 2015

Laboratório 1

Controlador do Laboratório 1

Computadores do Laboratório 1

Machine Controller

1

Machine Controller

2

Machine Controller

N

Coordinator Controller

...

Sensores do Laboratório 1

Sensor 1

Sensor 2

Sensor N

...

Interface Mobile

Laboratório 2 Laboratório N...

Coordinator Controller

Coordinator Controller

Administrador dos Laboratórios

Figura 1. Visao Geral da Arquitetura Proposta

nos computadores e e responsavel por agrupar todas as informacoes providas pelos senso-res que estao inseridos no laboratorio. Alem disso, o Coordenador de Laboratorio possuitodas as regras de negocio de automatizacao. As regras de negocio e processamento dosdados monitorados estao contidos no componente Coordinator Controller. O terceirogrupo, chamado de Computadores do Laboratorio, e composto por todas as maquinas quesao utilizadas pelos usuarios do laboratorio. Cada computador do laboratorio, exceto oque possui o Coordinator Controller, tem instalado o componente denominado MachineController. Este componente e responsavel por interagir com o computador a mando doCoordinator Controller. Alem disso, tambem e responsavel por resgatar informacoes so-bre o computador e envia-las para o Coordinator Controller. Por fim, o ultimo grupo ecomposto apenas da Interface Mobile utilizada pelo administrador dos laboratorios. Nesteultimo grupo que e composto de uma aplicacao mobile pode-se obter as informacoes desensoriamento e estado dos computadores de todos os laboratorios de informatica queestao sob a responsabilidade de gestao do administrador.

4. Aspectos FuncionaisDo ponto de vista dos aspectos funcionais, muitas das acoes do sistema tem caracterısticaautonomica. Como visto na arquitetura proposta, por exemplo, o administrador do labo-ratorio pode intervir no desligamento dos computadores. No entanto, o sistema pode rea-lizar esta acao sem intervencao humana, empregando para este fim os atuadores presentesnos computadores, os sensores e os algoritmos que estimam a presenca de um usuarioem um determinado computador. As funcionalidades que podem ser implementadas naarquitetura proposta sao: (1) Listar os laboratorios de informatica: visualizacao, por partede todos os laboratorios que estao vinculados ao sistema; (2) Visualizar o estado de umlaboratorio de informatica: visao de quais computadores estao ligados ou desligados, tem-peratura do laboratorio, luminosidade e frequencia dos sensores de presenca; (3) Desligarcomputadores inativos: por meio do monitoramento do laboratorio, o sistema pode consi-derar que um computador esta inativo. Uma alternativa seria verificar se a frequencia dossensores de presenca esta baixa, numero pequeno de processos em execucao no computa-dor e analisar se a luminosidade esta inferior a um determinado valor estabelecido. Estepoderia ser um cenario onde alguns computadores estao ligados em um laboratorio sem

15

Page 22: ANAIS DO WoSiDA 2015

utilizacao. O sistema deve desligar esses computadores sem a intervencao humana; (4)Desligar um computador: e a funcionalidade onde o administrador, por meio da InterfaceMobile, desliga um computador selecionado.

5. Conclusoes e Trabalhos FuturosEste artigo apresentou uma proposta arquitetural com o objetivo de reduzir o custo deenergia em laboratorios de informatica, evitando que os computadores fiquem ociosos,reduzindo seu desgaste. Os aspectos funcionais, que podem ser implementados nos sis-temas que se servem desta arquitetura, tambem foram detalhados. Alguns trabalhos cor-relatos foram descritos e discutidos diante das caracterısticas abordadas neste presentetrabalho. E valido ressaltar que este artigo nao tem a pretensao de desenvolver e avaliaro sistema, mas projetar e propor uma arquitetura generica de sistema que possa ser utili-zada para atingir o objetivo desta proposta. Como trabalhos futuros pretende-se agregarna arquitetura proposta a possibilidade de se inserir ambientes alem de laboratorios deinformatica, como salas de aulas convencionais onde a automatizacao se daria no con-trole do sistema de refrigeracao e tambem na iluminacao ambiente. Por fim, pretende-setambem implementar e avaliar a arquitetura proposta neste trabalho.

ReferenciasAuge-Blum, I., Boussetta, K., Rivano, H., Stanica, R., and Valois, F. (2012). Capillary

networks: A novel networking paradigm for urban environments. In UrbaNe ’12,pages 25–30, New York, NY, USA. ACM.

Brebner, P., O’Brien, L., and Gray, J. (2009). Performance modelling power consumptionand carbon emissions for server virtualization of service oriented architectures (soas).In EDOCW ’09, pages 92–99.

Komninos, N., Tsarchopoulos, P., and Kakderi, C. (2014). New services design for smartcities: A planning roadmap for user-driven innovation. In WiMobCity ’14, pages 29–38, New York, NY, USA. ACM.

Perez, A. A., Gracia, D. S., and Yufera, V. V. n. (2007). A proposal to introduce powerand energy notions in computer architecture laboratories. In WCAE ’07, pages 52–57,New York, NY, USA. ACM.

Petrolo, R., Loscrı, V., and Mitton, N. (2014). Towards a smart city based on cloud ofthings. In WiMobCity ’14, pages 61–66, New York, NY, USA. ACM.

Przybyla, D. and Pegah, M. (2007). Dealing with the veiled devil: Eco-responsible com-puting strategy. In SIGUCCS ’07, pages 296–301, New York, NY, USA. ACM.

Rajakaruna, S. and Islam, S. (2011). Building a state of the art laboratory for teaching andresearch in renewable electric energy systems and microgrids. In Power and EnergySociety General Meeting, 2011 IEEE, pages 1–6.

Sarmento, W. W. F., Paula, P. S., Filho, P. T. C. P., Paillard, G. A. L., Souza, J. N., Barroso,G. C., and Pequeno, M. C. (2012). u-lab: A ubiquitous computing based architecture tolabs works using wireless sensor network and radio-frequency identification. In EATIS’12, pages 260–266, New York, NY, USA. ACM.

Talebi, M. and Way, T. (2009). Methods, metrics and motivation for a green computerscience program. SIGCSE Bull., 41(1):362–366.

16

Page 23: ANAIS DO WoSiDA 2015

Avaliando o Impacto da Disseminação Assíncrona deOperações na QoS de Bases de Dados Replicadas

Fabiola de Lima Moreira1, Alírio Santos de Sá1, Allan Edgard Silva Freitas2

1Laboratório de Sistemas Distribuídos (LaSiD) / Departamento de Ciência da ComputaçãoInstituto de Matemática / Universidade Federal da Bahia (UFBA)

Campus de Ondina, Avenida Adhemar de Barros, 40.170-110 - Salvador - BA - Brasil

2Instituto Federal de Educação, Ciência e Tecnologia da Bahia (IFBA)Campus de Salvador, Rua Emídio dos Santos, 40.301-015 - Salvador - BA - Brasil

[email protected],[email protected],[email protected]

Abstract. Large-scale applications, that requires low response time and do notuse sensible data, may use replication mechanisms with eventual data consis-tency guarantees. Such mechanisms are used in Lazy Master replication schemato reduce load of update messages between the replicas, improving responsetime, but increasing inconsistency window. This work evaluates such mecha-nism, in order to develop, as a future work, a self-management mechanism forfollowing a trade-off between response time and inconsistency window on a re-plicated database.

Resumo. Aplicações baseadas em ambientes de larga escala, mas que deman-dam baixo tempo de resposta e não manuseiam dados sensíveis podem utilizarmecanismos de replicação com garantias de consistência eventual. Mecanis-mos como a disseminação assíncrona provêm esse tipo de consistência de modoa reduzir a carga de mensagens de atualização entre as réplicas e melhoraro tempo de resposta, mas aumentando a janela de inconsistência. Este traba-lho apresenta uma avaliação do impacto do ajuste do timeout da disseminaçãoassíncrona no desempenho de banco de dados replicados. O objetivo desta ava-liação é o desenvolvimento futuro de um mecanismo de auto-gestão que permitauma relação de compromisso adequada entre o tempo de resposta e a janela deinconsistência em um ambiente de banco de dados replicado.

1. IntroduçãoAplicações baseadas em ambientes de larga escala, como a Internet, podem utilizar bancosde dados replicados para atender a requisitos de disponibilidade. Entretanto, os mecanis-mos de replicação podem comprometer o desempenho quando as réplicas precisam estarcom os seus dados sempre consistentes e atualizados.

Muitas dessas aplicações, como, por exemplo, redes sociais, demandam baixotempo de resposta e não manuseiam dados sensíveis. Estas aplicações podem tolerar umtipo de consistência fraca chamada de consistência eventual. Este modelo de consistênciaassume que, a partir de dado momento, todas as réplicas retornam a mesma informação[Bailis and Ghodsi 2013]. Por ser um requisito fundamental, o tempo de resposta é consi-derado uma das métricas principais para definir o nível de qualidade do serviço oferecido

17

Page 24: ANAIS DO WoSiDA 2015

[Lin et al. 2013]. Desta forma, é importante garantir um tempo de resposta adequado,apesar das incertezas inerentes a um ambiente de banco de dados distribuído.

A replicação gera uma carga adicional de mensagens para propagação das atuali-zações entre as réplicas. A disseminação periódica de mensagens em lotes, denominadadisseminação assíncrona, reduz o número de mensagens geradas para realizar a replica-ção, diminuindo o tráfego e o processamento necessário para criação de mensagens, emelhorando o tempo de resposta das requisições, mas implica em uma janela maior deinconsistência dos dados.

Este trabalho apresenta uma avaliação do impacto da disseminação assíncrona napropagação das transações entre as réplicas e no tempo de resposta das requisições. Apartir dos resultados encontrados, será proposto, em trabalhos futuros, um mecanismode auto-gestão para manutenção do tempo de resposta das requisições de leitura em umambiente de banco de dados distribuído.

2. Estratégia de replicaçãoA estratégia de replicação ora adotada é uma variação da estratégia lazy master. Na estra-tégia lazy master, qualquer réplica pode responder requisições de leitura. Para requisiçõesde escrita, uma réplica denominada master é atualizada pela transação original e depoispropaga a atualização para as outras réplicas de maneira assíncrona, com uma transaçãopara cada réplica [Gray et al. 1996]. A variação do modelo original lazy master ocorre nadisseminação. Esta, ao invés de ocorrer instantaneamente, a disseminação será efetuadaapós um intervalo de tempo, chamado de ∆, que representa o tempo limite que a réplicamaster espera para propagar as requisições de escrita para as outras réplicas.

(a) Original (b) Disseminação assíncrona

Figura 1. Propagação de transações na Replicação Lazy Master

A Figura 1 compara, em um exemplo, o número de mensagens criadas com LazyMaster padrão e com a disseminação assíncrona. Com a disseminação assíncrona, a ré-plica master pode agrupar as três transações em uma única mensagem para cada réplica,enviando tão somente duas mensagens, ao invés de seis. Para garantir a funcionalidadedessa estratégia de replicação de dados, consideramos algumas premissas inerentes ao am-biente: (i) O tráfego de mensagens é feito por canais confiáveis com ordem FIFO (FirstIn First Out); (ii) Os processos do sistema podem falhar por crash, e desta forma desviosarbitrários do comportamento de um processo (falhas bizantinas) não são previstos e to-lerados pelo mecanismo de replicação ora apresentado; e (iii) O sistema é parcialmentesíncrono, ou seja o ‘comportamento síncrono’ se estabelece a partir de um dado momentoe durante períodos de tempo suficientemente longos para a execução do serviço, de acordocom a hipótese de tempo global de estabilização GST [Dwork et al. 1988].

18

Page 25: ANAIS DO WoSiDA 2015

3. Experimento e resultadosPara avaliar o impacto da disseminação assíncrona no tempo de resposta de leitura, foiutilizado como base o protótipo desenvolvido por [Oliveira 2014]. Nesse protótipo, obanco de dados H2Database foi adaptado para se tornar um banco de dados relacionaldistribuído e replicado com estratégia de replicação adaptativa em que o usuário podedefinir qual estratégia de replicação deseja: replicação ativa ou passiva. Modificamos areplicação passiva para utilizar a disseminação assíncrona, definindo-se o parâmetro ∆.

(a) Tempo médio de resposta (b) Vazão

Figura 2. Medição de tempo de resposta e vazão por minuto

A carga de cada experimento é composta por blocos de execução com 1 minutode duração cada. Os blocos são compostos por conjuntos de operações de atualização deuma única linha em uma tabela com 150 mil registros, envolvendo o maior número derequisições possível. Como fator de medição, foi atribuído a ∆ os valores 5, 50, 100,150, 300, 400, 500 e 1000 milissegundos. Foram executados 3 blocos para cada um dosvalores possíveis de ∆. A Figura 2 mostra o resultado dos experimentos realizados. Apartir dos dados obtidos, é possível verificar que:

• O timeout ∆ influencia no desempenho do banco de dados replicado, medido emtermos da vazão (medida em operações finalizadas por minuto) e do tempo deresposta (medido em milissegundos).

• Quanto maior ∆, menor o tempo médio de resposta. Entretanto, o tempo de res-posta por requisição possui uma variabilidade muito alta em relação a sua média,impossibilitando afirmar a eficiência de um possível mecanismo de regulação detempo de resposta a partir do ajuste de ∆.

• A vazão média do sistema é proporcional ao aumento de ∆ e ao aumento donúmero de clientes. A vazão possui uma variabilidade pequena em relação a suamédia. A partir do aumento do ∆ é possível retirar o sistema de uma situaçãosobrecarga, permitindo o aumento da vazão até um ponto no qual a vazão médianão se altera (ou varia muito pouco com o aumento de ∆).

O timeout de disseminação ∆ também causa impacto na janela de inconsistência,a qual é estimada a partir do tempo decorrido entre a atualização da réplica primária e omomento em que esta réplica toma ciência de que todas réplicas possuem o dado atuali-zado – para isto, cada réplica envia uma mensagem à réplica primária assim que efetuaa atualização de seu estado. Para avaliar o impacto de ∆ na janela de inconsistência, fo-ram realizados experimentos com as mesmas características descritas anteriormente. AFigura 3 apresenta o comportamento da janela de inconsistência (medida em milissegun-dos) para os experimentos com valores de ∆ iguais a 5, 50 e 100 milissegundos e comcarga de requisições geradas por 50 clientes.

19

Page 26: ANAIS DO WoSiDA 2015

Figura 3. Janela de inconsistência de requisições geradas por 50 clientes

Apesar do valor de ∆ ter sido fixado em cada experimento, é possível observaruma variação do tamanho da janela no tempo (ver Figura 3). Isto ocorre porque a quan-tidade de requisições geradas foi superior a capacidade do banco de respondê-las. Porconta disto, as requisições foram enfileiradas, implicando em um aumento gradual da ja-nela de inconsistência no tempo. Apesar disso, é possível notar que a variação do valorde ∆, em cada experimento, possui um impacto significativo na janela de inconsistência,permitindo que a relação entre os mesmos (janela de inconsistência e ∆) seja consideradana implementação de um mecanismos de auto-gestão.

4. Considerações finaisOs resultados indicam que há uma relação de compromisso entre o valor do parâmetro ∆utilizado na disseminação assíncrona, o tempo de resposta e a janela de inconsistência:quanto maior ∆, menor o tempo de resposta, porém maior a janela de inconsistência, ouseja, o tempo em que as réplicas demoram para convergir ao estado consistente. Apesardos números absolutos dos experimentos serem maiores do que o usualmente esperado, érelevante analisar o comportamento dos dados diante da situação encontrada. Essa relaçãode compromisso contudo pode variar de acordo com a aplicação e a carga de trabalho.Desta forma, mecanismos de auto-gestão são importantes para conseguir manter a nívelde serviço desejado. A partir desta análise, um mecanismo de auto-gestão será proposto,utilizando a disseminação assíncrona para manter um nível de serviço adequado a umarelação de compromisso desejada entre o tempo de resposta e a janela de inconsistência.

ReferênciasBailis, P. and Ghodsi, A. (2013). Eventual consistency today: limitations, extensions, and

beyond. Commun. ACM, 56(5):55–63.

Dwork, C., Lynch, N., and Stockmeyer, L. (1988). Consensus in the presence of partialsynchrony. Journal of the ACM, 35(2):288–323.

Gray, J., Helland, P., O’Neil, P., and Shasha, D. (1996). The dangers of replication and asolution. SIGMOD Rec., 25(2):173–182.

Lin, J.-W., Chen, C.-H., and Chang, J. (2013). Qos-aware data replication for data-intensive applications in cloud computing systems. Cloud Computing, IEEE Tran-sactions on, 1(1):101–115.

Oliveira, B. (2014). An Online Adaptive Replication Environment for a Relational Data-base Management System. Monografia, Instituto Federal da Bahia, Especialização emComputação Distribuída e Ubíqua.

20

Page 27: ANAIS DO WoSiDA 2015

Adicionando CBR na Gerencia Autonomica de Redes

Romildo Martins da Silva Bezerra1, Joberto Sergio Barbosa Martins2

1GSORT – IFBASalvador – Bahia – Brasil

2NUPERC – UNIFACSSalvador – Bahia – Brazil

[email protected], [email protected]

Abstract. The analysis and planning phases are, typically, the most critical onesin the autonomic management cycle. In effect, they concentrate the manage-ment expertise representing the knowledge acquired by humanmanagers. Inthis context, autonomic management systems may use a Case-based Reasoningapproach in order to find, dynamically, solutions for the network in a feasiblecomputational time. This paper proposes a knowledge representation of networkstates to be used by a scalable CBR implementation allowing storage/ retrievalof network states with reduced search time.

Resumo. No ciclo de gerencia com caracterısticas autonomicas em redes, asfases de analise e planejamento apresentam-se mais crıticas, pois concentrama experiencia e conhecimento dos administradores de rede. Para um sistemade gerencia com caracterısticas autonomicas encontrar dinamicamente umasolucao em um tempo de computacao factıvel, em geral,e necessario adotarabordagens baseadas em raciocınio e aprendizagem. O objetivo deste artigoefazer uma proposta para a representacao de conhecimento atraves de estadosde rede a ser utilizada numa solucao de Raciocınio Baseado em Casos (CBR)visando uma solucao de gerencia com caracterısticas autonomicas. A solucaoproposta apresenta o armazenamento/recuperacao dos estados de rede de formaadaptavel e flexıvel, permitindo a reducao do tempo de busca e escalabilidade.

1. IntroducaoEm um sistema autonomico e desejavel que sua estrutura possua um historico de de-cisoes tomadas para que as informacoes armazenadas sirvam de apoio na analise de novassolucoes. Espera-se que esta nova solucao possa gerar um estado satisfatorio no que dizrespeito ao atendimento dos SLAs da rede gerenciada, semprequando possıvel. Por outrolado, o armazenamento das informacoes pertinentes ao estado atual de uma rede e deseus dispositivos podera aumentar a complexidade da gerencia autonomica, devidoa altagranularidade de informacoes coletadas e grande quantidade de dispositivos gerenciados.Assim, existe a necessidade de especificar novas solucoes considerando:

• A especificacao de um motor de busca de solucoes, que permita modelar o conhec-imento no contexto da gerencia de redes de computadores, operando com baixaaquisicao de conhecimento e evitando a repeticao de erros ocorridos no passado.

• Uma base de informacao que possibilite a representacao das informacoes de formaflexıvel, permitindo a adaptacao das informacoes relevantes da estrategia utilizadae uma recuperacao de dados em tempo factıvel.

21

Page 28: ANAIS DO WoSiDA 2015

2. CBR e Sistemas AutonomicosNa busca de novas solucoes, um modelo autonomico deve incorporar tecnicas de apren-dizagem e raciocınio (learning and reasoning techniques) para garantir as propriedadesauto-* [Jennings et al. 2007][Algomine 2011]. Segundo [Dobson et al. 2006], durante afase de analise e planejamento diversas tecnicas podem ser utilizadas tais como inferencia,teoria dos jogos, modelos economicos, analise de risco, dentre outras.

A correlacao de eventos tambem pode ser uma tecnica utilizada para gerencia-mento autonomico de redes de computadores [Martin-Flatin et al. 2007],uma vez queela utiliza experiencias passadas para encontrar solucoes atraves de tecnicas como RBR(Rule-Based Reasoning) e CBR (Case-Based Reasoning) [Martin-Flatin et al. 2007]. OCBR e uma abordagem para resolucao de problemas que tem a habilidade de se adaptarautomaticamente para encontrar novas solucoes baseadas em casos passados, diferente-mente do RBR.

O funcionamento do CBRe similara forma humana de resolucao de problemas,ja que os mesmos sao resolvidos com base em experiencias anteriores (case based) e emsuas respectivas similaridades. Para tanto, o CBR faz uso do Algoritmo dos 4R’s querepresentamretrieve, reuse, revisee retain [Aamodt and Plaza 1994].

O paradigma de CBR envolve raciocınio atraves do armazenamento de um casoe sua respectiva solucao, para a apoioa resolucao de problemas novos. O CBRpode ser indicado para situacoes onde:(i) seja impossıvel entender completamente osdomınios; (ii) quando os fatores de sucesso de uma solucao nao podem ser modela-dos de forma explıcita. Em geral a utilizacao de CBR oferece as seguintes vantagens[Shiu and Pal 2004]:(i) Reducao da tarefa de aquisicao de conhecimento;(ii) Evitarepeticao de erros do passado;(iii) Proporciona flexibilidade na modelagem do conhec-imento;(iv) Raciocınio em um domınio com pouco conhecimento;(v) Raciocınio comdados incompletos ou imprecisos.

Apesar de nao ser considerado como um novo paradigma de inteligencia ar-tificial, o CBR vem sendo recentemente utilizado para resolverproblemas de altacomplexidade como a gerencia autonomica de redes [Samaan and Karmouch 2004][Samaan and Karmouch 2005]. Ao considerar a computacao autonomica, abordagensrecentes sugerem o uso deste paradigma em sistemas autonomicos para melhorar aeficiencia de tais sistemas [Khan et al. 2008].

3. Aplicando CBR na Gerencia Autonomica de Redes3.1. Mapeamento de um CasoUm caso tipicamente corresponde ao armazenamento de uma tupla problema/solucao queocorreu no passado. Desta forma, no contexto autonomico de rede de computadores, umcaso (ci) e composto por um problema encontrado no ambiente gerenciado (pi) e por umasolucao para este problema (si), descrito da seguinte forma:ci = {pi, si}. Para adaptarum casoa gerencia autonomica de redes, o caso foi estendido correspondea seguintetupla: ci = {tpi, tri, npti, qsi, nsi, tsi, ci}, onde: tpi – representa a topologia da redegerenciada;tri – representa o trafego da rede gerenciada;npti – representa os possıveisparticionamentos da rede;qsi – indica a qualidade da solucao proposta;nsi –indica onumero de ocorrencia de um casoci; tsi – indica o tempo daultima ocorrencia de umcaso;ci – indica o percentual do custo computacional da solucao;

22

Page 29: ANAIS DO WoSiDA 2015

3.2. A Representacao do Conhecimento

Para que a utilizacao da representacao do conhecimento atraves do CBR seja possıvel, enecessaria a utilizacao de um metodo capaz de armazenar/indexar as informacoes. Emgeral, os casos podem ser considerados como experiencias contextualizadas,uteis paraque os objetivos sejam alcancados. Portanto, a representacao do caso pode ser vista comoa tarefa capaz de permitir a utilizacao de as suas experiencias passadas. Ao considerara representacao de um caso,e de fundamental importancia observar dois pontos:(a) osmodelos conceituais que sao usados para projetar e representar casos, especificados naSecao 1 e(b) os meios de implementacao das informacoes no computador (como porexemplo, em uma tabela relacional num SGBD). Desta forma, a escolha de um metodopara a representacao e indexacao de um casoe essencial, porque fornece a estrutura debase para utilizacao de CBR em sistemas autonomicos.

Como visto, um caso consiste em duas partes: problema e solucao. Cada partepode ser dividida em componentes menores que podem seruteis para tarefas de raciocıniodependendo do problema a ser tratado. No contexto deste artigo, sao necessariasinformacoes refentesa topologia, ao trafego e aos requisitos esperados pelo administrador.

Uma tecnica comumente usada para representacao de um casoe a abordagem debanco de dados relacional. Este modeloe simples e flexıvel e tem sido amplamente ado-tado em muitas aplicacoes de raciocınio baseado em casos [Shiu and Pal 2004]. Cadaobjetoe representado por uma linha de uma tabela relacional onde ascolunas sao usadospara definir os atributos (ou campos) dos objetos, sejam elesinformacoes da rede gerenci-ada ou dados. Assim como a representacao de um caso, poderıamos dividir a(s) tabela(s)em: descricao do problema e parte da solucao. Se o caso tem muitas relacoes com variosobjetos ou se o caso pode ser dividido em subcasos, uma rede derelacionamentos poderaser desenvolvida e modelada num SGBD.

De fato, o banco de dados relacional pode reduzir a redundancia de armazena-mento, bem como melhorar a eficiencia de recuperacao [Shiu and Pal 2004]. Uma van-tagem deste modeloe que ele apresenta uma visao de varios lados dos casos a partirda possibilidade de relacionamento dos dados de forma mais natural. Desta forma, ummetodo de armazenamento com a utilizacao de banco de dados viabiliza a relacao en-tre as informacoes e ainda tem como vantagens: compartilhamento de dados, suporte amultiplas visoes; reducao da redundancia de dados, minimizacao da inconsistencia, su-porte a transacoes e atomicidade, manutencao da integridade dos dados e flexibilizacaona representacao [Elmasri and Navathe 2003]. A representacao desenvolvida com autilizacao de banco de dadose apresentada na Figura 1. No entanto, este modelo derepresentacao tem a desvantagem de consumir tempo e energia consideraveis para o de-senvolvimento de um modelo de banco de dados relacional paraa representacao de umcaso.

4. Consideracoes Finais

A utilizacao do CBR possibilitou uma melhoria na eficiencia e flexibilidade na buscade novas solucoes. Flexibilidade, pois um problema pode estar em diferentes contextos.Eficiencia, com a reducao do domınio de casos-base nao relevantes no contexto atual(fruto de mudanca topologica ou baixa ocorrencia de casos). Por outro ladoe necessarioinvestigar questoes como auto-estabilizacao e escalabilidade.

23

Page 30: ANAIS DO WoSiDA 2015

Figure 1. Modelo de dados para tomada de decis oes

ReferencesAamodt, A. and Plaza, E. (1994). Case-based reasoning: foundational issues, methodological

variations, and system approaches.AI Commun., 7(1):39–59.

Algomine, N. (2011). Introduction to autonomic concepts applied to future self-managed net-works. In Algomine, N., editor,Autonomic Network Management Principles Form Concepts toApplications, pages 1–26. Elsevier.

Dobson, 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 communications.ACM Trans.Auton. Adapt. Syst., 1(2):223–259.

Elmasri, R. and Navathe, S. B. (2003).Fundamentals of database systems. Benjamin-CummingsPublishing Co., Inc., Redwood City, CA, USA.

Jennings, B., van der Meer, S., Balasubramaniam, S., Botvich, D., Foghlu,M., Donnelly, W., andStrassner, J. (2007). Towards autonomic management of communications networks.Commu-nications Magazine, IEEE, 45(10):112–121.

Khan, M. J., Awais, M. M., and Shamail, S. (2008). Enabling self-configuration in autonomicsystems using case-based reasoning with improved efficiency. InICAS ’08: Proceedings ofthe Fourth International Conference on Autonomic and Autonomous Systems, pages 112–117,Washington, DC, USA. IEEE Computer Society.

Martin-Flatin, J. P., Jakobson, G., and Lewis, L. (2007). Event correlation in integrated manage-ment: Lessons learned and outlook.J. Netw. Syst. Manage., 15(4):481–502.

Samaan, N. and Karmouch, A. (2004). A case-based reasoning approach for automated manage-ment in policy-based networks. In Sahai, A. and Wu, F., editors,Utility Computing, volume3278 ofLecture Notes in Computer Science, pages 76–87. Springer Berlin - Heidelberg.

Samaan, N. and Karmouch, A. (2005). An automated policy-based management framework fordifferentiated communication systems.Selected Areas in Communications, IEEE Journal on,23(12):2236–2247.

Shiu, S. and Pal, S. K. (2004).Foundations of Soft Case-Based Reasoning. John Wiley & Sons.

24

Page 31: ANAIS DO WoSiDA 2015

PATROCÍNIO OURO

PATROCÍNIO PRATA

PROMOÇÃO REALIZAÇÃO PRODUÇÃO

PATROCÍNIO BRONZE

PATROCÍNIO DIAMANTE

COLABORAÇÃO