Roteamento Intra SA9
O objetivo deste Caso de Estudo é, através de um caso concreto, sabermos como é que o roteador da sub-rede d da Área 1 do SA4, onde se encontra o João que pede uma página a um servidor que se encontra na sub-rede d da Área 1 do SA9, vê esse servidor. Nós sabemos porque vemos na figura. Vamos agora perceber como é que os roteadores do SA4 sabem da existência dessa sub-rede no SA9 e como se processa o roteamento para que possam lá chegar.
Vamos utilizar um caso imaginário para exemplificarmos o roteamento nos seus diversos protocolos na viagem que vamos fazer, curiosamente no percurso inverso, para mostrarmos como é que o roteador d da sub-rede Stub do SA9, que serve o servidor que procuramos, se dá a conhecer ao roteador d da sub-rede stub do SA4, que serve o João.
Vamos seguir a descrição apoiando-nos de novo na Figura 1 que aqui voltamos a introduzir. Clique ou toque na imagem e abra-a noutra janela para poder acompanhar a descrição com ela.
Também vamos aqui introduzir de novo através da Figura 2 a representação gráfica da organização e endereços servidos pela NettByCabo que nos vai servir de novo como caso de estudo para os percursos que o nosso roteamento vai seguir até ao roteador de borda de SA9, a parte que vamos descrever neste artigo. Mais uma vez queremos deixar claro que o nome NetByCabo foi por nós imaginado e que qualquer confusão com alguma realidade é pura coincidência.
Vamos então começar pela sub-rede d da área 1 do SA9 e verificar como é que ela se vai registando nos sucessivos roteadores até chegarmos à sub-rede do João. O SA9 corresponde ao ISP NetByCabo, que já analisámos atrás a propósito do endereçamento, mas que vamos agora continuar a utilizar no roteamento.
Zonas de Área – NetByCabo 2 – Protocolo OSPF
De acordo com a Figura 1, a sub-rede d (NBC 2.3), onde se encontra o servidor a que pretendemos enviar um pedido, é uma sub-rede que tem o bloco de endereços 188.72.202.0/24, isto é, 254 (?) endereços na rede definida pelos primeiros 24 bits. O roteador d vai apresentar como endereços que se compromete a entregar, os correspondentes ao prefixo de rede que apresenta na sua tabela de roteamento.
254 (?) endereços? Mas 8 bits definem 256 números decimais. Como é isso?
Sim 254 (!) endereços, porque o endereço 0 está reservado para definir a rede e o 255 é o endereço de broadcast à rede. Certo? Vamos prosseguir.
As sub-redes representadas com as letras minúsculas correspondem aos subconcessionados NBC x.y da concessionada NetByCabo x. Cada uma das 8 NetByCabo x constitui uma Área que vive dentro do SA9, a NetByCabo.
As sub-redes NBC x.y (as letras minúsculas) são redes Stub, i.e. tudo o que lá entra destina-se à essa rede e o que sai vem dessa rede. Cada uma apresenta ao exterior o conjunto de endereços que lhe corresponde. Daí para diante é com cada uma. Por isso, vamos começar a partir daí.
Junta-se a Figura 3, que apresenta a forma como as redes e sub-redes alcançáveis através de cada roteador são apresentadas nas respetivas interfaces.
A tabela que se apresenta em cada roteador deve ser vista como a visão do interior do roteador, i.e. como se estivéssemos dentro do roteador e escrevêssemos na tabela aquilo que víamos pela porta de cada uma das interfaces, numeradas a laranja. Na coluna da tabela sombreada a verde refere-se a interface e na coluna sombreada a rosa aquilo que por ela se consegue ver já agregado.
Estes elementos são fornecidos aos vizinhos, que assim ficam a saber o que podem ver pelas suas portas se seguirem o caminho através deles.
Na zona sombreada a rosa está a representação das sub-redes alcançáveis através dessa porta. Claro que só interessa aqui verificar a evolução da forma como o endereço da sub-rede que nos interessa é apresentado, através da agregação de rotas. Quando na tabela se escreve a referência a um roteador, significa que essa linha corresponderá a todas as linhas que fariam referência a toda a gama de endereços alcançável por essa interface.
Para que melhor se entenda como é feita a agregação de rotas, quando pode e não pode ser feita, junta-se também a Figura 4 . Os números indicados no topo das duas figuras com setas delimitadoras de espaços pretendem ir referindo os vários níveis de subida, em termos de alinhamentos de roteadores e têm correspondência nas duas figuras.
Está indicado na figura Figura 4, onde se faz a divisão entre os protocolos OSPF e BGP, que é precisamente nos roteadores de borda de Área, i.e. onde começa cada um dos NetByCabo 1 a 8. Também está indicada a separação entre a SA9 e a SA3.
A leitura de todas as figuras deve ser conjunta, com a da Figura 1 também, para que se entenda como a apresentação da rede onde está o servidor que nos interessa vai evoluindo.
Vamos olhar o roteador H(SA9) na Figura 3, que vai apresentar os endereços de todos os roteadores que estão antes dele (c, d, e) ao mundo, apresentando-lhes por sua vez a eles o que o mundo tem para lhes oferecer através dele. A cada um destes roteadores de acesso correspondem diferentes rotas, que constarão na tabela de roteamento do H(SA9) em interfaces diferentes, concretamente:
- a interface 1, por onde se vê o roteador I(SA9) e especificamente a forma como se apresenta o caminho para o cliente que fez o pedido,
- a interface 2, por onde se vê o roteador G(SA9) e a forma como a rede do cliente se apresenta,
- a interface 3, por onde se vê a agregação dos endereços a quem o roteador d faz as entregas,
- a interface 4, por onde se vê a agregação dos endereços a quem o roteador c faz as entregas,
- a interface 5, por onde se vê a agregação dos endereços a quem o roteador e faz as entregas,
- a interface 6, por onde se vê a agregação dos endereços a quem o roteador f faz as entregas,
Agregação de Rotas
O roteador H(SA9), ao enviar ao vizinho I(SA9) o estado dos seus enlaces, diz-lhe que conhece os caminhos para 188.72.(200,201,202,203).0/24, o que lhe apresenta de forma binária como é evidente e de acordo com o representado na Figura 5.
Como já vimos, cada um dos endereços de rede na forma decimal é representado pela sua conversão binária associado a uma máscara. Reparem na área sombreada a amarelo, onde se verifica que os 4 endereços de rede preenchem as possíveis combinações dos 2 últimos bits da máscara, evidenciados a vermelho.
Então, eles são representáveis pelo mesmo endereço de rede binário, mas com uma máscara correspondente à anterior a que foram retirados os dois últimos bits, passando o endereço de rede decimal a ser representado por 188.72.200.0/22, conforme se pode ver na mesma Figura 5.
O roteador I(SA9) coloca na sua interface 2, a que liga a H(SA9), o agregador das 4 rotas que H(SA9) passa aos seus vizinhos, como sendo aquilo que consegue ver por aquela porta. Quando o pacote com o endereço 188.72.202.158 (10111100.01001000.11001010.10011110) chega ao roteador I(SA9), porque os seus primeiros 22 bits coincidem com o endereço de rede da sua interface 2 (188.72.200.0/22), é para lá encaminhado, chegando através da estrada que parte dessa porta ao roteador H(SA9). Chegado a H(SA9), porque os seus primeiros 24 bits coincidem com os do endereço de rede que ele tem na sua interface 3 (188.72.202.0/24), é para lá encaminhado, daí atingindo o roteador de sub-rede stub d, que serve o hospedeiro com o endereço 188.72.202.158.
Vamos agora exemplificar, desta vez usando a Figura 6, como é feita agregação de rotas no roteador D(SA9) de acordo com a informação que recebe dos seus vizinhos G(SA9) e I(SA9), para melhor entendermos como tudo funciona pela análise dos bits, ou dígitos da representação binária:
Está exemplificada uma situação em que 2 endereços, 182.78.(204,205).0/24 são agregados no endereço 182.78.204.0/23 que representa as suas duas variações possíveis, transmitidos pelo roteador G(SA9) ao seu vizinho D(SA9), que assim coloca 182.78.204.0/23 na sua interface 2, a porta por onde o vê.
Reparemos agora na situação em que I(SA9) passa ao seu vizinho D(SA9) a informação sobre os seus conhecimentos. O roteador I(SA9) conhece os endereços de rede 182.78.206.0/24 e 182.78.207.0/24. Normalmente seriam representados por D(SA9) na sua interface 3 como 182.78.206.0/23, a agregação correspondente com menos 1 bit. Mas nesta interface 3, D(SA9) também tem como rede conhecida 182.78.200.0/22, que lhe é transmitida também por I(SA9).
Agora vamos aplicar a propriedade que já enunciámos para o roteamento em CIDR. D(SA9) tem na interface 2 e na interface 3 o conjunto das 4 variações do endereço de rede 182.78.204.0/22 correspondente à agregação dos endereços de rede 182.78.204.0/23 e 182.78.204.0/23 presentes respetivamente na interface 2 e na interface 3. Ora a tal propriedade do roteamento em CIDR consiste no facto de a escolha da rota ser sempre feita pela entrada da tabela em que haja um maior número de bits do endereço coincidentes com os do endereço de rede para os bits a 1 da máscara. Assim, D(SA9) pode agregar na interface 3 os endereços de rede 182.78.200.0/22 e 182.78.204.0/22 apresentando-os como 182.78.200.0/21. Desta agregação na interface 3 escapa o conjunto de endereços de rede 182.78.204.0/23 que está na interface 2, mas disto não resulta qualquer problema porque qualquer endereço com 23 bits coincidentes é encaminhado para a interface 2 e aqueles em que só 21 bits são coincidentes são encaminhados para a interface 3.
Backbone SA9 – NetByCabo Protocolo iBGP
Vamos sair da Área 2 do SA9 e entrar na zona de Backbone desse SA9. Repare-se que na tabela do roteador D(SA9), já é visível através da interface 1 o roteador A(SA9), através de B(SA9). A visibilidade de roteadores de borda de SA só pelo seu nome é usada neste exemplo porque não foram considerados mais roteadores de borda neste SA. Quando existam, provavelmente esses apresentarão rotas preferenciais para alguns destes destinos, pelo que, a partir do roteador de borda de Área, a tabela de roteamento BGP já terá que ser apresentada.
No nosso caso, como todas as rotas vão ter que passar por A(SA9) e por D(SA3), limitamo-nos a apresentar em A(SA9) o conhecimento que tem de todas as rotas que o SA3, através de D(SA3) lhe apresenta, estando todos esses destinos na sua interface 1 e como roteador de 1º salto o D(SA3), isto é, o roteador para o qual deve dirigir todos os pacotes que tenham essas redes por destino.
Certamente já repararam que, conforme a Figura 1, existe um outro roteador de borda no SA9 o AR(SA9), contrariamente ao que acabámos de dizer atrás. Mas o caso é que ambas as afirmações são verdadeiras. O roteador AR(SA9) é um roteador de redundância.
O que é lá isso de redundância?
Redundância
Nunca um SA deve estar ligada à rede global por um só roteador. Em caso de avaria, corte na linha de ligação ou qualquer outro impedimento, todo o SA9 (p.e.) ficaria sem acesso à Internet.
Aliás, não só um roteador de borda de SA mas também os roteadores de borda de Área, bem como os caminhos dentro das próprias Áreas, devem ter sempre caminhos alternativos.
Para que isso aconteça são previstos roteadores em estações diferentes que têm exatamente os mesmos conhecimentos. No SA9 considerámos um roteador só com essa função, mas no SA3 já utilizámos um outro roteador de borda para o efeito, o qual pode ter outras funções para além dessa.
Por essa razão não mencionámos o roteador AR(SA9) como caminho de comunicação do SA9, porque é redundante ao roteador A(SA9).
A redundância dos roteadores não passa só por este facto, mas também pela existência nas estações onde estão colocados de um ou mais roteadores que constituem unicamente a duplicação dos mesmos, com o fim de os substituírem automaticamente em caso de avaria.
Nos caso de roteadores de passagem, para além desta redundância deve ser sempre prevista a existência de caminhos alternativos. Imaginemos que a falha não é de um roteador mas de toda uma estação. Assim sendo, os duplicados de nada valeriam, pois também ficariam inoperantes e consequentemente todas as redes por ele servidas, que poderiam ser muitas.
No SA6 tentámos mostrar como uma rede inteira pode ser redundante, sem ter que criar roteadores com funções exclusivas de redundância, aproveitando aqueles que já existem para serviço à rede e alterando a forma como se encontram interligados. Reparem como, no caso ilustrado na figura 1, qualquer roteador (ou estação) pode ser desligado e a informação continua a chegar a todos os outros.
O nível de redundância determinado para cada rede ou para um determinado nó de uma rede, tem a ver com a tolerância que para os mesmos é permitida.
A tolerância é definida pelo tempo máximo por ano em que é permitido a um sistema estar sem serviço (em baixo), nisto incluídas as suas necessidades de manutenção. Quanto menor a tolerância permitida, maior a redundância necessária. Para além doutros fatores que aqui omitiremos.
O grau de tolerância é medido em noves. A titulo de curiosidade juntamos a tabela da Figura 7, onde está a relação entre a classificação por noves, a percentagem de tempo em que um sistema permanece disponível e o tempo máximo que pode estar em baixo por ano.
Por exemplo, o site da Google tem uma classificação que está entre os 4 e os 5 noves, variando de País para País. Os sistemas que envolvam suporte à vida humana, estarão sempre nas maiores escalas, se não mesmo na maior.
Nos SA9 e SA4 não considerámos propositadamente qualquer redundância, para não tornar mais confusa a transmissão de conhecimentos entre roteadores.