3 – Nível de Rede

Propaganda
Telecomunicações e Redes de Computadores
3 – Nível de Rede
Prof. Paulo Lobato Correia
IST, DEEC – Área Científica de Telecomunicações
Objectivos
Î
Enquadramento
Î
Endereçamento ao nível de rede
Î
Encaminhamento
Î
Protocolo IP
Î
Empacotamento e fragmentação
Î
Qualidade de serviço
Î
Outros protocolos de nível de rede: ICMP, IGMP
TRC – Prof. Paulo Lobato Correia
2
Modelo TCP/IP: Nível de Rede
Aplicação
HTTP Msg
Transporte
Dados
Físico
Cliente
Transporte
TCP Msg
Pacote IP
Rede
Trama
Ethernet
Aplicação
Rede
Rede
Dados
Dados
Dados
Físico
Físico
Físico
Comutador Ethernet
Router
Servidor
TRC – Prof. Paulo Lobato Correia
3
Modelo TCP/IP: Nível de Rede
Rede
Cliente
Pacote
Comutador
Ethernet
Rede
Rede
Encaminhador
Servidor
TRC – Prof. Paulo Lobato Correia
4
Modelo TCP/IP: Nível de Rede
Nível de transporte: TCP, UDP
Nível de
rede
Protocolo IP
Endereçamento
Formato dos datagramas
Operações sobre datagramas
Protocolos de
encaminhamento
RIP, OSPF, BGP
tabela de
encaminhamento
Protocolo ICMP
Relato de erros
Controlo
Nível de ligação de dados
Nível físico
TRC – Prof. Paulo Lobato Correia
5
Modelo TCP/IP: Nível de Rede
Responsável pelo encaminhamento de pacotes da origem até ao
destino, através de diversas redes interligadas por encaminhadores.
Comunicação ponto-a-ponto:
estação - encaminhador - encaminhador - … - estação
Î
Funções do nível de rede:
Endereçamento (endereço IP)
; Encaminhamento
; Empacotamento
; Fragmentação
; Qualidade de serviço
;
TRC – Prof. Paulo Lobato Correia
6
Endereçamento
Ao nível de rede cada estação deve poder ser identificada de forma a
permitir comunicação global entre quaisquer estações na Internet.
Os endereços IP devem ser únicos e universais.
Endereço IP v4 (RFC 760):
;
Constituído por 4 bytes (32 bits);
É habitual representar os endereços usando notação decimal para facilitar
leitura humana (ex.: 193.136.128.1);
;
;
As estações e os routers trabalham com os endereços na forma binária.
1001000100111… (32 bits)
193.136.128.1
(Usado por estações e routers)
(Apenas para leitura humana)
TRC – Prof. Paulo Lobato Correia
7
Espaço de Endereçamento
Espaço de endereçamento é o número total de endereços
disponíveis. Com endereços de N bits há 2N endereços possíveis;
Ao utilizar endereços de 32 bits, o espaço de endereçamento da
Internet é de 232 ou seja 4 294 967 296 de endereços.
Se não houvessem outras restrições poder-se-iam ligar mais de
4000 milhões de dispositivos na Internet.
Numeração decimal (base 10):
1992(10)
1992 = 1x1000 + 9x100 + 9x10 + 2x1
103=1000, 102=100, 101=10, 100=1
Numeração binária (base 2):
1011 0110(2)
-> 182(10)
182 = 1x128 + 0x64 + 1x32 + 1x16 + 0x8 + 1x4 + 1x2 + 0x1
27=128, 26=64, 25=32, 24=16, 23=8, 22=4, 21=2, 20=1
TRC – Prof. Paulo Lobato Correia
8
Endereços IP v4
Os endereços têm duas componentes:
;
Identificação de rede (NetID);
;
Identificação do interface de rede de uma estação (HostID);
Estações com a mesma componente de rede comunicam
directamente;
Estações com componente de rede distintas comunicam através de
encaminhadores;
Os primeiros 4 bits do endereço IP especificam se a componente
de rede tem 1, 2 ou 3 bytes de comprimento. O restante é usado
para identificação das estações.
TRC – Prof. Paulo Lobato Correia
9
Endereços IP v4
Classes de endereços:
A
0 rede
B
10
0.0.0.0 a
127.0.0.0
estação
rede
estação
C 110
rede
D 1110
Endereço multicast
estação
128.0.0.0 a
191.255.255.255
192.0.0.0 a
223.255.255.255
224.0.0.0 a
239.255.255.255
32 bits
TRC – Prof. Paulo Lobato Correia
10
Endereços IP v4
TRC – Prof. Paulo Lobato Correia
11
Endereços IP v4
Endereços começados por 127 são especiais:
Estão reservados para fazer referência ao próprio computador;
Î 127.0.0.1 – localhost
Î
Endereços com todos os bits destinados a identificar a
estação a 0 (zero) :
Representa o endereço da rede;
Î Exemplo: o endereço 193.136.128.41 pertence à a rede classe C
193.136.128.0
Î
Endereços com todos os bits destinados a identificar a
estação a 1 (um) :
Representa o endereço para difusão (broadcast);
Î Exemplo: 193.136.128.255
Î
TRC – Prof. Paulo Lobato Correia
12
Endereços IP v4
TRC – Prof. Paulo Lobato Correia
13
Endereços IP v4
TRC – Prof. Paulo Lobato Correia
14
Endereços IP v4
Î
Há endereços que são reservados mas não usados:
;
;
;
Î
Exemplo: rede necessita de 2500 endereços;
Tem atribuído um bloco de endereço de classe B (65536
endereços);
Só usa 3.8 % dos endereços disponíveis!
Para não atribuir muitos endereços em excesso, podem
resultar tabelas de encaminhamento com muitas entradas:
;
;
;
Exemplo: rede necessita de 2500 endereços;
São-lhe atribuídos 10 blocos de endereços de classe C (2540
endereços);
Usa 98.4 % dos endereços disponíveis, mas as tabelas de
encaminhamento têm que ter 10 linhas só para esta
organização.
TRC – Prof. Paulo Lobato Correia
15
Atribuição de Endereços IP
IANA
InterNIC
América
RIPE
Europa
APNIC
Ásia
Î
O controlo dos endereços IP em utilização pertence à Internet
Corporation for Assigned Names and Numbers (ICANN) que controla
a Internet Assigned Numbers Authority (IANA).
Î
A IANA distribui o espaço de endereçamento por três entidades
geograficamente distintas: Regional Internet Registries (RIRs), que
garantem que os endereços atribuídos são únicos, e que são geridos
criteriosamente (são um bem escasso!).
TRC – Prof. Paulo Lobato Correia
16
Endereços IP v6
Î
Î
Endereços IP v4 (32 bits) estarão esgotados em breve:
;
Componentes de rede e estação desperdiçam endereços;
;
Estações usam endereços mesmo se não estão ligadas à Internet;
;
Crescimento da Internet.
IP v6:
;
Nova geração do IP;
;
Endereços representam-se com 128 bits;
;
Auto-configuração de endereços;
;
Cabeçalho (header) mais eficiente e simplificado;
;
Permite expedição e comutação rápidas de pacotes;
;
Qualidade de serviço (QoS);
;
Autenticação e encriptação.
TRC – Prof. Paulo Lobato Correia
17
Endereços IP v6
Migração IPv4 - IPv6:
Não vai haver um dia em que todos os encaminhadores mudam de
IPv4 para IPv6;
;
;
Migração de IPv4 para IPv6 terá que ser gradual;
;
IPv4 e IPv6 podem coexistir;
Soluções de Migração:
Pilha dupla IPv4/IPv6: alguns encaminhadores conseguem traduzir
pacotes entre os dois formatos;
;
;
Túneis: Pacotes IPv6 transportados como dados de pacotes IPv4.
TRC – Prof. Paulo Lobato Correia
18
Endereços IP v6
Pilha dupla: Há informação no cabeçalho do datagrama IPv6
inicial que é perdida quando ele é traduzido num datagrama IPv4
IPv6
IPv6
IPv4
A
B
C
IPv6
Fluxo: X
IP fonte: A
IP dest.: F
IPv4
IP fonte: A
IP dest.: F
IPv4
IPv6
IPv6
E
F
D
IPv4
IP fonte: A
IP dest.: F
IPv6
Fluxo: ?
IP fonte: A
IP dest.: F
TRC – Prof. Paulo Lobato Correia
19
Endereços IP v6
Túnel:
IPv6
IPv6
IPv6
IPv6
A
B
E
F
IPv6
IPv6
IPv4
IPv6
IPv6
A
B
C
E
F
IPv6
Fluxo: X
IP fonte: A
IP dest.: F
IPv4
IP fonte: B
IP dest.: E
IPv6
Fluxo: X
IP fonte: A
IP dest.: F
IPv4
D
IPv4
IP fonte: B
IP dest.: E
IPv6
Fluxo: X
IP fonte: A
IP dest.: F
IPv6
Fluxo: X
IP fonte: A
IP dest.: F
TRC – Prof. Paulo Lobato Correia
20
Endereçamento
Até agora verificámos existirem 3 tipos de endereços:
;
Endereço ao nível de aplicação (ex.: www.ist.utl.pt – servidor);
Endereço ao nível de transporte (ex.: portos 52132 e 80 – cliente e
servidor, respectivamente);
;
Endereço IP ao nível de rede (ex.: 193.136.222.20 e 193.136.128.1 –
origem e destino, respectivamente);
;
O utilizador só conhece o primeiro tipo de endereço (servidor aplicação),
mas os pacotes para serem transmitidos necessitam pelo menos de
conhecer os portos e endereços IP de origem e destino.
;
O porto de destino é específico da aplicação (ex.: 80 para HTTP);
O porto de origem é atribuído temporariamente pela estação, que também
conhece o seu endereço IP;
;
O endereço IP de destino é obtido a partir do endereço do nível de
aplicação recorrendo ao DNS (Domain Name System).
;
TRC – Prof. Paulo Lobato Correia
21
Endereçamento: Exemplo
TRC – Prof. Paulo Lobato Correia
22
Endereçamento: Exemplo
Web Browser
Web Server
Pacote
Caminho
Encaminhador
Cliente Web – Utilizador (PC)
Endereço IP = 193.136.128.57
Porto usado: 51045
Host name = nyquist.ist.utl.pt
Servidor Web
Endereço IP = 193.136.222.20
Porto usado: 80
Host name = www.img.lx.pt
TRC – Prof. Paulo Lobato Correia
23
Encaminhamento
Encaminhamento: determinação de caminhos apropriados para
comunicação entre qualquer par de estações de origem e destino;
Î
Rede pode ser modelada por um grafo:
;
Î
Î
Nós e ligações;
“Comprimento” de uma ligação depende de:
;
atraso (distância, velocidade);
;
custo monetário;
;
nível de congestão;
;
taxa de erros;
5
2
A
B
3
2
1
D
C
3
1
5
F
1
E
2
Neste sentido, um bom caminho é o caminho mais curto.
TRC – Prof. Paulo Lobato Correia
24
Encaminhamento
Rede 2
Encaminhadores
Pacote
Rede 1
Caminho
Os pacotes são encaminhados através da Internet.
TRC – Prof. Paulo Lobato Correia
25
Encaminhamento
Mesmo
pacote
3º formato
de trama
Trama
Formato de trama diferente
O encaminhador retira o pacote da rede de origem e retransmite-o
na rede seguinte do caminho (funcionamento store-and-forward),
usando em cada rede diferente o formato de trama adequado.
TRC – Prof. Paulo Lobato Correia
26
Encaminhamento
Qual o melhor caminho de A para B?
TRC – Prof. Paulo Lobato Correia
27
Encaminhamento
Melhor caminho depende também do tipo de serviço.
Por exemplo, atraso mínimo possível vs. fiabilidade.
TRC – Prof. Paulo Lobato Correia
28
Tabelas de Encaminhamento
Olhando para o encaminhador R1 do exemplo anterior, este tem 3
interfaces de rede (ligações).
Pacotes provenientes da interface 1, com destino à estação B, são
enviados para a interface 2.
TRC – Prof. Paulo Lobato Correia
29
Tabelas de Encaminhamento
Cada encaminhador tem as suas tabelas de encaminhamento.
TRC – Prof. Paulo Lobato Correia
30
Tabelas de Encaminhamento
Linha
Rede/
Subrede
Máscara (/Prefixo)
Métrica
Próx.
Interface
(Custo)
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
De facto, as tabelas de encaminhamento contêm mais informação.
Geralmente não contêm uma entrada para cada estação: o seu tamanho
seria enorme.
Basta conter o endereço da rede de destino.
Essa rede faz a mensagem chegar à estação de destino (ex.: por difusão).
TRC – Prof. Paulo Lobato Correia
31
Tabelas de Encaminhamento: Máscaras
1. Mascaramento
Informação
1 1 0 0
Máscara
1 0 1 0
Resultado
1 0 0 0
2. Valores Habituais
Binário
Decimal
00000000
0
11111111
255
3. Exemplo
Endereço IP
Máscara
Resultado
4. Exemplo 2
Endereço IP
Máscara
Resultado
172. 30. 22. 7
255. 0. 0. 0
172. 0. 0. 0
172. 30. 22. 7
255. 255. 0. 0
172. 30. 0. 0
Para verificar a que rede pertencem um endereço aplica-se uma
máscara binária (“AND” lógico), para remover a componente do
endereço IP que identifica a estação.
TRC – Prof. Paulo Lobato Correia
32
Tabelas de Encaminhamento: Máscaras
Exemplo de aplicação de uma máscara binária ao endereço de
classe C: 234.136.25.50 para identificar a rede e a estação.
TRC – Prof. Paulo Lobato Correia
33
Tabelas de Encaminhamento
Exemplo de
configuração de
endereço IP
em ambiente
Windows.
TRC – Prof. Paulo Lobato Correia
34
Tabelas de Encaminhamento
Exemplo: Endereço IP de destino = 172.30.33.6
NextHop
Interface
Router
Row
Network/
Subnet
Mask (/Prefix)*
Metric
(Cost)
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Encaminhador testa 1ª linha da tabela:
Endereço IP = 172.30.33.6
Máscara = 255.255.0.0
Resultado = 172.30.0.0
Resultado é diferente do valor 128.171.0.0 do campo Network/Subnet
TRC – Prof. Paulo Lobato Correia
35
Tabelas de Encaminhamento
Exemplo: Endereço IP de destino = 172.30.33.6
NextHop
Interface
Router
Row
Network/
Subnet
Mask (/Prefix)*
Metric
(Cost)
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Encaminhador testa 2ª linha da tabela:
Endereço IP = 172.30.33.6
Máscara = 255.255.255.0
Resultado = 172.30.33.0
Resultado é igual ao valor 172.30.33.0 do campo Network/Subnet
TRC – Prof. Paulo Lobato Correia
36
Encaminhamento
Row
Network/
Subnet
Mask (/Prefix)*
Metric
(Cost)
15
0.0.0.0
0.0.0.0 (/0)
5
NextHop
Interface
Router
3
H
Se a máscara for 0.0.0.0 há sempre emparelhamento (o resultado
é sempre 0.0.0.0):
;
Desta forma é possível definir o encaminhamento por omissão
(default router), que é seguido em caso de nenhuma outra linha
ser escolhida.
TRC – Prof. Paulo Lobato Correia
37
Encaminhamento
Para cada pacote:
Î
Primeiro, para cada linha da tabela de encaminhamento,
aplicar a máscara e procurar emparelhamentos:
;
Analisar endereço IP de destino do pacote;
;
Aplicar a máscara da linha da tabela de encaminhamento;
;
Comparar resultado do mascaramento com o valor do campo
Network/Subnet dessa linha;
;
Se a comparação for positiva:
•
Adicionar esta linha à lista de linhas candidatas para o
encaminhamento deste pacote;
•
Senão, ignorar esta linha.
TRC – Prof. Paulo Lobato Correia
38
Encaminhamento
Î
Segundo, procurar o melhor emparelhamento:
;
;
;
Se apenas existir um, esse é o melhor;
Se for o emparelhamento mais longo, esse é o melhor;
Se houver vários emparelhamentos com o maior
comprimento, seleccionar a linha com a melhor métrica:
•
•
Î
Pode ser o menor valor (ex.: custo);
Pode ser o maior valor (ex.: velocidade);
Terceiro, enviar o pacote para uma interface de rede:
;
;
Enviar o pacote pela interface da linha escolhida, para a rede
ou subrede correspondente;
Nessa rede ou subrede, enviar o pacote para:
•
•
O próximo encaminhador (next-hop-router), ou:
Para a estação de destino se o valor do campo next-hop router
contiver o valor “local”.
TRC – Prof. Paulo Lobato Correia
39
Encaminhamento
Resumo:
Î
A decisão de encaminhamento exige que seja testada cada
linha da tabela de encaminhamento, para cada pacote, de
forma a escolher o melhor caminho;
;
Î
Cada pacote é processado separadamente;
;
Î
Operação demorada;
Encaminhador tem que ter grande capacidade de
processamento;
Com rotas alternativas podem existir vários candidatos para
encaminhar o pacote;
;
Escolha depende do valor da métrica de cada linha.
TRC – Prof. Paulo Lobato Correia
40
Actualização das Tabelas de
Encaminhamento
Como é feita a actualização das tabelas de encaminhamento?
Î
Encaminhadores trocam informação uns com os outros.
Transmitem os campos de Network/Subnet juntamente com os
valores das métricas associadas, para os caminhos conhecidos.
Î
Estas trocas seguem as regras definidas pelos algoritmos de
encaminhamento.
Î
As tabelas de encaminhamento determinam apenas o próximo
salto do caminho. Estas tabelas devem ser consistentes para o
encaminhamento ter sucesso.
TRC – Prof. Paulo Lobato Correia
41
Actualização das Tabelas de
Encaminhamento
Encaminhador
Encaminhador
Informação de
tabelas de
encaminhamento
Encaminhador
Encaminhador
Encaminhador
Informação de
tabelas de
encaminhamento
TRC – Prof. Paulo Lobato Correia
42
Encaminhamento na Internet
A Internet é constituída por vários sistemas autónomos
(Autonomous System - AS) interligados:
TRC – Prof. Paulo Lobato Correia
43
Encaminhamento Hierárquico
O encaminhamento na Internet é hierárquico:
Î
Primeiro é feita a entrega ao sistema autónomo (AS);
Î
Depois é feita a entrega à rede de destino;
Î
Finalmente é feita a entrega à estação.
O encaminhamento hierárquico permite reduzir o tamanho das
tabelas de encaminhamento
TRC – Prof. Paulo Lobato Correia
44
Algoritmos de Encaminhamento Dinâmico
Î
Actualmente existem dois tipos de algoritmos para
encaminhamento:
;
Vector distância (Distance Vector) – usa o menor comprimento
possível da ligação para decidir o encaminhamento de um pacote;
;
Estado da ligação (Link State) – usa vários tipos de informação,
tomando em consideração o estado de congestão e tempo de
resposta, para decidir o encaminhamento de um pacote;
Os algoritmos de estado da ligação são hoje em dia mais
populares que os de vector distância.
TRC – Prof. Paulo Lobato Correia
45
Algoritmo de Dijkstra
Um dos algoritmos vector distância mais usados para escolha
dos caminhos “mais curtos” é o algoritmo de Dijkstra.
Associa a cada ligação um custo dependente de: capacidade
da ligação, atraso, custo monetário, erros, ...
Algoritmo de Dijkstra:
Determina o caminho mais curto de uma estação a todas as
outras;
Î
5
Î
É um algoritmo iterativo;
2
A
B
2
1
D
3
C
3
1
5
F
1
E
2
TRC – Prof. Paulo Lobato Correia
46
Algoritmo de Dijkstra: exemplo
Iteração Pendentes d[B],p[B]
2,A
BCDEF
1
2,A
BCEF
2
2,A
BCF
3
CF
4
F
5
6
d[C],p[C]
5,A
4,D
3,E
3,E
d[E],p[E]
infinito
2,D
d[D],p[D]
1,A
d[F],p[F]
infinito
infinito
4,E
4,E
4,E
5
Nó de origem: A
d[x] – distância do nó A ao nó x
p[x] – predecessor no caminho mais
curto até x
2
A
B
2
1
D
3
C
3
1
5
F
1
E
2
TRC – Prof. Paulo Lobato Correia
47
Encaminhamento Interior e Exterior
Î
Î
Encaminhamento num AS: Interior Gateway Protocols – IGP;
Encaminhamento entre ASs: Exterior Gateway Protocol – EGP.
TRC – Prof. Paulo Lobato Correia
48
Algoritmos de Encaminhamento Interior
Existem três protocolos de encaminhamento dinâmico geralmente
usados para encaminhamento interior (IGP) a um AS:
;
Routing Information Protocol (RIP) – É usado pelo gestor de rede para
construir tabelas de encaminhamento. Usa algoritmos vector distância. É
usado na Internet, sobretudo em redes simples, difundindo tabelas de
encaminhamento com periodicidade de cerca de um minuto;
;
Open Shortest Path First (OSPF) – Usa algoritmos estado da ligação,
pelo que é mais usado que RIP. Coloca uma menor sobrecarga na rede, pois
apenas troca actualizações e não tabelas completas;
;
Enhanced Interior Gateway Routing Protocol (EIGRP) – Usa
algoritmos estado da ligação, tal como OSPF. Guarda informação sobre
capacidade de transmissão, atraso, fiabilidade e carga de cada ligação. O
protocolo também guarda as tabelas de encaminhamento dos seus vizinhos,
informação que usa na decisão de encaminhamento.
TRC – Prof. Paulo Lobato Correia
49
Routing Information Protocol (RIP)
Î
Î
Î
Î
Vector distância
Comprimento das ligações é considerado unitário
Diâmetro da rede inferior a 16 (número máximo de saltos = 15)
Cada encaminhador envia periodicamente o seu vector
de distâncias aos vizinhos
;
Î
Î
Encaminhadores não guardam informação sobre os vectores
distância dos vizinhos
Ausência prolongada da recepção de vectores distância
indica falha na ligação
Dados UDP:
Cabeçalho
Opera sobre UDP !
(porto 520)
Î
Mensagem RIP
UDP
Processo que executa RIP é o routed
TRC – Prof. Paulo Lobato Correia
50
Routing Information Protocol (RIP)
Î
“Vector Distância”: actualização das tabelas
;
R1 anuncia-se como encaminhador RIP;
;
R2 actualiza a sua tabela e passa a informação aos vizinhos
d(R1)=1
R1
;
R2
R3
R3 sabe que distância a R2 é 1 pelo que distância a R1 será 2;
R1
R2
R3
d(R2)=1
d(R1)=2
;
Convergência é lenta (pode originar perda de pacotes).
TRC – Prof. Paulo Lobato Correia
51
Open Shortest Path First (OSPF)
Î
Î
Î
Î
Î
Î
Î
Estado da ligação
A cada ligação podem estar associadas várias métricas
Múltiplos caminhos do mesmo comprimento entre pares
origem destino
Segurança
Suporte de hierarquias dentro de uma AS (designated routers)
Suporte de multicast
Opera sobre IP
Dados IP
Cabeçalho
Mensagem OSPF
Î
IP
Processo que executa OSPF é o gated
TRC – Prof. Paulo Lobato Correia
52
Open Shortest Path First (OSPF)
Î
“Estado da Ligação”: actualização das tabelas
;
;
Quando um encaminhador detecta alteração numa ligação informa
o designated router, que notifica todos os encaminhadores dessa
área da alteração (não envia tabelas completas);
Convergência é rápida.
Área
Designated
Router
2
2
1
2
2
TRC – Prof. Paulo Lobato Correia
53
RIP ou OSPF
A escolha é de quem gere um sistema autónomo;
Î RIP é adequado para redes de pequena dimensão:
;
Î
Fácil de implementar; 15 saltos não é problema; difusão de tabelas
(inclusive para as estações, interrompendo-as) não é demasiado
importante;
OSPF é escalável:
;
;
Funciona com redes de qualquer dimensão;
Complexidade de gestão é compensada pela maior eficiência em
redes de grande dimensão.
TRC – Prof. Paulo Lobato Correia
54
Algoritmos de Encaminhamento Exterior: BGP
Border Gateway Protocol (BGP):
Î Vector caminho:
;
Î
Política de escolha de caminhos:
;
;
Î
Cada encaminhador fronteira anuncia, para cada prefixo IP de
destino, todo o caminho de ASs até chegar a esse destino;
Cada AS pode decidir não anunciar os seus caminhos a algumas
ASs vizinhas;
Cada AS atribui um nível de preferência aos caminhos anunciados
pelos vizinhos;
Opera sobre TCP.
Sistema
Autónomo
BGP
Sistema
Autónomo
TRC – Prof. Paulo Lobato Correia
55
Endereçamento Dinâmico
Quando uma estação se desloca (ex.: computador ligado noutra
rede), tem de se actualizar o seu endereço.
Solução: usar endereçamento dinâmico.
Existe um servidor responsável por atribuir endereço IP às estações
cada vez que se ligam à rede;
Î
Î
Existem dois protocolos geralmente usados para este fim:
;
Bootstrap Protocol (bootp) para redes dial-up (1985);
;
Dynamic Host Control Protocol (DHCP) para redes não dial-up (1993);
Os servidores Bootp ou DHCP podem ser configurados para atribuir
sempre o mesmo endereço a uma estação sempre que se liga à rede, ou
atribuir-lhe o próximo endereço disponível.
Î
TRC – Prof. Paulo Lobato Correia
56
Endereçamento Dinâmico: Exemplo DHCP
TRC – Prof. Paulo Lobato Correia
57
WINS
Î
WINS (Windows Internet Naming Service) gere a
associação de nomes (e localizações de estações) com os
endereços IP, de forma automática em redes Windows.
Î
WINS gera tabela com mapeamento entre nome da
estação e endereço IP; quando um computador se desloca
para outra localização a informação correspondente é
automaticamente actualizada na tabela WINS.
Î
O WINS complementa o funcionamento do servidor DHCP.
TRC – Prof. Paulo Lobato Correia
58
Circuitos Virtuais e Datagramas
Um pacote pode ser encaminhado de duas formas:
; Circuitos Virtuais:
•
•
•
;
É estabelecido um circuito (virtual) entre emissor e destinatário;
A transferência de dados é feita em modo store-and-forward;
É guardada informação de estado do circuito virtual em todos
os encaminhadores;
Datagrama
•
•
•
Cada pacote é tratado separadamente, seguindo o seu próprio
caminho ao longo da rede (não é estabelecido circuito);
Serviço na base do melhor esforço (best-effort);
Encaminhadores não mantêm informação de estado relativa ao
fluxo de informação.
TRC – Prof. Paulo Lobato Correia
59
Protocolo IP
Cliente IP
Servidor IP
Pacote IP: Datagrama
Connectionless
Pacotes são enviados isoladamente
Não fiável
Não há correcção de erros
Em caso de detecção de erro: descartado
(O IPv6 nem sequer verifica se há erros)
Deixa correcção de erros para o nível de transporte
Reduz custo dos encaminhadores
TRC – Prof. Paulo Lobato Correia
60
Protocolo IP v4
32 bits
ver.
comp.
cab.
TOS
identificador
Pacote IP v4:
comprimento total
offset
sinal.
Î
TOS: Tipo de serviço;
Î
Identificador:
;
TTL
protocolo
checksum
Î
Fragmentação e
reconstrução de datagramas;
ÎTTL
opções (comprimento variável)
dados da camada de transporte
(comprimento variável)
Sinalizadores e offset:
;
endereço IP fonte
endereço IP destino
Número de sequência;
(Time to Live):
Decrementado em cada
encaminhador (máx=255);
;
Î
Protocolo:
Do nível de transporte: TCP,
UDP, ICMP, IGMP, RVSP, ...
;
TRC – Prof. Paulo Lobato Correia
61
IPv4: Tipo de Serviço
Î
Î
Permite determinar características de cada datagrama individual;
Sub-campo de prioridade (3 bits):
;
;
Î
Indica grau de urgência ou prioridade;
Encaminhadores usam este campo para determinar ordem nas filas de
espera e descarte de pacotes para controlo de congestão;
Sub-campo de tipo de serviço (4 bits):
;
;
;
Dá indicações sobre a selecção do próximo salto, baseado no tipo de
serviço;
Pode ser útil na escolha do tipo de rede a usar, para suportar a QoS
pretendida;
Juntamente com a prioridade condiciona a gestão das filas de espera nos
encaminhadores.
0
1
Prioridade
2
3
4
5
6
Tipo de Serviço
7
0
TRC – Prof. Paulo Lobato Correia
62
Protocolo IP v6
32 bits
ver.
classe
tráfego
comprimento
rótulo de fluxo
próximo lim. saltos
cab.
Cabeçalho IP v6:
Î
Classe de tráfego:
;
Î
Rótulo de fluxo:
;
endereço IP fonte
Î
Î
QoS
Comprimento:
;
endereço IP destino
Prioridades
Dos dados que se seguem
Próximo cabeçalho:
;
Chave de desmultiplexagem
TRC – Prof. Paulo Lobato Correia
63
Empacotamento e Fragmentação
A mensagem recebida do nível de transporte é organizada em
pacotes de menor dimensão, dependendo do valor MTU (Maximum
Transport Unit) de cada rede.
Os pacotes contêm uma porção da mensagem do nível de transporte
à qual é adicionado o cabeçalho do nível de rede.
Dados
Dados
fracção mensagem
nível transporte
H
Dados
T-PDU
H
Dados
H
cabeçalho
nível rede
R-PDU
TRC – Prof. Paulo Lobato Correia
64
Fragmentação e reconstrução
Cada rede tem o seu valor de MTU;
Estratégia:
;
;
;
;
;
;
Inicio do cabeçalho
Ident= x
0
Offset= 0
Resto do cabeçalho
Fragmentar quando necessário;
Tentar evitar fragmentação na estação de origem;
É possível refragmentar;
Cada fragmento compõe um datagrama;
Reconstrução só no destino;
Offset indica número do primeiro byte do
fragmento, em múltiplos de 8 bytes.
1400 bytes dados
Inicio do cabeçalho
Ident= x
1
Offset= 0
Resto do cabeçalho
512 bytes dados
Inicio do cabeçalho
H1
R1
R2
R3
H8
Ident= x
1 Offset= 512
Resto do cabeçalho
512 bytes dados
Inicio do cabeçalho
ETH IP (1400)
FDDI IP (1400)
PPP IP (512)
ETH IP (512)
PPP IP (512)
ETH IP (512)
PPP IP (376)
ETH IP (376)
Ident= x
0 Offset= 1024
Resto do cabeçalho
376 bytes dados
TRC – Prof. Paulo Lobato Correia
65
Qualidade de Serviço
A noção de qualidade de serviço (Quality of Service – QoS), está
relacionada com a possibilidade de medir, melhorar e até certo
ponto garantir à partida a qualidade da transmissão (ritmo, taxa de
erros, largura de banda, atraso, variação do atraso - jitter).
Encaminhamento com QoS:
Î É possível usar encaminhamento dinâmico, atribuindo prioridades
diferentes a diferentes serviços.
Categorias de tráfego:
Î Tráfego sem requisitos de tempo real (ex.: FTP, e-mail):
;
Î
A prioridade é a correcção dos dados, e não a constância de atraso;
Tráfego com requisitos de tempo real (ex.: videoconferência):
;
A prioridade é a constância do atraso, e alguma garantia de largura
de banda, tolerando-se algum nível de erros.
TRC – Prof. Paulo Lobato Correia
66
Qualidade de Serviço na Internet
Î
Serviço best-effort:
;
Î
Integrated services (IntServ)
;
Î
A Internet trata todos os pacotes da mesma forma;
IntServ consiste num conjunto de mecanismos para permitir aos
utilizadores requerer um dado tipo de QoS para um fluxo de dados.
Differentiated Services (DiffServ)
;
DiffServ usa o campo TOS (type of service) presente nos
cabeçalhos IPv4 para indicar o tipo de QoS requerido.
TRC – Prof. Paulo Lobato Correia
67
Integrated Services – IntServ
A implementação de IntServ requer alterações na estrutura da rede:
Î Os encaminhadores necessitam de implementar funcionalidades
adicionais para poder suportar serviço com requisitos de QoS;
Î Há duas alternativas que têm recebido grande suporte:
;
Integrated Services Architecture (ISA) – Suporta QoS sobre redes IP.
Inclui:
•
•
•
;
Controlo de admissão: Um novo fluxo necessita de uma reserva para QoS;
Encaminhamento: considera outros parâmetros além do atraso;
Filas de espera: São geridas tendo em conta os diferentes tipos de
requisitos; pacotes podem ser descartados para controlar congestão.
Resource ReSerVation Protocol (RSVP) – Evita congestão através da
reserva de recursos:
•
•
•
São os receptores que iniciam o processo de reserva de recursos;
Pode ser usado em transmissões unicast ou multicast (sendo estas mais
complexas);
Pacotes podem ser descartados para controlar congestão.
TRC – Prof. Paulo Lobato Correia
68
Differentiated Services – DiffServ
Objectivo: fornecer QoS de forma simples de implementar.
Î
Tráfego na Internet é dividido em grupos com diferentes
requisitos de QoS, usando type of service em IPv4, ou traffic
class em IPv6, sendo todo o tráfego de cada grupo tratado de
igual forma;
Î
É gerido com base em service level agreements (SLA), entre
fornecedor de serviços Internet e cliente, não sendo necessário
alterar aplicações;
Î
É implementado nos encaminhadores, que processam os
pacotes de acordo com o grupo a que pertencem, não sendo
necessário guardar informação sobre estado dos fluxos de
pacotes.
TRC – Prof. Paulo Lobato Correia
69
Outros Protocolos de Nível de Rede:
Internet Control Message Protocol (ICMP)
ICMP (RFC 792):
Î
Î
Î
Utilizado para propagação de informação de controlo:
;
Erros: destino não existe, porto não existe, TTL (time-to-live) chegou a
0, reconstrução do datagrama falhou, fragmentação falhou;
;
Pedido/resposta;
Ping:
;
ICMP echo request;
;
ICMP echo reply;
Mensagens ICMP são transportadas em datagramas IP:
;
Tipo e código;
;
8 primeiros bytes do datagrama que causou o erro.
TRC – Prof. Paulo Lobato Correia
70
Internet Control Message Protocol (ICMP)
Encaminhador
“Host Unreachable”
Mensagem de erro
Mensagem ICMP Cabeçalho IP
“Echo
Reply”
“Echo”
TRC – Prof. Paulo Lobato Correia
71
Internet Control Message Protocol (ICMP)
TRC – Prof. Paulo Lobato Correia
72
Internet Group Management Protocol (IGMP)
Multicast: Todos os destinos de um grupo multicast partilham o
mesmo endereço IP (classe D).
Î
Internet Group Management Protocol (RFC 1112):
;
Opera entre uma estação e o encaminhador a que a estação está
directamente ligada;
;
Encaminhador pretende saber para cada interface quais os grupos
multicast que têm membros ligados a essa interface;
;
Encaminhador convida estações a indicarem os grupos multicast a
que querem pertencer.
TRC – Prof. Paulo Lobato Correia
73
Download