• Nenhum resultado encontrado

Regulação de período de monitoramento (proposta RBL)

B.1 Resumo das variáveis usadas pelo protocolo autonômico de comunicação em

4.3 Regulação de período de monitoramento (proposta RBL)

1

use the Equation4.19 to compute K pk; 2

use the Equation4.15 to compute RCk; 3 obtain RCD; 4 obtain errork= RCD− RCk; 5 compute λk= λk−1+ K p ∗ errork; 6 if λk< λLthen λk= λL; 7 if λk> λU then λk= λU; 8 δk= 1 λk ; 9 end event 10

de consumo de recursos atual (RCk); (iii) o desvio entre o percentual atual e o desejado (i.e.

error) é enviado para o controlador proporcional, o qual estima o período de monitoramento; (iv) o tempo de detecção máximo (T DU) é usado para determinar o limite superior do período de monitoramento.

Figura 4.12. Diagrama em blocos do mecanismo de regulação de período RBL

4.3.3.5 Proposta 2 - RBS: Regulação baseada em linearização simples 4.3.3.5.1 Caracterização do consumo de recursos no ambiente

A abordagem RBS abstrai o ambiente como um sistema caixa preta (BBS, Black-Box Sys- tem). Assim, assumindo essa modelagem de serviço baseado em caixa-preta, pode-se conside- rar que processo monitor submete uma requisição de serviço (i.e. uma mensagem de “are you

alive?”) e recebe uma resposta a requisão (i.e. uma mensagem de heartbeat com o estado do processo monitorado) de BBS15.

A idéia básica nesta abordagem é determinar a relação entre os tempos de respostas de BBS e os períodos de monitoramento do detector, usando equações lineares. Para tanto, considera-se que uma variação no tempo de resposta equivale a uma variação proporcional no percentual de consumo de recursos em BBS. Da mesma forma, uma variação no período de monitoramento equivale a uma variação proporcional no percentual do consumo de recursos relacionado ao custo da detecção em BBS. O gestor autonômico conhece apenas BBS, ignorando a existência dos demais processos ou aplicações que usem o serviço de BBS. Portanto, o mesmo supõe que o percentual de consumo de recursos estimados a partir da variação dos tempos de respostas e aquele estimado a partir da variação do período de monitoramento sejam equivalentes. Então, a partir dessa equivalência, obtém-se a relação entre os períodos de monitoramento e os tempos de respostas de BBS. Todos esses pontos são apresentados com mais detalhes a seguir.

Para realizar uma estimativa da capacidade de execução de BBS, o gestor autonômico as- sume o atraso mínimo (dL) como uma indicação do tempo de serviço de BBS. Este tempo de serviço é mais tarde usado como uma referência para estimar o percentual de consumo de recur- sos do sistema. Similarmente à abordagem RBL, nesta modelagem baseada em caixa preta, o gestor autonômico assume dE como uma indicação do tempo de resposta atual de BBS, e como tal, o tempo de resposta varia de acordo com o número de requisições de serviço.

Figura 4.13. Relação entre o atraso de iteração e o consumo de recursos

Assim, o gestor autonômico supõe que a variação do percentual de consumo de recursos em função da variação do atraso (i.e. tempo de resposta) é linear, podendo ser descrita conforme a reta (ver Figura 4.13):

RCk= RC

U− RCL

dU− dL ∗ (d E

k − dL) + RCL (4.20)

em que RCU e RCL representam, respectivamente, os percentuais de consumo de recursos má-

ximo e mínimo. Observe que, uma vez que RC ∈ [0, 1], é possível assumir RCU = 1 e RCL = 0.

Figura 4.14. Relação entre o período de monitoramento e o consumo de recursos.

Além disso, o gestor autonômico também assume que a variação do percentual de consumo do recursos influenciado pelo período de monitoramento também é uma reta (ver Figura 4.14). Deste modo, o percentual de consumo de recursos em função do período é dado por:

RCk= RC

U− RCL

δU− δL ∗ (δk−1− δ

L) + RCL (4.21)

