protocolos auxiliares da camada de rede controle de erros e multicasting

22
PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

Upload: jose-cruz-bras

Post on 07-Apr-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

PROTOCOLOS AUXILIARES DA CAMADA DE REDE

Controle de Erros e Multicasting

Page 2: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

ICMP – INTERNET CONTROL MESSAGE PROTOCOL

O IP não é um protocolo confiável (pode apresentar erros que não são corrigidos por ele):

• Descarta datagramas se não conseguir achar o caminho para fazer a entrega;

• Descarta datagramas se todos os fragmentos não chegarem depois de um certo tempo;

• Descarta datagramas que tiveram seu TTL (time to live) expirado;

• Etc..2

Page 3: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

FUNÇÕES DO ICMP• O ICMP faz parte do “melhor esforço”, pois ele não

corrige erros;• O ICMP trabalha nos roteadores e nos

hospedeiros;• Ele informa erros ou responde a consultas;• Informa erros ao host de origem do datagrama,

identificado pelo IP de origem; cabe aos protocolos superiores tomar providências de correção dos erros;

• Responde a consultas sobre o estado dos roteadores 3

Page 4: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

TIPOS DE MENSAGEM DO ICMPO ICMP tem dois tipos de mensagens:• Mensagens de notificação de erros, que

informam problemas em roteadores ou hospedeiros, que são enviadas ao IP de origem do datagrama com problemas;

• Mensagens de consulta, que ocorrem sempre em pares de mensagens, que ajudam os administradores de rede com informações específicas sobre roteadores ou hospedeiros.

4

Page 5: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

FORMATO DAS MENSAGENS DE ICMP

Type Code Checksum

Restante do Cabeçalho

Seção de Dados

Cabeçalho

IP

8 Primeiros bytes dos

dados

Restante dos dadosDo IP

Cabeçalho

IP

8 Primeiros bytes dos

dados

Cabeçalho do

ICMP

Cabeçalho

IP

Cabeçalho

IP

8 Primeiros bytes dos

dados

Cabeçalho do

ICMP

5

Page 6: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

NOTIFICAÇÃO DE ERROS• Destination Unreachable (Problemas nos

Destinos);• Source Quench (Contenção da Fonte);• Time Exceeded; (TTL zerado)• Parameter Problem (Parâmetros Corrompidos);• Redirection (Redirecionamento do roteador-

padrão).

O ICMP SEMPRE ENVIA AS MENSAGENS DEERROS PARA O ORIGINADOR DO DATAGRAMA

6

Page 7: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

CONSULTAS• Echo Request and Reply (comunicação no nível do IP);• Timestamp Request and Reply (RTT de mensagens);• Address-Mask Request and Reply (broadcast dos

envolvidos);• Router Solicitation and Advertisement (multicast ou

broadcast para informar tabelas de roteamento).

AS MENSAGENS DE CONSULTA SÃO SEMPRE UM PAR DE MENSAGENS, ENVIANDO A RESPOSTA A

QUEM SOLICITOU A INFORMAÇÃO.

7

Page 8: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

TIPOS E CÓDIGOS DO ICMPTipo Código Descrição0 0 echo reply (ping)3 0 dest. network unreachable3 1 dest host unreachable3 2 dest protocol unreachable3 3 dest port unreachable3 6 dest network unknown3 7 dest host unknown4 0 source quench (congestion control - not used)8 0 echo request (ping)9 0 route advertisement10 0 router discovery11 0 TTL expired12 0 bad IP header

8

Page 9: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

PING• Usado para se saber se um hospedeiro está

ativo e respondendo a mensagens;• Três mensagens com Timestamp Request and

Reply são enviadas a um hospedeiro . Marca-se o tempo em que as perguntas foram enviadas os tempos em que as respostas chegaram;

• Uma estatística é fornecida ao final do processo;

• Devemos executar o programa PING tanto no Windows quanto no LINUX.

9

Page 10: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

Exemplo do Comando PingC:\>ping www.intel.com

