20
1 Disciplina : Redes de Computadores Arquitetura TCP/IP - Internet Protocolo IP Protocolo ICMP Profa. Débora Christina Muchaluat Saade [email protected] Departamento de Ciência da Computação - UFF 2 Redes de Computadores Arquitetura TCP/IP Internet 9 Redes de Computadores Inter-rede G G G G G Rede 3 Conceito de Inter-rede H H H Rede 2 H H Rede 1 H H H Rede 5 Rede 4 10 Redes de Computadores Arquitetura Internet Aplicação Transporte Inter-rede Intra-rede Arquitetura Internet 11 Redes de Computadores Arquitetura Internet Aplicação Apresentação Sessão Transporte Rede Enlace Físico Arquitetura OSI Aplicação Transporte Arquitetura Internet Intra-rede Inter-rede 12 Redes de Computadores Arquitetura Internet Aplicação Apresentação Sessão Transporte Rede Enlace Físico Arquitetura OSI Aplicação Transporte Inter-rede Intra-rede Arquitetura Internet

Internet Arquitetura TCP/IP Internet - midiacom.uff.br · Rede 4 Rede 5 10 Redes de Computadores Arquitetura Internet Aplicação Transporte Inter-rede Intra-rede ... Modelos de diversos

Embed Size (px)

Citation preview

1

Disciplina: Redes de Computadores

Arquitetura TCP/IP - Internet

Protocolo IP

Protocolo ICMP

Profa. Débora Christina Muchaluat Saade [email protected]

Departamento de Ciência da Computação - UFF

2

Redes de Computadores

Arquitetura TCP/IP Internet

9

Redes de Computadores

Inter-rede

G

G

G

G

G Rede 3

Conceito de Inter-rede

H

H

H

Rede 2 H

H

Rede 1

H

H H

Rede 5 Rede 4

10

Redes de Computadores

Arquitetura Internet

Aplicação

Transporte

Inter-rede

Intra-rede

Arquitetura Internet

11

Redes de Computadores

Arquitetura Internet

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Físico

Arquitetura OSI

Aplicação

Transporte

Arquitetura Internet

Intra-rede

Inter-rede

12

Redes de Computadores

Arquitetura Internet

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Físico

Arquitetura OSI

Aplicação

Transporte Inter-rede

Intra-rede

Arquitetura Internet

2

13

Redes de Computadores

Arquitetura Internet

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Físico

Arquitetura OSI

Aplicação

Transporte

Arquitetura Internet

Intra-rede

Inter-rede

Interface de Serviço de

Nível 2

14

Redes de Computadores

Arquitetura TCP/IP (TCP/IP Internet Protocol Suite)

Aplicação

Transporte

Inter-rede

Intra-rede

Mensagens da aplicação

Pacotes da inter-rede (datagramas)

Endereços de “baixo nível”

Endereços de “alto nível”

15

Redes de Computadores

Nós intermediários na Arquitetura TCP/IP

Mensagem idêntica

Pacote idêntico

Roteador

Rede Física 1 Rede Física 2

Inter-rede

Intra-rede Intra-rede Intra-rede

Host A

Quadro idêntico

Datagrama idêntico

Inter-rede

Transporte

Aplicação

Intra-rede

Host B

Quadro idêntico

Datagrama idêntico

Inter-rede

Transporte

Aplicação

16

Redes de Computadores

Camada Intra-rede

➽ Infraestrutura específica de transmissão

➽ Recebe pacotes da camada inter-rede

➽ Utiliza padrões e tecnologias existentes atualmente •  Interfaces para LANs, MANs e

WANs •  Interfaces para enlaces ponto a

ponto: LPs, LDs, …

Aplicação

Transporte

Inter-rede

Intra-rede Int. de adaptação

17

Redes de Computadores

Camada Inter-rede

➽ Permite a comunicação entre dois hosts quaisquer conectados à inter-rede •  IP (Internet Protocol) •  Serviço mais simples possível:

entrega não confiável de datagramas ➽ Define formato do identificador

único de cada host na inter-rede •  Endereço IP (ex: 200.16.181.5)

➽ Encapsula as mensagens da camada de transporte em datagramas IP

Aplicação

Transporte

Inter-rede

Intra-rede Int. de adaptação

18

Redes de Computadores

Aplicação

Transporte

Inter-rede

Intra-rede Int. de adaptação

Camada Inter-rede

➽ Implementa algoritmos e políticas de roteamento entre redes

