Você está na página 1de 38

Curso de

TCP-IP
Básico
V.2.0

abril de 2004
AVISO IMPORTANTE
Esta apostila é parte integrante do Curso de TCP-IP Básico,
desenvolvido pela TopMaster para a Embratel.
O objetivo deste documento é apresentar uma versão textual
do conteúdo do curso online para a conveniência do aluno.
Sua leitura não substitui o estudo online, pois este oferece interações e
animações que não podem ser representadas no formato impresso.

Curso de TCP-IP Básico 2 de 38


3 – Protocolo IP
Após a construção bem-sucedida da usina hidroelétrica, a empresa ACME obteve renome
internacional e decidiu expandir sua operação para outros países.

Com a instalação de um escritório na Europa e outro nos Estados Unidos, surgiu o seguinte
problema: as soluções normalmente oferecidas para WAN e MAN não seriam mais capazes de
atender às necessidades de interligação de suas redes. O custo de uma conexão dedicada entre
escritórios localizados em continentes diferentes seria muito alta e proibitiva.

Como, então, permitir a interligação de redes tão geograficamente separadas com o menor custo
possível?

A solução do problema consiste em utilizar a Internet como infra-estrutura principal para a


interligação das redes. Isso poderá ser conseguido instalando-se roteadores conectados a um
ponto de acesso em cada um dos escritórios.

Cada máquina, utilizando seu endereço IP e a máscara de rede, consegue determinar se um certo
pacote tem como destino um host em sua própria rede.

Curso de TCP-IP Básico 3 de 38


Uma vez determinado que o pacote é endereçado à sua própria rede, ele consulta sua tabela ARP
interna e verifica se conhece o endereço MAC do computador correspondente ao endereço IP de
destino. Se a tabela não contiver esse valor, ele fará um broadcast na sua rede local para
determinar o endereço MAC.

Se a máquina determinar que o endereço IP não pertence à sua própria rede, o pacote será enviado
diretamente para o roteador.

O roteador consulta a sua própria tabela de roteamento e determina para qual roteador deverá
repassar o pacote. Essa determinação poderá ser feita em função do "vector-state", ou seja, enviar
pelo caminho que tiver o menor número de saltos possíveis, ou em função do "link-state", ou seja,
do estado dos links (ativos ou inativos) e da métrica ou custo de se enviar um pacote por aquele
caminho.

Curso de TCP-IP Básico 4 de 38


Curso de TCP-IP Básico 5 de 38
3.1 – Protocolo IP

3.1.1 – Descrição
Quando se transcende o nível da rede local e pretende-se interligar redes heterogêneas e distintas,
a tecnologia utilizada em uma rede específica deixa de ser relevante. Possibilitar a interligação é
muito mais importante do que a tecnologia utilizada.

Essa interligação, no caso do TCP/IP, foi concebida utilizando-se três grupos de serviços que
obedecem a uma dependência hierárquica.

No nível mais baixo existem os serviços de entrega de pacotes sem conexão; no nível
intermediário, dependente do nível mais baixo, existem os serviços de transporte confiável e
no nível mais alto, dependente dos outros dois níveis, temos os serviços de aplicativos.

O protocolo IP define o nível mais baixo da interligação em redes TCP/IP, o serviço de entrega de
pacotes sem conexão.

O serviço de entrega de pacotes realizado pelo protocolo IP possui três características:

• Transmissão sem conexão:


É chamado de sem conexão pois cada pacote independe do outro:

• Uma seqüência de pacotes enviada de um computador a outro pode trafegar


por caminhos diferentes

• Alguns podem ser perdidos enquanto outros são entregues.

• Best-effort:
É chamado de best-effort porque o software de interligação de redes faz uma
tentativa séria para entregar os pacotes.

A não confiabilidade surge quando os recursos esgotam-se ou as redes básicas


falham.

• Não-confiável:
É chamado de não-confiável pois a entrega não é garantida.

O pacote pode ser perdido, reproduzido, atrasado ou entregue com problemas,


mas o serviço não detectará tais condições nem as informará ao emissor ou
receptor.

Além disso, o protocolo IP também é responsável por três definições utilizadas durante a
transmissão dos pacotes:

• Unidade básica de transferência de dados:

Curso de TCP-IP Básico 6 de 38


A unidade básica de transferência de dados utilizada numa interligação em redes
TCP/IP especifica o formato exato de todos os dados à medida que passam pelas
interligações.

• Roteamento:
Ao realizar o roteamento, o protocolo está escolhendo o caminho através do qual
os dados serão enviados.

• Regras de processamento dos pacotes


As regras de processamento dos pacotes definem como os hosts e os roteadores
devem processar os pacotes, como e quando as mensagens de erro devem ser
geradas e as condições segundo as quais os pacotes podem ser descartados.

Curso de TCP-IP Básico 7 de 38


3.1.2 – O Datagrama do Protocolo IP
O datagrama do protocolo IP contém tanto informações que definem a unidade básica de
transferência de dados, o roteamento e as regras de processamento dos pacotes quanto os dados
propriamente ditos.

Analogamente ao quadro de rede Ethernet, as primeiras estão no cabeçalho do datagrama IP, ao


passo que os segundos estão na área de dados do datagrama.

Cabeçalho Área de Dados

3.1.2.1 – O Cabeçalho do Protocolo IP


O cabeçalho do datagrama IP contém os endereços de origem e destino e a identificação
do conteúdo do datagrama, entre outras informações. A diferença é que neste caso são
informados endereços IP, enquanto o quadro contém endereços físicos.

Veja abaixo uma descrição do conteúdo do cabeçalho IP, seus campos e a organização
destes.

0 8 16 24 31
VERS HLEN TIPO DE SERVIÇO COMPRIMENTO TOTAL
DESLOCAMENTO DO
IDENTIFICAÇÃO FLAGS
FRAGMENTO
TTL PROTOCOLO SOMA DA VERIFICAÇÃO DO CABEÇALHO
ENDEREÇO IP DE ORIGEM
ENDEREÇO IP DE DESTINO
OPÇÕES IP (SE HOUVER) PREENCHIMENTO
DADOS
DADOS
...

VERS: É um campo de quatro bits que especifica a versão do protocolo IP utilizada para
criar o datagrama. O objetivo é garantir que máquinas interpretarão apenas datagramas
que utilizem o mesmo protocolo que o seu, evitando que o conteúdo do datagrama seja
comprometido.

HLEN: É um campo de quatro bits que fornece o comprimento do cabeçalho do


