Como funciona o encaminhamento de pacotes de dados em uma rede IP?

O IP (Internet Protocol) é o principal protocolo de comunicação da Internet. Ele é o responsável por endereçar e encaminhar os pacotes que trafegam pela rede mundial de computadores. Pacotes são os blocos de informações enviados na Internet e podem ser considerados como as cartas enviadas pelo serviço de correios. Os pacotes da Internet são divididos em duas partes: o cabeçalho, que, como um envelope, possui as informações de endereçamento da correspondência, e dados, que é a mensagem a ser transmitida propriamente dita. Na imagem abaixo, observa-se um esquema do cabeçalho do protocolo IP. Cada pacote possui um endereço de destino e um endereço de origem e, a cada roteador no caminho, o endereço de destino é verificado e o pacote encaminhado para o próximo salto no caminho.

Cabeçalho de um pacote IP (Reprodução / UnderLinux) — Foto: TechTudo

Os roteadores são elementos distribuídos por toda a rede e interconectados. Eles são como as estações de distribuição de correspondências, distribuindo os pacotes para outros roteadores mais próximos do destino final ou do próprio destino, se for o último elemento do caminho. A descoberta do caminho é realizada automaticamente pelos roteadores, através dos protocolos de roteamento. Esses protocolos, de maneira geral, se baseiam no anúncio dos vizinhos de um roteador para os seus adjacentes na rede. Assim, os roteadores descobrem todos os caminhos na Internet e para qual vizinho ele deve entregar cada pacote. Dentre os protocolos de roteamento mais usados, pode-se citar o RIP (Route Information Protocol), o OSPF (Open Shortest Path First) e o BGP (Border Gateway Protocol).

O endereço usado no Protocolo da Internet é o endereço IP. Atualmente, a versão mais utilizada do protocolo é a versão 4, que possui 32 bits no campo de endereço. Assim, existem quatro bilhões de endereços, aproximadamente. Esse número de endereços, embora grande,  está próximo de ser totalmente utilizado e, a cada ano, aumenta-se a especulação sobre o uso da versão 6 do protocolo. A nova versão, por possuir 128 bits no campo de endereço, possibilita a inclusão na Internet de aproximadamente 256.000.000.000.000.000.000.000.000.000 trilhões de dispositivos na Internet, ou seja, seria como se pudéssemos endereçar, por exemplo, todos os grãos de areia de um deserto.

O endereço da versão 4 do protocolo IP, é dividido em quatro grupos de 8 bits, denominados octetos, ou seja, quatro números de 0 a 255, separados por pontos. O endereço IP é distribuído de forma hierárquica, formando sub-redes. Inicialmente, classificou-se as redes da Internet em 3 tipos: classe A, classe B e classe C. Essas classes eram definidas pelo seu tamanho. Quando uma empresa adquiria uma rede classe A, ela recebia o primeiro octeto fixo e tinha a liberdade de atribuir internamente todos os endereços nos três últimos octetos. A classe C, por outro lado, dava para a empresa apenas 256 endereços diferentes, pois fixava os 3 últimos octetos. Tal estrutura se mostrou limitada, pois rapidamente usou-se todas as redes de classe B, pois considerava-se a classe C pequena para uma empresa e a classe A, grande demais. Na classe A, podia-se ter aproximadamente 16 milhões de estações. Na imagem abaixo, pode-se observar a quantidade de interconexões no núcleo da Internet em agosto de 2007, ou seja, ela representa apenas as interconexões entre os provedores de Internet, sem considerar os clientes finais.

Topologia da Internet em 2007 (Reprodução / Caida) — Foto: TechTudo

