• Nenhum resultado encontrado

7.6 Implementação

8.1.2 Avaliação do uso de identificadores virtuais

Avaliamos diversas propriedades dos algoritmos de identificadores virtuais, como a distribuição da faixa de identificadores entre os nós e o tamanho e cobertura do conjunto de folhas virtuais dos nós. Iniciamos a simulação da grade com um único aglomerado e instanciamos um a um novos aglomerados até formar uma grade com 300 aglomerados. Para cada aglomerado adicionado, medimos diversas pro- priedades do sistema, de modo a avaliar as propriedades dos algoritmos virtuais para grades de diferentes tamanhos. Repetimos o experimento por 5 vezes, gerando os aglomerados utilizando o modelo descrito na Seção 8.1.1.

Distribuição de identificadores virtuais

Utilizando identificadores virtuais, cada aglomerado da grade fica responsável por uma faixa de identificadores proporcional à sua capacidade. Ao considerarmos todos os aglomerados de uma grade,

0 50 100 150 200 250 300 Número de aglomerados 0 20 40 60 80

Diferença média (em %)

0 50 100 150 200 250 300 Número de aglomerados 0 200 400 600 800 1000

Diferença média (em %)

Diferença de valores entre extensão da faixa de identificadores alocada a um nó x extensão ideal

Identificadores Pastry Identificadores Virtuais

Figura 8.1: Tamanho da faixa alocada a cada aglomerado com relação ao tamanho ideal.

suas capacidades e o tamanho do espaço de identificadores, é possível determinar qual seria o tamanho “ideal” da faixa de identificadores alocada a cada aglomerado. Mas cada execução do protocolo de partição do espaço virtual redistribui, entre um subconjunto de tamanho fixo dos nós do sistema, apenas uma parcela do espaço de identificadores. Desejamos verificar se esta partição parcial é suficiente para que os aglomerados fiquem responsáveis por faixas de identificadores aproximadamente proporcionais à sua capacidade.

Nesta simulação, medimos, para cada aglomerado da grade, a diferença entre o tamanho da faixa de identificadores alocada ao nó e o tamanho ideal para esta faixa, utilizando a fórmula:

Diferença = tamanho ideal − tamanho alocado tamanho ideal

Realizamos as medições utilizando tanto os nossos identificadores virtuais quanto os identificadores originais do Pastry de cada nó e apresentamos os resultados na Figura 8.1. Como podemos ver, ao utilizar identificadores virtuais, a diferença no tamanho das faixas é, em média, de 30% e dificilmente acima de 60%. Deste modo, vemos que mesmo realizando alterações nos identificadores de um subconjunto de nós, cada aglomerado fica responsável por um espaço de identificadores de tamanho próximo ao ideal. Já no caso de identificadores Pastry, a diferença média é de 270%, podendo atingir facilmente diferenças de até 800%.

Avaliamos também a distância média entre o identificador virtual e do Pastry de cada aglomerado. Por exemplo, supondo que os identificadores possam assumir valores entre 0 e 1000, um aglomerado

8.1 Simulações 131 0 50 100 150 200 250 300 Número de aglomerados 0 5 10 15 20 25

Distância média (em %)

Distância entre o identificador virtual e do Pastry

Figura 8.2: Distância entre o identificador virtual e o identificador do Pastry de cada nó.

pode possuir como identificador Pastry o valor 500 e como identificador virtual o valor 700, de modo que a distância entre os identificadores é de 200, ou seja, 20% do tamanho do espaço de identificadores. Como podemos ver na Figura 8.2, em média, a distância entre os identificadores oscilou entre 10% e 20% do tamanho do espaço de identificadores. Esta diferença entre o identificador virtual e do Pastry de cada nó diminui à medida que adicionamos mais aglomerados à grade. Considerando que a entrada de novos aglomerados no sistema altera os identificadores virtuais dos aglomerados vizinhos ao ingressante, en- quanto os identificadores Pastry permanecem fixos, deveríamos esperar um aumento na distância média à medida que mais nós são adicionados ao sistema. Por outro lado, o tamanho da faixa de identificadores alocada a cada nó diminui à medida que aumentamos o número de nós no sistema, fazendo com que o identificador virtual fique mais próximo do identificador Pastry. Os resultados das simulações mostram que o segundo efeito é maior que o primeiro. Alterações na distância entre o identificador virtual e o identificador do Pastry não causam efeitos práticos nos protocolos de identificadores virtuais.

Conjunto de folhas virtuais

