107
Arquitetura e Protocolos Arquitetura e Protocolos de de Redes de Computadores Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD [email protected]

Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD [email protected]

Embed Size (px)

Citation preview

Page 1: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Arquitetura e Protocolos de Arquitetura e Protocolos de Redes de ComputadoresRedes de Computadores

Prof. Rafael Paoliello Guimarães, [email protected]

Page 2: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Nossa AgendaNossa Agenda• Arquitetura de redes locais e de longa distância

– Modelo OSI– Modelo TCP/IP

• Conceitos sobre as camadas física e de enlace– Cabos e Modulações– Ethernet

• TCP/IP– Como utilizar para interligação de redes heterogêneas– Os componentes da arquitetura TCP/IP (IP, ARP,

RARP, ICMP, TCP e UDP)– As ferramentas TCP/IP– Os roteadores IP

Page 3: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

As redes de computadoresAs redes de computadores

• Classificação– LAN (Local Area Network)

– MAN (Metropolitan Area Network)

– WAN (Wide Area Network)

– PAN (Personal Area Network)

WAN

LAN

LANLAN

LAN

TCP/IP

TCP/IPTCP/IP

TCP/IPTCP/IP

TCP/IP

TCP/IPTCP/IP

TCP/IP

Page 4: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Redes de computadoresRedes de computadores

• Estruturação do projeto de uma rede em camadas hierárquicas– Modelo OSI (Open Systems Interconnection)

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Física Resolver problemas de representação de 0 e 1. Adaptação software-hardware

Transforma canal não-confiável em confiável.Detecção/Correção de erros, controle de fluxo, etc

Cuida basicamente de endereçamento das estações e roteamento dos dados

Isola camadas superiores da parte de transmissão. Controles de comunicação fim-a-fim

Controle das sessões de comunicação

Transformação nos dados: criptografia, compressão, etc

Aplicações que utilizam a rede OSI

Page 5: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Redes de computadoresRedes de computadores

• Estruturação do projeto de uma rede em camadas hierárquicas– Modelo OSI (Open Systems Interconnection)

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Física

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Física

Usuário A Usuário BCabeçalho (Header)

Page 6: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Modelo TCP/IPModelo TCP/IP

• Simplificação do modelo OSI– Camadas de sessão e apresentação

desaparecem• Funcionalidades devem ser implementadas pelas

aplicações

– Enlace e Físico se juntam na camada intra-rede

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Física

Aplicação

Transporte

Inter-rede

Intra-rede

Interface de rede

MODELOOSI

MODELOTCP/IP

Page 7: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

A camada físicaA camada física

• Técnicas de codificação do sinal– NRZ (Non-Return to Zero), Manchester

• Multiplexação do sinal– TDM (Time Division Multiplexing)

– FDM (Frequency Division Multiplexing)

– CDM (Code Division Multiplexing)

– SDM (Space Division Multiplexing)

Page 8: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Camada FísicaCamada Física

• Cabos e conectores– Par trançado

– Coaxial

– Fibra ótica (monomodo, multimodo)

– Meio aéreo (wireless)

Page 9: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Camada de EnlaceCamada de Enlace• Delimitação de Quadros

– Camada de Enlace recebe seqüência de bits. Onde começa e onde termina cada quadro?

• Controle de Erros– Bits transmitidos podem conter erros devido a interferência

durante a transmissão. Como detectar e/ou corrigir esses erros?

• Controle de Fluxo– Como garantir que o transmissor não enviará dados em

uma velocidade maior do que o receptor é capaz de processá-los

• Controle de Acesso– Se vários quiserem utilizar o meio, como ordenar a

utilização?

Page 10: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Delimitação de QuadrosDelimitação de Quadros• Contagem de caracteres

– Campo no cabeçalho informa número de caracteres no quadro

• Caracteres delimitadores e transparência– Caracteres especiais indicam ínicio e fim do quadro

– Se caracter especial fizer parte dos dados, se insere (stuff) um caracter especial antes dele

• Seqüência de bits (flags) e transparência de bits– HDLC: 01111110 como delimitador

– Encontra 5 bits 1 consecutivos nos dados, insere bit 0

• Violação de códigos do nível físico– Manchester: Sem transição poderia ser utilizado para

delimitar quadros

Page 11: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Controle de ErrosControle de Erros• Reconhecimento positivo (ACK) e temporizador

(timeout): Satisfatório• Transmissão -> Erro -> timeout -> Retransmissão -> ACK• Transmissão e retransmissão com mesmo número de seq

• Introdução de FCS (Frame Sequence Check) ao final do quadro– Bit de paridade (controle fraco)

– CRC (controle forte)• Cyclic Redundancy Check• Seqüência de bits visto como polinômio• 101001 -> x5 + x3 + 1

– Códigos de correção de erros (Hamming)

Page 12: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

CRCCRC

• Baseado na divisão de polinômios– Divisor deve ser conhecido por ambas as partes

• CRC-16 = x16 + x15 + x2 + 1• CRC-CCITT = x16 + x12 + x5 + 1• CRC-32 = x32 + x26 + x23 + x22 + x16 + x12 + x11 +

x10 + x8 + x7 + x5 + x4 + x2 + x + 1