A solução para esse problema foi a criação da máscara de rede, adicionada ao IP com a tecnologia CIDR (Classless InterDomain Routing). A máscara de rede determina até qual dígito define a sub-rede e a partir de qual, tem-se os endereços de estações dentro das sub-redes. A máscara de rede possui 32 bits, assim como os endereços e são definidas como 1 para os bits correspondentes à rede e como 0 para as estações. Assim, possibilitou-se a criação de diversas redes fragmentando uma classe A ou agregando diversas classes C. Normalmente, expressa-se a máscara pelo número decimal correspondente aos 8 bits, por exemplo, o octeto 11111111 é apresentado como 255 e o octeto 11110000 é apresentado como 240.

No IP, no entanto, existem alguns endereços reservados. Toda a rede classe A, 127.0.0.0, com máscara de rede 255.0.0.0, é reservada para endereços locais na mesma máquina. Os endereços das redes 10.0.0.0/255.0.0.0, 172.16.0.0/255.240.0.0 e 192.168.0.0/255.255.0.0 são reservados para redes privadas, ou seja, não são vistos na Internet nem encaminhados pelos roteadores. Esses endereços costumam ser usados em redes internas, que utilizam o NAT (Network Address Translation) para compartilhar um endereço de IP público com diversos equipamentos, que utilizam endereços privados. Por fim, os endereços 224.0.0.0/240.0.0.0 são reservados para IP Multicast.

Avançar para o conteúdo principal

Não há mais suporte para esse navegador.

Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.

Compreender os conceitos básicos de endereçamento TCP/IP e sub-redes

  • Artigo
  • 02/16/2022
  • 13 minutos para o fim da leitura

Neste artigo

Este artigo é uma introdução geral aos conceitos de redes e sub-redes de protocolo de Internet (IP). Há um glossário no final do artigo.

Aplicável ao:   Windows 10 - todas as edições
Número original do KB:   164015

Resumo

Ao configurar o protocolo TCP/IP em um computador Windows, as configurações TCP/IP exigem:

  • Um endereço IP
  • Uma máscara de sub-rede
  • Um gateway padrão

Para configurar o TCP/IP corretamente, é necessário compreender como as redes TCP/IP são abordadas e divididas em redes e sub-redes.

O sucesso do TCP/IP como o protocolo de rede da Internet é em grande parte devido à sua capacidade de conectar redes de diferentes tamanhos e sistemas de diferentes tipos. Essas redes são arbitrariamente definidas em três classes principais (juntamente com algumas outras) que têm tamanhos predefinidos. Cada uma delas pode ser dividida em sub-redes menores pelos administradores do sistema. Uma máscara de sub-rede é usada para dividir um endereço IP em duas partes. Uma parte identifica o host (computador) e a outra parte identifica a rede à qual ele pertence. Para entender melhor como os endereços IP e máscaras de sub-rede funcionam, procure um endereço IP e veja como ele é organizado.

Endereços IP: redes e hosts

Um endereço IP é um número de 32 bits. Ele identifica exclusivamente um host (computador ou outro dispositivo, como uma impressora ou roteador) em uma rede TCP/IP.

Os endereços IP normalmente são expressos em formato decimal com pontos, com quatro números separados por pontos, como 192.168.123.132. Para entender como as máscaras de sub-rede são usadas para distinguir entre hosts, redes e sub-redes, examine um endereço IP em notação binária.

Por exemplo, o endereço IP decimal com pontos 192.168.123.132 é (em notação binária) o número de 32 bits 110000000101000111101110000100. Esse número pode ser difícil de entender, então divida-o em quatro partes de oito dígitos binários.

Essas seções de 8 bits são conhecidas como octetos. O endereço IP de exemplo se torna 11000000.10101000.01111011.10000100. Esse número faz um pouco mais de sentido, portanto, para a maioria dos usos, converta o endereço binário em um formato decimal com pontos (192.168.123.132). Os números decimais separados por pontos são os octetos convertidos de binário para notação decimal.

Para que uma rede de longa distância (WAN) TCP/IP funcione com eficiência como uma coleção de redes, os roteadores que transmitem pacotes de dados entre redes não sabem a localização exata de um host para o qual um pacote de informações é destinado. Os roteadores só sabem de qual rede o host é membro e usam informações armazenadas em sua tabela de rota para determinar como obter o pacote para a rede do host de destino. Depois que o pacote é entregue à rede de destino, o pacote é entregue ao host apropriado.