datagrama medido em palavras de 32 bits. Este campo é crucial, posto que as opções IP,
ao contrário de todos os outros campos, têm tamanhos variáveis. Desta forma, o receptor
do datagrama IP pode determinar onde termina o cabeçalho e começa a área de dados.

TIPO DE SERVIÇO: A maioria dos roteadores e hosts ignora o tipo de serviço, ainda
que o seu conceito seja importante, já que este campo implementa mecanismos para
determinar a precedência de um determinado datagrama sobre outros (por exemplo,
datagramas de controle teriam precedência sobre datagramas de dados). Além disso,

Curso de TCP-IP Básico 8 de 38


poderia ser utilizado para especificar um determinado tipo de transporte, em função do
tempo de latência, do throughput e da confiabilidade.

0 1 2 3 4 5 6 7
Precedência Latência Throughput Confiabilidade Reservado
000: tráfego de
rotina
001: prioridade
010: imediato
011: flash
100: flash
override Normal (0) Normal (0) Normal (0) Reservado para
101: Baixa (1) Alto (1) Alta (1) uso futuro
crítico/correção de
erro
110: controle
inter-redes
111: controle de
rede

COMPRIMENTO TOTAL: Este campo fornece o comprimento total do datagrama IP,


ou seja, o comprimento do cabeçalho somado ao comprimento da área de dados, em
octetos. O tamanho da área de dados pode ser calculado subtraindo-se o valor de HLEN
do comprimento total.

Como este campo possui 16 bits, o maior número que pode representar é 216, ou seja, o
tamanho máximo do datagrama será de 65.535 octetos.

IDENTIFICAÇÃO: Este campo contém um número inteiro único que identifica o


datagrama. Caso um determinado datagrama seja fragmentado, este campo será copiado
para cada fragmento. Desta forma, o destino poderá identificar quais datagramas estão
chegando e a que datagramas pertencem.

FLAGS: Este campo determina, caso ocorra a fragmentação de um datagrama, se o


datagrama pode ser fragmentado e, caso tenha sido fragmentado, se o fragmento pertence
ao início, meio ou fim do datagrama. Caso um roteador tente fragmentar um datagrama
cujo campo Flags indique que não pode ser fragmentado, o roteador descarta o datagrama
e envia uma mensagem de erro à origem.

0 1 2
Reservado Não fragmentar Mais fragmentos
Se for (1), impede que o pacote Será (0) apenas no último
seja fragmentado fragmento

DESLOCAMENTO DO FRAGMENTO: Quando um datagrama sofre uma


fragmentação, cada fragmento possuirá exatamente o mesmo formato que um datagrama
completo. O campo deslocamento do fragmento indica a posição inicial da porção do
datagrama original à qual corresponde este fragmento. O primeiro fragmento,
obviamente, possuirá um deslocamento igual a zero, já que a posição inicial da porção à
qual corresponde é a posição zero do datagrama original.

Curso de TCP-IP Básico 9 de 38


O deslocamento é medido em unidades de oito bytes.

TTL: Este campo especifica quanto tempo, em segundos, o datagrama pode permanecer
no sistema de interligação em redes antes que ele seja descartado pelo sistema.

O objetivo é impedir que datagramas fiquem circulando pelo sistema mesmo que todo o
sistema de entrega de pacotes tenha sido comprometido.

PROTOCOLO: O valor deste campo especifica o formato da área de dados, ou seja,


qual protocolo de alto nível foi utilizado para criar a mensagem que está sendo
transportada na área de dados.

Protocolos mais comuns


Número Nome Listado na RFC
Hexadecimal Palavra chave e significado 790 1010
00 (reservado) * *
ICMP Internet Control Message Protocol
01 * *
(Protocolo de mensagens de controle Internet)
IGMP Internet Gateway Management Protocol
02 *
(Protocolo de gerenciamento de gateway Internet)
TCP Transmission Control Protocol
06 * *
(Protocolo de controle de transmissão)
EGP External Gateway Protocol
08 *
(Protocolo de gateway externo)
IGP any private interior gateway
09 SECURE IGP
(Qualquer protocolo de gateway interno privado)
UDP User Datagram Protocol
11 * *
(Protocolo de datagramas do usuário)
FF (reservado) * *

SOMA DA VERIFICAÇÃO DO CABEÇALHO: Este campo é utilizado para


assegurar a integridade dos valores do cabeçalho. O seu valor é determinado
matematicamente a partir dos valores presentes no cabeçalho.
O destino que estiver determinando a validade do cabeçalho do datagrama IP irá realizar
uma outra operação matemática entre os valores do cabeçalho e o valor presente neste
campo, onde o resultado deverá ser zero. Se o resultado for diferente, isso significa que a
validade do cabeçalho foi comprometida.

É importante lembrar que este campo é utilizado para determinar a validade do cabeçalho
apenas, e não dos dados presentes na área de dados! A responsabilidade por assegurar a
integridade dos dados pertence aos protocolos de nível mais alto.

ENDEREÇO IP DE ORIGEM: Este campo contém o endereço IP de 32 bits do


transmissor do datagrama.

ENDEREÇO IP DE DESTINO: Este campo contém o endereço IP de 32 bits do


receptor desejado para o datagrama.

OPÇÕES IP: Estes campos de formato e tamanho variáveis podem conter uma série de
informações opcionais sobre o datagrama, tais como hora ou rota de origem. Como
raramente são utilizados, uma análise detalhada está fora do escopo deste curso.

Curso de TCP-IP Básico 10 de 38


PREENCHIMENTO: Este campo será preenchido com zeros, de modo a tornar o
cabeçalho do datagrama IP um múltiplo exato de 32 bits.

DADOS: Estes campos contêm os dados propriamente ditos. Seu comprimento


dependerá do que está sendo enviado no datagrama.

Curso de TCP-IP Básico 11 de 38


3.1.3 – Fragmentação
Um datagrama IP pode ter um tamanho de até 65535 bytes. Por outro lado, o IP é um protocolo
da camada de rede, que deve ser transportado por protocolos das camadas inferiores. O problema
é que estes protocolos inferiores podem não suportar o transporte de datagramas com o tamanho
original.

Um exemplo muito conhecido é o caso do IP sobre Ethernet, cujo quadro tem um tamanho
máximo (MTU - Maximum Transmission Unit) de 1500 bytes.

Neste caso, um recurso usado pelo IP (e por vários outros protocolos) é o da fragmentação e
remontagem.

O roteador verifica o tamanho máximo que pode ser usado numa sub-rede. Datagramas com
tamanhos maiores deverão ser, então, fragmentados.

A operação de fragmentação consiste em quebrar os dados do datagrama em unidades