– Aritmética Módulo-2: soma é um XOR

– T = M + R• T é a mensagem a ser transmitida (n+k bits)• M são os dados (k bits)• R é o CRC (n bits)

– P é o divisor (n+1) bits

Page 13: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Exemplo CRCExemplo CRC• M = 1010001101 (10 bits)• P = 110101 (6 bits)101000110100000 | 110101110101 111011 110101 111010 110101 111110 110101 101100 110101 110010 110101 01110 CRC

O transmissor insere 5 bits 0 (tamanho do CRC)ao final da mensagem e divide pelo polinômio

O transmissor transmite a mensagem seguidado CRC

O receptor, divide tudo pelo polinômio e, se nãohouve erros, o resto deve ser zero

Page 14: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Controle de erros Controle de erros

• Técnicas de retransmissão– Bit alternado (stop and wait)

• TX ACK TX ACK TX ACK …

– Janela N com retransmissão integral (Go-back-N)• Um ACK a cada N quadros, confirma a recepção

de todos os anteriores• Caso não receba um ACK do quadro i, retransmite

tudo a partir de i

– Janela N com retransmissão seletiva (Selective repeat)

• Caso não receba um ACK do quadro i, retransmite somente i

Page 15: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Controle de FluxoControle de Fluxo

• Bit alternado– Controla o fluxo automaticamente

• Janela N técnica de janela deslizante– Janela de Transmissão: envia até T quadros sem

ACK

– Janela de Recepção: quando R quadros são recebidos e não foram processados pela camada de rede, se envia um receive-not-ready à origem, a transmissão é suspensa e retormada quando se envia receive-ready

Page 16: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tipos de serviçoTipos de serviço

• Sem conexão e sem reconhecimento– Datagrama não-confiável

– Redes onde a taxa de erro do nível físico é muito baixa

• Sem conexão e com reconhecimento– ACK ou NACK

• Orientado à conexão– Estabelece conexão

– Dados

– Fim da conexão

Com ACK

Page 17: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Controle de AcessoControle de Acesso

• Várias máquinas ligadas ao meio– Controle centralizado (polling)

– Controle distribuído

• Subdivisão adotada proposta pelo IEEE 802– Adotada pela ISO

LLC

MAC Interface com a camada de Rede - controle de fluxo e de erros

Controle de acesso ao meio

CAMADA DE

ENLACE

Page 18: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

CSMA/CD (Collision Detection)CSMA/CD (Collision Detection)• Estação “ouve” meio antes de transmitir

– Se meio estiver livre, transmite, senão espera período de tempo e tenta novamente

– Se há colisão durante sua transmissão, aborta a transmissão

• envia sinal Jam, 48 bits: garante que todos detectam colisão

– Detectada colisão, estação espera um tempo para retransmissão

• Espera aleatória exponencial truncada: tempo de espera entre 0 e um limite superior. Limite superior é dobrado a cada colisão sucessiva.

– ETHERNET: Escolhe K entre 0 e 2j-1 na j-ésima colisão

– ETHERNET: Espera o tempo de transmissão de K x 512 bits

• Utilizado nas redes Ethernet

Page 19: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Ethernet (IEEE 802.3)Ethernet (IEEE 802.3)

• Estrutura do quadro

• Preâmbulo: 7 bytes 10101010, 1 byte 10101011• Destino, Origem: endereços MAC (6 bytes cada),

receptores checam endereço destino, se diferente, descartam quadro

• T (Tipo): indica protocolo de rede usado (IP, IPX, Appletalk etc)

• FCS: CRC do quadro

Preâmbulo Destino Origem T FCSDados

Page 20: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Interconexão de LANsInterconexão de LANs

• Por que não só uma grande LAN?– Nós de uma LAN devem compartilhar largura de

banda

– Tamanho máximo do cabeamento

– Domínio de colisão seria muito grande

• Hubs– São repetidores

– Não isolam tráfego (domínio de colisão é extendido)

– Podem ser interconectados hierarquicamente

– Todas LANs interconectadas devem implementar o mesmo protocolo

HUB

HUB HUB HUB

Page 21: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

BridgesBridges• Trabalham na camada de enlace

– Permitem a conexão de diferentes protocolos de enlace

• Switches– Permitem o isolamento de

tráfego

– Aprende que nós estãoconectados em cada portae direcionam tráfegoapenas para aquela porta

– Caso não conheçam destino, enviam a todas as portas

Page 22: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Camada de redeCamada de rede• Vamos focalizar nossa atenção ao protocolo IP

– Mais difundido dentre os protocolos de rede

• IP (Internet Protocol)– Chaveamento de pacotes c/ datagrama não-confiável

• Não faz nenhum tipo de verificação de entrega dos pacotes• Não estabelece nenhum tipo de circuito/conexão

– Função básica: rotear pacotes baseado no end. IP

– Define o endereçamento universal da Internet

– Atualmente o IP se encontra na versão 6

– Versão 4 ainda é a mais difundida, apesar do futuro apontar para a versão 6

Page 23: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

HistóricoHistórico• 1969