Para que esse processo funcione, um endereço IP tem duas partes. A primeira parte de um endereço IP é usada como um endereço de rede, a última parte como um endereço host. Se você pegar o exemplo 192.168.123.132 e dividi-lo nessas duas partes, você obterá 192.168.123. Host de rede .132 ou 192.168.123.0 - endereço de rede. 0.0.0.132 - endereço host.

Máscara de sub-rede

O segundo item, que é necessário para que TCP/IP funcione, é a máscara de sub-rede. A máscara de sub-rede é usada pelo protocolo TCP/IP para determinar se um host está na sub-rede local ou em uma rede remota.

Em TCP/IP, as partes do endereço IP que são usadas como endereços de rede e host não são corrigidas. A menos que você tenha mais informações, os endereços de rede e host acima não poderão ser determinados. Essas informações são fornecidas em outro número de 32 bits chamado máscara de sub-rede. A máscara de sub-rede é 255.255.255.0 neste exemplo. Não é óbvio o que esse número significa, a menos que você saiba que 255 em notação binária é igual a 11111111. Portanto, a máscara de sub-rede é 11111111.11111111.11111111.00000000.

Juntando o endereço IP e a máscara de sub-rede, as partes de rede e host do endereço podem ser separadas:

11000000.10101000.01111011.10000100 - Endereço IP (192.168.123.132)
11111111.11111111.11111111.00000000 - Máscara de sub-rede (255.255.255.0)

Os primeiros 24 bits (o número de outros na máscara de sub-rede) são identificados como o endereço de rede. Os últimos 8 bits (o número de zeros restantes na máscara de sub-rede) são identificados como o endereço do host. Ele fornece os seguintes endereços:

11000000.10101000.01111011.00000000 - Endereço de rede (192.168.123.0)
00000000.00000000.00000000.10000100 - Endereço do host (000.000.000.132)

Portanto, agora você sabe que neste exemplo usando uma máscara de sub-rede 255.255.255.0, a ID de rede é 192.168.123.0 e o endereço do host é 0.0.0.132. Quando um pacote chega na sub-rede 192.168.123.0 (da sub-rede local ou de uma rede remota) e ele tem um endereço de destino 192.168.123.132, seu computador o receberá da rede e o processará.

Quase todas as máscaras de sub-rede decimais são convertidas em números binários que são todos uns à esquerda e todos zeros à direita. Algumas outras máscaras de sub-rede comuns são:

DecimalBinária
255.255.255.192 1111111.11111111.1111111.11000000
255.255.255.224 1111111.11111111.1111111.11100000

Internet RFC 1878 (disponível a partir deInformações Públicas InterNIC sobre Serviços de Registro de Nome de Domínio da Internet) descreve as sub-redes válidas e máscaras de sub-rede que podem ser usadas em redes TCP/IP.

Classes de rede

Os endereços da Internet são alocados pela InterNIC, a organização que administra a Internet. Esses endereços IP são divididos em classes. Os mais comuns são as classes A, B e C. As classes D e E existem, mas não são usadas pelos usuários finais. Cada uma das classes de endereço tem uma máscara de sub-rede padrão diferente. Você pode identificar a classe de um endereço IP analisando seu primeiro octeto. A seguir estão os intervalos de endereços da Internet classe A, B e C, cada um com um endereço de exemplo:

  • As redes classe A usam uma máscara de sub-rede padrão de 255.0.0.0 e têm 0-127 como o primeiro octeto. O endereço 10.52.36.11 é um endereço classe A. O primeiro octeto é 10, que está entre 1 e 126, inclusive.

  • As redes de classe B usam uma máscara de sub-rede padrão de 255.255.0.0 e têm 128-191 como o primeiro octeto. O endereço 172.16.52.63 é um endereço de classe B. O primeiro octeto é 172, que está entre 128 e 191, inclusive.

  • As redes de classe C usam uma máscara de sub-rede padrão de 255.255.255.0 e têm 192-223 como o primeiro octeto. O endereço 192.168.123.132 é um endereço de classe C. Seu primeiro octeto é 192, que está entre 192 e 223, inclusive.