➽ Implementa mecanismo para divulgação de informações de controle e erro •  ICMP (Internet Control Message

Protocol) ➽ Qualquer tecnologia de intra-rede

é tratada de maneira idêntica pelos protocolos da camada inter-rede

3

19

Redes de Computadores

Interface de Adaptação

➽ Permite o uso da camada intra-rede pela camada inter-rede.

➽ Exs: •  Conversão entre endereços lógicos

IP e endereços físicos de interface de rede

•  Mapeamento entre o serviço de entrega provido pela rede física e o serviço de entrega não confiável de datagramas provido pelo IP

Aplicação

Transporte

Inter-rede

Intra-rede Int. de adaptação

20

Redes de Computadores

Camada de Transporte

➽ Comunicação entre duas aplicações (processos) em hosts ligados à inter-rede •  Comunicação Fim-a-Fim •  Multiplexação/Demultiplexação por

meio de “portas” ➽ UDP (User Datagram Protocol) ➽ TCP (Transmission Control

Protocol) •  Controle de Fluxo •  Controle de Erro •  Sequenciação

Aplicação

Transporte

Inter-rede

Intra-rede Int. de adaptação

21

Redes de Computadores

Camada de Aplicação

➽ Conjunto de aplicações distribuídas utilizadas pelos usuários da inter-rede

➽ Protocolos específicos por aplicação •  FTP (File Transfer Protocol) •  SMTP (Simple Mail Transfer

Protocol) •  HTTP (Hypertext Transfer Protocol)

➽ Esquema de endereçamento opcional baseado em nomes (ex: www.acme.com.br) •  DNS (Domain Name System)

➽  Interfaces para programação de aplicações TCP/IP

Aplicação

Transporte

Inter-rede

Intra-rede Int. de adaptação

22

Redes de Computadores

Relacionamentos entre Protocolos

Intra-rede

Inter-rede IP

ICMP

Transporte TCP UDP

User Process

User Process

User Process

Interface de rede

Interface de Adaptação

Interface de rede

Interface de rede

ATMARP ARP

Aplicações

23

Redes de Computadores

IP - Internet Protocol

24

Redes de Computadores

Protocolo IP (Internet Protocol)

➽ Serviço mais simples possível •  Datagrama não

confiável – Confiabilidade

fornecida pelas camadas superiores

•  Melhor esforço (best-effort)

•  Sem conexão

Aplicação

Transporte

Inter-rede

Intra-rede

4

25

Redes de Computadores

Protocolo IP (Internet Protocol)

➽ Definição de uma rede virtual •  Endereçamento

independente da infra-estrutura ou do endereçamento de cada intra-rede

•  Formato de pacote específico para a inter-rede

•  Função interna de roteamento (encaminhamento)

Aplicação

Transporte

Inter-rede

Intra-rede

26

Redes de Computadores

Roteadores

➽ Realizam a função de interligação de redes ➽ Podem ser baseados em um sistema

operacional de uso genérico (ex. PC, RISC, Mainframe) ou um software e hardware especializado

➽ Modelos de diversos tipos e tamanhos

Inter-rede ( IP )

Protocolos Intra-rede

27

Redes de Computadores

Endereços IP

➽  Endereços IP são números de 32 bits (4 bytes)

➽  Um endereço IP identifica um host em uma determinada rede física

➽  Endereçamento hierárquico composto de parte de rede e parte de host Rede

A Rede B

Rede Host

End. IP na Rede A ≠

End IP na Rede B

Parte comum a todas as

estações em uma mesma rede

28

Redes de Computadores

Endereços IP

➽  Endereçamento hierárquico composto de parte de rede e parte de host

➽  Se uma máquina troca de rede então seu endereço IP muda

➽  Endereços IP não têm relação com os endereços das estações dentro de cada uma das redes (endereçamento Intra-rede).

Rede A

Rede B

End. IP na Rede A ≠

End IP na Rede B

Rede Host

Parte comum a todas as

Estações em uma mesma rede

29

Redes de Computadores

Órgãos que distribuem endereços IP

➽ ICANN - Internet Corporation for Assigned Names and Numbers •  ARIN - American Registry for Internet Numbers •  Ripe - Ripe Network Coordination Centre •  APNIC - Asian Pacific Network Information Centre •  LACNIC - Latin American and Caribean Network

Information Center (responsabilidade do Comitê Gestor da Internet no Brasil - www.cgi.org.br)

•  AfriNIC - African Network Information Centre ➽  Estrutura de distribuição dos endereços é hierárquica