Pinging a961.g.akamai.net [72.246.49.32] with 32 bytes of data:

Reply from 72.246.49.32: bytes=32 time=148ms TTL=51Reply from 72.246.49.32: bytes=32 time=148ms TTL=52Reply from 72.246.49.32: bytes=32 time=147ms TTL=51Reply from 72.246.49.32: bytes=32 time=148ms TTL=51

Ping statistics for 72.246.49.32: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Approximate round trip times in milli-seconds: Minimum = 147ms, Maximum = 148ms, Average = 147ms

10

Page 11: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

TRACEROUTE• Usado para se saber qual o “caminho” que um

datagrama percorre para chegar ao destino endereçado;

• Usado também para especificar rotas específicas ou orientadas (Strict Source Route ou Loose Source Route) na opção dos datagramas;

• Alguns Firewalls não respondem ao Traceroute;• Chama-se tracert em WINDOWS e traceroute em

LINUX.

11

Page 12: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

ALGORITMO DO TRACEROUTE• O transmissor envia uma série de 3 segmentos UDP em direção ao destino

para cada roteador envolvido no caminho entre a origem e o destino: – O 1o possui TTL = 1 (responde somente o roteador vizinho da origem).– O 2o possui TTL = 2 etc. (responde o 2º roteador, e os demais).– Nº de porta improvável (quando chega no IP destino o pacote UDP indica

uma porta UDP não válida).• Quando o enésimo datagrama chega ao enésimo roteador:

– O roteador descarta o datagrama.– E envia à origem uma mensagem ICMP (type 11, code 0).– A mensagem inclui o nome do roteador e o endereço IP.

• Quando a mensagem ICMP chega, a origem calcula o RTT. O traceroute faz isso três vezes.

• Critério de interrupção:– O segmento UDP finalmente chega ao hospedeiro de destino.– O destino retorna o pacote ICMP “hospedeiro unreachable” (type 3, code

3).– Quando a origem obtém esse ICMP, ela pára. 12

Page 13: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

EXEMPLO DO TRACEROUTEC:\>tracert www.intel.com

Tracing route to a961.g.akamai.net [72.246.49.32]over a maximum of 30 hops:

1 <10 ms <10 ms <10 ms 192.168.1.1 2 2 ms 1 ms 2 ms 200-207-129-1.dsl.telesp.net.br [200.207.129.1] 3 10 ms 10 ms 10 ms 192.168.32.1 4 * 11 ms * 200-204-208-129.dsl.telesp.net.br [200.204.208.129] 5 10 ms 10 ms 10 ms 201-0-2-225.dsl.telesp.net.br [201.0.2.225] 6 10 ms 10 ms 14 ms 201-63-253-134.customer.tdatabrasil.net.br [201.63.253.134] 7 11 ms 10 ms 10 ms So-6-0-0-0-grtsaosi2.red.telefonica-wholesale.net [213.140.51.229] 8 118 ms 118 ms 117 ms So6-1-0-0-grtmiabr3.red.telefonica-wholesale.net [213.140.43.109] 9 146 ms 146 ms 145 ms So3-1-0-0-grtwaseq3.red.telefonica-wholesale.net [213.140.36.50] 10 149 ms 149 ms 145 ms Te4-1-0-grawaseq1.red.telefonica-wholesale.net [84.16.12.197] 11 145 ms 148 ms 145 ms a72-246-49-213.deploy.akamaitechnologies.com [72.246.49.213] 12 145 ms 149 ms 145 ms a72-246-49-32.deploy.akamaitechnologies.com [72.246.49.32]

Trace complete.Nota: “*” significa que o traceroute não conseguiu medir o atraso daquela sonda de teste. Pode ocorrer por erro

no pacote ou roteadores/ hosts com regra de segurança para não responder comandos ICMP.

13

Page 14: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

IGMP – INTERNET GROUP MANAGEMENT PROTOCOL

• O IGMP é um protocolo necessário mas não suficiente para se transmitir mensagens do tipo MULTICASTING;