transportáveis chamadas de fragmentos, copiar o cabeçalho para cada uma delas e finalmente
enviar.

Isso significa que cada fragmento terá o mesmo formato que o datagrama original. A única
diferença é que campos especiais no cabeçalho IP indicam que o datagrama é um fragmento e
qual é a sua posição dentro do datagrama original.

Dessa forma, com base no conteúdo dos campos Identification, Flags e Fragment Offset, o
receptor consegue remontar o datagrama original.

Cada datagrama IP enviado por uma máquina possui um Identification diferente. Quando o
datagrama deve ser fragmentado, o valor deste campo se mantém o mesmo em cada fragmento.

O campo Flags possui, em especial, 2 bits:

• Do not Fragment, que informa que o datagrama não deve ser fragmentado. Se
não for possível transportar sem essa operação, deve ser descartado pelo roteador.

Essa opção pode ser usada para se determinar o tamanho máximo que pode ser
transportado por uma rede.

Caso o roteador resolva descartar o datagrama, deve informar o emissor através de ICMP.
O protocolo ICMP é responsável por emitir mensagens quando acontece algum erro. Esse
protocolo é explicado em detalhes na seção "Protocolos Intermediários de Controle".

• More Fragments, que indica a existência de mais fragmentos após a posição


deste. Ou seja, se este bit não estiver setado, este é o último fragmento da cadeia.

O campo Offset determina a posição relativa deste fragmento em relação ao datagrama original.
Como o campo Flags, consumiu 3 bits (um é reservado).

Curso de TCP-IP Básico 12 de 38


Com estes dados, é possível, sempre que necessário, se fragmentar um datagrama de tamanho
excessivo em pedaços menores, suportados pela rede, e remontá-lo completamente no seu
destino.

Cabe lembrar que, comumente, por motivos de desempenho dos roteadores, é função única e
exclusiva do receptor a reconstrução do datagrama.

Curso de TCP-IP Básico 13 de 38


3.1.4 – TTL – TIME TO LIVE
TTL significa Time to Live (tempo de vida), ou seja, o tempo de vida, em segundos, que um
datagrama terá até atingir seu destino.

A idéia é simples e importante: toda vez que uma máquina injeta um datagrama na interligação
em redes, ela estabelece um tempo máximo de vida para o datagrama. Os roteadores e hosts que
processam datagramas precisam decrementar o campo TTL à medida que o tempo passa e
remover o datagrama da interligação em redes quando seu tempo expira.

Quando o valor do TTL chegar a zero, o datagrama é descartado e uma mensagem será
enviada ao emissor, através do protocolo ICMP. O objetivo de toda esta operação é evitar
que um erro nas tabelas de roteamento permita que alguns datagramas fiquem circulando
eternamente pela rede.

Curso de TCP-IP Básico 14 de 38


3.2 – Endereçamento IP
A fim de permitir a interconexão em redes, o TCP/IP supre um serviço de comunicação universal,
permitindo que qualquer computador host se comunique com qualquer outro computador host.

Dessa forma, é necessário utilizar um método que identifique, de forma única, cada computador
que se acopla à rede.

Assim como o endereçamento Ethernet, o TCP/IP utiliza endereços como identificadores


universais de máquina. Isso significa que uma determinada máquina ligada a uma rede TCP/IP
possuirá um endereço único, que não se repete nessa rede.

Como veremos a seguir, o endereço IP possui informações tanto sobre a rede quanto sobre o
host nessa rede. Assim sendo, o endereço IP não especifica um computador individual mas sim
uma conexão à rede!

Dessa forma, se um roteador estiver conectando duas redes diferentes, ele terá dois endereços
IP diferentes, um para cada conexão de rede.

3.2.1 – ClassFull
O endereço IP é um número formado por 32 bits na forma de quatro octetos binários, que são
usados para identificar um host em uma rede TCP/IP.

Exemplo:

11001000 11111111 00100001 11000111

Normalmente usa-se a notação decimal:

200.255.33.199 que é o exemplo anterior no formato decimal.

O endereço IP é dividido em duas partes:

• Network ID
• Host ID

O Network ID, que constitui a primeira parte, identifica a rede e todos os equipamentos
pertencentes a ela (que requerem o mesmo Network ID).

Exemplo: Uma rede em que o endereço IP é 200.255.33.z poderia ter hosts com os números
200.255.33.2 e 200.255.33.3.

Curso de TCP-IP Básico 15 de 38


O Host ID, que constitui a segunda parte, identifica um equipamento qualquer dentro de uma
mesma rede. Cada equipamento dentro de uma rede precisa ter um Host ID único.
Essa divisão entre Network ID e Host ID é relacionada diretamente com as classes de endereços
IP.

3.2.1.1 – Classes de endereçamento


O cabeçalho do datagrama IP contém os endereços de origem e destino e a identificação
do conteúdo do datagrama, entre outras informações. A diferença é que neste caso são
informados endereços IP, enquanto o quadro contém endereços físicos.

A diferença entre as classes é o número de bits utilizados para identificar a rede (Network
ID) e o número utilizado para identificar o host (Host ID).

Importante!
Pela definição da RFC-950, nunca podemos ter todos os campos de hosts com
todos os bits em 1 ou em 0, pois são endereços reservados para broadcast e
endereços de rede.

Quando temos a seguinte notação, 123.0.0.0 estamos nos referindo a rede 123. Esta
notação serve para facilitar as definições de rede. É mais fácil entender que 172.255.0.0 é
uma rede, do que escrever 172.255.

CLASSE A:
A Classe A é constituída de 8 bits para o Network ID e 24 bits para Host
ID. O primeiro campo de rede vai de 1 até 126, totalizando 126 redes
classe A.

Os campos de host podem variar de 0 a 255, tendo cada rede 16.777.214


hosts.

Ex.: 0nnnnnnn hhhhhhhh hhhhhhhh hhhhhhhh (binário)

Curso de TCP-IP Básico 16 de 38


CLASSE B:
A Classe B é constituída de 16 bits para Network ID e 16 bits para Host
ID. O primeiro campo de rede vai de 128 até 191, totalizando 16.384
redes classe B.

Os campos de host podem variar de 0 a 255, tendo cada rede 65.534 hosts.

Ex.: 10nnnnnn nnnnnnnn hhhhhhhh hhhhhhhh (binário)

CLASSE C:
A Classe C é constituída de 24 bits para Network ID e 8 bits para Host
ID. O primeiro campo de rede vai de 192 até 223, totalizando 2.097.152
redes classe C.

Os campos de host podem variar de 1 a 254, tendo cada rede 254 hosts.