– DARPA (Defense Advanced Research Project Agency) cria um projeto de pesquisa para o desenvolvimento da rede de comutação de pacotes ARPANET

• Robusta, confiável, independente de fornecedor

• 1975– ARPANET deixa de ser experimental e passa a ser

operacional, família de protocolos TCP/IP começa a ser concebida

• 1979– Internet Control and Configuration Board define o projeto

de um protocolo para interconexão de redes• 1980

– TCP/IP torna-se padrão na ARPANET

Page 24: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

HistóricoHistórico• 1983

– TCP/IP adotado como padrão militar

– Defense Communication Agency pede divisão entre ARPANET e MILNET (rede militar)

• Internet = ARPANET + MILNET

– TCP/IP é integrado ao BSD/Unix e amplamente disponibilizado

• 1985– NSF (National Science Foundation) promove expansão da

Internet para comunidade acadêmica (NSFNET)

• 1986-1992– NSF abre acesso à Internet para comunidade científica

fora do EUA

Page 25: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Algumas características do TCP/IPAlgumas características do TCP/IP• Órgão controlador central da Internet

– NIC (Network Information Center): mantém e distribui informações sobre TCP/IP

• Todos documentos Internet - TCP/IP– Organizados em RFC (Request for Comments)

– Numeradas em ordem cronológica

– Podem ser encontrados em:• http://www.ietf.org/rfc.html• http://www.rfc.net

• Principais protocolos– IP (Internet Protocol)

– TCP (Transfer Control Protocol)

– UDP (User Datagram Protocol)

Page 26: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

A camada IP (rede)A camada IP (rede)• O endereçamento feito por esta camada é universal

(único para toda a rede)– A cada máquina se atribui um endereço de 32 bits

– Endereço IP foi pensado de forma a tornar o roteamento mais eficiente

– Formado por um prefixo que indica a rede e um sufixo que indica a máquina dentro de uma rede

• Endereçamento hierárquico: como o telefone, DDD+número

00001010 10101010 01110001 00000111

32 bits (4 bytes)

10.170.113.7

Page 27: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Classes de endereçoClasses de endereço• Inicialmente 3 classes de endereço foram criadas:

– Classe A: 0.0.0.0 a 127.255.255.255

– Classe B: 128.0.0.0 a 191.255.255.255

– Classe C: 192.0.0.0 a 223.255.255.255

0

10

110

Rede Máquina (Host)

Rede Máquina (Host)

Rede Máquina (Host)

Page 28: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Classes de endereçoClasses de endereço• Duas outras classes foram criadas posteriormente

– Classe D: 224.0.0.0 a 239.255.255.255• Utilizada para Multicast

– Classe E: 240.0.0.0 a 247.255.255.255• Reservada para uso futuro

1110

1110

Redes Endereços

Classe A 126 16.777.214

Classe B 16.382 65.534

Classe C 2.097.150 254

Page 29: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Regras de endereçamentoRegras de endereçamento

• Endereço IP contém informações sobre a rede e a máquina– Como fazer com máquinas que estejam

conectadas a mais de uma rede? Roteadores, por exemplo…

– Cada uma destas redes possui um “prefixo” diferente de endereço IP

• Como o endereço codifica tanto a máquina quanto a rede, ele não especifica uma máquina e sim uma conexão a uma rede– Se uma máquina está conectada a duas redes,

cada conexão receberá um endereço IP diferente

Page 30: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Regras de endereçamentoRegras de endereçamento

• Endereços de rede– Assim como as interfaces de máquina, as redes também

tem seus endereços IP• Endereços compostos pelo prefixo de rede, porém com a

parte da máquina preenchida com zeros• Estes endereços não podem ser utilizados para máquinas• Exemplos: 120.0.0.0 (classe A),

150.10.0.0 (classe B),

215.123.12.0 (classe C)

Rede A Rede B

Roteador

222.10.13.1 217.12.15.7

Page 31: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Regras de endereçamentoRegras de endereçamento• Endereços de broadcast

– Ao enviar para este endereço, envia-se a todas as máquinas da rede

• Endereços compostos pelo prefixo de rede, porém com a parte da máquina preenchida com uns

• Estes endereços não podem ser utilizados para máquinas• Exemplos: 120.255.255.255 (classe A)

150.10.255.255 (classe B),

215.123.12.255 (classe C)

• Sendo assim, o primeiro e o último endereço de cada rede nunca podem ser utilizados por máquinas

Page 32: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Regras de endereçamentoRegras de endereçamento• Endereço de Loopback

– Toda máquina rodando TCP/IP possui uma interface de loopback

– Esta interface não conecta a máquina a rede alguma– Seu objetivo é permitir a comunicação entre processos de

uma mesma máquina• Fluxo normal dos dados:

Aplicação TCP/UDP IP Enlace Físico transmissão

recepção Físico Enlace IP TCP/UDP Aplicação

• Fluxo utilizando loopback: Aplicação TCP/UDP IP loopback IP TCP/UDP

Aplicação– O endereço classe A 127.0.0.0 é reservado para loopback

e não pode ser utilizado por nenhuma rede• Quase todas as implementações utilizam 127.0.0.1

como endereço de loopback

Page 33: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Regras de endereçamentoRegras de endereçamento• Endereços IP reservados