•  ISPs (Internet Service Providers) distribuem endereços para seus usuários, que podem ser outros provedores

30

Redes de Computadores

Distribuição de Endereços na Internet

➽ No Brasil •  Top level IPSs: IBM,

Global-One, Embratel, RNP, ...

•  Brasil é 3o mundial em número de hosts 26,5 Milhões (CIA World Factbook - 2012), atrás de EUA e Japão

ICANN

LACNIC

ISP

ISP ISP

ISP ISP

... ... ... ... ...

5

31

Redes de Computadores

Endereços IP: Notação “de Ponto”

11010000 11110101 00011100 10100011

208 245 28 163

208.245.28.163

32

Redes de Computadores

Endereços IP: Primeiro com Classes

Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31

netid hostid 0 Classe A

1 netid 0 hostid Classe B

netid 1 hostid 1 0 Classe C

Endereço Multicast 1 1 1 0 Classe D

Reservado para uso futuro 1 1 1 1 0 Classe E

Classe A: 0000 0001 1.X.X.X

0111 1111 127.X.X.X

Classe B: 128.1.X.X 1000 0000 0000 0001

191.255.X.X 1011 1111 1111 1111

Classe C: 192.0.1.X 1100 0000 0000 0000 0000 0001

223.255.255.X 1101 1111 1111 1111 1111 1111

Classe D: 224.X.X.X 1110 0000

239.X.X.X 1110 1111

Classe E: 240.X.X.X 1111 0000

247.X.X.X 1111 0111

X X X X X X

X X X X

X X

X X X X X X

X X X X X X

34

Redes de Computadores

NETID HOSTID

Endereço da rede X 0 0 0 0 ... 0 0 0 0

Broadcast direto X 1 1 1 1 ... 1 1 1 1

Broadcast limitado 1 1 1 1 ... 1 1 1 1 1 1 1 1 ... 1 1 1 1

Loopback geralmente 127.0.0.1

0 1 1 1 1 1 1 1 X

Endereços especiais

35

Redes de Computadores

Exemplo

11001000 10000010 10101011 00100101 200 18 171 37 IP A

11001000 10000010 10101011 10010100 200 18 171 148 IP B

➽  Determinação da Classe:

➽  Hosts estão na mesma Rede? Na classe C, os 3 primeiros bytes são o end. de rede. Logo, os dois endereços estão na mesma rede IP, sendo um do host 37 (A) e outro do host 148 (B)

netid 1 hostid 1 0

CLASSE C

36

Redes de Computadores

Formato de um datagrama IP

Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31

VERS SERVICE TYPE TOTAL LENGTH IDENTIFICATION FLAGS FRAGMENT OFFSET

TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS

HLEN

DESTINATION IP ADDRESS IP OPTIONS (IF ANY)

DATA ...

PADDING

6

37

Redes de Computadores

Campos do datagrama IP

Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31

VERS SERVICE TYPE TOTAL LENGTH IDENTIFICATION FLAGS FRAGMENT OFFSET

TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS

HLEN

DESTINATION IP ADDRESS IP OPTIONS (IF ANY)

DATA ...

PADDING

38

Redes de Computadores

Campos do datagrama IP

VERS TOTAL LENGTH IDENTIFICATION FLAGS FRAGMENT OFFSET

TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS

HLEN

DESTINATION IP ADDRESS IP OPTIONS (IF ANY)

DATA ...

PADDING

SERVICE TYPE

PRECEDENCE D T R UNUSED

Alta Confiabilidade (High Reliability) Alta Vazão (High Throughput) Baixo Retardo (Low Delay) Prioridade do Datagrama: 0 - 7

VERS = 4 HLEN = N x 4 octetos (20 a 64 bytes) TLEN = até 65535 octetos

C Baixo Custo (Low Monetary Cost)

39

Redes de Computadores

SERVICE TYPE VERS TOTAL LENGTH IDENTIFICATION FRAGMENT OFFSET

TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS

HLEN

DESTINATION IP ADDRESS IP OPTIONS (IF ANY)

DATA ...

PADDING

FLAGS

TTL decrementado em cada roteador de 1 ou mais

TCP = 6 UDP = 17 ICMP = 1 EGP = 8 OSPF= 89 (RFC 1700)

Alterado a cada roteador

Campos do datagrama IP

40

Redes de Computadores

Entrega de Pacotes IP

Rede A

Rede B

Roteador

IP: 200.18.171.X IP: 200.18.180.Y

