Resumo da rede de computadores - camada de rede

4.1 Visão geral da camada de rede

A principal tarefa da camada de rede é realizar a interconexão da rede e, em seguida, realizar a transmissão de pacotes de dados entre as redes.

Para realizar as tarefas da camada de rede, os seguintes problemas precisam ser resolvidos:

  • Que tipo de serviço a camada de rede fornece à camada de transporte (transmissão confiável ou transmissão não confiável).
  • Problemas de endereçamento da camada de rede
  • problema de roteamento

Internet: Atualmente é a Internet com maior número de usuários no mundo, e utiliza a pilha de protocolos TCP/IP.

Como a camada de rede na pilha de protocolos TCP/IP usa o protocolo IP da Internet, que é o protocolo principal de toda a pilha de protocolos, a camada de rede na pilha de protocolos TCP/IP costuma ser chamada de camada de Internet.

imagem-20210606111314518

4.2 Dois serviços fornecidos pela camada de rede:

1. Serviço de circuito virtual orientado a conexão

Ideia central: A comunicação confiável deve ser garantida pela rede

Quando dois computadores se comunicam, deve-se estabelecer uma conexão na camada de rede, ou seja, um circuito virtual é estabelecido e as duas partes enviam pacotes pelo circuito virtual.

Um circuito virtual representa uma conexão lógica, não uma conexão física, que é diferente do método de comunicação que usa comutação de circuitos.

O cabeçalho do pacote usa apenas o endereço completo do host de destino no estágio de estabelecimento da conexão e, em seguida, o cabeçalho de cada pacote precisa carregar apenas um número de circuito virtual.

Após o término da comunicação, o circuito virtual estabelecido entre eles precisa ser liberado.

Muitas redes de comutação de pacotes de área ampla usam serviços de circuitos virtuais orientados à conexão, como o antigo X.25 e o frame relay FR gradualmente desatualizado, modo de transferência assíncrona ATM e assim por diante.

No entanto, os pioneiros da Internet não adotaram essa ideia de design, mas adotaram um serviço de datagrama sem conexão.

imagem-20210606112815263

2. Serviço de datagrama sem conexão

Ideia central: a comunicação confiável deve ser garantida pelo host do usuário.

Quando dois computadores se comunicam, não há necessidade de estabelecer uma conexão de camada de rede e cada pacote pode seguir um caminho diferente.

Cada pacote deve conter o endereço do host de destino.

Os pacotes transmitidos dessa maneira podem estar errados, perdidos, repetidos ou fora de ordem.

Como a própria camada de rede não fornece serviços de transmissão confiáveis ​​de ponta a ponta, o roteador pode ser relativamente simples e barato.

A Internet adota este conceito de design, colocando funções complexas de processamento de rede na borda da rede (hosts de usuários e camadas de transporte interno) e colocando funções simples de entrega de pacotes no centro da Internet. Os benefícios são: custo de rede reduzido e modo de operação flexível.

imagem-20210606113033992

imagem-20210606113742224

4.3 IPv4

4.3.1 Visão geral dos endereços IPv4

1. Introdução básica

imagem-20210606120438930

2. Método de representação

O endereço IPv4 de 32 bits é inconveniente para ler e gravar, portanto, o endereço IPv4 adota a notação decimal com pontos para conveniência dos usuários.

Exemplo:

imagem-20210606120755753

4.3.2 Método de endereçamento - endereços IPv4 com endereçamento classful

No modo de endereçamento classificado, os endereços IPv4 são divididos em Classe A, Classe B, Classe C, Classe D e Classe E.

imagem-20210607113254540

Endereço classe A:

  • O número da rede é de 8 bits e o número do host é de 24 bits.
  • O bit mais alto do número de rede é fixado em 0 e há 126 números de rede atribuíveis (2 7 -2), o menor endereço de rede é 1.0.0.0 e o maior endereço de rede é 126.0.0.0
    • Subtraindo todos os zeros, o endereço IP cujo número de rede é todos zeros é um endereço reservado, o que significa que a rede
    • Subtraia o endereço com o número de rede 127 para teste de loopback de software local, o endereço de teste de loopback de software local mínimo é 127.0.0.1 e o máximo é 127.255.255.254
  • O número de hosts que podem ser atribuídos a cada rede é 2 24 -2
    • O número do host de todos os 0s indica o endereço de rede ao qual o host está conectado
    • O número do host de todos os 1 indica todos os hosts na rede, ou seja, o endereço de broadcast

Endereço classe B:

  • O número da rede é de 16 bits e o número do host é de 16 bits
  • Os dois dígitos inferiores do número de rede são fixados em 10, o número de rede atribuível é 2 14 , o endereço de rede mínimo é 128.0.0.0 e o endereço de rede máximo é 191.255.0.0
  • O número de hosts que podem ser atribuídos a cada rede é 2 16 -2
  • O número do host de todos os 0s indica o endereço de rede ao qual o host está conectado
  • O número do host de todos os 1 indica todos os hosts na rede, ou seja, o endereço de broadcast