– Alguns outros endereços são reservados e não podem ser utilizados por nenhuma máquina conectada diretamente à Internet

– São reservados para máquinas não conectadas à Internet ou conectadas através de um proxy

– Os endereços reservados são especificados pela RFC1597 e são os seguintes

Rede Máscara

10.0.0.0 255.0.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

Falaremos sobremáscaras maistarde

Page 34: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

ExemploExemplo• Exemplo de endereçamento IP

• Token Ring: 192.3.40.0 (classe C)• Ethernet: 146.134.0.0 (classe B)• Ethernet: 12.0.0.0 (classe A)

Token Ring192.3.40.0

Ethernet 146.134.0.0

Ethernet 12.0.0.0

146.134.10.7 146.134.15.3

146.134.223.1

146.134.223.2

192.3.40.2

192.3.40.98

192.3.40.37

192.3.40.7

192.3.40.6

12.130.0.3

12.130.0.2

12.3.20.21

Page 35: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

MáscarasMáscaras• Só a identificação da classe não é mais suficiente para indicar bits

de rede e bits de máquina– Necessidade de outro mecanismo que indique isso: Máscaras!

• A máscara de um endereço possui 32 bits e – seus bits são 1, se os bits correspondentes no endereço IP

representam a rede– seus bits são 0, se representam a máquina

– Os bits de rede e máquina não precisam ser contíguos, porém isso gera endereços muito confusos (melhor evitar!)

Classe A 11111111 00000000 00000000 00000000 255.0.0.0Classe B 11111111 11111111 00000000 00000000 255.255.0.0Classe C 11111111 11111111 11111111 00000000 255.255.255.0

11111111 00100100 00111000 00000000 (máscara válida)

Page 36: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Sub-redes não utilizáveisSub-redes não utilizáveis• A especificação TCP/IP diz que a primeira e a última sub-redes não

devem ser utilizadas• Exemplo:

– Dividimos uma rede classe C (200.241.14.0) em 8 sub-redes, cada uma podendo conter até 32 endereços

• 30, se desconsideramos o end. de rede e de broadcast de cada uma

200 241 14 11001000 11110001 00001110 0000000011001000 11110001 00001110 0010000011001000 11110001 00001110 0100000011001000 11110001 00001110 0110000011001000 11110001 00001110 1000000011001000 11110001 00001110 1010000011001000 11110001 00001110 1100000011001000 11110001 00001110 11100000

• Máscara11111111 11111111 11111111 11100000 (255.255.255.224)

6 sub-redes utilizáveis

Page 37: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

MáscarasMáscaras• As máscaras também farão parte das tabelas de rotas• Algoritmo de roteamento com sub-redes

– Verifique no datagrama IP o endereço IP do destino

– Bate com alguma das suas interfaces?• Sim. Joga fora o cabeçalho IP e entrega o campo de dados

aos protocolos de mais alto nível (transporte)• Não. Percorra a Tabela de Rotas

– Faça um AND bit-a-bit do IP de destino com a máscara

– Compare o resultado com a rede destino

– Se for igual envia o pacote para o roteador indicado na tabela

• Se não encontrou uma rota, envia mensagem de erro à origem

Page 38: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

ARP (ARP (Address Resolution ProtocolAddress Resolution Protocol))• Duas máquinas de uma mesma rede física só podem se

comunicar se souberem o endereço MAC uma da outra• De alguma forma, se deve obter o endereço MAC de

uma máquina a partir do endereço IP• ARP é utilizado

– A envia um broadcast perguntando qual máquina possui o IPB

– Todas máquinas recebem, mas só B responde com o seu endereço MACB

– A armazena o par (IPB, MACB) e B armazena o par (IPA, MACA) obtido ao receber o broadcast.

– Essa informação fica nos caches de A e B por um período apropriado (TTL, ou Time To Live)

Page 39: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Exemplo ARPExemplo ARP• 146.134.10.7 quer enviar dados a 146.134.15.3

– 146.134.10.7 envia um pacote de ARP Request– 146.134.15.3 envia um pacote de ARP Response– A partir daí, os pacotes IP podem ser encapsulados em quadro

de enlace (Ethernet, no caso)

Token Ring192.3.40.0

Ethernet 146.134.0.0

Ethernet 12.0.0.0

146.134.10.7 146.134.15.3

146.134.223.1

146.134.223.2

192.3.40.2

192.3.40.98

192.3.40.37

192.3.40.7

192.3.40.6

12.130.0.3

12.130.0.2

12.3.20.21

Page 40: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Pacote ARPPacote ARP• Formato do pacote ARP

– Hardware Type: especifica a interface de hardware pela qual o usuário espera uma resposta (1 se for Ethernet)

– Protocol Type: tipo de endereço que o usuárioestá procurando (0800H se for IP)

– HLEN e PLEN: Tamanho dos endereços MAC e de rede– Operation: 1 – ARP Request, 2 – ARP Response, 3 –

RARP Request, 4 – RARP Response

Hardware Type Protocol Type

OperationHLEN PLEN

Sender HA (octetos 0-3)

Sender HA (octetos 4-5) Sender IP (octetos 0-1)