Em alguns cenários, os valores padrão da máscara de sub-rede não se ajustam às necessidades da organização por um dos seguintes motivos:

  • A topologia física da rede
  • Os números de redes (ou hosts) não se ajustam às restrições de máscara de sub-rede padrão.

A próxima seção explica como as redes podem ser divididas usando máscaras de sub-rede.

Sub-rede

Uma rede TCP/IP Classe A, B ou C pode ser dividida ou dividida em sub-redes por um administrador do sistema. Torna-se necessário à medida que você reconcilia o esquema de endereço lógico da Internet (o mundo abstrato de endereços IP e sub-redes) com as redes físicas em uso pelo mundo real.

Um administrador de sistema que recebe um bloco de endereços IP pode estar administrando redes que não estão organizadas de uma forma que se encaixe facilmente nesses endereços. Por exemplo, você tem uma rede de área ampla com 150 hosts em três redes (em cidades diferentes) conectadas por um roteador TCP/IP. Cada uma dessas três redes tem 50 hosts. Você está alocado na rede classe C 192.168.123.0. (Para ilustração, esse endereço é, na verdade, de um intervalo que não está alocado na Internet.) Significa que você pode usar os endereços 192.168.123.1 a 192.168.123.254 para os 150 hosts.

Dois endereços que não podem ser usados em seu exemplo são 192.168.123.0 e 192.168.123.255 porque os endereços binários com uma porção de host de todos os uns e todos os zeros são inválidos. O endereço zero é inválido porque é usado para especificar uma rede sem especificar um host. O endereço 255 (em notação binária, um endereço de host de todos) é usado para transmitir uma mensagem para cada host em uma rede. Lembre-se apenas de que o primeiro e o último endereço em qualquer rede ou sub-rede não podem ser atribuídos a um host individual.

Agora você deve poder fornecer endereços IP para 254 hosts. Funcionará bem se todos os 150 computadores estiverem em uma única rede. No entanto, os 150 computadores estão em três redes físicas separadas. Em vez de solicitar mais blocos de endereço para cada rede, divida a rede em sub-redes que permitem usar um bloco de endereços em várias redes físicas.

Nesse caso, você divide a rede em quatro sub-redes usando uma máscara de sub-rede que torna o endereço de rede maior e o possível intervalo de endereços de host menor. Em outras palavras, você está "emprestando" alguns dos bits usados para o endereço de host e usando-os para a parte de rede do endereço. A máscara de sub-rede 255.255.255.192 oferece quatro redes de 62 hosts cada. Ele funciona porque, na notação binária, 255.255.255.192 é igual a 1111111.11111111.1111111.11000000. Os dois primeiros dígitos do último octeto se tornam endereços de rede, portanto, você recebe as redes adicionais 00000000 (0), 01000000 (64), 10000000 (128) e 11000000 (192). (Alguns administradores usarão apenas duas sub-redes usando 255.255.255.192 como uma máscara de sub-rede. Para obter mais informações sobre este tópico, consulte RFC 1878.) Nessas quatro redes, os últimos seis dígitos binários podem ser usados para endereços host.

Usando uma máscara de sub-rede de 255.255.255.192, sua rede 192.168.123.0 se tornará as quatro redes 192.168.123.0, 192.168.123.64, 192.168.123.128 e 192.168.123.192. Essas quatro redes teriam como endereços de host válidos:

192.168.123.1-62 192.168.123.65-126 192.168.123.129-190 192.168.123.193-254