Endereço classe C:

  • O endereço de rede é de 24 bits e o número do host é de 8 bits
  • Os 3 primeiros dígitos do número de rede são fixados em 110, o número de rede atribuível é 2 21 , o endereço de rede mínimo é 192.0.0.0 e o endereço de rede máximo é 223.255.255.0
  • O número de hosts que podem ser atribuídos a cada rede é 2 8 -2
    • O número do host de todos os 0s indica o endereço de rede ao qual o host está conectado
    • O número do host de todos os 1 indica todos os hosts na rede, ou seja, o endereço de broadcast

Exercício 1:

imagem-20210607122154535

Os endereços nas três situações a seguir não podem ser atribuídos a interfaces de host ou roteador:

  • Os números da rede classe A são 0 e 127
  • O número do host é todo 0
  • O número do host é todo 1

Exercício 2:

imagem-20210607145248645

4.3.3 Método de endereçamento - endereço IPv4 em sub-rede

1. Razões para criar sub-redes:

  • A taxa de utilização do espaço de endereço IP às vezes é muito baixa, o que é fácil de causar desperdício
  • Atribuir um número de rede a cada rede tornará a tabela de roteamento muito grande
  • Não disponível imediatamente quando uma nova rede é necessária

2. Uma ferramenta para criação de sub-redes - máscara de sub-rede

imagem-20201017160252066

Exemplo um:

imagem-20201017161651058

Exemplo dois:

imagem-20201017161719339

3. Máscara de sub-rede padrão:

imagem-20201017162807076

4.3.4 Métodos de endereçamento – endereços IPv4 sem endereçamento classful

  • A divisão de sub-redes alivia as dificuldades no desenvolvimento da Internet até certo ponto, mas o grande número de redes Classe C não é totalmente utilizado porque seu espaço de endereço é muito pequeno . O consumo de endereços IP na Internet continua acelerado e todo o espaço de endereços IPv4 está ameaçado de esgotamento.

  • A IETF propôs o método de usar endereçamento não classificado para resolver o problema de escassez de endereços IP.

  • CIDR de roteamento entre domínios sem classe:

    • Elimina endereços de classe A, classe B e classe C e o conceito de sub-rede.
    • O espaço de endereço IPv4 pode ser alocado de forma mais eficaz.

1. Notação do endereço CIDR:

imagem-20201017165037268

Exemplo:

imagem-20201017165113442

2. Agregação de rotas:

imagem-20201017165615915

Exercício 1:

imagem-20210608212949700

Exercício 2:

imagem-20210608213305030

4.3.5 Planejamento de aplicações de endereços IPv4

  • Dado um bloco de endereços IPv4, como dividi-lo em vários blocos de endereços menores e atribuir esses blocos de endereços a diferentes redes na Internet e, em seguida, atribuir endereços IPv4 a hosts e interfaces de roteador em cada rede.

  • Existem duas maneiras de dividir o endereço:

    • Use uma máscara de sub-rede de comprimento fixo
    • Use uma máscara de sub-rede de comprimento variável

1. Máscara de sub-rede de comprimento fixo:

imagem-20201018143550103

Anteriormente, a sub-rede de endereços IPv4 era obtida por meio de máscaras de sub-rede de comprimento fixo.

por exemplo:

imagem-20210608222008611

Existem 5 redes na figura, portanto, os primeiros 3 dígitos do 4º byte da rede 218.75.230.0 são necessários como o número da sub-rede.

Aqui está o resultado da divisão dos 3 bits em 8 sub-redes:

imagem-20210608221937928

Cada sub-rede dividida dessa forma tem o mesmo número de hosts, o que é um desperdício para sub-redes que não precisam de tantos hosts.

2. Máscara de sub-rede de comprimento variável

imagem-20210608222701215

O método de endereçamento não classificado é obtido usando máscaras de sub-rede de comprimento variável.

Exemplo:

imagem-20201018142333145

A distribuição é a seguinte:

imagem-20210608223142707

4.4 Processo de envio e encaminhamento de datagrama IP

  • O processo de envio e encaminhamento de um datagrama IP consiste nas duas partes a seguir:

    • Host envia datagrama IP
    • Roteador encaminha datagrama IP

    imagem-20201018151314019

imagem-20201018150151171

Então, como o host de origem sabe se o host de destino está na mesma rede que ele?

imagem-20201018150223497

Compare o endereço IP do host com a máscara de sub-rede do host para obter o endereço de rede do host, compare o endereço IP de destino com a máscara de sub-rede do host para obter o endereço de rede de destino e compare o endereço de rede do host de origem com o endereço de rede de destino:

  • Se igual, significa na mesma rede, entrega direta
  • Se não forem iguais, significa que a rede é diferente, que pertence a entrega indireta, e o datagrama é encaminhado para o gateway padrão, sendo o encaminhamento substituído pelo gateway padrão.

Então, como o host C sabe para qual roteador ele deve entregar?

Gateway Padrão: O roteador atribuído a um host é chamado de gateway padrão.

imagem-20210608233106002

Quando o host deseja se comunicar com hosts em outras redes, ele transmitirá o datagrama IP para o gateway padrão e o gateway padrão o encaminhará.