Sender IP (octetos 2-3) Target HA (octetos 0-1)

Target HA (octetos 2-5)

Target IP (octetos 0-3)

Page 41: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

RARP (RARP (Reverse ARPReverse ARP))

• ARP mapeia endereço IP em endereço MAC• RARP faz o serviço contrário, de posse do

endereço MAC, obtém o endereço IP– Utilizado em máquinas sem disco que dão boot

via rede e necessitam de um endereço IP ainda durante o boot

– Ao iniciar, a máquina envia um broadcast perguntando qual o enderço IP correspondente ao seu endereço MAC

– Um servidor RARP responde e a máquina pode falar com qualquer outra a partir de então

Page 42: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Page 43: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Version (4 bits): Indica a versão do IP

Page 44: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

IHL, IP Header Length (4 bits): Indica o tamanho do datagrama

IP (em palavras de 32 bits)

Page 45: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Type of Service (8 bits): Especifica como o protocolo de mais alto nível gostaria que o datagrama fosse manuseado

D T RPrecedência

0 1 2 3 4 5 6 7

Precedência: Importância do pacoteD: Baixo DelayT: Alto throughputR: Alta confiabilidade

Page 46: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Difícil ser garantido pela Internet, considerado uma dica e não uma demandaRedefinido em 1990 pela IETF para acomodar os Differentiated Services

Definições nas RFC2474, RFC3168 e RFC3260

Code Point

0 1 2 3 4 5 6 7

Page 47: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Total Length (16 bits): Tamanho total do pacote IP, se pacote for fragmentado, indica tamanho do fragmento

Page 48: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Identification (16 bits): Valor inteiro que identifica o datagrama. Auxilia na remontagem de pacotes fragmentados

Page 49: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Flags (3 bits): Os dois bits de mais baixa ordem controlam a fragmentação. Um bit especifica se um pacote pode ou não ser fragmentado. O segundo bit especifica se o pacote é o último fragmento

Page 50: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Fragment Offset (13 bits): posição do fragmento no pacote original (em bytes)

Page 51: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Time-to-live (8 bits): Especifica quanto tempo o pacote pode ficar na rede

Page 52: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Protocol (8 bits): Indica qual protocolo de transporte está sendo transportado pelo pacote IP

Page 53: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Header checksum (16 bits): Soma de complemento 1 de blocos de 16 bits do cabeçalho IP

Page 54: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Source IP Address (32 bits): Endereço IP da origem

Page 55: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Destination IP Address (32 bits): Endereço IP do destino

Page 56: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

IP Options (tamanho variável): Um octeto do código da opção seguido de um octeto com o tamanho da opção, seguido de um conjunto de octetos com os dados da opção

Copy: Se for 1, opções são copiadas em todos fragmentos

Classe: 0 – datagrama de controle, 2 – Debug,

1 ou 3 – Reservado para uso futuro

Classe

0 1 2 3 4 5 6 7

Copy Número da opção

Page 57: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Padding (tamanho variável): Faz com que o cabeçalho seja múltiplo de 32 bits

Page 58: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

O pacote IPO pacote IP

• Unidade básica de transferência

Version IHL Type of Service Total Length

Identification Flags Fragment Offset

Time to Live (TTL) Protocol Header Checksum

Source IP Address

Destination IP Address

IP Options (if any) Padding

0 4 8 16 19 24 31

Data

Data (tamanho variável): Dados a serem transmitidos pelo pacote IP.

Máximo: Cabeçalho + dados = 65.535 bytes

Page 59: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Algumas opções IPAlgumas opções IP

• Opções IP

Option Number Descrição

1 No operation 2 Security 3 Loose Route 7 Recorde Route 8 Stream Identifier 9 Strict Source Route 11 MTU Probe 12 MTU Reply 4 Timestamp 18 Traceroute

Option Number Descrição

1 No operation 2 Security 3 Loose Route 7 Recorde Route 8 Stream Identifier 9 Strict Source Route 11 MTU Probe 12 MTU Reply 4 Timestamp 18 Traceroute

Page 60: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Algumas opções IPAlgumas opções IP• Record Route Option (Opção 7)

– Cada roteador pelo qual o pacote passe acrescenta seu endereço IP na lista

• Source Route Option– Indica a rota a ser seguida pelo pacote IP

• Strict (Opção 9): tem que seguir exatamente o caminho definido

• Loose (Opção 3): tem que passar pelos roteadores indicados, mas podem haver mais roteadores intermediários

CODE LENGTH POINTER Primeiro Endereço IP

Segundo Endereço IP ...

0 8 16 24 31

CODE LENGTH POINTER Endereço IP do primeiro hop

Endereço IP do segundo hop

...

0 8 16 24 31

Page 61: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Algumas opções IPAlgumas opções IP• Timestamp (Opção 4)

– Similar ao Record Route, porém cada roteador coloca na lista, além do seu IP, o tempo em que o pacote chegou

– OFLOW: número de roteadores que não puderam incluir informações na lista

– FLAGS: controla formato da lista de endereços

CODE LENGTH POINTEREndereço IP do primeiro hop

Tempo de chegada ao primeiro hop

0 8 16 24 31