Ex.: 110nnnnn nnnnnnnn nnnnnnnn hhhhhhhh (binário)

CLASSE D:
Uso reservado.

A Classe D é usada para multicasting.

CLASSE E:
Uso reservado.

A Classe E é usada para uso futuro.

Curso de TCP-IP Básico 17 de 38


3.2.2 – ClassLess

3.2.2.1 – Sub-redes
O que é uma sub-rede?

Uma sub-rede é o segmento de uma rede TCP/IP que usa endereços IP derivados de um
único Network ID, que passa a ser conhecido como o subnet ID.

Exemplo: A Embratel fornece um subconjunto de uma classe C para seus novos clientes de
acesso dedicado à Internet.
O cliente passa a ter 64 endereços disponíveis.

Para melhor aproveitar os endereços disponíveis, muitas redes são divididas em sub-redes
(subnets). Essa prática é comum quando as redes envolvidas são muito grandes.

Quando isso acontece, o endereço da máscara de rede também deve ser alterado de modo
a refletir as sub-redes.

A máscara de rede é um endereço de 32 bits que separa a porção do endereço IP


que identifica o Network ID, da que identifica o Host ID.

A máscara de rede classfull é usada em redes TCP/IP que não estão divididas em
sub-redes. Todos os hosts de uma rede TCP/IP necessitam de uma máscara de
rede:

Em uma classe C - 255.255.255.0


Em uma classe B - 255.255.0.0
Em uma classe A - 255.0.0.0

Outras vantagens:
• As redes menores são mais fáceis de gerenciar;
o A segurança de rede pode ser aplicada mais facilmente nos pontos de
interconexão entre as sub-redes.
• O tráfego global de rede é reduzido e a performance pode melhorar porque a
maior parte do tráfego é local à sua sub-rede;

Curso de TCP-IP Básico 18 de 38


3.2.2.2 – Sub-redes Classe C
Aplicar o conceito de sub-redes a uma classe C significa usar o último octeto, não só
para identificar os hosts, como também para identificar as sub-redes. A distinção será
feita através de uma máscara de rede, diferente da default de classes C que é
255.255.255.0.

Importante!

De acordo com as regras clássicas de roteamento IP, não é permitido o uso de sub-redes
com todos os bits 0 ou 1 na porção destinada à rede.

No entanto, a maioria dos softwares de roteamento modernos não apresentam problemas


na utilização destes endereços.

1 bit seria 1 0 0 0 0 0 0 no último octeto.

Exemplo de subdivisão de uma rede classe C (200.255.33.x) em 2 sub-redes:


• Sub-rede 1: 126 hosts de 200.255.33.1 até 200.255.33.126
• Sub-rede 2: 126 hosts de 200.255.33.129 até 200.255.33.254
• Máscara de rede: 255.255.255.128

Esse exemplo leva em conta as técnicas de roteamento.

Separar os endereços em classes, na verdade, limitou o crescimento de uma rede.

Suponha que uma empresa tenha uma rede classe C, em que seja possível endereçar no
máximo 254 hosts, e tenha chegado um momento em que a quantidade de hosts excedeu
a classe inteira. Mas se substituindo uma nova classe C, houvesse uma classe B dividida
em pedaços e distribuída para cada nova rede, o crescimento se tornaria escalonável.
Cada pedaço menor criado chama-se sub-rede.

Curso de TCP-IP Básico 19 de 38


Observe, abaixo, uma classe B dividida em sub-rede:

Endereço do Host - 186. 183.174.2


1 0 Rede Sub-rede Host
1 0 1 1 1 0 1 0 1 0 1 1 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 1 0
Mascara - 255.255.255.0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0

Nesta configuração a rede foi dividida em um número de sub-redes de 6 bits, 62 sub-


redes, ou seja, 26 – 2 (que são os endereços da rede e de broadcast), podendo endereçar
hosts utilizando 10 bits, ou seja 1022 hosts (210 –2).

O processo de ANDing é um processo interno que define se um pacote é destinado a um


host local ou remoto.

Os bits do endereço IP local são comparados aos bits respectivos da máscara de rede. O
mesmo é feito usando-se o endereço IP de destino e a máscara de rede. Se o resultado for
igual, o host de destino está situado na própria rede.

Como é encontrado o resultado no processo de ANDing?

Se os bits respectivos (no endereço IP e na máscara) forem 1’s, o bit resultante é 1.


Qualquer outra combinação resulta em 0.

IP 1 1 0 0 1 0 0 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 1 1 1 0 0 0 1 1 1
Máscara 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
Resultado 1 1 0 0 1 0 0 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0

Foi feita aqui uma multiplicação binária, onde o resultado será 1, somente quando os dois
operadores forem 1.

Este processo é feito tanto para sub-redes quanto para endereços de rede.

3.2.2.3. – Super-redes
O que é uma super-rede?

Uma super-rede é a combinação de múltiplas classes em um grupo de endereços que


funcionarão como se fossem pertencentes a um mesmo segmento de rede.

É importante observar que as classes precisam ser consecutivas.

Curso de TCP-IP Básico 20 de 38


Exemplos de super-redes:

Junção do bloco de classes C de 198.41.64.x até 198.41.95.x

Máscara de rede: 255.255.224.0

Como determinar a máscara de super-rede?

Vamos supor que queremos unir em uma única super-rede um bloco de endereços
contínuos cujo endereço inicial é 234.170.168.0 e o endereço final é 234.170.175.234.
Dessa forma, estamos varrendo o equivalente a 7 redes classe C.

Escrevendo os endereços em binário, podemos montar a seguinte tabela:

Notação decimal
Equivalente binário de 32 de bits
com ponto
mais baixo 234.170.168.0 11101010 10101010 10101000 00000000
mais alto 234.170.175.234 11101010 10101010 10101111 11101010
máscara 255.255.248.0 11111111 11111111 11111000 00000000

Basta compararmos os endereços em formato binário a partir da esquerda e colocarmos


um "1" na máscara de rede para cada casa onde os valores forem iguais para ambos os
endereços.

Observe a máscara de rede resultante e a sua correspondente notação em decimal.

Note que a máscara em binário apresenta 21 algarismos "1" à esquerda.

A notação para esta super-rede pode ser abreviada para 234.170.168.0/21, onde

234.170.168.0 é o endereço inicial da faixa


/21 é a máscara de rede correspondente.

Observe também que os endereços entre 234.170.175.235 e 234.170.175.255


necessariamente pertencerão a esta super-rede. Por esse motivo, o número de
endereços alocados a um bloco de super-rede será sempre uma potência de dois.