Depois de comparar o endereço de destino com a máscara de sub-rede e julgar que não é a mesma rede, o host encaminhará o datagrama para o gateway padrão, após o roteador onde o gateway padrão está localizado receber o datagrama:

  • Primeiro verifique se há algum erro no cabeçalho do datagrama IP
    • Se ocorrer um erro, o datagrama é descartado e o host é notificado
    • Se não houver erro, encaminhar
  • Em seguida, procure uma entrada correspondente na tabela de roteamento com base no endereço de destino do datagrama IP :
    • Se encontrado, avance para o próximo salto indicado na entrada
    • Se não for encontrado, descarte e notifique o host de origem

O processo de pesquisa do roteador é o seguinte:

  • Primeiro extraia o campo de endereço de origem e o campo de endereço de destino do cabeçalho do datagrama IP
  • O endereço IP de destino é comparado com a máscara de endereço para obter o endereço de rede de destino e, em seguida, é julgado se é igual ao campo de endereço de rede de destino correspondente na tabela de roteamento.

aqui estão alguns exemplos:

imagem-20210608234631912

O primeiro registro: o endereço de rede 192.168.0.129 é obtido após a combinação do endereço de destino 192.168.0.129 com a máscara 255.255.255.128, que é diferente do endereço de rede de destino correspondente na tabela de roteamento.

O segundo registro: o endereço de destino 192.168.0.129 e a máscara 255.255.255.128 são combinados para obter o endereço de rede 192.168.0.129, que é o mesmo que o endereço de rede de destino correspondente na tabela de roteamento, para que o roteador saiba que deve encaminhar pela interface 1.

A tabela de roteamento mencionada acima possui apenas a configuração da rede conectada diretamente e outros registros de rede obtidos dinamicamente pelo roteador, etc., que precisam ser aprendidos posteriormente.

A tabela de roteamento não encaminha datagramas IP de transmissão.

4.5 Configuração de roteamento estático e possíveis problemas de loop de roteamento

  • A configuração de roteamento estático significa que os usuários ou administradores de rede usam comandos relacionados ao roteador para configurar manualmente as tabelas de roteamento para roteadores.
  • Este método de configuração manual é simples e tem baixo overhead, mas não pode se adaptar a mudanças no estado da rede (tráfego, topologia, etc.) no tempo, e geralmente é usado apenas em redes de pequena escala.

O uso da configuração de roteamento estático pode causar erros de loop de roteamento:

  • Erro de configuração
  • redes agregadas que não existiam
  • falha na rede

1. Configuração de roteamento estático

imagem-20201018160349375

(1) Rota padrão

Se um roteador deseja encaminhar datagramas para outras redes na Internet, isso requer que a tabela de roteamento do roteador tenha entradas para as redes correspondentes. Se adicionarmos entradas manualmente para essas redes, isso exigirá muito trabalho e tornará a tabela de roteamento muito grande. Neste momento, para entradas de roteamento de diferentes redes de destino com o mesmo próximo salto, uma rota padrão pode ser usada.

O endereço de rede de destino da rota padrão é 0.0.0.0 e seu formato CIDR é 0.0.0.0/0.

imagem-20201018160906284

(2) Roteamento de host específico

Às vezes, podemos adicionar uma entrada de roteamento específica de host para um host ao roteador, que geralmente é usado por gerentes de rede para gerenciar e testar a rede.

imagem-20201018161440257

Deve-se notar que o número de rede de uma rota de host específica é 32

2. Problema de loop de roteamento causado por roteamento estático

Caso 1: erro de configuração

imagem-20210609151818235

Quando R2 recebe o datagrama cuja rede de destino é 192.168.1.0, ele o encaminha para a interface 0 de R3 de acordo com a tabela de roteamento .

Para evitar que o datagrama IP circule permanentemente no loop de roteamento, um campo TTL de tempo de vida é definido no cabeçalho do datagrama IP . Após o datagrama IP entrar no roteador, o valor do TTL é reduzido em 1. Se o TTL não for igual a 0, ele será encaminhado pelo roteador, caso contrário será descartado.

Caso 2: Agregando redes inexistentes

imagem-20201018162333671

Na verdade, a rede 192.168.0.0/22 ​​​​contém quatro redes:

  • 192.168.0.0/24
  • 192.168.1.0/24
  • 192.168.2.0/24
  • 192.168.3.0/24

Quando a rede de destino do datagrama encaminhada por R2 é 192.168.3.0 (que não existe na topologia de rede acima), o R2 compara o terceiro item na tabela de roteamento e encaminha o datagrama para a interface 1 de R1. Após o recebimento do datagram, o R1 verifica a tabela de roteamento e seleciona a rota de encaminhamento e a encaminhamento e a encaminhamento e a retenção da rota e seleciona a rota para encaminhamento, e selecionar a rota de encaminhamento, e selecionar a rota, a rota para encaminhamento, e selecionar a rota, a rota para encaminhamento, e seleciona a rota. Ulting em um problema de loop de roteamento.

Solução:

Na tabela de roteamento de R2, adicione uma rota de buraco negro para a rede inexistente agregada . O próximo salto da rota de buraco negro é null0 , que é uma interface virtual dentro do roteador, que é equivalente ao roteador descartando o datagrama IP do endereço de rede.

