• Nenhum resultado encontrado

Princípios para Construção de Redes Resilientes

2 Resiliência e Transmissão Multicaminhos

2.2 Resiliência em Redes de Comunicação

2.2.4 Princípios para Construção de Redes Resilientes

As definições da estratégia ResiliNets e as disciplinas de resiliência descritas na seção 2.2.2, determinam um conjunto de diretivas para a construção de redes resilien-tes [Sterbenz et al., 2014]. Estas diretivas incluem os pré-requisitos, os prós e contras, os possibilitadores e o comportamento esperado para uma rede resiliente [Sterbenz et al., 2010].

Requisitos

A seguir estão os requisitos necessários para criar redes resilientes:

Requisitos dos serviços- os requisitos de serviço das aplicações precisam ser determi-nados para entender o nível de resiliência que o sistema deve fornecer.

Comportamento normal- pode ser compreendido como uma combinação que envolve a especificação e o projeto da rede, juntamente com o estado enquanto não ocorre um evento adverso, a fim de aprender os parâmetros normais de operação da rede.

Modelos de ameaças e desafios - são essenciais para a compreensão e detecção de potenciais eventos e condições adversas. Sem eles não é possível compreender, definir e implementar os mecanismos de resiliência.

Métricas- quantificam os requisitos de serviço (normal↔parcialmente degradado↔ severamente degradado) e o estado operacional (aceitável↔prejudicado↔inaceitável).

Estas métricas são necessárias para detectar, remediar e quantificar a resiliência para refinar o comportamento futuro. As métricas são fundamentais para quantificar os requisitos anteriores.

Mecanismos heterogêneos, confiança e política- estes três itens são as realidades do mundo atual. Nenhuma tecnologia é apropriada para todos os cenários, e as escolhas mudam com o tempo. Os mecanismos de resiliência devem lidar com tecnologias heterogêneas, endereçamento, encaminhamento, roteamento, sinalização, tráfego e mecanismos de gerenciamento de recursos. Os mecanismos de resiliência também devem admitir explicitamente a existência de conflitos de confiança e políticas.

Para construir sistemas resilientes, a medição, avaliação e compreensão do aspecto de operações (comportamento normal) e de serviço (requisitos) da rede, juntamente com os desafios, são requisitos. Sem uma estrutura para quantificar esses aspectos da rede, não se pode avançar com sucesso para a resiliência [Jabbar, 2010].

Vantagens e Desvantagens

As vantagens e desvantagens representam os ganhos e as perdas que devem ser considerados no desenvolvimento de um sistema resiliente, sendo:

Recursos- determinam a implementação de mecanismos resilientes. Isto envolve um planejamento dos recursos para balancear e otimizar a relação entre resiliência e custo.

O custo pode limitar o uso de medidas de resiliência, como redundância e diversidade.

Complexidade- resulta da interação de sistemas em vários níveis de hardware e software e está relacionada à escalabilidade. Enquanto muitos dos princípios e mecanismos de resiliência aumentam essa complexidade, a própria complexidade torna os sistemas difíceis de entender e gerenciar, ameaçando a resiliência. Deve haver um equilíbrio no grau de complexidade.

Gerenciamento de estado- é parte essencial de qualquer grande sistema complexo e está relacionado à resiliência de duas maneiras: primeiro, a escolha do gerenciador de estado afeta a resiliência da rede. Segundo, os próprios mecanismos de resiliência requerem um estado, sendo importante que eles alcancem sua meta de aumentar a resiliência global através do gerenciamento dos estados.

Possibilitadores

A seguir é apresentado um conjunto de possibilitadores para a construção de sistemas resilientes [Sterbenz et al., 2010]. Esses possibilitadores incluem:

Autoproteção e a segurança - são propriedades essenciais das entidades para se defenderem contra os desafios em uma rede resiliente. A autoproteção inclui os mecanismos de autenticação, autorização e responsabilização, bem como os mecanismos de segurança convencionais de confidencialidade, integridade e não-repúdio.

Conectividade e a associação- estas propriedades devem ser mantidas entre entidades comunicantes, quando possível. O fluxo de informações ainda deve ocorrer mesmo quando não existir um caminho fim-a-fim estável.

Redundância - se refere à replicação de entidades na rede, geralmente para prover tolerância a falhas. A redundância no espaço, tempo e na informação aumentam a resiliência contra falhas e alguns desafios caso as defesas sejam penetradas.

Diversidade- no espaço, no tempo, no meio e nos mecanismos aumentam a resiliência contra os desafios. A diversidade consiste em fornecer alternativas para que, mesmo quando os desafios impactam alternativas específicas, outras alternativas evitam a degradação das operações normais.

Resiliência multinível - é necessária em três dimensões ortogonais: camadas de protocolo, em que a resiliência em cada camada fornece uma base para a próxima camada acima; planos de dados, controle e gerenciamento; arquitetura de rede, de dentro para fora, de componentes tolerantes a falhas, através de sub-redes e topologias sobreviventes, até a Internet, incluindo sistemas anexos e aplicações.

Conhecimento do contexto - necessário para que os nós resilientes monitorem o ambiente da rede (condições do canal, estado do enlace, estado operacional dos componentes da rede, etc.) e detectem eventos ou condições adversas. Mecanismos de correção devem levar em consideração o contexto atual de operação do sistema.

Translucência- permite interações entre camadas e planos, sendo fundamental para otimizar a resiliência entre os diferentes níveis. Os sistemas complexos são estruturados em vários níveis para abstrair a complexidade e separar as preocupações. Um exemplo simples de interação entre as camadas seria a passagem dos requisitos definidos pelas aplicações, com base em seus requisitos de serviço, para a rede abaixo. Estes requisitos são utilizados pela rede para otimizar seu comportamento [Sterbenz et al., 2014].

Todos os possibilitadores especificados acima tentam melhorar a resiliência. No entanto, para um determinado cenário, é difícil avaliar qual combinação resulta em uma melhor ou maior resiliência [Jabbar, 2010].

Comportamento

A arquitetura ResiliNets propõe três comportamentos de um sistema resiliente, conforme discutido abaixo:

Comportamento auto-organizado e autonômico - necessário para a resiliência da rede, que é altamente reativa, com mínima intervenção humana. Uma rede resiliente deve inicializar e operar com mínima configuração, gerenciamento e intervenção humana.

Idealmente, a intervenção humana deveria ser limitada e apenas quando desejado, com base em políticas operacionais de alto nível. As fases da rede autônoma consistem em inicialização, auto-configuração, auto-organização, autogestão, auto-otimização, autodiagnóstico e autoreparo [Jabbar, 2010].

Adaptabilidade- os componentes de rede resilientes precisam adaptar seu comporta-mento com base em condições dinâmicas da rede, a fim de se remediar de eventos ou condições adversas, e para se recuperar, retomando as operações normais.

Evolutividade- necessária para refinar o comportamento futuro para melhorar a resposta aos desafios, bem como para a arquitetura de rede e os protocolos responderem às ameaças emergentes e demandas de aplicativos. O refinamento baseia-se no ciclo de defesa, detecção e remediação da estratégia D2R2+DR.