208
R&C+R&I 1 / ISTEC – 14/15
5.12 – Protocolos de Routing
Sistema Autónomo
Sistema Autónomo
Sistemas Autónomos (SA):
• Conjunto de redes com controlo e protocolos
de routing específicos e comuns: IGP
(Interior Gateway Protocols)
• Routers internos apenas contêm referências a
outros routers/sub-redes de SA
• Do exterior é visto como uma entidade única
• Facilitar gestão de informação de routing dos
milhões de sistemas da internet
* Exemplo: empresa ou ISP
IGP
IGP
EGP
IGP (Interior Gateway Protocols):
• Protocolo entre routers internos de SA
EGP (Exterior Gateway Protocol):
• Protocolo entre routers nas fronteiras
de diferentes SAs
•Tabelas de routers contêm referências a SAs
209
R&C+R&I 1 / ISTEC – 14/15
5.12 – Protocolos de Routing
Protocolos de Routing:
* RIP - Routing Information Protocol (RFC 1058):
* Utilizado no interior de redes autónomas: IGP (Interior Gateway Protocol)
* Actualização dinâmica de tabelas de routing
* Troca de mensagens entre routers
* Transmitidas em broadcast para todos os restantes routers
* Informação de tabelas de routing
* Periodicamente (aprox. 30 seg)
* Utiliza algoritmo “Distance-Vector”, escolha caminho/destino c base:
* Menor distancia - nº de ligações entre routers (“hops”)
* Menor custo - preferência de administrador da rede
* BGP - Border Gateway Protocol (RFC 1771):
* Utilizado na fronteira entre redes diferentes e autónomas: EGP
* Utiliza algoritmo “Path-Vector” : especifica rotas para outras redes com
base em caminhos definidos e nº de redes atravessadas
External GW Protocol
210
R&C+R&I 1 / ISTEC – 14/15
* OSPF - Open Shortest Path First (RFC 1247):
* Protocolo IGP +recente & +desempenho que RIP
* Utiliza algoritmo “Link-State” - informação + completa :
* Menor distancia - nº de ligações entre routers (“hops”)
* Maior velocidade das ligações
* Menor atraso - congestionamento em routers
* Menor custo - preferência de administrador da rede
* Actualização dinâmica de tabelas de routing - diferenças para RIP
* Cada router executa algoritmo (Dijkstra) para determinar
melhor caminho com base em tabela Link-State Database com
topologia e estado/métrica de caminhos da rede
* Apenas transmite alterações de topologias de rede
* Apenas existe troca de informação entre routers quando
existem alterações nas respectivas tabelas
+ Eficiente / - Pacotes de Controlo
+ Rápida convergência de tabelas de routers
5.12 – Protocolos de Routing
211
R&C+R&I 1 / ISTEC – 14/15
5.12 – Protocolos de Routing
10
20
50
A
B
C
D E
F
25
25
35
30
10
15
* Funcionamento de OSPF:
1.Todos os routers apresentam-se aos vizinhos e ficam a conhecer a
métrica associada a cada ligação direta a routers vizinhos
2.Cada router comunica o conteúdo da tabela 1) aos restantes routers
todos os routers conseguem construir base de dados com a topologia
da rede + caminhos/custos possíveis (link state database) :
Tabela Router A
Vizinho Métrica
B 10
C 50
D 25
Link State Data Base
A B C D E F
B - 10 A - 10 A - 50 A - 25 C - 30 C - 35
C - 50 D - 20 D - 15 B - 20 D - 25 E - 10
D - 25 E - 30 C - 15 F - 10
F - 35 E - 25
212
R&C+R&I 1 / ISTEC – 14/15
* Funcionamento de OSPF:
3. Executado algoritmo para cálculo de caminho “ótimo” para
qualquer outro nó da rede (Dijkstra)
4. Exemplo de alteração: ligação A-D ficar temporariamente
desactivada recalcular estrutura de caminhos “ótimos”
(alterações a bold)
5.12 – Protocolos de Routing
10
A
B
C
D E
F
25
25
35
15
Melhores caminhos de Router A para restantes routers da rede:
10
A
B
C
D E
F
20
25
35
50
X
Caminhos
Ótimos Router A
Vizinho Métrica
B 10
C 40->50
D 25->30 (via B)
Caminhos
Ótimos Router A
Vizinho Métrica
B 10
C 40 (via D)
D 25
213
R&C+R&I 1 / ISTEC – 14/15
* Exemplo de Routing (RIP)
5.13 – Routing
Metrica - nº de retransmissões / custo
2 Caminhos para mesmo destino
Escolher o de menor Metrica
192.168.2.0
192.168.0.0
E1=1
192.168.0.5
Router2
Programação de Router2 (Gateway Address)
Rede Destino Mascara Próximo Router Interface Metrica
192.168.0.0 255.255.255.0 Ethernet2=E2 1
192.168.1.0 255.255.255.0 Tokenring2=T2 1
192.168.2.0 255.255.255.0 192.168.0.5 Ethernet2=E2 2
0.0.0.0 0.0.0.0 192.168.1.5 Tokenring2=T2 2
INTERNET
Router3
192.168.1.0
E2=
192.168.0.1
T3=
192.168.1.5
T2=
192.168.1.1
T1=
192.168.2.3
Router1
Router recebe pacote:
Selecciona entrada correspondente a endereço de (sub)Rede Destino
1) Se encontrar entrada encaminha pacote para Interface
de saída correspondente, que liga a Próximo Router
2) Se não encontrar entrada utilizar entrada 0.0.0.0
214
R&C+R&I 1 / ISTEC – 14/15
* Exemplo de Routing
5.13 – Routing
Metrica - nº de retransmissões / custo
2 Caminhos para mesmo destino
Escolher o de menor Metrica
192.168.2.0
192.168.0.0
E1=
192.168.0.5
Programação de Router1 (Gateway Address)
Rede Destino Mascara Próximo Router Interface Metrica
192.168.0.0 255.255.255.0 E1 1
192.168.1.0 255.255.255.0 192.168.0.1 E1 2
192.168.2.0 255.255.255.0 T1 1
0.0.0.0 0.0.0.0 192.168.0.1 E1 3
INTERNET
Router3
192.168.1.0
E1
T3=
192.168.1.5
T1=
192.168.2.3
Router2
E2=
192.168.0.1
Router1
T2=
192.168.1.1
Router recebe pacote:
Selecciona entrada correspondente a endereço de (sub)Rede Destino
1) Se encontrar entrada encaminha pacote para Interface
de saída correspondente, que liga a Próximo Router
2) Se não encontrar entrada utilizar entrada 0.0.0.0
215
R&C+R&I 1 / ISTEC – 14/15
* Exemplo de Routing
Metrica - nº de retransmissões / custo
2 Caminhos para mesmo destino
Escolher o de menor Metrica
5.13 – Routing
192.168.2.0
192.168.0.0
Router1
Router2
Programação de Router3 (Gateway Address)
Rede Destino Mascara Próximo Router Interface Metrica
192.168.0.0 255.255.255.0 192.168.1.1 T3 2
192.168.1.0 255.255.255.0 T3 1
192.168.2.0 255.255.255.0 192.168.1.1 T3 3
0.0.0.0 0.0.0.0 E3 1
INTERNET
192.168.1.0
E3
T3=
192.168.1.5
T2=
192.168.1.1
Router recebe pacote:
Selecciona entrada correspondente a endereço de (sub)Rede Destino
1) Se encontrar entrada encaminha pacote para Interface
de saída correspondente, que liga a Próximo Router
2) Se não encontrar entrada utilizar entrada 0.0.0.0
216
R&C+R&I 1 / ISTEC – 14/15
Protocolos “auxiliares” de IP
* Funcionam no nível 3 (como IP)
* ICMP (Internet Control Message Protocol):
* Protocolo de controlo e testes
* Gestão da rede
* Teste de acessibilidade de destinos (redes ou terminais)
* Transporte de alterações de tabelas de routing
* Criação de estatísticas
* Utiliza IP para envio de mensagens
* Exemplo, aplicação ping:
* Utilizada para testar conectividade com um dado destino
* Originador ao invocar ping envia mensagem ICMP Echo
Request para terminal destino via rede(s) de comunicação
* Destinatário, se operacional e se receber Echo Request,
responde com mensagem ICMP Echo Reply (porto 7)
5.14 – Protocolos “auxiliares” de IP/Gestão: ICMP
Header IP Data IP(mensagem ICMP)
217
R&C+R&I 1 / ISTEC – 14/15
Protocolo “auxiliares” de IP
* Protocolo ARP (Address Resolution Protocol) - RFC 826:
* Utilizado para obter endereço físico (nível 2/MAC) a partir de end. IP
* Ex. converter IP (32 bits) em Ethernet (48 bits)
192.168.0.5 00-80-C8-8A-6F-42
• Funcionamento de protocolo ARP:
1. Terminal que necessita de saber endereço nível 2 de um outro
terminal, com quer comunicar, envia mensagem ARP contendo o IP
desse terminal ,a todos terminais da rede
2. Apenas terminal correspondente a esse IP responde a mensagem
anterior com mensagem contendo o seu endereço nível 2
3. Cache ARP: Objetivo só ser necessário resolver 1x endereço N2
Exemplo: cada router de uma LAN mantém uma tabela com a
associação endereços IP/MAC e só efetua pedido 1) caso a
informação de 1 endereço ainda não conste nessa tabela
* Protocolo RARP (Reverse ARP) faz procedimento inverso
5.15 – Protocolos “auxiliares” de IP/Gestão: ARP
218
R&C+R&I 1 / ISTEC – 14/15
5.16 – Protocolos “auxiliares” de IP/QoS: MPLS
* MPLS (MultiProtocol Label Switching) - RFC 3031:
* Objetivo: QoS em redes IP
* Gestão de diferentes tipos de fluxos de tráfego/aplicações
* Definidos por FEC (Forward Equivalence Class) QoS
* FEC definido c base em: combinações de endereços IP, portos,
protocolos de aplicação
* Mapea cabeçalho IP em cabeçalho mais simples de comprimento fixo:
* Routing mais simples e rápido do que IP
* IP necessita de consultar tabelas de routing
* Labels: campo de cabeçalho que define caminho c base em FEC
* Corresponde a endereço de encaminhamento
* Routing com base em label
Header MPLS Header IP Data IP
Pacote IP
219
R&C+R&I 1 / ISTEC – 14/15
5.16 – Protocolos “auxiliares” de IP/QoS: MPLS
* MPLS (MultiProtocol Label Switching) - RFC 3031:
* Independente de protocolos de N2, ex. Frame Relay, ATM, Ethernet
* Dois tipos de routers:
* LER (Label Edge Router): routers na fronteira da rede MPLS
* Interface c redes IP
* Gestão de atribuição de Labels a pacotes em função de FEC
* Maior complexidade/”inteligência“ do que LSR
* LSR (Label Switching Router): routers no interior da rede MPLS
* Encaminha pacotes c base em Labels => + rápido de que IP
* Cada router mapea e atualiza Label c identificador a usar em
cada troço
* Orientado à Ligação:
Entrada (LER)
Router A
LSR
Router B
Saída (LER)
Router C
Rede
IP
Destino
Rede
IP
Origem
1) Pedido de
Label pra
Rede Destino
1) Pedido de
Label pra
Rede Destino
2) Resposta c
Label pra
mapear end. IP
2) Resposta c
Label pra
mapear end. IP
220
R&C+R&I 1 / ISTEC – 14/15
* Cabeçalho MPLS:
* Label: corresponde a endereço de pacote
* Define percurso pré-estabelecido para pacotes da mesma aplicação
* Baseado em FEC
* Exp(erimental): define prioridade/QoS de pacote para processamento na
rede e garantir interoperabilidade com outros protocolos (ex. Diffserv)
* S(tack): possibilidade de usar multiplos-cabeçalhos encapsuladas (VPN)
* Apenas processados por routers LERs (fronteira da rede MPLS)
* Se=1 Cabeçalho corrente é último (bottom of stack)
* TTL: Tempo de vida
5.16 – Protocolos “auxiliares” de IP/QoS: MPLS
Label Exp S TTL
20 bits 8 bits
3 1
Cabeçalho
MPLS
Pacote IP
32 bits
221
R&C+R&I 1 / ISTEC – 14/15
5.17 - Protocolos “auxiliares” de IP/QoS: Serviços Diferenciados
(Differentiated Services)
Diferença para MPLS: uso de cabeçalho IP
Objetivos (semelhantes a MPLS):
* Classificar e diferenciar os pacotes IP em função de requisitos de QoS
* Manter a arquitetura simples no interior da rede (core)
* Maior complexidade/inteligência na periferia da rede (edge)
* Apenas disponibilizar diferenciação de serviços dentro de domínio de
rede:
• Conseguir diferenciação de tráfego (possibilitar diferenciação de $$$
para aplicações e clientes mais prioritárias)
H
H
H
H
H
edge
router
core
router
H host
222
R&C+R&I 1 / ISTEC – 14/15
5.17 - Protocolos “auxiliares” de IP/QoS: Diffserv
Edge router:
* Classifica e marca os pacotes, em função dos requisitos de QoS
* Modelar o perfil de ritmo de pacotes, em função de características de
tráfego da aplicação
Core router:
* Armazenamento e escalonamento de transmissão de pacotes com
base na marcação feita nos edge routers
* Manter um Per-Hops Behavior (PHB): manter o perfil de tráfego
definido nos edge routers (ex. ritmo) ao longo dos saltos (hops) de
transmissão de pacotes entre cada router
* Não é necessário manter informação de estado de ligações
PHB /data
edge core
mark: /data
223
R&C+R&I 1 / ISTEC – 14/15
5.17 - Protocolos “auxiliares” de IP/QoS: Diffserv
Protocolo Diffserv baseado nas seguintes funcionalidades:
* Classificador:
• Identifica requisito de QoS de pacotes (e respetiva aplicação) com
base em informação contida no cabeçalho dos pacotes IP:
– Endereços IP, Portos/Serviços, Protocolos de camadas sup.
* Marcador:
• Marcar/colorir os pacotes em função da sua classificação
– Redefine campo TOS como DSCP (Differentiated Services Code Point)
* Medidor:
• Faz verificação de características de tráfego de entrada
– Verifica se tráfego está em conformidade com
esperado/negociado (usa algoritmo token bucket)
– Reporta conformidade a elementos com funções:
• shaper : se necessário reduzir e estabilizar ritmo de
transmissão (aumentar e colocar constante t entre pacotes)
• dropper: se necessário eliminar pacotes (policiamento)
226
R&C+R&I 1 / ISTEC – 14/15
5.17 - Protocolos “auxiliares” de IP/QoS: Diffserv
Classificação e marcação de pacotes
* Pacotes são marcados nos campos:
• IPv4: Type of Service (TOS), de 8 bits
• IPv6: Traffic Class
* Usados 6 bits de TOS para definição do campo DSCP para Diffserv
• Inicial/ IP usava os 6 bits de TOS como campo “IP Precedence”
• Necessário assegurar compatibilidade “IP Precedence”/DSCP
• DSCP define um conjunto de classes para diferentes tipos de QoS
• Valor atribuído a DSCP vai
– condicionar características de tráfego nos edge routers
– determinar PHB de routers core
* 2 bits atualmente não usados: Currently Unused (CU)
228
R&C+R&I 1 / ISTEC – 14/15
5.17 - Protocolos “auxiliares” de IP/QoS: Diffserv
Interoperabilidade MPLS/Diffserv:
* 3 bits +significativos de DSCP copiados para campo EXP de MPLS
* Diffserv com maior granularidade do que MPLS:
• Diffserv mais usado na periferia da rede para diferenciar tráfego
• MPLS mais usado no core da rede para acelerar transporte de
tráfego
EXP: 3 DSCP: AF3
CE: customer edge router
P: MPLS provider core router (LSR)
PE : MPLS provider edge router (LER)
VRF: Virtual Routing and Forwarding
229
R&C+R&I 1 / ISTEC – 14/15
5.17 - Protocolos “auxiliares” de IP/QoS: Diffserv
BE
CS 5 <=> EF
CS x <=> AF x
CS 0 => BE
Para assegurar a compatibilidade de redes Diffserv com redes que ainda usam “IP
precedence” , o Diffserv definiu a Class Selector (CS)
230
R&C+R&I 1 / ISTEC – 14/15
Protocolo IPSec (IP Security) - RFC 1825:
* Autenticação e Encriptação ao nível IP
* Invisível para Aplicações e Utilizadores
Aplicação
Transporte
IP + IPSec
Terminal-a-Rede
* Se implementacão ao nível de FW ou Routers:
Possibilidade de suportar NAT
5.18 – Protocolos “auxiliares” de IP/Seg.: IPSec
231
R&C+R&I 1 / ISTEC – 14/15
Protocolo IPSec (IP Security):
* Estabelecimento de associações de segurança (SA: Security
Association) entre as entidades comunicantes
* Utilização de Cabeçalhos de Extensão:
* AH: Autenthication Header
* Garante autenticidade e integridade de pacotes IP
* Checksum criptográfico de Dados Não garante confidencialidade
* ESP: Encapsulation Security Payload
* Garante confidencialidade e integridade de pacotes IP
* Contem informação de encriptação de pacote
* Suporte de 2 modos de funcionamento:
* Transporte:
* Protecção de Dados do utilizador (Payload)
* Utilizado em comunicação extremo-a-extremo
* Túnel:
* Protecção de todo o pacote
* Pacote é tratado como Dados de um novo pacote
5.18 – Protocolos “auxiliares” de IP/Seg.: IPSec
Possível usar 1 de
vários algoritmos de
encriptação. Ex. 3DES
(Triple Data Encryption
Standard)
232
R&C+R&I 1 / ISTEC – 14/15
Arquitectura IPSec (IP Security):
Modo de Transporte:
Modo de Túnel:
Internet
Cabeçalho
IP
ESP AH Cabeçalho
TCP
Dados
Protegido
Internet
Cabeçalho
IP Externo
ESP Cabeçalho
IP Interno
Dados
Protegido
Cabeçalho
IP Externo
Cabeçalho
IP Interno
=/=
5.18 – Protocolos “auxiliares” de IP/Seg.: IPSec
Router Router
(Possibilidade de suportar NAT)
233
R&C+R&I 1 / ISTEC – 14/15
Associações de Segurança (SA: Security Association) :
* Conjunto de regras e parâmetros que possibilitam o estabelecimento
de uma comunicação segura IPSec (autenticada e/ou encriptada)
entre 2 máquinas comunicantes:
• Regras de segurança acordadas:
– Algoritmo de encriptação (ESP)
– Algoritmo de autenticação (AH)
• Parâmetros relevantes especificados:
– Parâmetros de autenticação e encriptação:
• Chaves a usar na encriptação
• Vetores (conjunto de bits) de inicialização de algoritmo de
encriptação
– Identificador de SA: Security Parameter Index (SPI)
– Endereço IP destino
– Modo do protocolo: túnel ou transporte
5.18 – Protocolos “auxiliares” de IP/Seg.: IPSec
234
R&C+R&I 1 / ISTEC – 14/15
Associações de Segurança (SA: Security Association) :
• É unidirecional =>
– Para comunicações bidirecionais é necessário uma SA para
cada direção da comunicação
• São utilizados protocolos de gestão de chaves na internet para
estabelecimento de SAs, exemplo:
– IKE: Internet Key Exchange
1. Estabelece canal seguro (SA) entre as 2 entidades
comunicantes
2. Troca de chaves em SA estabelecida em 1.
3. Negociação de regras e parâmetros IPSec dentro de SA
estabelecida em 1.
5.18 – Protocolos “auxiliares” de IP/Seg.: IPSec
235
R&C+R&I 1 / ISTEC – 14/15
Associações de Segurança (SA: Security Association):
* Exemplo de SA:
• IP Origem:192.168.0.3
• IP Destino:193.136.66.209
5.18 – Protocolos “auxiliares” de IP/Seg.: IPSec
236
R&C+R&I 1 / ISTEC – 14/15
VPN (Virtual Private Networks):
* Possibilitar interligação de redes privadas através de canais de
comunicação seguros e virtual/ dedicados de redes públicas
* Principais aplicações:
* Redução de custos:
* Substituição de linhas alugadas/dedicadas na interligação de LANs
e WANs, por uso de internet
* Poupança de deslocações físicas a local de equipamentos
remotos
* Flexibilidade:
* Facilidade de acessos a Internet :
* Possibilidade de utilizar diferentes terminais e redes acesso
* Tendência para aumento de velocidade + redução de custos
* Desvantagem:
* Degradação de desempenho pela utilização de redes públicas
(não garantem QoS) + mecanismos de segurança
5.19 – VPN
237
R&C+R&I 1 / ISTEC – 14/15
* Configurações das VPNs:
• Uso de modo de Túnel:
• Suportada por diferentes protocolos:
5.19 – VPN
Aplicação
Apresentação
Transporte
Rede
Ligação de Dados
Física
Sessão
IPSec: + usado em VPNs, por possibilitar uso de i/f nativa
SSL/TLS: + usado em comunicação c/ i/f (interface) de browsers de cliente
PPP (Pont-to-Point Protocol) sobre SSL ou SSH (Secure Shell),
L2TP (Layer2 Tunneling Protocol), PPTP (Point-to-Point Tunneling Protocol)
HTTPS = HTTP + SSL/TLS
238
R&C+R&I 1 / ISTEC – 14/15
* Requisitos para estabelecimento de VPNs sobre IPSec:
• Gateway da organização e o utilizador remoto têm que ter
compatibilidade IPSec:
– Ambos têm que conseguir estabelecer associações de segurança
(SAs) nos 2 sentidos da comunicação:
Chaves, algoritmos e restantes mecanismos “sincronizados”
– Após estabelecimento de VPN em modo túnel:
Utilizador remoto poder aceder a servidor localizado e
apenas acessível dentro da rede protegida
• Uso de endereço IP publico para aceder a rede corporativa:
=> endereço IP (privado) de servidor encapsulado em túnel
=> dados e cabeçalho de pacote original protegidos por túnel
– VPNs podem ser controladas por:
• Hardware: ex. Gateway/Firewall em rede corporativa
• Software: ex. terminal remoto
5.19 – VPN
239
R&C+R&I 1 / ISTEC – 14/15
5.19 – VPN
SA Remoto->Rede
SA Rede->Remoto
Cliente
Remoto