imagem-20210609154831503

Neste momento, se R2 receber um datagrama cuja rede de destino é 192.168.3.0, ele pode corresponder a dois registros na tabela de roteamento: a terceira e a quarta entradas, mas de acordo com o princípio de correspondência de prefixo mais longo, o roteador selecionará a quarta entrada para encaminhamento.

Caso 3: Falha na rede

imagem-20210609155959300

Se R2 quiser encaminhar o datagrama cuja rede de destino é 192.168.1.0/24, ele encaminhará o datagrama para a interface 1 de R1. Após receber o datagrama, R1 consulta a tabela de roteamento, seleciona a rota padrão e encaminha o datagrama para a interface 0 de R2. Dessa forma, o datagrama é encaminhado circularmente entre R1 e R2, resultando em um problema de loop de roteamento.

Solução:

Na tabela de roteamento de R1, adicione uma rota de buraco negro para a rede conectada diretamente , para que R1 não encaminhe o datagrama cuja rede de destino é esta rede.

Se a falha anterior desaparecer , R1 obtém automaticamente a entrada de roteamento da rede conectada diretamente de sua interface 0 e define a entrada de roteamento do buraco negro cultivada artificialmente para um estado inválido.

4.6 Protocolos de Roteamento

4.6.1 Visão geral dos protocolos de roteamento

(1) O roteamento pode ser dividido em roteamento estático e roteamento dinâmico:

  • Roteamento Estático:
    • Refere-se a rotas de rede específicas configuradas manualmente, rotas padrão, rotas de host específicas, rotas de buraco negro, etc. Para obter detalhes, consulte a seção 4.5 acima
    • O método de configuração manual é simples e a sobrecarga é pequena. Não pode se adaptar às mudanças de status da rede no tempo
    • Geralmente usado apenas em redes de pequena escala
  • Roteamento dinâmico:
    • Refere-se à aquisição automática de informações de roteamento por meio de protocolos de roteamento
    • É mais complicado, tem uma grande sobrecarga e pode se adaptar melhor às mudanças na rede
    • Adequado para redes de grande escala

(2) O protocolo de roteamento adotado pela Internet possui as três características a seguir:

  • Adaptativo : significa que a Internet adota roteamento dinâmico, que pode se adaptar melhor às mudanças no status da rede.
  • Distribuído : Refere-se à troca de informações de roteamento entre roteadores.
  • Hierarquia : Divida toda a Internet em muitos sistemas autônomos menores AS (Sistema Autônomo), por exemplo, um grande provedor de serviços de Internet pode ser dividido em um sistema autônomo.

(3) A Internet adota um protocolo de roteamento hierárquico:

O roteamento entre sistemas autônomos é chamado de roteamento entre domínios , e o protocolo de roteamento da categoria Exterior Gateway Protocol (EGP) é selecionado .

O roteamento dentro do sistema autônomo é chamado de roteamento intra-domínio , e o protocolo de roteamento da categoria IGP do protocolo de gateway interno é selecionado .

Atualmente, o Exterior Gateway Protocol EGP também é conhecido como Exterior Routing Protocol ERP, e o Interior Gateway Protocol IGP também é conhecido como Interior Routing Protocol IRP.

Os protocolos de gateway interior selecionados pelos dois sistemas autônomos não precisam ser consistentes.

imagem-20210609164525217

(4) Protocolos de roteamento comuns:

imagem-20201019140009740

(5) A estrutura básica do roteador:

Um roteador é um computador especializado com várias portas de entrada e saída cuja tarefa é encaminhar pacotes.

Toda a estrutura do roteador pode ser dividida em duas partes :

  • Parte de seleção de roteamento : o componente principal é o processador de seleção de roteamento e sua tarefa é trocar periodicamente informações de roteamento com outros roteadores para atualizar a tabela de roteamento de acordo com o protocolo de seleção de roteamento usado.
  • Parte de comutação de pacotes : consiste em três partes:
    • troca de tecido
    • um conjunto de portas de entrada
    • um conjunto de portas de saída

imagem-20210609170527777

Existem dois tipos de pacotes recebidos pelo roteador:

  • Se for um pacote comum , ele irá procurar na tabela e encaminhar de acordo com o endereço de destino no pacote , se não encontrar, será descartado, caso contrário será encaminhado de acordo com a porta indicada.
  • Se for uma mensagem de roteamento para troca de informações entre roteadores , o pacote é enviado ao processador de roteamento , e o processador de roteamento atualiza sua própria tabela de roteamento de acordo com o conteúdo do pacote.

Cada porta do roteador também deve ter um buffer de entrada e um buffer de saída:

  • O buffer de entrada é usado para armazenar temporariamente os pacotes que foram inseridos recentemente no roteador, mas ainda não foram processados.
  • O buffer de saída é usado para armazenar temporariamente pacotes que foram processados, mas ainda não enviados

4.6.2 Princípio básico de funcionamento do Routing Information Protocol RIP

O Routing Information Protocol, RIP, foi um dos primeiros protocolos de gateway interior a ganhar uso generalizado.