IP

Protocolos Intra-rede

A

TCP/UDP

Aplicação

Inter-rede ( IP )

Protocolos Intra-rede

A

Protocolos Intra-rede

B IP

Protocolos Intra-rede

B

TCP/UDP

Aplicação

41

Redes de Computadores

Entrega de Pacotes IP

Rede A

Rede B

Roteador

IP

Protocolos Intra-rede

A

TCP/UDP

Aplicação

Inter-rede ( IP )

Protocolos Intra-rede

A

Protocolos Intra-rede

B IP

Protocolos Intra-rede

B

TCP/UDP

Aplicação

Endereçamento Intra-Rede, Algumas vezes chamado de “Endereço Físico” ou também “Endereço MAC” Ex. Ethernet: 0D.0A.12.07.48.05

Ex. ATM: 47.0091.8100.0000.200c.1001. 0800.200c.1001.01

42

Redes de Computadores

Entrega de Pacotes IP

Rede A

IP

TCP/UDP

Aplicação

IP

Protocolos Intra-rede

TCP/UDP

Aplicação

Protocolos Intra-rede

7

43

Redes de Computadores

Entrega de Pacotes IP

Rede A

IP

TCP/UDP

Aplicação

IP

Protocolos Intra-rede

TCP/UDP

Aplicação

Protocolos Intra-rede

44

Redes de Computadores

Entrega de Pacotes IP

Rede A

IP

TCP/UDP

Aplicação

IP

Protocolos Intra-rede

TCP/UDP

Aplicação

Protocolos Intra-rede

Endereços IP De Origem e destino

45

Redes de Computadores

Entrega de Pacotes IP

Rede A

IP

TCP/UDP

Aplicação

IP

Protocolos Intra-rede

TCP/UDP

Aplicação

Protocolos Intra-rede

Endereçamento Intra-rede de Origem e destino

46

Redes de Computadores

Entrega de Pacotes IP

Rede A

IP

TCP/UDP

Aplicação

IP

Protocolos Intra-rede

TCP/UDP

Aplicação

Protocolos Intra-rede

É necessário um mecanismo de “mapeamento” entre End. IP e End. Intra-Rede

47

Redes de Computadores

Entrega de Pacotes IP

Rede A

IP

TCP/UDP

Aplicação

IP

Protocolos Intra-rede

TCP/UDP

Aplicação

Protocolos Intra-rede

O Encaminhamento dentro de cada rede é feito com base no endereçamento próprio daquela rede.

48

Redes de Computadores

ARP (Address Resolution Protocol)

➽ Realiza o mapeamento entre Endereço IP e Endereço Intra-Rede •  Mapeamento de endereços IP em endereços

MAC Ethernet, Token-Ring, FDDI, ATM, etc...

•  Efetuado por meio de uma tabela ARP em cada máquina que é construída dinamicamente

➽ É um protocolo que faz a interface entre a camada Inter-Rede e a camada Intra-Rede

IP

TCP/UDP

Aplicação

Protocolos Intra-rede

Interface de Adaptação

8

49

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1 200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77 0D.0A.12.07.48.05

50

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

51

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

IP destino = 200.18.171.3

52

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

Destino está na mesma rede IP (200.18.171.0) Como enviar para esta máquina ? Qual o MAC Destino ? A mensagem fica esperando e o protocolo ARP é acionado.

53

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

... End. Físico Broadcast

0D.0A.12. 07.48.05 ARP Dados (ARP Request) FCS

ARP Req

Destino Origem

54

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Req

9

55

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Req

56

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Req

57

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Req

ARP Req

58

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Req

59

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77 ARP Req

60

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Req

10

61

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

Destino Origem

ARP Reply

... 0D.0A.12. 07.48.05

1F.6D.45. 09.11.77 ARP Dados (ARP Reply) FCS

62

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Reply

63

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Reply

64

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Reply

65

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

ARP Reply

66

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

200.18.171.3 1F.6D. 45.09.11.77 Tabela ARP

11

67

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

200.18.171.1 0D.0A.12.07.48.05

Tabela ARP

Note que …

68

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

0D.0A.12.07.48.05 200.18.171.1 Tabela ARP

... e que …

69

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

Finalmente aquele pacote IP pode ser transmitido carregando uma mensagem TCP que, por sua vez, carrega um comando da Aplicação

70

Redes de Computadores

ARP (Address Resolution Protocol)

Protocolos Intra-rede

TCP/UDP

Aplicação

IP 200.18.171.1