Curso de TCP-IP Básico 21 de 38


3.2.2.4. – CIDR (Classless Inter-Domain Routing)
A divisão de redes por classes destoa pela diferença de endereços entre as classes. A
classe C é pequena demais para grande parte das empresas e a classe B é muito grande.

O CIDR é uma das soluções encontradas para os problemas acarretados pelo intenso uso
do protocolo IP, utilizado por mais de uma década, que são o esgotamento dos
endereços IP e a explosão das tabelas de roteamento.

O CIDR organiza a sobra das redes classe C em blocos de extensão variável. Por
exemplo: uma empresa necessita de um total de 2000 endereços, então são destinados a
ela 2048 endereços (oito redes classe C contíguas) e não uma rede classe B inteira (65536
endereços).

O CIDR disponibilizaria um ou mais blocos de rede classe C para cada provedor de


serviço da rede e para a empresa que se conectasse à Internet via provedor, seriam
alocados subconjuntos de endereços deste provedor.

Como funciona o esquema de CIDR ?

De acordo com a organização feita pela política CIDR, o mundo foi dividido em quatro
partes:

Endereços 194.0.0.0 a 195.255.255.255 Europa


Endereços 198.0.0.0 a 199.255.255.255 América do Norte
Endereços 200.0.0.0 a 201.255.255.255 América do Sul
Endereços 202.0.0.0 a 203.255.255.255 Ásia e Pacífico

Vejamos o seguinte exemplo:

• a Universidade A precisa de 2048 endereços e foram alocados para ela os


endereços de 194.24.0.0 a 194.24.7.255;
• a Universidade B precisa de 4096 endereços, sendo alocados os endereços de
194.24.16.0 a 194.24.31.255;
• a Universidade C precisa de 1096 endereços e foram alocados os endereços de
194.24.8.0 a 194.24.11.255.

Suponhamos que esses sejam os únicos sites existentes na Europa, então os roteadores
europeus teriam a seguinte tabela dos endereços expostos acima:

ENDEREÇO MÁSCARA

11000010 00011000 00000000 00000000 11111111 11111111 11111000 00000000

11000010 00011000 00010000 00000000 11111111 11111111 11110000 00000000

11000010 00011000 00001000 00000000 11111111 11111111 11111100 00000000

Curso de TCP-IP Básico 22 de 38


Se um pacote está sendo enviado para o endereço 192.24.17.4 (que em binário é
11000010 00011000 00010001 00000100).

Inicialmente, este valor sofre uma operação de ANDING com a máscara da primeira
entrada (resultado 11000010 00011000 00010000 00000000), que não é igual ao primeiro
endereço.

Desta forma, o endereço sofre novamente uma operação de ANDING com a máscara da
próxima entrada (resultado 11000010 00011000 00010000 00000000), que é o mesmo
valor do endereço da segunda entrada da tabela. Logo, este pacote é enviado para o
roteador da Universidade B (segunda entrada).

Desvantagens

Quando uma organização conecta-se à Internet por mais de um provedor, suas


rotas serão anunciadas por cada um dos seus provedores, limitando as vantagens
pela agregação em CIDR.

Quando uma organização troca de provedor de acesso e não renumera seus


endereços, cria uma lacuna na agregação de endereços do provedor de serviços
original.

Para fazer o registro de um endereço IP ou de um bloco CIDR, deverá ser preenchido o