O RIP requer que cada roteador em um AS em um sistema autônomo mantenha um registro da distância dele mesmo para todas as outras redes no AS.

O RIP usa a contagem de saltos como uma métrica para medir a distância até uma rede de destino.

  • A distância do roteador para a rede conectada diretamente é 1
  • A distância do roteador para a rede não conectada diretamente é o número de roteadores passados ​​+ 1
  • Um caminho só pode conter até 15 roteadores , e uma distância de 16 é equivalente a ser inacessível , então o RIP é adequado apenas para pequenas Internets.

Nota: Os roteadores de alguns fabricantes não implementam o RIP estritamente de acordo com os regulamentos. Por exemplo, o RIP dos roteadores Cisco define a distância para a rede conectada diretamente como 0.

O RIP considera que a rota com a menor distância é uma boa rota , ou seja, a rota com o menor número de roteadores passados.

Quando existem várias , pode-se realizar o balanceamento de carga de custo igual , ou seja, o tráfego é distribuído uniformemente para várias rotas de custo igual.

Roteadores adjacentes trocam suas próprias tabelas de roteamento periodicamente , por exemplo, enviando pacotes de atualização RIP a cada 30 segundos.

1. O processo básico de trabalho do RIP:

imagem-20201019145510947

2. Regras de atualização de entrada de roteamento RIP

imagem-20201019145627339

A tabela do roteador C mostra que a próxima entrada para cada rede de destino é registrada como um ponto de interrogação, o que pode ser entendido como o roteador D não precisa se preocupar com esses conteúdos do roteador C.

Assumindo que o período para enviar a mensagem de atualização RIP do roteador C acabou, o roteador C encapsula as informações de roteamento relevantes em sua própria tabela de roteamento na mensagem de atualização RIP e as envia para o roteador D.

imagem-20201019150120900

Após o roteador D receber o pacote de atualização RIP do roteador C, ele atualiza sua tabela de roteamento de acordo com as regras.

imagem-20201019150412666

3. O protocolo RIP tem o problema de "transmissão lenta de más notícias"

imagem-20201019151041492 imagem-20201019151135255 imagem-20201019151332767

Solução:

imagem-20201019151639181

No entanto, esses métodos não podem resolver completamente o problema de "más notícias viajam lentamente", que é a natureza do vetor de distância.

4.6.3 Princípio básico de funcionamento do Open Shortest Path First OSPF

1. Conceitos básicos

Open Shortest Path First OSPF (Open Shortes Path First) foi desenvolvido em 1989 para superar as deficiências do RIP.

  • "Aberto" indica que o OSPF não é controlado por um determinado fornecedor, mas publicado publicamente.
  • "Caminho mais curto primeiro" é porque o algoritmo de caminho mais curto proposto por Dijkstra é usado.

O OSPF é baseado no estado do link , não no vetor de distância como o RIP.

O OSPF usa o algoritmo de caminho mais curto para calcular as rotas, o que garante que não ocorram loops de roteamento.

O OSPF não limita a escala da rede e possui alta eficiência de atualização e rápida velocidade de convergência.

imagem-20210611105703863

2. Grupo de saudações

Os roteadores OSPF vizinhos estabelecem e mantêm relacionamentos vizinhos trocando pacotes Hello (Hello) .

imagem-20210612213820786

O pacote de saudação precisa ser encapsulado em um datagrama IP e enviado para o endereço multicast 224.0.0.5 . O valor do campo do número do protocolo no cabeçalho do datagrama IP deve ser 89 para indicar que a carga de dados do datagrama IP é um pacote OSPF.

imagem-20210612213916570

O ciclo de envio do pacote de saudação é de 10 segundos.Se o pacote de saudação do roteador vizinho não for recebido em 40 segundos, o roteador vizinho é considerado inacessível.

Cada roteador criará uma tabela de vizinhos para registrar as informações relevantes dos roteadores adjacentes, como ID do vizinho, interface e contagem regressiva de mortes.

Se o pacote hello não for recebido quando a contagem regressiva for 0, será determinado que o roteador vizinho está inacessível.

imagem-20210612214258879

3. Pacote de atualização do estado do link

Cada roteador usando OSPF gerará anúncio de estado de link LSA (Link State Advertisement), LSA contém os dois conteúdos a seguir:

  • Informações de estado de link para redes conectadas diretamente
  • Informações de estado de link de roteadores vizinhos

O LSA é encapsulado no pacote de atualização de estado do link LSU e enviado pelo método de inundação .

Um roteador que recebe um pacote de atualização de estado de link encaminhará o pacote por todas as suas outras interfaces , ou seja, realizará o encaminhamento de inundação .

Dessa forma, cada roteador do sistema autônomo envia um pacote de atualização de estado de link encapsulado com um anúncio de estado de link, que será entregue a todos os outros roteadores do sistema.

Cada roteador que usa OSPF possui um banco de dados de estado de link LSDB , que é usado para armazenar anúncios de estado de link.

Ao enviar o LSU encapsulado com seu próprio LSA por cada roteador, os LSDBs de cada roteador acabarão por atingir o mesmo.