0D.0A.12.07.48.05

200.18.171.3

Protocolos Intra-rede

TCP/UDP

Aplicação

IP

200.18.171.4

1F.6D.45.09.11.77

1F.6D.45. 09.11.77

0D.0A.12. 07.48.05 FCS TCP Aplicação

IP

71

Redes de Computadores

Roteamento

➽  X deseja enviar pacotes para Y ➽  O protocolo IP percebe que Y não pertence à mesma rede

➽  O host X consulta tabela de rotas •  Descobre rota: roteador 200.18.171.1

➽  O IP do host X aciona ARP para resolver endereço do roteador •  Resultado: 0C.08.12.04.37.0A

Rede A

Rede B

Roteador 200.18.171.8 200.18.180.4

200.18.171.1 200.18.180.3

X Y

0D.0A.12.07.48.05 1F.6D.45.09.11.77

4F.0A.35.09.11.97 0C.08.12.04.37.0A

72

Redes de Computadores

Roteamento

Rede A

Rede B

Roteador 200.18.171.8 200.18.180.4

200.18.171.1 200.18.180.3

X Y

0D.0A.12.07.48.05 1F.6D.45.09.11.77

4F.0A.35.09.11.97 0C.08.12.04.37.0A

... 0C.08.12 04.37.0A

0D.0A.12. 07.48.05 FCS TCP Apl 200.18.

180.4 200.18. 171.8

12

73

Redes de Computadores

Roteamento

Rede A

Rede B

Roteador 200.18.171.8 200.18.180.4

200.18.171.1 200.18.180.3

X Y

0D.0A.12.07.48.05 1F.6D.45.09.11.77

4F.0A.35.09.11.97 0C.08.12.04.37.0A

74

Redes de Computadores

Roteamento

Rede A

Rede B

Roteador 200.18.171.8 200.18.180.4

200.18.171.1 200.18.180.3

X Y

0D.0A.12.07.48.05 1F.6D.45.09.11.77

4F.0A.35.09.11.97 0C.08.12.04.37.0A

TCP Apl 200.18. 180.4

200.18. 171.8

➽  O protocolo IP percebe que DESTINO pertence à mesma rede

➽  aciona ARP para resolver endereço do DESTINO •  Resultado: 1F.6D.45.09.11.77

75

Redes de Computadores

Roteamento

Rede A

Rede B

Roteador 200.18.171.8 200.18.180.4

200.18.171.1 200.18.180.3

X Y

0D.0A.12.07.48.05 1F.6D.45.09.11.77

4F.0A.35.09.11.97 0C.08.12.04.37.0A

... 1F.6D.45. 09.11.77

4F.0A.35. 09.11.97 FCS TCP Apl 200.18.

180.4 200.18. 171.8

76

Redes de Computadores

Tabela de Rotas

Tabela de Rotas

Protocolos de Divulgação

de Rotas (RIP, RIP2,

OSPF, BGP-4)

Internet Protocol

77

Redes de Computadores

Tamanho dos datagramas IP

➽ Caso ideal: •  tamanho do datagrama IP ≤ tamanho máximo da

área de dados do quadro intra-rede (MTU - Maximum Transmission Unit)

➽ Existem vários tipos de redes com diferentes MTUs •  FDDI = max 4470 bytes •  Ethernet = max 1500 bytes •  Token-Ring = max 4500 bytes

➽ Como fazer para transmitir um datagrama IP em uma rede com MTU menor?

78

Redes de Computadores

Fragmentação e Remontagem

G G

Rede 1 MTU=1500

Rede 3 MTU=1500

1 2 Rede 2

MTU=500

13

79

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

80

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

81

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

82

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

83

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

84

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

14

85

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

86

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

87

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

88

Redes de Computadores

Fragmentação e Remontagem

Rede 1 MTU=1500

Rede 3 MTU=1500

Rede 2 MTU=500 G G 1 2

89

Redes de Computadores

SERVICE TYPE VERS TOTAL LENGTH IDENTIFICATION FRAGMENT OFFSET

TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS

HLEN

DESTINATION IP ADDRESS IP OPTIONS (IF ANY)

DATA ...

PADDING

NU DNF MF

Do Not Fragment Bit (datagrama descartado e erro enviado para origem)

More Fragments Bit

FLAGS

Identificador da Mensagem (não do datagrama)

13 bits Múltiplos de 8 octetos TLEN informa tamanho do fragmento. Só último fragmento determina tamanho do datagrama original, através de TLEN e FRAGMENT OFFSET.