Avaliamos também o comportamento do conjunto de folhas virtuais com relação ao número de aglo- merados no sistema. Medimos o número de nós no conjunto de folhas virtuais e o tamanho da faixa de identificadores coberta pelos nós deste conjunto.

A Figura 8.3 mostra o tamanho médio das faixas de identificadores cobertas pelos nós dos conjuntos de folhas virtuais e do Pastry de cada nó. Como vimos na Seção 6.3, o conjunto de folhas virtuais é construído de modo a cobrir um espaço de identificadores sempre maior que o conjunto de folhas do Pastry. Podemos visualizar esta propriedade na Figura 8.3.

50 100 150 200 250 300 Número de aglomerados 0 5 10 15 20 25 30

Tamanho da faixa de identificadores (em %)

Faixa de identificadores coberta pelo conjunto de folhas Virtuais

50 100 150 200 250 300 Número de aglomerados 0 5 10 15 20 25 30

Tamanho da faixa de identificadores (em %)

Faixa de identificadores coberta pelo conjunto de folhas Pastry

Figura 8.3: Recuperações bem sucedidas de arquivos.

Além disso, a variação no tamanho desta faixa é pequeno, cobrindo entre 2.5% e 4.5% do espaço de identificadores para os conjuntos de folhas virtuais no caso de uma grade com 300 aglomerados. Esta variação é pequena porque o tamanho da faixa coberta pelo conjuntos de folhas virtuais é dependente do tamanho da faixa coberta pelo conjunto de folhas Pastry. Este último conjunto possui tamanho fixo de 8 elementos, de modo que a faixa de identificadores coberta por ambos os conjuntos varia pouco.

No gráfico à esquerda na Figura 8.4 podemos ver a variação do número médio de nós no conjunto de folhas virtuais à medida que aumentamos o número de nós no sistema. O valor médio de nós no conjunto de folhas Pastry permanece constante, com 10 nós, enquanto o conjunto de folhas Pastry, não represen- tado no gráfico, possui sempre 9 nós. Podemos ver ainda que a variação no número de nós no conjunto de folhas virtuais aumenta à medida que adicionamos aglomerados à grade. Para 300 aglomerados, o número de nós no conjunto ficou entre 5 e 15. Para analisar estes resultados, devemos lembrar que o conjunto de folhas virtuais é construído adicionando nós a este conjunto até que ele cubra uma faixa do espaço de identificadores de tamanho igual ou maior ao do conjunto de folhas Pastry. Deste modo, o valor médio de 10 nós no conjunto de folhas virtuais é fácil de entender, uma vez que, em média, um nó a mais é o suficiente para cobrir uma faixa de identificadores maior que o conjunto de folhas Pastry. Já a variação no número de folhas virtuais ocorre porque, além dos nós presentes no conjunto de folhas virtuais não serem necessariamente os mesmos do conjunto de folhas Pastry, a cobertura do conjunto de folhas virtuais é feita considerando os identificadores virtuais destes nós.

No gráfico à direita na Figura 8.4, vemos que a cobertura do conjunto de folhas virtuais de um nó varia entre valores similares a 70% maiores que a cobertura do conjunto de folhas Pastry do mesmo nó. Considerando que em média os conjuntos de folhas Pastry possuem 9 elementos e o conjunto de folhas

8.1 Simulações 133 0 50 100 150 200 250 300 Número de aglomerados 0,75 1 1,25 1,5 1,75 2 Valor da razão

Razão da faixa de identificadores coberta pelo conjunto de folhas Virtuais x Pastry

0 50 100 150 200 250 300 Número de aglomerados 0 5 10 15 20 Número de nós

Número de nós no conjunto de folhas virtuais

Figura 8.4: Número de nós no conjunto de folhas virtuais e razão entre o tamanho da faixa de identifica- dores coberta pelo nós do conjunto de folhas virtuais com relação aos do conjunto de folhas Pastry. virtuais 10 elementos, deveríamos esperar que a cobertura média do conjunto de folhas virtuais fosse aproximadamente 10% maior que a do conjunto de folhas Pastry. Mas devemos novamente lembrar que o conjunto de folhas virtuais é construído adicionando, a partir do centro do conjunto, folhas logicamente à esquerda e à direita do nó, até que este conjunto cubra uma faixa do espaço de identificadores de tamanho igual ou maior ao do conjunto de folhas Pastry. Conseqüentemente, os nós nos extremos do conjunto de folhas virtuais normalmente são nós que cobrem faixas maiores do espaço de identificadores, de modo que a diferença na cobertura entre os conjuntos de folhas virtuais e Pastry é maior do que se os nós extremos fossem escolhidos aleatoriamente.