Cada roteador usando OSPF calcula o caminho mais curto com base no LSDB e constrói o caminho mais curto para outros roteadores, ou seja, constrói sua própria tabela de roteamento.

imagem-20210612220053251

Cinco tipos de pacotes de OSPF:

imagem-20210612220523264

4. O processo de trabalho básico do OSPF

imagem-20210612221241450
  1. Os roteadores vizinhos enviam periodicamente pacotes de saudação para estabelecer e manter relacionamentos vizinhos.
  2. Depois que o relacionamento é estabelecido, o pacote de descrição do banco de dados é enviado ao roteador vizinho (observe que esta é apenas a informação resumida do estado do link).
  3. Depois de receber o pacote de descrição do banco de dados, R1 descobre que faltam algumas informações de estado de link, então ele envia um pacote de solicitação de estado de link para R2 .
  4. Depois de recebê-lo, R2 encapsula as informações detalhadas do item de estado de link que falta em R1 em um pacote de atualização de estado de link e o envia para R1.
  5. Depois de recebê-lo, R1 adiciona as informações detalhadas desses itens de estado de link ao seu próprio banco de dados de estado de link e envia um pacote de confirmação de estado de link para R2 .

Da mesma forma, R2 também pode solicitar informações de estado de link que faltam de R1, para que R1 e R2 possam obter a sincronização do banco de dados de estado de link .

imagem-20210612221830204

A cada 30 minutos ou quando o estado do link mudar, o roteador enviará um pacote de atualização do estado do link e outros roteadores que receberem o pacote executarão o encaminhamento de inundação e enviarão um pacote de confirmação do estado do link ao roteador.

5. OSPF em rede de acesso multiponto

Quando um roteador OSPF estabelece uma relação de vizinhança em uma rede de acesso multiponto, se outros mecanismos não forem adotados, um grande número de grupos multicast será gerado.

Por exemplo: os roteadores na figura abaixo são vizinhos e cada roteador envia um pacote hello e um pacote de atualização de estado de link para outros n-1 roteadores.

imagem-20210612222705445

Para reduzir o número de pacotes enviados, o OSPF adota o método de eleger o roteador designado DR e o roteador designado de backup BDR .

Todos os roteadores não DR e não BDR só estabelecem relacionamento vizinho com DR e BDR , e não DR/BDR só podem trocar informações por meio de DR/BDR.

Se houver algum problema com o DR, o BDR substituirá o DR.

imagem-20210612223118662

Não é complicado implementar DR e BDR, basta trocar alguns parâmetros de eleição entre roteadores, como prioridade do roteador, ID do roteador, endereço IP da interface, etc., e então selecionar DR e BDR de acordo com as regras de eleição.

6. Área

Em uma rede de larga escala, os pacotes enviados por cada roteador serão encaminhados por todos os roteadores do sistema, o que causará muito tráfego em toda a rede.

Portanto, o OSPF divide um sistema autônomo em várias áreas menores chamadas areas .

Cada área possui um identificador de área de 32 bits , que pode ser expresso em notação decimal com pontos.O identificador da área do backbone deve ser 0, e os identificadores das demais áreas são diferentes.

O tamanho de cada área não deve ser muito grande e geralmente não deve conter mais de 200 roteadores .

imagem-20210612225324188

Roteador intra-área : Todas as interfaces do roteador estão na mesma área.

Roteador de área de borda : conecta áreas diferentes, uma interface é usada para conectar sua própria área e a outra interface é usada para conectar a área de backbone.

Roteador de backbone : um roteador em uma área de backbone e um roteador de borda de área também podem ser considerados roteadores de backbone.

Roteador de borda de sistema autônomo : um dos roteadores de backbone, usado para trocar informações de roteamento com outros sistemas autônomos.

4.6.4 O princípio básico de funcionamento do Border Gateway Protocol BGP:

O protocolo RIP e o protocolo OSPF acima pertencem ao protocolo de gateway interno, e o protocolo de gateway de borda apresentado neste resumo pertence ao protocolo de gateway externo.

Em diferentes sistemas autônomos, o custo de medição de roteamento (distância, largura de banda, custo etc.) pode ser diferente , portanto, para seleção de roteamento entre diferentes sistemas autônomos, não é viável usar o custo para medir a melhor rota.

A seleção de roteamento entre sistemas autônomos também precisa considerar políticas relacionadas (políticas, econômicas, de segurança, etc. ), como não passar por alguns países com ameaças à segurança, e alguns sistemas autônomos precisam carregar, etc.

O BGP só pode encontrar uma rota melhor que possa alcançar a rede de destino, em vez de procurar uma rota ideal.

imagem-20210612232632543

Ao configurar o BGP, o administrador de cada sistema autônomo deve selecionar pelo menos um roteador como o "porta-voz do BGP" do sistema autônomo .