Endereço IP do primeiro hop

Tempo de chegada ao primeiro hop ...

OFL

OW

FLAG

S

Page 62: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

FragmentaçãoFragmentação

• Cada protocolo de enlace possui um tamanho máximo de quadro (MTU, Maximum Transfer Unit)– Ethernet: 1500 bytes

– ATM: 53 bytes

– FDDI: 4500 bytes etc

• O pacote IP tem que caber dentro de um quadro de enlace– Se no enlace anterior o MTU era menor do que

no enlace atual, o pacote IP pode não caber no novo quadro: deve ser fragmentado em pacotes menores

Page 63: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

FragmentaçãoFragmentação

• Cada fragmento recebe uma cópia do cabeçalho IP original e uma porção dos dados

Cabeçalho IP Dados (1400 bytes + 20 bytes cabeçalho)

Cabeçalho IP Dados 1

Cabeçalho IP Dados 2

Original

Fra

gmen

tos

Cabeçalho IP Dados 3

ID = xxxx DF = 0 MF =1 OFFSET = 0

ID = xxxx DF = 0 MF = 1 OFFSET = 580

MTU = 600 (FRAGMENTAÇÃO)

ID = xxxx DF = 0 MF = 0 OFFSET = 1160

Page 64: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

FragmentaçãoFragmentação

R1 R2MTU = 1500 bytes MTU = 600 bytes MTU = 1500 bytes

1 Datagrama Origem1500 bytes

2 fragmentos de 600 bytes e

1 de 340 bytes

2 fragmentos de 600 bytes e

1 de 340 bytes

ID = 12345, DF = 0 MF = 0Offset = 0, len = 1500

ID = 12345, DF = 0 MF = 1Offset = 0, len = 600

ID = 12345, DF = 0 MF = 1Offset = 580, len = 600

ID = 12345, DF = 0 MF = 0Offset = 1160, len = 340

ID = 12345, DF = 0 MF = 1Offset = 0, len = 600

ID = 12345, DF = 0 MF = 1Offset = 580, len = 600

ID = 12345, DF = 0 MF = 0Offset = 1160, len = 340

• Exemplo:

Page 65: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

FragmentaçãoFragmentação

R1MTU = 1500 bytes MTU = 600 bytes

1 Datagrama Origem1500 bytes

0 fragmentosMensagem ICMP

ID = 12345, DF = 1 MF = 0Offset = 0, len = 1500

ICMP – Destination UnreachableFragmentation Needed and DF = 1

ICMP – Destination UnreachableFragmentation Needed and DF = 1

• Exemplo (caso em que DF=1):

Datagramadescartado

Mensagem de erro gerada e recebida pela origem do datagrama

Page 66: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

FragmentaçãoFragmentação

• Os fragmentos são remontados só no destino– Remontagem em roteadores intermediários

causa gasto de memória e de processamento

• No processo de remontagem, se o tempo de espera por fragmentos se esgota– Fragmentos são descartados

– Envia mensagem de erro (ICMP Time Exceeded) à origem

• Fragmentos diferentes podem ir por rotas diferentes

Page 67: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP• Roteamento: processo de escolha de um caminho

através do qual serão enviados pacotes• Roteador: máquina que realiza essas decisões• Dois tipos de roteamento

– Direto: duas máquinas que participam de uma conversação IP estão na mesma rede física

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

ARP Request (IPB)

Comunicação entre A e B

Page 68: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP• Roteamento: processo de escolha de um caminho

através do qual serão enviados pacotes• Roteador: máquina que realiza essas decisões• Dois tipos de roteamento

– Direto: duas máquinas que participam de uma conversação IP estão na mesma rede física

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e B

ARP Response (MACB)

Page 69: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP• Roteamento: processo de escolha de um caminho

através do qual serão enviados pacotes• Roteador: máquina que realiza essas decisões• Dois tipos de roteamento

– Direto: duas máquinas que participam de uma conversação IP estão na mesma rede física

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e B

Pacotes IP

Page 70: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP– Indireto: duas máquinas que participam de uma

conversação IP estão em redes físicas distintas. Roteadores terão que manusear esse pacote até que ele chegue ao destino

• A máquina deve identificar qual roteador servirá de intermediário da comunicação

• O roteador deverá estar necessariamente na mesma rede física da máquina

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e C

ARP Request (IPR1)

Page 71: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP– Indireto: duas máquinas que participam de uma

conversação IP estão em redes físicas distintas. Roteadores terão que manusear esse pacote até que ele chegue ao destino

• A máquina deve identificar qual roteador servirá de intermediário da comunicação

• O roteador deverá estar necessariamente na mesma rede física da máquina

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e CARP Response (MACR1)

Page 72: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP– Indireto: duas máquinas que participam de uma

conversação IP estão em redes físicas distintas. Roteadores terão que manusear esse pacote até que ele chegue ao destino

• A máquina deve identificar qual roteador servirá de intermediário da comunicação

• O roteador deverá estar necessariamente na mesma rede física da máquina

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e CPacotes IP para IPC

Page 73: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP– Indireto: duas máquinas que participam de uma

conversação IP estão em redes físicas distintas. Roteadores terão que manusear esse pacote até que ele chegue ao destino