Lembre-se, novamente, que os endereços de host binários com todos os uns ou todos os zeros são inválidos, então você não pode usar endereços com o último octeto de 0, 63, 64, 127, 128, 191, 192 ou 255.

Você pode ver como ele funciona analisando dois endereços host, 192.168.123.71 e 192.168.123.133. Se você usou a máscara de sub-rede classe C padrão de 255.255.255.0, ambos os endereços estão na rede 192.168.123.0. No entanto, se você usar a máscara de sub-rede de 255.255.255.192, elas estarão em redes diferentes; 192.168.123.71 está na rede 192.168.123.64, 192.168.123.133 está na rede 192.168.123.128.

Gateways padrão

Se um computador TCP/IP precisar se comunicar com um host em outra rede, ele geralmente se comunicará por meio de um dispositivo chamado roteador. Em termos de TCP/IP, um roteador especificado em um host, que vincula a sub-rede do host a outras redes, é chamado de gateway padrão. Esta seção explica como o TCP/IP determina se os pacotes devem ou não enviar pacotes para o gateway padrão para alcançar outro computador ou dispositivo na rede.

Quando um host tenta se comunicar com outro dispositivo usando TCP/IP, ele executa um processo de comparação usando a máscara de sub-rede definida e o endereço IP de destino versus a máscara de sub-rede e seu próprio endereço IP. O resultado dessa comparação informa ao computador se o destino é um host local ou um host remoto.

Se o resultado desse processo determinar que o destino é um host local, o computador enviará o pacote na sub-rede local. Se o resultado da comparação determinar que o destino é um host remoto, o computador encaminhará o pacote para o gateway padrão definido em suas propriedades TCP/IP. Em seguida, é responsabilidade do roteador encaminhar o pacote para a sub-rede correta.

Solução de problemas

Problemas de rede TCP/IP geralmente são causados pela configuração incorreta das três entradas principais nas propriedades TCP/IP de um computador. Ao compreender como erros na configuração TCP/IP afetam as operações de rede, você pode resolver muitos problemas comuns de TCP/IP.

Máscara de sub-rede incorreta: se uma rede usar uma máscara de sub-rede diferente da máscara padrão para sua classe de endereço e um cliente ainda estiver configurado com a máscara de sub-rede padrão para a classe de endereço, a comunicação falhará com algumas redes próximas, mas não com as distantes. Por exemplo, se você criar quatro sub-redes (como no exemplo de sub-rede), mas usar a máscara de sub-rede incorreta de 255.255.255.0 na configuração TCP/IP, os hosts não poderão determinar se alguns computadores estão em sub-redes diferentes de seus próprios. Nessa situação, pacotes destinados a hosts em redes físicas diferentes que fazem parte do mesmo endereço classe C não serão enviados para um gateway padrão para entrega. Um sintoma comum desse problema é quando um computador pode se comunicar com hosts que estão em sua rede local e pode se comunicar com todas as redes remotas, exceto as redes que estão próximas e têm o mesmo endereço classe A, B ou C. Para corrigir esse problema, basta inserir a máscara de sub-rede correta na configuração TCP/IP desse host.

Endereço IP incorreto: se você colocar computadores com endereços IP que devem estar em sub-redes separadas em uma rede local entre si, eles não poderão se comunicar. Eles tentarão enviar pacotes uns para os outros por meio de um roteador que não pode encaminhá-los corretamente. Um sintoma desse problema é um computador que pode se comunicar com hosts em redes remotas, mas não pode se comunicar com alguns ou todos os computadores em sua rede local. Para corrigir esse problema, verifique se todos os computadores na mesma rede física têm endereços IP na mesma sub-rede IP. Se você ficar sem endereços IP em um único segmento de rede, haverá soluções que vão além do escopo deste artigo.

Gateway padrão incorreto: um computador configurado com um gateway padrão incorreto pode se comunicar com hosts em seu próprio segmento de rede. Mas não se comunicará com hosts em algumas ou todas as redes remotas. Um host pode se comunicar com algumas redes remotas, mas não com outras se as seguintes condições são verdadeiras:

  • Uma única rede física tem mais de um roteador.
  • O roteador errado é configurado como um gateway padrão.

