O módulo IP monta pacotes de rede e encaminha links de pacotes de rede

Índice

introdução

pacote de rede

A composição dos pacotes de rede

Editar encaminhamento de pacotes de rede

dispositivo de encaminhamento

Processo geral

Edite o módulo ip para enviar pacotes de rede

Adicione informações de controle de cabeçalho de pacotes de rede

Adicione o endereço IP do remetente ao cabeçalho IP

Regras de pesquisa de tabela de roteamento

Edite para adicionar o número do protocolo

Adicionar cabeçalho mac

Edite o protocolo arp para converter o endereço IP em endereço MAC

Editar cache arp

invalidação de cache arp

​Edite o envio e recebimento correspondente ao módulo ip

enviar

aceitar

Definição de responsabilidades


introdução

O artigo anterior da série de pilha de protocolos explicou o processamento do módulo de pilha de protocolos, como conexão, envio e recebimento de pacotes de rede e desconexão.No entanto, a camada superior da pilha de protocolos confiará ao módulo IP para realizar o processamento real.

pacote de rede

A composição dos pacotes de rede

Um pacote de rede consiste em informações de controle no cabeçalho e dados de transmissão seguindo o cabeçalho.

As informações de controle representam o destino para o qual o pacote é enviado e os dados de transmissão são os dados a serem enviados.

Encaminhamento de pacotes de rede

O módulo IP enviará o pacote para o dispositivo de encaminhamento mais próximo. O dispositivo de encaminhamento encontrará o próximo dispositivo de encaminhamento a ser enviado com base nas informações de controle no cabeçalho: uma tabela é armazenada dentro do dispositivo de encaminhamento para registrar a direção de envio correspondente a cada Endereço. Ou seja, de acordo com o endereço de destino registrado no cabeçalho, consulte o próximo dispositivo de encaminhamento a ser enviado na tabela e, ao chegar ao próximo dispositivo de encaminhamento, a mesma consulta é realizada e enviada. Após encaminhar um após o outro, o destino será finalmente alcançado.

Eles são aplicáveis ​​a todos os métodos de comunicação, mas o TCP/IP será mais complicado.

dispositivo de encaminhamento

Conforme mencionado anteriormente, existem dois dispositivos de encaminhamento diferentes, roteadores e hubs , na sub- rede.Eles têm sua própria divisão de trabalho ao transmitir pacotes de rede. O hub transmite de acordo com as regras Ethernet e o roteador transmite de acordo com as regras IP; as informações do cabeçalho carregarão o cabeçalho mac e o cabeçalho ip.

  • O roteador determina a localização do próximo roteador com base no endereço de destino (há uma tabela de roteamento interna que armazena o endereço IP do roteador mais próximo do IP do servidor )
  • O hub transmite o pacote de rede para a próxima rota na sub-rede (o hub também possui uma tabela chamada tabela de protocolo Ethernet porque funciona de acordo com o endereço mac, então esta tabela registra a direção de envio do endereço mac correspondente )

Processo geral

O remetente escreve o endereço IP do servidor no cabeçalho IP ; o protocolo IP primeiro encontra o próximo endereço IP do roteador a ser enviado com base no IP do servidor e, em seguida, preenche o endereço MAC correspondente a este IP no cabeçalho MAC, confiando ao protocolo Ethernet .para enviar;

A seguir, quando o pacote for enviado, ele passará pelo hub, o hub poderá encontrar o próximo roteador através do endereço MAC preenchido pelo protocolo IP e encaminhá-lo para o roteador correspondente (há uma tabela dentro);

Após o próximo roteador recebê-lo, ele apaga o endereço do cabeçalho mac e, em seguida, encontra o próximo IP do roteador de acordo com o protocolo IP.Depois de encontrar o endereço mac correspondente, preencha-o no cabeçalho mac e confie o protocolo Ethernet antes de enviá-lo.

Por analogia, o endereço do servidor é alcançado.

O objetivo de cada roteador é encontrar o IP do próximo roteador, convertê-lo em um mac, preenchê-lo no cabeçalho mac do pacote e encaminhá-lo para o próximo endereço através do hub até que seja transmitido ao servidor

Ilustração:

A parte Ethernet também pode ser substituída por outras coisas, como LAN sem fio, ADSL, FTTH, etc. Todos eles podem substituir a função da Ethernet e ajudar o protocolo IP a transmitir pacotes de rede. Acontece que as informações do cabeçalho MAC nas quais a Ethernet depende não são preenchidas.Quando outras redes além da Ethernet são usadas para transmissão, o cabeçalho MAC também será substituído por outros cabeçalhos adequados às especificações de comunicação selecionadas.