• A máquina deve identificar qual roteador servirá de intermediário da comunicação

• O roteador deverá estar necessariamente na mesma rede física da máquina

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e C

ARP Request (IPC)

Page 74: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP– Indireto: duas máquinas que participam de uma

conversação IP estão em redes físicas distintas. Roteadores terão que manusear esse pacote até que ele chegue ao destino

• A máquina deve identificar qual roteador servirá de intermediário da comunicação

• O roteador deverá estar necessariamente na mesma rede física da máquina

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e C

ARP Response (MACC)

Page 75: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Roteamento de datagramas IPRoteamento de datagramas IP– Indireto: duas máquinas que participam de uma

conversação IP estão em redes físicas distintas. Roteadores terão que manusear esse pacote até que ele chegue ao destino

• A máquina deve identificar qual roteador servirá de intermediário da comunicação

• O roteador deverá estar necessariamente na mesma rede física da máquina

IPA

MACA

IPB

MACB

IPC

MACC

IPD

MACD

IPR1

MACR1

IPR2

MACR2

Comunicação entre A e CPacotes IP para IPC Pacotes IP para IPC

Page 76: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas• Algumas perguntas

– Como a máquina sabe se o roteamento será direto ou indireto?

– Caso seja direto, como sabe a qual roteador enviar a informação?

– Como o roteador sabe qual é a porta de saída dos pacotes?

• Resposta– Cada máquina/roteador mantém uma tabela com as rotas

através da qual se toma todas as decisões

– Cada rota é composta de um par (N,G), onde N é o endereço IP da rede destino e G é o endereço do próximo roteador no caminho da rede N.

Page 77: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

• Exemplo:

– A tabela do roteador G é:

Rede10.0.0.0

Rede20.0.0.0

Rede30.0.0.0

Rede40.0.0.0

10.0.0.5 20.0.0.6 30.0.0.7

20.0.0.5 30.0.0.6 40.0.0.7

F G H

Rede Destino Mandar Para

10.0.0.0 20.0.0.5

20.0.0.0 Direto

30.0.0.0 Direto

40.0.0.0 30.0.0.7

Page 78: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Rede10.0.0.0

Rede20.0.0.0

Rede30.0.0.0

Rede40.0.0.0

10.0.0.5 20.0.0.6 30.0.0.7

20.0.0.5 30.0.0.6 40.0.0.7

F G H

Rede80.0.0.0

Rede70.0.0.0

Rede60.0.0.0

Rede50.0.0.0

80.0.0.5 70.0.0.6 60.0.0.7

70.0.0.5 60.0.0.6 50.0.0.7

F G H

40.0.0.8

50.0.0.8

Page 79: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas– Tabela do roteador G

Rede Destino

Mandar Para

10.0.0.0 20.0.0.5

20.0.0.0 Direto

30.0.0.0 Direto

40.0.0.0 30.0.0.7

50.0.0.0 30.0.0.7

60.0.0.0 30.0.0.7

70.0.0.0 30.0.0.7

80.0.0.0 30.0.0.7

Rede Destino

Mandar Para

10.0.0.0 20.0.0.5

20.0.0.0 Direto

30.0.0.0 Direto

Default 30.0.0.7

SIMPLIFICAÇÃO

Usada sempre que nenhumaoutra regra for encontrada na tabela

Page 80: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Sub-redesSub-redes• Divisão dos endereços IP tem por objetivo simplificar o

roteamento– Pela classe, se pode saber quantos bits representam a

rede e quantos representam a máquina (o roteamento é feito pela rede!)

• Um endereço classe C é normalmente utilizado em redes pequenas– Uso de um classe C implica na alocação de 254

endereços, mesmo que nem todos sejam utilizados– Imagine um classe A!

• Crescimento da Internet escassez de endereços IP– Solução: dividir uma classe de endereço IP em

duas ou mais redes menores (sub-redes)

Page 81: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Sub-redesSub-redes• No exemplo abaixo dividiu-se um classe B

– 3º octeto representa a sub-divisão em redes internas

– Para a Internet, 128.10.0.0 é uma rede só

Internet

Todo o tráfego para 128.10.0.0

128.10.1.1 128.10.1.2

128.10.2.1 128.10.2.2

Rede 128.10.2.0

Rede 128.10.1.0

Page 82: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Page 83: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Rede Destino Máscara Próximo Hop Interface

146.134.21.0 255.255.255.0 192.3.40.20 TR

146.134.20.0 255.255.255.0 192.3.40.22 TR

192.3.40.0 255.255.255.0 --- TR

200.241.155.8 255.255.255.252 --- PaP

Default --- 200.241.155.9 PaP

200.241.255. 000010 00000010 01000010 10000010 11

Rede

Hosts

Broadcast

Page 84: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Rede Destino Máscara Próximo Hop Interface

146.134.21.0 255.255.255.0 --- ETH

146.134.20.0 255.255.255.0 146.134.21.12 ETH

192.3.40.0 255.255.255.0 --- TR

Default --- 192.3.40.2 TR

Page 85: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Rede Destino Máscara Próximo Hop Interface