Não utilizado

Campo FLAGS do datagrama IP

90

Redes de Computadores

Exemplo de fragmentação

➽ A quer transmitir datagrama de 4000 octetos de dados para B

➽ Quantos fragmentos serão gerados na Rede 2 ?

Rede 3 MTU=800

Rede 1 MTU=4500

Rede 2 MTU=1500

Tam. datagrama = 4020 B A

15

4 00000000 4020 63784 000 0

8 UDP 01F5 139.82.17.20

5

206.12.56.23

DVB9834H4K432BVIVV FVNEOFVHNOEF9345F 342589J3948302FJJFV

20 OCTETOS

4 00000000 1500 63784 001 0

8 UDP 0756 139.82.17.20

5

206.12.56.23

Primeiros 1480 octetos

4 00000000 1500 63784 001 185

8 UDP 0FD0 139.82.17.20

5

206.12.56.23

Próximos 1480 octetos

4 00000000 1060 63784 000 370

8 UDP 4AFF 139.82.17.20

5

206.12.56.23

Últimos 1040 octetos

Fragmento 1 Fragmento 2 Fragmento 3

4000 OCTETOS

1480 2960

Múltiplos de 8 octetos

92

Redes de Computadores

Fragmentação e Remontagem

➽  Generalidade: •  Permite datagramas de

tamanho variado ➽  Eficiência:

•  Fragmentos são roteados independentemente

–  Possibilidade de rotas alternativas

➽  Confiabilidade: •  se algum fragmento é perdido

o datagrama deve ser retransmitido integralmente

➽  Eficiência: •  Datagramas só são

remontados no destino –  Aumento do número de

pacotes circulando pelas redes

Vantagens Desvantagens

95

Redes de Computadores

Problema com Endereçamento por Classes

127

16.383

2.097.152

Número de Redes

16.777.214

65.534

254

Número de Estações

Classe A

Classe B

Classe C

•  Redução rápida dos endereços livres

96

Redes de Computadores

CIDR - Classless Interdomain Routing

➽ Fim da divisão em classes ➽ Ao invés da classe determinar a parte de rede

e de máquina do endereço é usada uma máscara de bits •  Máscara determina quais bits são utilizados para

identificar a rede e a máquina (hostid) •  Representada por número de 32 bits com 1 para

parte de rede e 0 para parte de host.

97

Redes de Computadores

Máscara de Rede

➽ A porção de bits 1 da máscara indica a parte correspondente a rede. A parte de bits 0 indica hosts

XX XX XX XX

Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31

11 11 11 11

End.

Mask

200. 00 01 00 10

18. 10 10 00 00 10

00 00 00 00

11 00 10 00

11 11 11 11 11 11 11 11 11

160 128 -191

255. 255. 255. 192

98

Redes de Computadores

Máscara de Rede

➽ Equivalente de máscara para classes: • A = 255.0.0.0 • B = 255.255.0.0 • C= 255.255.255.0

16

99

Redes de Computadores

CIDR (Classless Interdomain Routing)

➽ Um bloco CIDR é um conjunto contíguo de endereços expresso por meio de um endereço inicial (prefixo IP) e uma máscara que indica o número de endereços desse conjunto •  Ex.: (200.18.160.0, 255.255.255.0) é um bloco CIDR com

256 endereços IP (variando entre 200.18.160.0 e 200.18.160.255).

➽ Os conjuntos de destinos associados a blocos CIDR podem exibir um relacionamento de subconjunto •  Ex.: (200.18.160.0, 255.255.255.192) e (200.18.160.64,

255.255.255.192) são subconjuntos de (200.18.160.0, 255.255.255.0)

100

Redes de Computadores

Blocos CIDR

Inter-rede englobando endereços 200.180.160.0 a 200.180.160.255

Inter-rede englobando 200.180.160.0 a 200.180.160.63

Inter-rede englobando 200.180.160.64 a 200.180.160.127

...

104

Redes de Computadores

Roteamento em sub-redes

➽ Algoritmo de roteamento e estrutura da tabela de rotas devem ser alterados •  Para o algoritmo de roteamento verificar qual a parte

de rede, não olha p/ a classe do endereço de destino do datagrama. É aplicado um AND lógico deste endereço com a máscara. O resultado é o endereço da sub-rede.

•  Tabelas de rotas devem incluir coluna identificando a máscara de bits associada à sub-rede

➽ Datagrama IP não precisa carregar informação sobre máscara