Formulário de Solicitação de Endereços IP (http://registro.fapesp.br/ip.html) e enviado
para ip-number@registro.fapesp.br.

Curso de TCP-IP Básico 23 de 38


3.2.3 – Endereços Especiais
Existem alguns endereços que não podem ser utilizados para identificações na rede.
O endereço 127.x.y.z não está disponível para uso pois o Network ID 127 é reservado para
funções de DIAGNÓSTICO DE REDES.

Os números 0 e 255 também têm uso reservado quando se trata de usá-los para identificar o
Network ID ou o Host ID.

O primeiro é interpretado como a PRÓPRIA REDE, enquanto que o segundo é interpretado


como endereço de BROADCAST (explicação válida para classe C).

O endereço 127.0.0.1 é conhecido como endereço de LOOPBACK.

Há também os ENDEREÇOS RESERVADOS, ou seja, blocos de endereços IP reservados para


o uso em redes internas com suporte ao TCP/IP (RFC-1918):

• 10.0.0.1 até 10.255.255.255 na classe A;


• 172.16.0.0 até 172.31.255.255 na classe B;
• 192.168.0.0 até 192.168.255.255 na classe C.

Os endereços de MULTICASTING, são aqueles utilizados para enviar pacotes para todos os nós
da rede. Estão acima de 224.0.0.0, sendo que a aplicação escolhe a faixa de utilização.

Curso de TCP-IP Básico 24 de 38


3.3 – Roteamento
O que é roteamento?

Roteamento é o processo de escolher o melhor caminho, entre os disponíveis, para o


envio de pacotes.

Quando nenhum caminho é encontrado no processo de roteamento, é usada a rota padrão,


conhecida como default gateway.

Todo host de uma rede TCP/IP realiza esse processo ao enviar pacotes pela rede. O mesmo
processo ocorre também em um roteador (hardware específico ou computador com software de
roteamento), que geralmente separa duas redes físicas.

Roteamento estático e dinâmico

O roteamento estático trabalha com tabelas e depende de atualização manual. Já o


roteamento dinâmico trabalha com protocolos específicos de roteamento que permitem a
atualização automática das tabelas.

3.3.1 – Roteamento Estático


Um roteador que trabalha com tabelas de roteamento estático só pode se comunicar com outras
redes se esta nova rota for adicionada manualmente na tabela de roteamento

São vantagens do roteamento estático:

• Previsibilidade das rotas, uma vez que são computadas com antecedência podendo ser
melhor controladas;
• O roteamento estático não utiliza algoritmos que possam causar overhead nos roteadores.
A Embratel utiliza roteamento estático para os clientes;

Desvantagem do roteamento estático:

• Necessidade de ajustes na tabela em caso de mudanças na rede, o que pode ser muito
trabalhoso dependendo do tamanho da rede;

Curso de TCP-IP Básico 25 de 38


3.3.2 – Roteamento Dinâmico
É implementado por um protocolo de roteamento dinâmico. Os roteadores automaticamente
trocam entre si as rotas para as redes conhecidas. Em caso de mudança em alguma rota, os
protocolos de roteamento atualizam a tabela de um roteador e informam as mudanças aos
demais roteadores que estão próximos.

Algoritmo de roteamento

O algoritmo de roteamento é o processo de escolha do melhor caminho. O protocolo mantém a


tabela atualizada.

Pode ser de dois tipos:

Distance-Vector
O roteador periodicamente passa a todos os roteadores duas informações:
• As distâncias (hops) para os roteadores próximos, existentes na rede.
• A direção que deverá ser tomada para atingir cada um dos roteadores existentes.

Link-State
O roteador periodicamente passa aos seus "vizinhos" duas informações:
• Quem são os roteadores que são seus vizinhos imediatos;
• O estado da conexão com esses roteadores vizinhos.

São vantagens do roteamento dinâmico:

• Escalabilidade e adaptabilidade que permitem um crescimento rápido da rede, sem


problemas decorrentes de mudanças;
• Os roteadores rapidamente aprendem a topologia da rede, ao trocarem informações com
outros roteadores;

São desvantagens do roteamento dinâmico:

Curso de TCP-IP Básico 26 de 38


• Maior complexidade na implementação/configuração;
• Overhead na rede decorrente das mensagens trocadas pelos roteadores.

3.3.2.1 – Principais Protocolos de Roteamento


Routing Internet Protocol - RIP (RFC-1723)

O protocolo RIP pertence à família dos algoritmos de roteamento vetor-


distância, que é utilizada desde o começo da ARPANET. É um protocolo
simples, próprio para redes baseadas nos protocolos IP e UDP que sejam
homogêneas e de tamanho médio.

O RIP facilita a troca de informações de roteamento em uma rede TCP/IP. As


informações contêm o ID das redes (com as quais o roteador tem conexão) e a
distância para elas.

Essa distância é medida em hops, ou saltos, que definem o número de roteadores


atravessados para se chegar à rede de destino.

Um roteador implementando o protocolo RIP irá escolher sempre o caminho com


o menor número de hops. O número máximo de hops possível é 15. Os endereços
com 16 ou mais hops são considerados fora de alcance.

Observe a tabela de roteamento RIP abaixo:

Curso de TCP-IP Básico 27 de 38


A partir da coluna Destination podemos perceber que existem três sub-redes
classe C conectadas a esse roteador (192.168.2, 192.168.3 e 193.55.114). O
roteador saberá o caminho apenas para essas sub-redes, que estão diretamente
conectadas a ele através de três interfaces (fa0, le0 e qaa0), conforme exibido na
coluna Interface.

Um pacote cujo destino seja uma sub-rede diferente das três conectadas
diretamente ao roteador será enviado para o roteador default, com endereço
193.55.114.129, conectado à interface le0. A interface le0 também foi
configurada para ser utilizada no roteamento de pacotes "multi-cast". Isso é feito
programando-se a sub-rede de destino como sendo 224.0.0.0.

Finalmente, a interface local lo0, cujo endereço é o próprio roteador (127.0.0.1),


foi configurada para permitir testes e depuração da rede.

São vantagens do RIP:

• Não despende largura de banda, tempo de configuração e gerenciamento


para redes de pequeno porte;
• É de fácil implementação.

São desvantagens do RIP:

• Apresenta convergência lenta para redes de porte médio ou grande;


• Apresenta loops e contagem ao infinito;
• Tem limitações de 15 saltos por caminho (MÉTRICA).

Curso de TCP-IP Básico 28 de 38


Routing Internet Protocol II - RIP II (RFC-2453)

O protocolo RIP II tem os mesmos algoritmos básicos do RIP I, mas apresenta


outras novas funções, tais como roteamento de domínio, etiquetas de rotas
externas, subnet masks, endereços do próximo salto e autenticação.

A mensagem no RIP II utiliza os mesmos campos preenchidos no RIP I, mas


substitui seus espaços em branco.

Comando Identificador de versão Roteamento de domínio


(1 byte) (1 byte) (2 bytes)
Identificador do endereço Etiqueta da rota
da família (2 bytes) (2 bytes)
Endereço IP (4 bytes)
Subnet Mask (4 bytes)
Próximo Salto (4 bytes)
Métrica (4 bytes)

Descrição dos campos:

• Roteamento de domínio e próximo salto - Juntos permitem que


vários sistemas autônomos compartilhem a mesma rota.
• Subnet mask - Permite um melhor roteamento de sub-rede.
• Etiqueta da rota - Sinaliza rotas externas e é utilizado pelo EGP
ou BGP.

O EGP (Exterior Gateway Protocol) é o protocolo utilizado por um


roteador em um sistema autônomo para anunciar os endereços IP das redes
em seu próprio sistema para um roteador em outro sistema autônomo.

Para fins de roteamento, um grupo de redes e roteadores controlados por


uma
mesma autoridade administrativa é chamado de sistema autônomo.

O BGP (Border Gateway Protocol) é o protocolo EGP utilizado na


NSFnet. Existem quatro versões principais do BGP.

Curso de TCP-IP Básico 29 de 38


Roteando por sub-rede

Com o protocolo RIP II as sub-redes também foram otimizadas, pois agora


apresenta um campo com a máscara da sub-rede paralelo ao seu endereço,
permitindo que as sub-redes sejam roteadas fora da rede.

Open Shortest Path First – OSPF (RFC-2328)

O OSPF é um protocolo projetado pelo IETF em 1990, para ser utilizado


internamente em sistemas autônomos no ambiente TCP/IP. Tem transmissão
baseada no Link State Routing Protocol e faz a pesquisa da menor rota
localmente utilizando o algoritmo SPF (Shortest Path First).

O roteamento dos pacotes é feito com base no endereço informado no cabeçalho


do pacote IP, sem encapsulamento no Sistema Autônomo.

Vantagens

• Convergência rápida e sem loop;


• Suporte a várias métricas;
• Caminhos múltiplos.

Protocolos internos

O protocolo OSPF roda com base no protocolo IP, sendo composto de 3


subprotocolos.

• Flooding - utilizado para informar as rotinas de atualização e manter o


sincronismo de entrada nos bancos de dados.
• Hello - utilizado para fazer a verificação do funcionamento dos links e
escolher o roteador designado e seu backup para redes broadcast e não-
broadcast.
• Exchange - utilizado para dar início no sincronismo feito entre dois
bancos de dados.

O projeto do OSPF segue o padrão do link state protocol, isto é, possui banco de
dados distribuído, definição de adjacência, rotas externas, entradas especiais e o
protocolo "flooding".

Algoritmo

O roteamento parte da lógica de não apresentar uma tabela com as possíveis


melhores rotas, mas fazer com que todos os nós contenham todos os links da
rede, e que cada entrada possua o identificador de interface, o número do link e a
distância ou métrica ou custo, para que cada nó, a partir dessas informações,
descubra sozinho a melhor rota a ser seguida.

From To Link Distância


A A 1 1

Curso de TCP-IP Básico 30 de 38


A D 3 1
B A 1 1
B C 2 1
B E 4 1
C E 5 1
C B 2 1
D A 3 1
... ... ... ...
E D 5 1

Se algum link da rede for alterado, os nós adjacentes serão encarregados de avisar
aos demais. Para saber se o aviso é atual há um campo no pacote com o número e
a hora em que a mensagem foi enviada.

Além disso, suporta não só redes ponto-a-ponto como Ethernet, token rings,
ATM ou anéis FDDI, ou seja, suporta redes de multiacesso com broadcast e sem
broadcast. Vejamos como isto é realizado:

Separando Hosts e Roteadores

O roteamento por sub-rede fez com que as tabelas de roteamento reduzissem,


pois um roteador da sub-rede K não precisa conhecer os hosts das outras sub-
redes de um mesmo sistema, bastando, para isso, haver uma entrada para o IP
das sub-redes, hosts e possíveis rotas externas.

Nas redes Ethernet, em que cada host pertence a uma sub-rede única, essa
configuração é muito eficaz.

Redes Broadcast

As transmissões broadcast formam um grande número de adjacências, mas


para evitar este problema o OSPF cria um roteador interlocutor,
representado pelo seguinte esquema:

Com a existência de um interloculor, representado no esquema pelo roteador A,


os outros roteadores sincronizam seus bancos de dados com ele. Assim, quando
um roteador quiser enviar uma mensagem broadcast, utiliza o endereço
multicast (224.0.0.6) para enviar esta mensagem a todos os roteadores
designados. Estes roteadores, então, enviarão a mensagem utilizando o endereço
multicast (224.0.0.5) para todos os roteadores da rede.

Curso de TCP-IP Básico 31 de 38


Para mensagens fonte-destino, o roteador designado também atua intermediando
o processo.

É criado, também, um roteador backup para não haver dependência com o


roteador designado. Ele apenas escuta as mensagens e se mantém o mais passível
que puder.

Exemplos de rede broadcast:


Ethernet, Token Ring e FDDI.

Redes Não-Broadcast

Nas redes não-broadcast, o OSPF pode rodar em dois modos: NBMA ou


ponto-a-multi-ponto.

Estando no modo NBMA o OSPF emula uma rede broadcast criando um


roteador interlocutor, como nas redes broadcast. A diferença entre as
redes broadcast e não-broadcast é o fato de que, sem a facilidade do
multicast, os pacotes devem ser enviados ponto-a-ponto. É o modo mais
eficiente, em relação ao tamanho do banco de dados e à quantidade de
tráfego roteado. O problema é que requer muito trabalho para administrar,
além do fato de todos os roteadores conectados à rede NBMA terem de se
comunicar diretamente. Isto é possível em redes ATM, mas não em redes
do tipo PVC-Only Frame Relay Networks.

No modo ponto-a-multi-ponto, o OSPF trata todas as conexões roteador-


roteador como se fossem conexões ponto-a-ponto. Nenhum roteador é
designado, nem é inserida uma entrada no banco de dados para a rede.

Exemplos de rede Não-Broadcast: ATM e X.25

Áreas Múltiplas

Quando o tamanho da rede aumenta, aumentam também o volume de mensagens


e a duração do processamento de rotas.

Esse problema é solucionado com o roteamento hierárquico, dividindo a rede em


partes menores denominadas áreas. Sendo cada área independente, os roteadores
não precisam conhecer a estrutura de outras áreas, o que diminui o custo do
roteamento.

Então, os roteadores de um mesmo AS (sistema autônomo) não precisam ter o


mesmo banco de dados; cada área possui o seu próprio banco de dados com
informações sobre links internos e entradas resumindo todas as redes IP.

O OSPF classifica 4 tipos de roteadores de acordo com a função que exercem:

Curso de TCP-IP Básico 32 de 38


Roteadores internos
Roteadores que ocupam uma mesma área, rodando uma única cópia do algoritmo
de roteamento.

Roteadores de limite de área


Responsáveis por conectar duas ou mais áreas, deve existir pelo menos 1 em cada
área para conectá-la ao backbone.

Rodam várias cópias do algoritmo de roteamento, sendo uma para cada área à
qual são conectados. Também condensam as informações destas áreas e as
enviam ao backbone.

Roteadores de backbone
Roteadores que estão no backbone e são conectados a todos os Roteadores de
Borda de Área.

Roteadores de sistema autônomo (AS)


Roteadores que “falam” com outros sistemas autônomos. Qualquer roteador sabe
o caminho para os roteadores de AS (sistema autônomo).

Podem fazer parte de qualquer outra classificação acima citada.

Podemos entender melhor estes conceitos, observando com atenção o esquema:

Curso de TCP-IP Básico 33 de 38


3.4 – Protocolos Intermediários de Controle
3.4.1 – Protocolo ARP (Address Resolution Protocol)
A única forma de comunicação entre duas máquinas é através do seu endereço MAC.
Para resolver este problema de mapeamento do endereço IP para o endereço físico da
rede, é utilizado o protocolo ARP (Address Resolution Protocol) que encontra o
endereço físico relacionado a um endereço IP fornecido.

Quando inicializadas, as estações não possuem uma tabela de endereços IP/físico


armazenada.

Em vez disso, para cada endereço IP que não esteja na tabela da estação, o protocolo
ARP manda uma solicitação via broadcast do endereço físico para o endereço IP
determinado.

O destinatário que tiver o endereço IP informado responde à máquina solicitante seu endereço
físico.

Nessa ocasião, a tabela da máquina origem e a da máquina destino são atualizadas com os
endereços.

Veja, a seguir, a imagem da tabela do cache arp.

Para ver a tabela que contém todas as informações dos endereços MAC e endereços IP
relacionados, basta ir até a linha de comando e digitar:

Curso de TCP-IP Básico 34 de 38


arp -g

Lembre-se de que esta tabela é dinâmica e caso estes hosts (origem e destino) não se comuniquem
nos próximos minutos, estes dados serão excluídos automaticamente desta tabela.

Ou seja, nesta tabela somente constarão os dados dos últimos hosts que tiveram alguma
comunicação com o host do qual foi extraída esta tabela.

3.4.2 – Protocolo ICMP (Internet Control Message Protocol)


O protocolo IP provê um serviço de expedição de datagramas sem conexão e não confiável e,
além disso, um datagrama viaja de um gateway a outro até alcançar um que possa expedi-lo
diretamente ao host destino.

Por isso, é necessário um mecanismo que emita informações de controle e de erros quando
acontecerem problemas na rede.

Alguns dos problemas típicos que podem acontecer são:

• Um gateway não poder expedir ou rotear um datagrama;


• Um gateway detectar uma condição não usual tal como congestionamento.

Na sua maioria, essas mensagens indicam a ocorrência de problemas no transporte de algum


datagrama ou servem a operações de controle.

O ICMP utiliza o IP para o transporte de mensagem, não oferecendo, portanto, garantia de


entrega.

As mensagens ICMP são geradas por gateways na rota de transporte de um datagrama ou pela
estação de destino.

Quando ocorre algum problema previsto pelo ICMP, a mensagem ICMP, que descreve a situação,
é preparada e entregue à camada IP.

A camada IP adiciona à mensagem ICMP o cabeçalho IP e a envia ao emissor do datagrama com


o qual ocorreu o problema.

A função principal do protocolo ICMP é gerar o mecanismo de controle que emite


mensagens quando acontece algum erro.

A fonte deve relatar os erros aos programas de aplicação individuais e agir para corrigir o
problema.

Uma das mensagens que o ICMP pode enviar é Destination Unreachable, que pode ser dos
seguintes tipos:

• Network Unreachable (rede não alcançável);


• Host Unreachable (host não alcançável);

Curso de TCP-IP Básico 35 de 38


• Port Unreachable (port não alcançável);
• Destination Host Unknown (host destino desconhecido);
• Destination Network Unknown (rede destino desconhecida).

No caso de problemas com datagramas enviados pela estação de origem, o ICMP inclui no seu
datagrama de ocorrências o cabeçalho, além de 64 bits iniciais dos dados do datagrama IP que
originou o erro.

As ocorrências do ICMP podem ser:

• Destinatário inacessível;
• Ajuste de fonte: solicita à estação a redução da taxa de emissão de datagramas;
• Redireção: rota mais adequada para a estação destinatária (para atualização da tabela de
endereço dos roteadores;
• Eco e resposta de eco;
• Tempo excedido;
• Problemas de parâmetros;
• Marca de Tempo e Resposta à Marca de Tempo;
• Solicitação de Informações e Respostas de Informações;
• Solicitação de Máscara de Endereço e Resposta à Mascara de Endereço.

3.4.3 – Protocolo IGMP (Internet Group Management


Protocol)
Muitas tecnologias de hardware contêm mecanismos para enviar pacotes a vários destinos
simultaneamente, ou seja, Multicast IP.

Para participar do Multicast IP de uma rede local, o host deve ter um software que lhe permita
enviar e receber datagrams multicast.

Para participar de um desses datagramas, que cubra diversas redes, o host deve informar os
roteadores multicast locais.

Esses roteadores contactam outros roteadores multicast, passando as informações sobre


participação e estabelecendo rotas.

Antes que um roteador multicast possa propagar informações de participação de multicast, deve
determinar se um ou mais hosts da rede local decidiram se juntar a um grupo multicast.

Para que isso aconteça, roteadores e hosts multicast, que implementam o multicast, devem usar o
IGMP para transmitir informações de participação de grupo.

Assim como o ICMP, ele usa datagramas para transportar mensagens.

Mas como isso acontece?

Curso de TCP-IP Básico 36 de 38


Os roteadores de multicast enviam mensagens Host Membership Query para detectar que
grupos de multicast possuem membros nas redes locais a que ele pertence.

Estas mensagens são destinadas ao grupo all-hosts (endereço 224.0.0.1) e possuem time-to-live
de valor 1.

Os hosts geram, então, mensagens do tipo Host Membership Report como resposta, informando
a cada grupo a que pertencem através da interface de rede pela qual a mensagem foi recebida.

A fim de evitar uma tempestade de mensagens de notificação concorrentes e reduzir o número


total de mensagens transmitidas, são utilizadas algumas técnicas, descritas a seguir.

Quando um host recebe uma mensagem Host Membership Query, ao invés de enviar mensagens
de notificação, imediatamente ele inicia um temporizador de atraso do envio da resposta referente
a cada grupo de que ele participa, através da interface de rede utilizada pela mensagem de
consulta.

Cada temporizador é escolhido entre um valor (randômico entre 0 e 10 segundos), de forma a não
ocorrer o envio de todas as mensagens de uma vez.

Além da técnica anterior, a mensagem de notificação é enviada com um IP destination address


igual ao endereço do grupo sendo notificado, com um time-to-live de valor 1, de modo que os
outros membros do mesmo grupo na mesma rede possam perceber a notificação.

Quando um host percebe uma notificação para um grupo a que ele pertence, ele suspende seu
próprio temporizador para este grupo e não gera a mensagem de notificação para o grupo.

Assim, em casos normais, somente uma notificação será gerada para cada grupo presente na rede
local, que será enviada pelo host no qual o temporizador de atraso expirar primeiro.

O roteador multicast receberá todos os datagramas multicast IP, de modo que estes não precisam
estar endereçados explicitamente a ele.

Além disso, os roteadores não precisam saber quais hosts participam de um grupo, somente, que,
no mínimo, um dos hosts da rede pertence ao grupo.

Quando um temporizador já está sendo executado para um grupo e uma nova mensagem de
consulta é recebida, o tempo não é reiniciado com um novo valor randômico, continuando com
seu valor corrente. Notificações para o grupo all-hosts nunca são enviadas.

Os roteadores multicast enviam mensagens de consulta periodicamente para atualizar sua tabela
dos grupos presentes na rede.

Se nenhuma notificação é recebida para um dado grupo, depois de um certo número de


mensagens de consulta, o roteador assume que o grupo não possui mais membros locais e não
necessita transmitir para a rede datagramas recebidos remotamente, destinados a este grupo.

As mensagens de consulta são poucas, de modo a manter baixo o overhead IGMP nos hosts e na
rede.

Curso de TCP-IP Básico 37 de 38


Entretanto, quando um roteador de multicast é iniciado, devem ser geradas muitas mensagens, em
pequenos intervalos de tempo, a fim de construir sua tabela das associações locais a grupos
multicast.

Quando um host se liga a um novo grupo, imediatamente devem ser enviadas mensagens de
notificações ao grupo, sem esperar a mensagem de consulta, já que o host pode ser o primeiro a
ser membro do grupo na rede.

É recomendado que sejam enviadas mais uma ou duas mensagens depois de pequenos espaços de
tempo, a fim de se cobrir a possibilidade de que a mensagem de notificação inicial seja perdida ou
danificada.

Curso de TCP-IP Básico 38 de 38

Você também pode gostar