Gestão da Disponibilidade da Rede de Comunicação
Estabelecer e manter uma rede operacional eficiente é crucial para o sucesso de qualquer organização. Afinal, falhas na rede podem ter implicações críticas, afetando não apenas os lucros e custos, mas também a produtividade e a satisfação dos usuários. No entanto, mesmo com os melhores esforços, serviços de rede estão sujeitos a diversos desafios. Esses desafios incluem falhas em enlaces, problemas com equipamentos, erros gerenciais e operacionais. Quando a rede enfrenta problemas, os impactos podem ser significativos.
Introdução
As redes de comunicação têm experimentado avanços tecnológicos notáveis e, na mesma medida que novas tecnologias e serviços surgem, essas redes se tornam mais complexas. Tanto as aplicações como os equipamentos evoluem com um ritmo igualmente veloz e, para acompanhar esse ritmo e se manterem atualizadas, as empresas destinam investimentos cada vez maiores nesse tipo de tecnologia, nem sempre foco do seu negócio.
Quando falamos de indisponibilidade numa rede corporativa, o usuário final tem como grande vilão o prestador de serviços. Quando surge um problema, a primeira providência é acionar o mesmo para que o sistema seja restabelecido e, muitas das vezes, o usuário não leva em consideração que o problema pode ser seu. Esta postura acaba por aumentar o tempo de paralisação. Quando o cliente reconhece que a causa da interrupção é de sua responsabilidade já se passou um grande tempo, que quase sempre se traduz em perdas financeiras.
A responsabilidade pela indisponibilidade do sistema não deve recair apenas sobre os administradores de rede. Os usuários também desempenham um papel importante. Por exemplo, avaliações equivocadas dos administradores podem levar a decisões inadequadas sobre configurações e atualizações.
Uma nova medida de avaliação pode ajudar a identificar problemas de disponibilidade de rede. Essa medida considera não apenas a eficácia das ferramentas gerenciais, mas também a existência dessas ferramentas. Afinal, a ausência de ferramentas adequadas pode ser tão prejudicial quanto sua ineficácia.
Qualidade de Serviço
A Qualidade de Serviço (Quality of Service - QoS) é um requisito das aplicações para a qual exige-se que determinados parâmetros estejam dentro de limites bem definidos (um valor mínimo e um valor máximo).
A Qualidade de Serviço pode ser definida de várias maneiras. A International Organization for Standardization (ISO) define como sendo o efeito coletivo do desempenho de um serviço, que determina o grau de satisfação de um usuário desse serviço. Em redes de comunicação, a QoS pode ser definida como o desempenho da rede relativa às necessidades das aplicações ou o conjunto de tecnologias que possibilita a essa rede oferecer garantias de desempenho.
Segundo Tanenbaum (2005), “uma vez que uma rede é instalada, espera-se que ela funcione continuamente durante anos sem apresentar qualquer falha no sistema.” Assim, a QoS nas redes de comunicação é um aspecto operacional importante para o desempenho fim-a-fim das aplicações. Assim, a obtenção de uma qualidade de serviço adequada é um requisito de operação da rede e suas componentes para viabilizar a operação com qualidade para uma determinada aplicação.
Disponibilidade
Disponibilidade refere-se ao tempo durante o qual uma rede ou serviço está disponível para seus usuários. A disponibilidade está vinculada à redundância, confiabilidade (precisão, taxas de erros, estabilidade e período de tempo entre falhas), capacidade de lidar com as falhas (resiliência) e à recuperação no caso de interrupções. É a probabilidade de que um sistema esteja funcionando e pronto para uso em um dado instante de tempo. Ela pode ser enquadrada em três classes, de acordo com a faixa de valores desta probabilidade: Disponibilidade Básica, Alta Disponibilidade e Disponibilidade Contínua.
A Disponibilidade Básica é aquela encontrada em sistemas comuns, sem nenhum mecanismo especial, baseado em software ou hardware, que vise de alguma forma mascarar as eventuais falhas. Costuma-se dizer que redes desta classe apresentam uma disponibilidade de 99% a 99,9%. Estes valores são empíricos e os tempos não levam em consideração a possibilidade de paradas planejadas, porém são aceitas como o senso comum na literatura da área.
Adicionando-se mecanismos especializados de detecção, recuperação e mascaramento de falhas, pode-se aumentar a disponibilidade do sistema, de forma que este venha a se enquadrar na classe de Alta Disponibilidade. Nesta classe as redes tipicamente apresentam disponibilidade na faixa de 99,99% a 99,999%, podendo ficar indisponíveis por um período de pouco mais de 5 minutos até uma hora em um ano de operação.
O principal objetivo da Alta Disponibilidade é buscar uma forma de manter os serviços prestados, mesmo que o sistema em si venha a se modificar internamente por causa de uma falha. Aí está implícito o conceito de mascaramento de falhas, através de redundância ou replicação.
Com a adição de noves se obtém uma disponibilidade cada vez mais próxima de 100%, diminuindo o tempo de inoperância do sistema de forma que este venha a ser desprezível ou mesmo inexistente. Chega-se então na Disponibilidade Contínua, o que significa que todas as paradas planejadas e não planejadas são mascaradas, e o sistema está sempre disponível.
Recomendados pelo LinkedIn
Tolerância a Falhas
De acordo com Garcia et al. (2003), “na maioria dos casos, a eficiência de diversos serviços prestados está associada ao bom desempenho da rede.” Para se entender corretamente do que se está falando quando se discute disponibilidade em redes de comunicação devem-se conhecer os conceitos envolvidos.
Antes de tudo, deve-se entender o que é falha, erro e defeito. Estas palavras, que parecem tão próximas, na verdade designam a ocorrência de algo anormal em três universos diferentes de uma rede de comunicação.
Uma falha acontece no universo físico, ou seja, no nível dos equipamentos. Uma flutuação da fonte de alimentação, por exemplo, é uma falha. Uma interferência eletromagnética também. Estes são dois eventos indesejados, que acontecem no universo físico e afetam o funcionamento do sistema como um todo ou de partes dela. Conforme destacam Lopes, Sauvé e Nicolletti (2003) “Infelizmente, mesmo o melhor sistema de gerencia de redes não pode evitar todas as falhas. Precisamos localizar e solucionar o problema o mais rapidamente possível”.
A ocorrência de uma falha pode acarretar um erro, que é a representação da falha no universo informacional. Por exemplo, um computador trabalha com bits, cada um podendo conter 0 ou 1. Uma falha pode fazer com que um (ou mais de um) bit troque de valor inesperadamente, o que certamente afetará o funcionamento normal do sistema. Uma falha, portanto, pode gerar um erro em alguma informação.
A informação errônea, se não for percebida e tratada, poderá gerar o que se conhece por defeito. O sistema simplesmente trava, mostra mensagem de erro, ou ainda perde os dados do usuário sem maiores avisos. Isto é percebido no universo do usuário. Lopes, Sauvé e Nicolletti (2003) afirmam que “Seja qual for a razão pela qual problemas graves estão sendo descobertos através de usuários, algo deve ser feito para reverter esta situação.”
Recapitulando, uma falha no universo físico pode causar um erro no universo informacional, que por sua vez pode causar um defeito percebido no universo do usuário. A tolerância a falhas visa exatamente acabar com as falhas, ou tratá-las enquanto ainda são erros. Para que uma máquina assuma o lugar de outra, é necessário que descubra de alguma forma que a outra falhou. Isso é feito através de testes periódicos, cujo período deve ser configurável, nos quais a máquina secundária testa não apenas se a outra está ativa, mas também fornecendo respostas adequadas a requisições de serviço.
Um mecanismo de gerenciamento e detecção de falhas equivocado pode causar instabilidade no sistema. Como ressalta Garcia et al. (2003) “é imprescindível a utilização de recursos computacionais que proporcionem um maior dinamismo e precisão no levantamento dos dados necessários à formatação dos diagnósticos”.
Failover
O processo no qual uma máquina assume os serviços de outra, quando esta última apresenta falha, é chamado failover. O failover pode ser automático ou manual, sendo o automático o que normalmente se espera de uma solução de Alta Disponibilidade. Ainda assim, algumas aplicações não críticas podem suportar um tempo maior até a recuperação do serviço e, portanto, podem utilizar failover manual. Além do tempo entre a falha e a sua detecção, existe também o tempo entre a detecção e o restabelecimento do serviço. Alguns sistemas podem exigir um considerável período de tempo até retomarem seu funcionamento normal e, durante este tempo, os serviços ainda estarão indisponíveis.
Entretanto, dependendo da natureza do serviço, executar um failover significa interromper as operações em andamento, perdendo-as, sendo necessário reiniciá-las após o procedimento. Em outros casos, significa apenas um retardo até que o serviço esteja novamente disponível. Nota-se que o failover pode ou não ser um processo transparente, dependendo da aplicação envolvida.
Conclusão
A colaboração entre administradores e usuários é essencial para garantir a disponibilidade e o desempenho ideal da rede. Investir em ferramentas adequadas e promover a conscientização sobre a importância da rede são passos fundamentais para enfrentar esses desafios.
Referências