em que δU e δL são, respectivamente, os períodos de monitoramento máximo e mínimo – am- bos obtidos a partir do tempo de detecção mínimo estimado e do tempo de detecção máximo especificado pelo usuário16.

Igualando as equações 4.20 e 4.21: dkE =δ U− δ k−1 δU− δL ∗ (d U− dL) + dL (4.22) Calculando a taxa de variação (i.e. derivada) de dE em função de δ, tem-se:

∆dE ∆δ = −

dU− dL

δU− δL (4.23)

Em relação a um processo monitor pi, quando se observa o comportamento da variação

de d no BBS em relação a variação de δ, é possível calcular o relacionamento entre a entrada (u = ∆δ) e a saída (y = ∆dE) do BBS usando um modelo linear ARX:

yk+1= yk−

( dU− dL

δU− δL )

∗ uk (4.24)

Na Seção A.1.3 do Apêndice A podem ser encontrados maiores detalhes sobre o modelo ARX apresentado na Equação 4.24.

4.3.3.5.2 Lógica do laço de controle

Sendo RCD∈ (0, 1) o percentual de consumo máximo de recursos desejado em relação a pi. Então, o gestor autonômico calcula a diferença entre RCD e RCk (Equação 4.20), isto é

errork= RCD− RCk. Quando errork> 0, RCkestá abaixo do esperado, então δ é decrementado

para permitir uma detecção mais rápida. Quando errork< 0, RCké maior que o esperado, então

δ é incrementado para consumir menos recursos e evitar falsas suspeitas.

4.3.3.5.3 Projeto e sintonia do controlador

A regulação do período na proposta RBS é realizada usando um controlador Proporcional- Integral (PI) (Hellerstein et al., 2004). Este controlador produz uma ação de controle (variação

de δ) proporcional à diferença entre RCD e RCk, somada a uma ação de controle referente à integração de tal diferença no tempo. Um controlador PI usa a seguinte lei de controle (Ogata, 1995): uk= K p ∗ errork+ Ki ∗ ∆t ∗ k−1

x=0 errorx (4.25)

em que ∆t é o intervalo de tempo entre a ativação atual e a última ativa do controlador e K p e Kisão os ganhos proporcional e integral do controlador, respectivamente.

Assim como no caso da proposta RBL, a sintonia do controlador PI consiste em encontrar os valores dos ganhos K p e Ki de modo a atender aos requisitos de desempenho do controle. As mesmas considerações feitas para a sintonia do controlador P, são válidas também para a sintonia do controlador PI. Portanto, para este controlador também utiliza uma lei de adaptação para os ganhos K p e Ki.

A configuração inicial usa as equações 4.24 e 4.25 para obter as funções de transferência em

Z

: P(z) = ( dU− dL δU− δL ) z− 1 e C(z) = KP+ KI∗ ∆t ∗ z z−1

em que P(z) e C(z) representam o comportamento de BBS e a lei de controle PI, respectivamente – usa-se P(z) e C(z) para definir a função de transferência em malha fechada Fr(z) =1+C(z)∗P(z)C(z)∗P(z) .

A partir destas definições, assume-se que o laço de controle atinge a saída desejada em um tempo de estabilização Ks = dU. Mais ainda, assume-se um máximo sobre-sinal de 10% (i.e.,

Mp = 0, 1) – o que representa uma escolha convencional para o sobre-sinal (Hellerstein et al.,

2004).

Então, usa-se a técnica de localização dos pólos em malha fechada17 para estimar os pólos complexos (cp) de Fr(z) como:

cp= g ∗ exp(± jθ) em que g = exp(−4K

s) e θ = π ∗

log(g)

log(Mp) são, respectivamente, a magnitude e o ângulo de cp.

Os ganhos KPe KI do controlador, usados na abordagem RBS, são definidos usando a lei de

adaptação definida no Algoritmo 4.4.

Algoritmo 4.4: Lei de adaptação dos parâmetros K p e Ki (proposta RBS)