O módulo ip envia pacotes de rede

Adicione informações de controle de cabeçalho de pacotes de rede

Embora o módulo tcp confie ao módulo ip o envio de dados, o módulo ip também usa os dispositivos de encaminhamento confiados pela placa de rede para enviá-los (explicado posteriormente ao analisar a placa de rede)

Portanto, o ponto de partida da operação de envio e recebimento de pacotes é a operação do módulo TCP confiando ao módulo IP o envio de pacotes.

O processo desta delegação é que o módulo TCP adiciona informações do cabeçalho TCP na frente do bloco de dados e passa todo o IP do servidor para o módulo IP, esta parte é o conteúdo do pacote de rede enviado pelo módulo tcp.

Em seguida, o módulo ip preenche o cabeçalho ip com o ip do servidor enviado através do cabeçalho tcp. E consulte o cabeçalho mac do endereço IP e MAC do próximo dispositivo de encaminhamento.

O cabeçalho IP contém as informações de controle exigidas pelo protocolo IP para enviar o pacote ao destino de acordo com o endereço IP (endereço IP do servidor); o cabeçalho MAC contém o controle necessário para transmitir o pacote ao roteador mais próximo através da LAN Ethernet. Informações. (endereço mac do próximo roteador)


O módulo tcp adiciona informações de cabeçalho tcp com base nos dados originais, e o módulo ip adiciona cabeçalho ip e cabeçalho mac na frente do cabeçalho tcp.

Adicione o endereço IP do remetente ao cabeçalho IP

O endereço IP é essencialmente atribuído à placa de rede, mas o computador possui uma placa de rede integrada, portanto também pode ser considerado o endereço IP do computador.

Uma placa de rede corresponde a um endereço IP. Quando há várias placas de rede no computador, você deve escolher qual placa de rede (qual endereço IP usar) para enviar pacotes de rede .

O "Endereço IP do receptor" no cabeçalho IP preenche o endereço IP do parceiro de comunicação.

O endereço IP do remetente precisa determinar a placa de rede usada para envio e preencher o endereço IP da placa de rede .

O roteador usa o protocolo IP para encontrar o IP do próximo roteador através da tabela interna. O módulo IP da pilha de protocolos também usa o protocolo IP, portanto as duas operações devem ser iguais.

O módulo ip determina qual endereço IP usar para envio usando tabelas de roteamento

Você pode usar o comando route print para exibir a tabela de roteamento e confiar o hardware da placa de rede para enviar dados.

Regras de pesquisa de tabela de roteamento

A primeira coluna destnation representa o endereço do servidor

gateway representa o endereço IP do próximo roteador a ser enviado, também chamado de gateway.

interface representa qual placa de rede o remetente usa e qual endereço IP envia o pacote para o gateway