Para trocar informações de roteamento entre alto-falantes BGP de diferentes sistemas autônomos, uma conexão TCP deve ser estabelecida primeiro e o número da porta é 179 .

  • Os pacotes BGP são trocados nesta conexão TCP para estabelecer uma sessão BGP .

  • Use sessões BGP para trocar informações de roteamento (por exemplo, adicionar novas rotas, retirar rotas desatualizadas e relatar erros, etc.)

  • Dois alto-falantes BGP que trocam informações de roteamento usando uma conexão TCP são chamados vizinhos ou pares um do outro .

Após os alto-falantes BGP trocarem as informações de acessibilidade de rede entre si, cada alto-falante BGP encontra uma melhor rota para cada sistema autônomo a partir das informações de roteamento recebidas de acordo com a estratégia adotada .

imagem-20201019192031087

imagem-20210612233541646

Questões práticas:

imagem-20210612233810910

4.7 O formato do cabeçalho do datagrama IPv4

Parte fixa : 20 bytes, que devem ser incluídos em cada datagrama IP.

Parte variável : ocupa de 0 a 40 bytes.

O cabeçalho de um datagrama IP geralmente é descrito em unidades de 32 bits.Cada linha na figura consiste em 32 bits (4 bytes) e cada pequena grade é chamada de campo ou domínio .

imagem-20210612235317986

Versão : 4 bits, indicando a versão do protocolo IP. As versões do protocolo IP utilizadas por ambas as partes da comunicação devem ser as mesmas, sendo que atualmente o número da versão do protocolo IP amplamente utilizado é 4 (nomeadamente IPv4).

Comprimento do cabeçalho : 4 bits, indicando o comprimento do cabeçalho do datagrama IP, e o valor deste campo é em unidades de 4 bytes .

  • O valor decimal mínimo é 5, o que significa que o cabeçalho do datagrama IP possui apenas uma parte fixa de 20 bytes.
  • O valor decimal máximo é 15, indicando que o cabeçalho do datagrama IP contém uma parte fixa de 20 bytes e uma parte variável de até 40 bytes.

DiffServ : 8 bits são usados ​​para obter melhores serviços. Normalmente este campo não é utilizado.

Comprimento total : 16 bits, indicando o comprimento total do datagrama IP (cabeçalho + payload de dados), o valor máximo é 65535 em decimal, em bytes, e datagramas IP tão longos raramente são transmitidos na prática.

Tempo de vida : 8 bits

  • Inicialmente, a unidade é de segundos, e o tempo de vida máximo é de 255 segundos. Quando um roteador encaminha um datagrama IP, ele subtrai o valor deste campo no cabeçalho do datagrama IP do tempo gasto pelo roteador no datagrama IP. Se não for 0, é encaminhado, caso contrário é descartado.
  • Agora tome como unidade o número de saltos, quando o roteador encaminhar o datagrama IP, o valor deste campo no cabeçalho do datagrama IP é decrementado em 1, se não for 0, é encaminhado, caso contrário é descartado.
  • Função: evitar que datagramas IP circulem na rede (consulte 4.5.2 problema de loop de roteamento)

Protocolo : 8 bits, usado para indicar que tipo de unidade de dados de protocolo é a parte de dados do datagrama IPv4.

imagem-20210613003405880

Soma de verificação do cabeçalho : ocupa 16 bits e serve para detectar se há algum erro no cabeçalho durante a transmissão. Mais simples que a codificação CRC, conhecida como soma de verificação da Internet.

  • Toda vez que um datagrama IP passa por um roteador, o roteador deve recalcular a soma de verificação do cabeçalho, porque alguns campos (time to live, flag, slice offset, etc.) podem mudar.
  • Como a própria camada IP não fornece serviços de transmissão confiáveis ​​e o cálculo da soma de verificação do cabeçalho é uma operação demorada, os roteadores não calculam mais a soma de verificação do cabeçalho no IPv6, encaminhando datagramas IP mais rapidamente.

Endereço IP de origem e endereço IP de destino : 32 bits cada, usados ​​para preencher o endereço IP do host de origem que envia o datagrama IP e o endereço IP do host de destino que recebe o datagrama IP.

Campo opcional : o comprimento pode variar de 1 byte a 40 bytes. Usado para oferecer suporte a solução de problemas, medição e medidas de segurança. Os campos opcionais adicionam funcionalidade ao datagrama IP, mas também adicionam sobrecarga. Na prática, os campos opcionais raramente são usados.

Campo de preenchimento : certifique-se de que o comprimento do cabeçalho seja um múltiplo inteiro de 4 bytes. Preencher com todos os 0s.

O campo de identificação, o campo de sinalizador e o campo de deslocamento de fatia são usados ​​juntos para fragmentação de datagramas IP.

O protocolo da camada de enlace de dados estipula o comprimento máximo da carga de dados do quadro , que é chamado de MTU da unidade máxima de transmissão . Se o comprimento de um datagrama IP exceder o MTU, ele não poderá ser encapsulado em um quadro, e o datagrama IP original precisará ser fragmentado em datagramas IP menores.

imagem-20210613001907462

Identificação : ocupando 16 bits, cada fragmento pertencente ao mesmo datagrama possui a mesma identificação. O software IP mantém um contador, incrementa o valor do contador em um cada vez que um datagrama é gerado e atribui esse valor ao campo de identificação.