105

Redes de Computadores

IP dest 139.82.5.68

Todo tráfego p/ 139.82.0.0 (classe B)

Roteamento em sub-redes

H

Resto da Internet Sub-rede 139.82.2.0

Sub-rede 139.82.5.64

139.82.5.68 mask = 255.255.255.192

H

H

X.25

139.82.2.4 mask = 255.255.255.0

R

Pref. IP 139.82.2.0 255.255.255.0 -

139.82.5.64 255.255.255.192 -

Máscara Rot. 1 2

Int.

1

2

106

Redes de Computadores

Escolha da rota

Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31

11 11 11 11

End IP

destino

Mask (AND)

139. 01 01 00 10

82. 00 00 01 01

00 00 00 00

10 00 10 11

11 11 11 11 11 11 11 11

5. 68

255. 255. 255. 0

01 00 01 00

End da

sub-rede 139. 01 01 00 10

82. 00 00 01 01 10 00 10 11

5. 0 00 00 00 00

Pref. IP 139.82.2.0 255.255.255.0 -

139.82.5.64 255.255.255.192 -

Máscara Rot. 1 2

Int. NÃO! (é diferente)

107

Redes de Computadores

Escolha da rota

Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31

11 11 11 11

End IP

destino

Mask (AND)

139. 01 01 00 10

82. 00 00 01 01

00 00 00

10 00 10 11

11 11 11 11 11 11 11 11 11

5. 68

255. 255. 255. 192

01 00 01 00

End da

sub-rede 139. 01 01 00 10

82. 00 00 01 01 10 00 10 11

5. 64 01 00 00 00

Pref. IP 139.82.2.0 255.255.255.0 -

139.82.5.64 255.255.255.192 -

Máscara Rot. 1 2

Int.

OK! (é igual)

17

108

Redes de Computadores

IP dest 139.82.5.68

Todo tráfego p/ 139.82.0.0 (classe B)

Roteamento em sub-redes

H

Resto da Internet Sub-rede 139.82.2.0

Sub-rede 139.82.5.64

139.82.5.68 mask = 255.255.255.192

H

H

X.25

139.82.2.4 mask = 255.255.255.0

R

Pref. IP 139.82.2.0 255.255.255.0 -

139.82.5.64 255.255.255.192 -

Máscara Rot. 1 2

Int.

1

2

109

Redes de Computadores

Roteamento em sub-redes

Mask = 255.255.255.192

...

200.18.170.0

200.18.170.64

...

200.18.170.192

...

200.18.170.128 R1

R2

.1 .65

.129

.130

.193

Pref. IP Mask Roteador .170.0 .255.192 - .170.1

.170.64 .255.192 - .170.65

Int. R1

.170.128 .255.192 - .170.129

.170.192 .255.192 .170.130 .170.129

Pref. IP Mask Roteador .170.128 .255.192 - .170.130 .170.192 .255.192 - .170.193

Int. R2

.170.0 .255.192 .170.129 .170.130 .170.64 .255.192 .170.129 .170.130

110

Redes de Computadores

Roteamento em sub-redes

Mask = 255.255.255.192

...

200.18.170.0

200.18.170.64

...

200.18.170.192

...

200.18.170.128 R1

R2

.1 .65

.129

.130

.193

Internet

X

0.0.0.0 0.0.0.0 ... X

0.0.0.0 0.0.0.0 170.129 .170.130

Representação da rota default

Pref. IP Mask Roteador .170.0 .255.192 - .170.1

.170.64 .255.192 - .170.65

Int. R1

.170.128 .255.192 - .170.129

.170.192 .255.192 170.130 .170.129

Pref. IP Mask Roteador .170.128 .255.192 - .170.130 .170.192 .255.192 - .170.193

Int. R2

.170.0 .255.192 170.129 .170.130 .170.64 .255.192 170.129 .170.130

111

Redes de Computadores

ICMP Internet Control Message Protocol

112

Redes de Computadores

Protocolo ICMP (Internet Control Message Protocol)

➽ IP - transmissão não confiável de datagramas •  Necessidade de feedback a respeito de problemas na inter-

rede (host de destino indisponível, rotas circulares, etc.) ➽ ICMP - usado para comunicar mensagens de erro e

outras condições inesperadas que mereçam atenção •  ICMP não torna confiável o serviço provido pelo IP

–  Protocolos superiores devem implementar seus próprios procedimentos se for necessário um serviço confiável