Se o gateway e a interface forem iguais, ze representa o destino final.

  • Primeiro, encontre o destino da rede na tabela de roteamento através do endereço IP de destino e encontre a entrada correspondente (por exemplo, se o IP de destino for 195.6.32, então o destino encontrado pode ser 195.6
  • Se o gateway e a interface forem iguais, o roteador poderá enviá-los diretamente para o endereço IP de destino do destinatário.

Selecione o endereço IP da placa de rede a ser utilizada através da interface e envie o pacote para o gateway (próximo roteador). Se os dois forem iguais, significa que o roteador atual pode enviá-lo diretamente para o IP destinatário. Existe não há necessidade de pegar o próximo roteador e encaminhá-lo (ou seja, na mesma sub-rede)

Adicionar número de protocolo

Indica de qual módulo vem o conteúdo do pacote.

Se o conteúdo for delegado pelo módulo TCP, será definido como 06 (hex). Se for o conteúdo delegado pelo módulo UDP, será definido como 17 (hex). Esses valores são definidos de acordo com as regras. Todos os navegadores de hoje usam tcp para enviar, então defina-o como 06

Adicionar cabeçalho mac

O cabeçalho MAC é o cabeçalho usado pela Ethernet e contém informações como o endereço MAC do receptor e do remetente.

Você pode ver que o endereço MAC é de 48 bits e o endereço IP é de 32 bits.

O tipo Ether no cabeçalho mac é semelhante ao número do protocolo no endereço IP

Pode-se considerar que o tipo Ethernet é seguido pelo conteúdo do pacote Ethernet , e o Ethertype representa o tipo do conteúdo seguinte. O conteúdo dos pacotes Ethernet pode ser pacotes de protocolos como IP e ARP, todos possuem valores correspondentes, que também são determinados de acordo com regras.

O tipo de protocolo IP é 0800 (hex)

Como o endereço MAC do remetente foi determinado acima de qual placa de rede deve ser usada para envio (interface), ele pode ser obtido diretamente da ROM da placa de rede (o endereço MAC será gravado na ROM da placa de rede quando a placa de rede for produzido).

O endereço IP do destinatário (aqui refere-se ao endereço IP passado pelo módulo IP, não ao endereço IP do servidor, que é determinado pelo item gateway na tabela de roteamento), então como podemos obter o endereço MAC do destinatário?

O módulo IP determina para quem o pacote deve ser enviado com base no conteúdo da coluna Gateway na tabela de roteamento .

protocolo arp converte endereço IP em endereço MAC

Existe um método de transmissão na Ethernet que pode enviar pacotes para todos os dispositivos na mesma sub-rede.

Por exemplo, arp perguntará a quem pertence esse endereço IP e me informará o endereço máximo. O dispositivo apenas responderá que é meu e informará seu endereço MAC.

cache arp

Se o endereço MAC for transmitido sempre, muitos pacotes arp aparecerão na rede. Portanto, haverá um espaço de memória no cache arp para armazenar o endereço MAC pesquisado.

Cada vez que você consultar o endereço MAC, primeiro verifique se há um no cache. Se houver, retire-o e use-o diretamente; caso contrário, transmita e envie pacotes arp.

invalidação de cache arp

O endereço IP será alterado. Neste momento, o endereço MAC correspondente não poderá ser usado e ocorrerá um erro e será enviado para o destinatário errado. Portanto, o conteúdo em cache será excluído a cada poucos minutos.

Envie e receba correspondente ao módulo ip

enviar

Adicionar informações de controle de pacotes de rede corresponde ao envio 1 na figura. A seguir será explicado que 2 pacotes enviados irão para o hardware da rede.

Pode ser uma placa conectada à placa-mãe do computador, ou pode ser uma placa PCMCIA em um laptop, ou um chip integrado na placa-mãe do computador. Diferentes formas de hardware têm nomes diferentes e são chamadas coletivamente de placas de rede.

Os dados do pacote de rede recebidos pela placa de rede são compostos pelos números 0 e 1. A placa de rede converte os números em sinais elétricos ou ópticos e os envia através do cabo de rede . Chega ao dispositivo de encaminhamento, que encaminha os dados e finalmente chega ao servidor.

aceitar

O mesmo processo é usado para receber pacotes de rede. Ele é enviado para a placa de rede através do dispositivo de encaminhamento, e a placa de rede converte o sinal elétrico em um sinal digital e o envia para o módulo ip; então o módulo ip removerá o mac header e ip header (ou seja, apenas o cabeçalho tcp e os dados são deixados)) o pacote é entregue ao módulo tcp.

O módulo IP não se importa se o pacote que ele encaminha contém o cabeçalho TCP ou dados reais, nem se a operação do módulo TCP foi bem-sucedida. Ele é responsável apenas pela operação de encaminhamento.

Independentemente de os pacotes a serem enviados ou recebidos serem pacotes de controle ou pacotes de dados, as operações de envio e recebimento do IP para vários tipos de pacotes são as mesmas.

Definição de responsabilidades

Pelo entendimento acima, podemos perceber que o módulo ip completou todas as operações e entregou os pacotes encapsulados para a placa de rede, a placa de rede é responsável apenas por receber e enviar pacotes.

A vantagem disso é que é o mesmo para outros tipos de pacotes exceto IP. Se o empacotamento for concluído antes de ser entregue à placa de rede, então para a placa de rede a operação de envio é exatamente igual ao envio de pacotes IP . Desta forma , a mesma placa de rede pode suportar vários tipos de pacotes.

O mesmo vale para aceitação. Não importa que tipo de pacote seja, ele é responsável apenas por entregá-lo ao módulo de rede correspondente, e você não precisa se preocupar com o tipo de pacote.

Acho que você gosta

Origin blog.csdn.net/m0_65909361/article/details/132905671
Recomendado
Clasificación