Redes de Computadores
e a Internet
2010
Magnos Martinello
Universidade Federal do Espírito Santo - UFES
Departamento de Informática - DI
Capítulo 4: Camada de Rede
Objetivos:
•
Entender princípios da camada de rede
– Modelos de serviço de rede
– Repasse (encaminhamento) versus roteamento
– Como um roteador funciona
– roteamento (seleção de caminho)
– Tratando com escala
•
4. 1 Introdução
• 4.2 Circuitos virtuais
e redes de
datagramas
• 4.3 Roteador
• 4.4 IP: Internet
Protocol
– Formato do
Datagrama
– Endereçamento IPv4
– ICMP
– IPv6
• 4.5 Algoritmos de
Roteamento
– Link state
– Distance Vector
– Hierarchical routing
• 4.6 Roteamento na
Internet
– RIP
– OSPF
– BGP
• 4.7 Roteamento em
Broadcast e
multicast
Camada de rede
• Protocolos da camada
de rede estão em todo
o host, roteador
• roteador examina os
campos do cabeçalho
em todos os
datagramas IP
applicatio n transport network data link physical applicatio n transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physicalDuas funções chaves na
Camada-Rede
•
repasse:
move pacotes
da entrada de um
roteador para a saída
apropriada
•
Roteamento:
determina
a rota tomada pelos
pacotes a partir da
origem ao destino.
–
Algoritmos de
roteamento
analogia:
❒
routing:
processo de
planejamento de
viagem da origem
ao destino
❒
forwarding:
processo de passar
por um cruzamento
1 2 3 0111 value in arriving packet’s header routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 2 2 1
Roteamento e encaminhamento
Q:
Qual é o
modelo de serviço
para um “canal”
transportando datagramas do emissor ao
receptor ?
Exemplo de serviço
para datagramas
individuais:
• Entrega garantida
• Entrega garantida
com menos de 40
msec de atraso
(delay)
Exemplo de serviço
para um fluxo de
datagramas:
• Entrega em-ordem
• Guarantia de banda
minima ao fluxo
• Restrições no
espaçamento entre
datagramas
Arquitetura de rede Internet ATM ATM ATM ATM Modelo de serviço melhor esforço CBR VBR ABR UBR Banda não taxa constante taxa garantida mínimo garantido não Perda não sim sim não não Ordem não sim sim sim sim Tempo não sim sim não não Realim. de congestão não (examina perdas) não há congestão não há congestão sim não Parâmetros garantidos
• Novos serviços na Internet: Intserv, Diffserv, GMPLS,
aprovisionamento dinâmico de circuitos virtuias (dragon, oscar)
• 4. 1 Introdução
•
4.2 Circuitos virtuais
e redes de
datagramas
• 4.3 Roteador
• 4.4 IP: Internet
Protocol
– Formato do
Datagrama
– Endereçamento IPv4
– ICMP
– IPv6
• 4.5 Algoritmos de
Roteamento
– Link state
– Distance Vector
– Hierarchical routing
• 4.6 Roteamento na
Internet
– RIP
– OSPF
– BGP
• 4.7 Roteamento em
Broadcast e
multicast
Serviço orientado a conexão
e não orientado a conexão
•
Rede de datagrama provê serviço sem
conexão (connectionless)
•
Rede de circuito virtual VC provê serviço de
conexão na camada de rede
•
Analogo ao serviço da camada de transporte,
mas:
–
serviço:
host-to-host
–
Nenhuma escolha:
rede provê um ou outro
–
Implementação:
no núcleo da rede
Redes de datagramas
• Nenhuma configuração de chamada a nível de rede
• Roteadores: nenhum estado sobre as conexões fim a fim
– Nenhum conceito de “conexão” a nível de rede
• Pacotes encaminhados usando o endereço de destino do
host
– Pacotes com mesmo par origem-destino pode tomar diferentes
caminhos
application
transport
network
data link
physical
application
transport
network
data link
physical
Tabela de repasse
Destination Address Range Link Interface 11001000 00010111 00010000 00000000 through 0 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 through 1 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 through 2 11001000 00010111 00011111 11111111 otherwise 34 bilhões de
possiveis entradas
Regra de Concordância do
prefixo mais longo
Prefix Match Link Interface 11001000 00010111 00010 0 11001000 00010111 00011000 1 11001000 00010111 00011 2 otherwise 3 DA: 11001000 00010111 00011000 10101010 Exemples
DA: 11001000 00010111 00010110 10100001 Qual interface?
• 4. 1 Introdução
• 4.2 Circuitos virtuais
e redes de
datagramas
• 4.3 Roteador
•
4.4 IP: Internet
Protocol
– Formato do
Datagrama
– Endereçamento IPv4
– ICMP
– IPv6
• 4.5 Algoritmos de
Roteamento
– Link state
– Distance Vector
– Hierarchical routing
• 4.6 Roteamento na
Internet
– RIP
– OSPF
– BGP
• 4.7 Roteamento em
Broadcast e
multicast
Tabela de rotas
Entidade de rede em roteadores ou hospedeiros: Prot. de roteamento • Escolha de caminhos • RIP, OSPF, BGP Protocolo IP • Endereçamento
• Formato dos datagramas • Tratamento de pacotes
Protocolo ICMP
• Aviso de erros
• Sinalização de rotas Camada de Transporte: TCP, UDP
Camada de enlace Camada física
Camada de rede
ver length 32 bits data (tamanho variável, tipicamente um segmento TCP ou UDP) 16-bit identifier Internet checksum time to live
32 bit endereço IP de origem versão do protocolo IP tamanho do header (bytes) número máximo de saltos (decrementado em cada roteador) para fragmentação/ remontagem tamanho total do datagrama (bytes) protocolo da camada superior com dados no datagrama
head. len
type of service
classe de serviço flgs fragment
offset
proto-colo
32 bit endereço IP de destino
Opções (se houver) Ex.: marca de tempo, registro de rota, lista de roteadores a visitar Tamanho do cabeçalho TCP? • 20 bytes do TCP • 20 bytes do IP • = 40 bytes + cabeçalho da camada de aplicação
Formato do datagrama IP
Fragmentação IP
• Enlaces de rede tem MTU (max.transfer unit) – tamanho maximo do quadro. – Diferente tipos de enlaces, diferentes MTUs • Datagramas IP divididos (“fragmentados”) na rede – um datagrama torna-se vários datagramas – “re-montagem” somente no destino final – Bits do cabeçalho IP usados para identificar, ordenar os respectivos framentos
fragmentação:
in: um datagrama enorme
out: 3 datagramas menores
ID =x offset=0 fragflag =0 length =4000 ID =x offset=0 fragflag =1 length =1500 ID =x fragflag=1 offset=185 length =1500 ID =x offset=370 fragflag =0 length =1040
Um datagrama enorme vira vários datagramas menores
Exemplo
❒4000 bytes
datagrama
❒MTU = 1500
bytes
1480 bytes no campo de dados offset = 1480/8Fragmentação IP
• 4. 1 Introdução
• 4.2 Circuitos virtuais
e redes de
datagramas
• 4.3 Roteador
•
4.4 IP: Internet
Protocol
– Formato do
Datagrama
–
Endereçamento IPv4
– ICMP
– IPv6
• 4.5 Algoritmos de
Roteamento
– Link state
– Distance Vector
– Hierarchical routing
• 4.6 Roteamento na
Internet
– RIP
– OSPF
– BGP
• 4.7 Roteamento em
Broadcast e
multicast
Endereçamento IP
•
Endereço IPv4:
identificador de
32-bit por
interface
host, roteador
•
interface:
conexão
entre o
host/roteador e um
enlace físico
– roteador tipicamente
tem multiplas
interfaces
– host tipicamente tem
uma interface
– Endereços IP
associados a cada
223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1Sub-redes
•
Endereço IP:
– Parte da sub-rede ( bits
de mais alta ordem -
prefixo-netid)
– Part do host (bits de
mais baixa ordem -
hostid)
•
O que é uma
sub-rede ?
– Interfaces de
dispositivos com a
mesma parte de
sub-rede do endereço IP
– podem fisicamente
comunicar-se sem
intervenção do roteador
223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27Quantas sub-redes – subnets ?
Subredes
223.1.1.0/24 223.1.2.0/24 223.1.3.0/24Receita
• Para determinar as
subredes, destacar
cada interface de
seu host ou roteador,
criando ilhas de
redes isoladas. Cada
ilha isolada de rede é
chamada de
subrede
.
Sub-redes
Quantas sub-redes?
223.1.1.1 223.1.1.3 223.1.1.4 223.1.2.2 223.1.2.1 223.1.2.6 223.1.3.2 223.1.3.1 223.1.3.27 223.1.1.2 223.1.7.0 223.1.7.1 223.1.8.0 223.1.8.1 223.1.9.1 223.1.9.2Endereçamento IP : CIDR
CIDR:
C
lassless
I
nter
D
omain
R
outing
– Roteamento interdomínio sem classes
– Parte do endereço de subrede de tamanho arbitrário
– Formado do endereço:
a.b.c.d/x
, onde x é o número de
# bits na parte da subrede do endereço
11001000 00010111 00010000 00000000
subnet part host part200.23.16.0/23
Endereço IP: como obter?
Q:
Como um
host
consegue um endereço IP?
•
Estático pelo adm do sistema em um arquivo
– Windows: control-panel->network->configuration->tcp/
ip->properties
– UNIX: /etc/rc.config
•
DHCP:
D
ynamic
H
ost
C
onfiguration
P
rotocol:
dinamicamente obtém endereço a partir de um
servidor
Como obter endereços IP ?
Q:
Como um rede consegue endereços IP ?
A:
obtém partes alocadas do espaço de endereços
do seu provedor de serviço Internet ISP
Bloco do ISP 11001000 00010111 00010000 00000000 200.23.16.0/20 Organização 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organização 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Organização 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ….. …. …. Organização 7 11001000 00010111 00011110 00000000 200.23.30.0/23
Endereçamento Hierárquico:
agregação de rotas
“Me enviar qualquer endereço cujo prefixo é 200.23.16.0/20” 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 ISP - PoP-ES Organização 0 - IFES
Organização 7 – Hospital ... Internet
Organização 1 - UFES
ISPs- PoP-RJ “Me enviar qualquer endereço cujo prefixo é 199.31.0.0/16” 200.23.20.0/23 Organização 2 - CBM
..
.
..
.
Endereçamento hierarquico permite avisos eficientes de informação de roteamento