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−1em 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)