Os desempenhos médios em termos da sobrecarga de mensagens de controle, tanto para o protocolo de comunicação em grupo baseado em blocos causais (dito CB) quanto para a abordagem autonômica (ACB), são apresentados na Figura 5.11. Todos os resultados obtidos em termos dessa métrica possuem valores centrados na média, com intervalos de confiança
muito pequenos (ver Tabela 5.1). Portanto, as análises a seguir são conduzidas observando apenas os valores médios encontrados.
(a) Carga baixa (80msgs/s) (b) Carga moderada (100msgs/s)
(c) Carga alta (150msgs/s)
Figura 5.11. Sobrecargas médias para diferentes tamanhos de grupos e perfis de carga
As diferentes configurações de CB com time-silences fixados em ts = 20ms e ts = 200ms, ditas CB(ts = 20ms) e CB(ts = 200ms), obtiveram, respectivamente, o pior e o melhor desempe- nho em termos da sobrecarga média de mensagens (para todos os perfis de carga e composições de grupo considerados) – como pode ser verificado na Figura 5.11.
Para CB(ts = 20ms), na medida em que a carga da aplicação aumenta, a sobrecarga com mensagens de controle diminui – uma vez que menos mensagens null são necessárias para que a completude dos blocos seja alcançada (ver Figura 5.11). Entretanto, ainda para CB(ts = 20ms), na medida em que o número de membros do grupo aumenta a sobrecarga aumenta em baixas condições de carga, mas os incrementos na sobrecarga tende a diminuir na medida em que a carga da aplicação aumenta.
Para CB(ts = 200ms), por outro lado, o aumento da carga da aplicação ou do número de processos no grupo (nos cenários considerados) tem pouco efeito na sobrecarga, uma vez que
essa configuração possui um time-silence muito largo – note que no caso do perfil de carga mais baixo (80 mensagens por segundo), a aplicação impõe um intervalo médio entre emissões de mensagens de 12, 5ms (i.e. 1/80), o que é muito inferior ao time-silence (ts = 200ms) adotado e justifica o bom desempenho em termos de sobrecarga.
A abordagem autonômica (ACB) apresenta desempenho intermediário em termos de sobre- carga e tende, por sua vez, a manter a sobrecarga em torno do set-point, independentemente do perfil de carga. No caso de ACB, as variações no desempenho em termos de sobrecarga estão associados ao aumento no limiar de sobrecarga máxima imposto pela mudança no nú- mero de membros no grupo – observe que, no pior caso, o set-point dinâmico (ovhD) equi-
vale a ovhmax∗ RCD, implicando em ovhD menor ou igual a 0, 20 (i.e. 4/5 ∗ 0, 25), 0, 23 (i.e.
14/15 ∗ 0, 25) e 0, 24 (i.e. 24/25 ∗ 0, 25) para grupos de processos com 5, 15 e 25 membros, respectivamente.
Figura 5.12. Diferença percentual relativa em termos da sobrecarga
A eficiência da abordagem autonômica é mais expressiva quando se realiza uma análise comparativa das variações de sobrecargas, nas diferentes condições de carga e tamanhos de grupo. Essas variações são calculadas usando a Diferença Percentual Relativa (RDP)6 – ver Figura 5.12. Para tanto, calcula-se a RDP entre as sobrecargas máxima (medida em baixo perfil de carga) e mínima (medida em alto perfil de carga).
Para o protocolo básico com time-silence fixo, ts = 20ms e ts = 200ms, observa-se altas variações de sobrecarga (i.e. RDP de 48, 54% a 59, 67%, de acordo com o ts e o tamanho do grupo). Enquanto que, a abordagem autonômica apresenta pequena variação, possuindo RDP de 9, 44% a 15, 63%, de acordo com o tamanho do grupo (ver Figura 5.12) – o que demonstra a eficiência da abordagem autonômica em manter a sobrecarga próximo ao ponto de operação definido.
6A Diferença Percentual Relativa (RDP, Relative Percent Diferent) pode ser calculada dividindo a diferença absoluta de dois valores pela média aritmética simples dos mesmos.
5.5.2.2 Análise do desempenho em termos do tempo médio de bloqueio
Os desempenhos médios em termos do tempo de bloqueio são apresentados na Figura 5.13. Os resultados obtidos em termos dessa métrica apresentam valores com alta variabilidade, pos- suindo intervalos de confiança muito largos (ver Tabela 5.1). Portanto, as análises a seguir são conduzidas observando não apenas os valores médios, mas também seus respectivos intervalos de confiança.
(a) Carga baixa (80msgs/s) (b) Carga moderada (100msgs/s)
(c) Carga alta (150msgs/s)
Figura 5.13. Tempos de bloqueio para diferentes tamanhos de grupos e perfis de carga
Em todos os experimentos os tempos médios de bloqueio diminuem na medida em que a carga da aplicação aumenta e aumentam na medida em que o número de membros no grupo aumenta – o que é um resultado esperado, condizente com os apresentados em Macêdo (1994). Para as configurações de grupo com 5 membros, a variabilidade dos tempos de bloqueio im- possibilitam determinar quais versões ou configurações do protocolo de comunicação em grupo obteve melhor desempenho. Verifique que, nesses casos, os intervalos de confiança, quando pa- res de barras dos gráficos são comparadas, possuem valores de intersecção que incluem a média dos pares observados. Considerando, por exemplo, a Figura 5.13(b), note que, para um grupo com 5 membros, CB(ts = 20ms), CB(ts = 200ms) e ACB possuem desempenhos em termos de
tempo de bloqueio equivalentes a (38, 44 ± 10, 93), (70, 31 ± 32, 84) e (46, 28 ± 16, 05), respec- tivamente – ver Tabela 5.1. Comparando CB(ts = 20ms) com CB(ts = 200ms), por exemplo, observe que o intervalo [70, 31 + 32, 84; 70, 31 − 32, 84] de CB(ts = 200ms) inclui a média 38, 44 de CB(ts = 20ms) – o mesmo pode ser verificado nos demais, em que o resultado é avaliado considerando grupos de processos com 5 membros.
Para as configurações de grupo com mais de 5 membros, os resultados em termos dos valo- res médios são mais expressivos, podendo-se determinar com uma maior segurança a diferença de desempenho entre as diferentes configurações do protocolos e a diferença de desempenho destas com a abordagem autonômica. Para grupos com 15 e 25 membros, as configurações CB(ts = 20ms) e CB(ts = 200ms) obtiveram, respectivamente, o melhor e o pior desempenho médio em termos do tempo de bloqueio – o que é condizente com os resultados observados em termos de sobrecarga, uma vez que quanto menor a sobrecarga, maior o tempo de bloqueio. Nesses experimentos, a abordagem autonômica apresenta desempenho intermediário em ter- mos do tempo médio de bloqueio, em conformidade com os set-points dinâmicos usados pela abordagem. Entretanto, a distância entre os desempenhos de ACB e de CB(ts = 20ms) decai na medida em que a carga da aplicação e o tamanho do grupo aumentam.
Tomando como base o desempenho do melhor caso, i.e. CB(ts = 20ms), é realizar um desempenho comparativo entre CB(ts = 200ms) e ACB a partir da diferença percentual relativa – a qual determina, em termos percentuais, quanto o desempenho se distância do desempenho de CB(ts = 20ms)., ver Figura 5.14.
Figura 5.14. Comparativo percentual em termos do tempo de bloqueio da distância entre CB(ts = 20ms) e ACB com a distância entre CB(ts = 20ms) e CB(ts = 200ms)
Note que, conforme apresentado na Figura 5.14, os desempenhos de ACB e de CB(ts = 200ms) distam 35% e 97%, respectivamente, do desempenho de CB(ts = 20ms), em um cenário de melhor caso (grupo com 5 membros e perfil de carga baixa) – o que mostra que ACB possui um desempenho muito melhor que CB(ts = 200ms), neste caso. Observe que, em um cenário
de pior caso (grupo com 25 membros e perfil de carga alta), os desempenhos de ACB e de CB(ts = 200ms) distam 2% e 93%, respectivamente, do desempenho de CB(ts = 20ms) – o que não apenas demonstra uma proximidade expressiva do desempenho de ACB em relação ao melhor desempenho, mas também mostra que ACB possui um desempenho expressivamente superior que CB(ts = 200ms), neste caso.
5.5.2.3 Análise da variação dinâmica dos requisitos em termos de consumo de recursos A Figura 5.15 mostra o comportamento da abordagem autonômica, com relação à sobre- carga de mensagens (Figura 5.15(a)) e do tempo de bloqueio (Figura 5.15(b)), em uma si- mulação envolvendo uma aplicação distribuída com perfil de carga moderada e um grupo de processos com 5 membros, em que o percentual de consumo de recursos desejado (RCD) é
dinamicamente modificado.
(a) Sobrecarga (%) (b) Tempo de bloqueio (ms)
Figura 5.15. Resposta para uma mudança no set-point no instante t = 5000ms.
No início da simulação, a abordagem autonômica adequadamente ajusta a sobrecarga de um valor inicial para o valor desejado em termos de set-point, i.e. percentual de consumo de recursos igual a 25% (RCD= 0, 25) – o que é equivale, no melhor caso, a um valor igual ou
menor a 20% em termos de sobrecarga (i.e. ovhmax∗ RCD= 4/5 ∗ 0, 25 = 0, 2).
No instante t = 5000ms, o percentual de consumo de recurso desejado é incrementado de 25% para 35%, o que causa uma mudança no set-point em termos de sobrecarga de mensagens – o mesmo passa de uma valor menor ou igual a 20% para um valor menor ou igual a 28% (i.e. ovhmax∗ RCD = 4/5 ∗ 0, 35 = 0, 28), dependendo do comportamento dos atrasos fim-a-
fim (ver Seção 5.4.2.1). Como conseqüência, observa-se um aumento na sobrecarga média de mensagens (ver Figura 5.15(a)) e uma diminuição no tempo médio de bloqueio (ver Figura 5.15(b)) – indicando que a abordagem autonômica, de forma efetiva, atende ao objetivo de projeto ajustando o modo de operação do protocolo, de acordo com mudanças dinâmicas nos requisitos desejados.