Esse problema é comum se uma organização tiver um roteador para uma rede TCP/IP interna e outro roteador conectado à Internet.

Referências

Duas referências populares em TCP/IP são:

  • "TCP/IP Illustrated, Volume 1: The Protocols," Richard Stevens, Addison Wesley, 1994
  • "Internetworking with TCP/IP, Volume 1: Principles, Protocols, and Architecture", Douglas E. Comer, Prentice Hall, 1995

É recomendável que um administrador do sistema responsável por redes TCP/IP tenha pelo menos uma dessas referências disponíveis.

Glossário

  • Endereço de transmissão -- um endereço IP com uma parte de host que contém somente uns.

  • Host -- Um computador ou outro dispositivo em uma rede TCP/IP.

  • Internet -- A coleção global de redes conectadas e que compartilham um intervalo comum de endereços IP.

  • InterNIC -- A organização responsável pela administração de endereços IP na Internet.

  • IP -- O protocolo de rede usado para enviar pacotes de rede por uma rede TCP/IP ou pela Internet.

  • Endereço IP -- Um endereço de 32 bits exclusivo para um host em uma rede TCP/IP ou internetwork.

  • Rede -- Há dois usos para o termo rede neste artigo. Um é um grupo de computadores em um único segmento de rede física. O outro é um intervalo de endereços de rede IP alocado por um administrador do sistema.

  • Endereço de rede -- Um endereço IP com uma parte de host que tem apenas zeros.

  • Octeto -- Um número de 8 bits, 4 dos quais compõem um endereço IP de 32 bits. Eles têm um intervalo de 00000000-11111111 que corresponde aos valores decimais 0-255.

  • Pacote-- Uma unidade de dados transmitidos por uma rede TCP/IP ou uma rede de área ampla.

  • RFC (Solicitação de Comentário) -- Um documento usado para definir padrões na Internet.

  • Roteador -- Um dispositivo que transmite o tráfego de rede entre redes IP diferentes.

  • Máscara de Sub-rede -- Um número de 32 bits usado para distinguir as partes de rede e host de um endereço IP.

  • Sub-rede -- Uma rede menor criada ao dividir uma rede maior em partes iguais.

  • TCP/IP-- Usado amplamente, o conjunto de protocolos, padrões e utilitários usados com frequência na Internet e em grandes redes.

  • Rede de área ampla (WAN) -- Uma rede grande que é uma coleção de redes menores separadas por roteadores. A Internet é um exemplo de uma WAN grande.

Como funciona o envio de dados por pacotes?

Sem ligação (datagrama): os pacotes são encaminhados independentemente, oferecendo flexibilidade e robustez superiores, já que a rede pode reajustar-se mediante a quebra de um link de transmissão de dados. É necessário enviar-se sempre o endereço de origem. Ex: endereço IP.

Como funciona a distribuição de IP?

Um endereço IP é uma sequência de números separados por pontos. O endereço IP é representado por um conjunto de quatro números: por exemplo, 192.158.1.38. Cada número do conjunto pode variar entre 0 e 255. Ou seja, o intervalo de endereçamento IP vai de 0.0.0.0 a 255.255.255.255.

O que o sistema usa para permitir o encaminhamento de dados?

O protocolo de internet puro, ou seja, o IP, é o principal protocolo de comunicação na rede. Ele é o responsável por endereçar e encaminhar os pacotes que trafegam pela internet. O IP, porém, não se assegura da entrega de seus pacotes de dados.

O que determina o melhor caminho para encaminhar dados pela rede?

Para calcular as rotas entre os enlaces disponíveis na rede, os roteadores executam o algoritmo de Dijkstra, algoritmo esse que irá calcular o melhor caminho entre o roteador local e todos os outros destinos.