•  ICMP deve sempre ser implementado junto com o IP ➽ RFCs 792, 1191, 1256

116

Redes de Computadores

Campo de Dados IP Cabeçalho IP

Se um dgram IP encapsulando uma msg

ICMP gerar um erro, NÃO é gerada uma nova msg ICMP. O mesmo vale para dgrams

cujo IP dest seja broadcast ou cujo Fragment Offset > 0

Mensagens ICMP

Campo de Dados IP Cabeçalho IP

Campo de Dados TCP/UDP

Cabeçalho TCP/UDP

Erro em um roteador

Campo de Dados ICMP Cabeçalho ICMP

Mensagem ICMP gerada pelo roteador e enviada ao transmissor

do datagrama original

Possui identificador da aplicação

Possui identificador do protocolo

18

120

Redes de Computadores

Mensagem ICMP Destination Unreachable (Net Unreachable)

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1 .2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.22.4

ARP p/ 200.18.17.2

Tabela de Rotas S 0.0.0.0 0.0.0.0 200.18.17.2

121

Redes de Computadores

Mensagem ICMP Destination Unreachable (Net Unreachable)

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1 .2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.22.4

R

Msg ICMP Type 3; Code 0 X

Não há entrada na tabela de rotas p/

200.18.22.X (nem rota default)

125

Redes de Computadores

Configuração de tabela de rotas em hosts

➽ Tabela com um roteador default: • Todos os datagramas IP são enviados

para ele • Rotas melhores aprendidas por meio de

ICMP Redirect

127

Redes de Computadores

Mensagem ICMP Redirect

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

Rota p/ 200.18.21.0 200.18.17.2

Tabela de Rotas S 0.0.0.0 0.0.0.0 200.18.17.3

128

Redes de Computadores

Mensagem ICMP Redirect

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0

200.18.17.0

H

D

S .1 .2

.3

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

.2

200.18.20.0

Tabela de Rotas R ... 200.18.21.0 255.255.255.0 200.18.17.2

129

Redes de Computadores

Mensagem ICMP Redirect

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0

200.18.17.0

H

D

S .1 .2

.3

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

Msg ICMP Type 5; Code 1 IP roteador 200.18.17.2 IP destino 200.18.21.2

H

.1

.2

200.18.20.0

19

130

Redes de Computadores

Mensagem ICMP Redirect

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

Tabela de Rotas S 0.0.0.0 0.0.0.0 200.18.17.3 200.18.21.2 255.255.255.255 200.18.17.2

131

Redes de Computadores

R1

R2 R3

R5

R4

Limitações do ICMP Redirect

➽ Tabela de rotas é preenchida com rota para cada host (ICMP Redirect não trata másc. de sub-rede)

➽ Somente para interação entre um roteador e um host ligados na mesma rede física. Não serve para otimizar a rota entre roteadores (função dos protocolos de roteamento)

132

Redes de Computadores

Mensagem ICMP Time Exceeded (Tracing - descoberta de caminhos na Internet)

➽ traceroute (Unix) e tracert (Windows) são implementados com base na mensagem ICMP Time Exceeded

134

Redes de Computadores

traceroute e tracert

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

TTL 1

ROTA P/ 200.18.21.2 ?

135

Redes de Computadores

traceroute e tracert (time exceeded)

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

TTL 0

Msg ICMP Type 11, Code 0 X ROTA P/ 200.18.21.2 ? Passa por 200.18.17.2;

136

Redes de Computadores

traceroute e tracert

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

TTL 2

ROTA P/ 200.18.21.2 ? Passa por 200.18.17.2;

20

137

Redes de Computadores

traceroute e tracert

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

TTL 1

138

Redes de Computadores

traceroute e tracert (time exceeded)

R

R

R R

200.18.18.0

200.18.19.0

200.18.21.0 200.18.20.0

200.18.17.0

H

D

S

H

.1 .2

.3

.1

.2

.3

.1 .2

.1 .2

.2

.1

.3

IP dest 200.18.21.2

TTL 0

Msg ICMP Type 11, Code 0

X

… prosseguindo até alcançar o destino

ROTA P/ 200.18.21.2 ? Passa por 200.18.17.2;

200.18.19.2

139

Redes de Computadores

Questões em ICMP

➽ ICMP só é enviado ao host origem do datagrama

➽ Não há como relatar problemas entre roteadores intermediários • Ex: rota inválida no meio do caminho

➽ ICMP não possui mensagem para erro no datagrama • Detecção e correção de erros delegada aos

protocolos superiores