• O IGMP gerencia GRUPOS que receberão as mensagens multicasting;

• Ele fornece aos ROTEADORES MULTICAST informações sobre a situação de associação de hospedeiros conectados à rede.

O IGMP É UM PROTOCOLO DE GERENCIAMENTO DE GRUPOS. ELE AUXILIA UM ROTEADOR MULTICAST

A CRIAR E MANTER ATUALIZADA UMA LISTA DE MEMBROS DE UM GRUPO PARA CADA INTERFACE

DO ROTEADOR.14

Page 15: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

TIPOS DE MENSAGENS DO IGMPO IGMP tem 4 tipos de mensagens:• General Query;• Special Query;• Membership Report;• Leave Report.

FORMATOTipo de

MensagemTempo de

Resposta MáximoChecksum

Endereço do Grupo

15

Page 16: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

OPERAÇÃO DO IGMPExistem 3 tipos de roteadores e hospedeiros

envolvidos no gerenciamento de grupos:• Roteador Multicast, que tem um os endereços

dos grupos de uma ou mais redes e é responsável pela distribuição de mensagens nesse grupo;

• Roteador ou hospedeiro interessado quando tem membros de um grupo no seu domínio;

• Processos em hospedeiros que pertencem a um grupo.

16

Page 17: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

ASSOCIANDO-SE A UM GRUPO

• Um processo que queira se associar a um grupo envia uma mensagem ao hospedeiro;

• O hospedeiro acrescenta o nome do processo em sua lista e envia uma mensagem de membership report se for a primeira solicitação para esse grupo feita pelo hospedeiro;

• A mensagem é enviada duas vezes para prevenir perdas.

17

Page 18: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

ABANDONANDO UM GRUPO• Quando um hospedeiro verifica que nenhum

processo seu está interessado em um grupo, ele envia um leave report;

• Quando um roteador verifica que nenhum hospedeiro ligado a ele está interessado em um grupo, ele também envia um leave report;

• O roteador multicast pode eliminar o grupo se não houver membros, mas antes ele envia uma mensagem a todos os membros do grupo para confirmar o desinteresse.

18

Page 19: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

MONITORAMENTO DA ASSOCIAÇÃO

• Caso um grupo tenha apenas um membro e ele esteja temporariamente impedido de responder à mensagem de leave report, não poderá haver confirmação da possibilidade de se eliminar o grupo;

• O roteador Multicast repete a mensagem a cada 125 ms com o endereço do grupo em 0.0.0.0 , ou seja, para todos os grupos envolvidos.

19

Page 20: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

RESPOSTAS COM ATRASO• Para evitar tráfego desnecessário, o IGPM usa

a estratégia de respostas com atraso;• Quando um roteador multicast recebe uma

mensagem de query, ele fixa aleatoriamente um tempo variável de 1 a 10 s para cada grupo;

• Quando o menor tempo expira, todas as mensagens do grupo são enviadas;

• Isso faz com que mensagens do mesmo grupo sejam enviadas ao mesmo tempo, evitando-se multiplicação de envio. 20

Page 21: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

ENCAPSULAMENTO• Uma mensagem IGMP é encapsulada em um

datagrama IP que, por sua vez, é encapsulado em um frame de enlace;

• Quando o grupo está todo contido em uma LAN, o TTL é fixado em 1;

• O frame de enlace é enviado aos endereços físicos (MAC – Media Access Control) dos membros do grupo;

• A maioria das redes oferecem suporte para endereçamento físico multicast, em especial a Ethernet.

21

Page 22: PROTOCOLOS AUXILIARES DA CAMADA DE REDE Controle de Erros e Multicasting

ROTEAMENTO MULTICASTNão serão examinado os diversos tipos de

roteamento de mensagens em multicast. Apenas listaremos os principais protocolos:

• MOSPF Multicast Open Shortest Path First;• RPM – Reverse Path Multicasting;• DVMRP – Distance Vector Multicast Routing

Protocol;• PIM – Protocol Independent Protocol;• MBONE – Backbone Multicast.

22