Flag : ocupa 3 bits, o significado de cada bit é o seguinte:

  • Bit DF: Indica se a fragmentação é permitida, 1 significa que a fragmentação não é permitida e 0 significa que a fragmentação é permitida.
  • Bit MF: Indica se existem fragmentos por trás deste fragmento. 1 significa que ainda há fragmentos, 0 significa que este é o último fragmento.
  • Bits reservados: DEVEM ser definidos como 0.

Deslocamento de fragmento : 13 bits, indicando a posição de cada datagrama fragmentado no datagrama original. em unidades de 8 bytes.

Exemplo de fragmentação:

imagem-20201019221021157

4.8 Internet Control Message Protocol ICMP

Para encaminhar datagramas IP com mais eficiência e melhorar a chance de entrega bem-sucedida, o Internet Control Message Protocol (ICMP) é usado na camada da Internet.

Hosts ou roteadores usam ICMP para enviar mensagens de relatório de erro e mensagens de consulta .

As mensagens ICMP são encapsuladas e enviadas em datagramas IP.

1. Mensagem de relatório de erro ICMP

Existem cinco tipos de mensagens de erro ICMP:

  • ponto final inacessível
  • supressão de fonte
  • tempo excedido
  • problema de parâmetro
  • mudar rota (redirecionar)

(1) O ponto final é inacessível

Quando um roteador ou host não consegue entregar um datagrama, ele envia uma mensagem Destination Unreachable para a origem.

Especificamente, de acordo com o campo do código ICMP, ele pode ser subdividido em 13 tipos de erros, como rede de destino inacessível, host de destino inacessível, protocolo de destino inacessível, porta de destino inacessível e rede de destino desconhecida.

Exemplo: H1 deseja enviar um datagrama IP para H2, que precisa ser encaminhado por R1, mas não há entrada relevante sobre H2 na tabela de roteamento de R1, o datagrama será descartado e uma mensagem de destino inacessível será enviada para H1.

imagem-20210613105424133

(2) Supressão da fonte

Quando um roteador ou host descarta um datagrama devido ao congestionamento, ele envia uma mensagem de supressão de origem à origem para que ela saiba que a taxa de envio deve ser reduzida.

Exemplo:

imagem-20210613105740516

(3) O tempo excede

Quando o roteador recebe um datagrama IP cujo endereço de destino não é o seu, ele diminuirá seu TTL em 1. Se o resultado não for 0, ele encaminhará o datagrama. Se o resultado for 0, ele descartará o datagrama e enviará a mensagem de tempo excedido para a fonte.

Além disso, quando o terminal não pode receber todos os fragmentos de datagrama de um datagrama dentro do tempo predeterminado, ele descarta todos os fragmentos de datagrama recebidos e envia uma mensagem de tempo excedido ao ponto de origem.

Por exemplo:

imagem-20210613110034058

(4) Problema de parâmetro

Quando um roteador ou host recebe um datagrama IP, ele descobre que ocorreu um erro de bit no cabeçalho de acordo com o campo de soma de verificação do cabeçalho, descarta o datagrama e envia uma mensagem de problema de parâmetro para a origem.

Exemplo:

imagem-20210613110442803

(5) Mude a rota

O roteador envia a mensagem de alteração de rota para o host, informando-o de que o datagrama deve ser enviado para outro roteador (melhor rota) na próxima vez.

Exemplo:

imagem-20210613110736009

As mensagens de relatório de erro ICMP não devem ser enviadas nas seguintes situações:

imagem-20210613110912711

2. Mensagem de consulta ICMP

(1) Pedido de eco e resposta

A mensagem de solicitação de eco ICMP é uma consulta enviada por um host ou roteador para um host de destino específico .

O host que recebe a mensagem deve enviar uma mensagem de resposta de eco ICMP para o host ou roteador de origem .

Esta mensagem de consulta é usada para testar se a estação de destino está acessível e para saber seu status relacionado .

(2) Solicitação e resposta de carimbo de data/hora

A mensagem de solicitação de carimbo de data/hora ICMP é para solicitar que um host ou roteador responda a data e hora atuais .

Há um campo de 32 bits na mensagem de resposta do carimbo de data/hora do ICMP e o inteiro escrito nele indica quantos segundos existem desde 1º de janeiro de 1900 até o momento atual.

Esta mensagem de consulta é usada para sincronização de relógio e medição de tempo.

3. Exemplos de aplicações ICMP

(1) PING de detecção de pacotes entre redes

  • Usado para testar a conectividade entre hosts ou roteadores, o comando ping é usado na janela.
  • A camada de aplicação usa diretamente o ICMP na camada da Internet , sem TCP ou UDP na camada de transporte.
  • Use o ICMP para ecoar mensagens de solicitação e resposta.
imagem-20210613112626568

(2) trace route traceroute

imagem-20210613112858417

O princípio de implementação do traceroute:

imagem-20201019234718107 imagem-20201019234741268 imagem-20201019234758693

4.9 VPN de Rede Privada Virtual e NAT de Tradução de Endereço de Rede

Acho que você gosta

Origin blog.csdn.net/OYMNCHR/article/details/119114361
Recomendado
Clasificación