146.134.21.0 255.255.255.0 146.134.20.1 ETH

146.134.20.0 255.255.255.0 --- ETH

192.3.40.0 255.255.255.0 --- TR

Default --- 192.3.40.2 TR

Page 86: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Rede Destino Máscara Próximo Hop Interface

146.134.21.0 255.255.255.0 --- ETH1

146.134.20.0 255.255.255.0 --- ETH2

Default --- 146.134.20.8 ETH2

ETH1

ETH2

Page 87: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Rede Destino Máscara Próximo Hop Interface

146.134.20.0 255.255.255.0 --- ETH

Default --- 146.134.20.8 ETH

Page 88: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Tabelas de rotasTabelas de rotas

Token Ring192.3.40.0

Ethernet 146.134.20.0

Ethernet 146.134.21.0

146.134.20.2 146.134.20.7

146.134.20.8

146.134.20.1

192.3.40.1

192.3.40.2

192.3.40.21

192.3.40.22

192.3.40.20

146.134.21.2

146.134.21.12

146.134.21.1

200.241.155.10

200.241.155.9

Internet

Ligação ponto-a-ponto

H1H2G3

G1G2

G4

Rede Destino Máscara Próximo Hop Interface

192.3.40.0 255.255.255.0 --- TR

Default --- 192.3.40.2 TR

Page 89: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

• Suponha que você disponha de apenas 1 endereço classe C (200.241.12.0) e que cada uma das 3 redes abaixo possua 20 máquinas no máximo. Crie as sub-redes com as respectivas máscaras, indique possíveis endereços para as interfaces de G1, G2, G3 e para H1, H2 e H3. Construa também as tabelas de rotas de todos. Backbone

Rede 1

G2 G3G1

H2 H3H1

Rede 2 Rede 3

Exercício 1Exercício 1

Page 90: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

Rede 1

G2

G1

H2

H1

Rede 2

G3H3

Rede 3

Rede 4

Rede 5ponto a ponto

Exercício 2Exercício 2• Escolha livremente os

endereços IPs das redes a seguir dentre os endereços reservados, indicando os endereços de cada máquina / roteador representado e suas respectivas tabelas de roteamento.

Page 91: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

G2

G1

H2

H1200.251.155.129

200.251.155.133

Internet

Exercício 3Exercício 3• Suponha que você disponha de apenas 1 endereço

classe C (197.12.1.0) e que cada uma das 2 redes abaixo possua 40 máquinas no máximo. Crie as sub-redes com as respectivas máscaras, indique possíveis endereços para os hosts e os roteadores. Construa também as tabelas de rotas de todos os indicados.

Page 92: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

• Esgotamento dos endereços IPv4

Blocos de /8

Page 93: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

• Endereço IPv6 = 128 bits– Espaço de endereçamento de

340.282.366.920.938.463.463.374.607.431.768.211.456

– Cerca de 79 trilhões de trilhões de vezes o espaço disponível no IPv4

– Equivale a cerca de 5,6 x 1028 endereços IP por ser humano

– Aproximadamente 66.557.079.334.886.694.389 de endereços por cm2 na superfície da Terra.

Page 94: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6• Os Registros Locais, hoje, recebem alocações /12• Um AS (Sistema Autônomo) recebe um /32. • Usuários finais recebem alocações que variam entre /48

e /56, conforme o tamanho de suas redes ou necessidade– /48 equivale a 1.208.925.819.614.629.174.706.176

endereços

– /56 equivale a 4.722.366.482.869.645.213.696 endereços

• Em um espaço de endereçamento de 128 bits, é possível atribuir 281.474.976.710.656 blocos /48 diferentes– 40 mil vezes mais do que a população atual do planeta

Page 95: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 96: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com
Page 97: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 98: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 99: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 100: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 101: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 102: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 103: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 104: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

Page 105: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

• Zeros contínuos podem ser substituídos por ::• Pode-se omitir os zeros à esquerda

– Exemplo:• 2001:0db8:0000:130F:0000:0000:087C:140b• É igual a• 2001:db8:0:130F::87C:140b

Page 106: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6• Endereços especiais:

– FE80::/64 – Link local• Válidos apenas no mesmo enlace

– FC00::/7 – Unique local• Válidos apenas em um local limitado• Um enlace ou conjunto de enlaces

– ::FFFF:wxyz – IPv4 mapeado em IPv6• wxyz é o endereço IPv4 convertido em hexadecimal

– ::1 – Loopback– ::0 – Não especificado

• Indica a ausência de endereços

– FF00::/8 – Multicast• Agora é obrigatório, todos os nós devem suportar• FF02::1 é o multicast chamado all node on link, equivale ao

broadcast do IPv4

Page 107: Arquitetura e Protocolos de Redes de Computadores Prof. Rafael Paoliello Guimarães, PhD rguima@gmail.com

IPv6IPv6

• Transição de IPv4 para IPv6• 3 alternativas

– Pilha dupla• Suporte a ambos protocolos no mesmo dispositivo

– Tunelamento• Permite tráfego de IPv6 sobre IPv4 e vice-versa

– Tradução• Permite comunicação entre nós que suportem

apenas IPv6 com nós que suportem apenas IPv4