ip 2 modelo de comunicação do tcp/ippaginas.fe.up.pt/~mricardo/01_02/cursoip/ip.pdf» modelo...

37
IP 1 IP Arquitectura, Interligação, Encaminhamento, Evoluções Curso de Sistemas de Comunicação IP 2 Modelo de Comunicação do TCP/IP Estruturado em 4 camadas Acesso à rede » Interface ao meio físico » Carta de rede, device driver Rede (interligação de) » Transferência de pacotes » IP (Internet Protocol) Transporte » Multiplexagem de fluxos TCP- Transmission Control Protocol UDP – User Datagram Protocol Aplicação » Serviços de rede Telnet, FTP, SMTP, SNMP, DNS » Modelo cliente-servidor

Upload: lamxuyen

Post on 14-Feb-2018

217 views

Category:

Documents


2 download

TRANSCRIPT

IP 1

IPArquitectura, Interligação, Encaminhamento, Evoluções

Curso de Sistemas de Comunicação

IP 2

Modelo de Comunicação do TCP/IP♦ Estruturado em 4 camadas♦ Acesso à rede

» Interface ao meio físico» Carta de rede, device driver

♦ Rede (interligação de)» Transferência de pacotes» IP (Internet Protocol)

♦ Transporte» Multiplexagem de fluxos

– TCP- Transmission Control Protocol– UDP – User Datagram Protocol

♦ Aplicação» Serviços de rede

– Telnet, FTP, SMTP, SNMP, DNS

» Modelo cliente-servidor

IP 3

Comunicação Através de Redes Diferentes

IP 4

Comunicação Através de Redes Diferentes

♦ Redes comunicantes» Diferentes organizações» Diferentes tecnologias de acesso

♦ Internet ! rede virtual, única» Sistemas finais ! computadores» Sistemas intermédios ! routers» router ! uma interface por rede

♦ Protocolos» Camadas de Aplicação e Transporte

– extremo-a-extremo, entre computadores» Camada de Rede

– entre máquinas adjacentes (routers e computadores)

IP 5

Arquitectura da Pilha TCP/IP, num Host♦ TCP

» Orientado às ligações» Transporte ordenado e fiável

♦ UDP» Orientado aos pacotes (sem ligação)» Transporte não fiável

♦ IP» Protocolo principal da pilha» Encaminha datagramas

♦ ICMP» Auxiliar do IP» Envia mensagens de erro

♦ IGMP» Gere grupos de multicast

♦ ARP, RARP» endereços IP "! endereços físicos

IP 6

Encapsulamento dos Dados

IP 7

Encapsulamento Ethernet♦ Cartas Ethernet

» Devem receber– encapsulamento IEEE 802– encapsulamento Ethernet

» Se conseguem enviar os 2 tipos– encapsulamento Ethernet ! default

♦ Valores válidos IEEE 802 length» Diferentes de type válidos

– Ex. 0x0800 = 2048

IP 8

Desmultiplexagem dos Dados

» Cabeçalho TCP/UDP (porta)– FTP ! 21– Telnet ! 23– ...

» Cabeçalho IP (protocolo)– ICMP ! 1– IGMP ! 2– TCP ! 6– UDP ! 17

» Cabeçalho Ethernet (tipo)– IP ! 0x0800– ARP ! 0x0806– RARP ! 0x8053

IP 9

Endereçamento IP♦ Endereços IP

» Um por interface, 32 bits (IPv4)» Exemplo: 142.252.13.33

♦ Atribuição de endereços» InterNic ! atribui netid» Administrador de rede ! atribui hostid

♦ 3 classes de rede» Classe A

– 126 redes: 1.x.x.x até 126.x.x.x◆ All 0 ! reservada◆ 01111111 (127) ! loopback

» Classe B– 214 – 2 = 16,382 redes – 128.x.x.x até 191.x.x.x

» Classe C– 221 – 2 = 2,097,150 redes– 192.x.x.x até 223.x.x.x

♦ Tipos de endereço» Unicast, multicast, broadcast

Classe Valores

A 0.0.0.0 !!!! 127.255.255.255

B 128.0.0.0 !!!! 191.255.255.255

C 192.0.0.0 !!!! 223.255.255.255

D 224.0.0.0 !!!! 239.255.255.255

E 240.0.0.0 !!!! 247.255.255.255

IP 10

Endereçamento IP

IP 11

Interface de Loopback

» Interface de teste, num computador– curto-circuito à rede– netid ! 127.0.0.0– hostid ! 127.0.0.1– nome ! localhost

» Datagrama enviado para localhost não é visto na rede

IP 12

IP - Internet Protocol

♦ IP» Comutação de datagramas» Serviço não fiável

– Não há garantia de entrega no destino– Serviço best effort

» Datagramas para um mesmo destino podem– Seguir caminhos diferentes– Ser entregues fora de ordem

♦ Cada router» Analisa o endereço de destino» Encaminha o datagrama recebido para uma das suas interfaces» Em situações de erro

– Elimina datagrama– Envia mensagem de erro ICMP para a origem

IP 13

Cabeçalho de Datagramas IP

IP 14

Cabeçalho IP» Versão – IPv4» Comprimento do cabeçalho

– Número de palavras (de 32 bits) do cabeçalho– Limite do cabeçalho ! 60 octetos

» TOS (type of service)– 3 bits de precedência – 4 bits TOS– 1 bit não usado– Usado em novas redes (QoS, DiffServ)

» Comprimento total– Comprimento total do datagrama– Máximo 65535 bits

» Identificação– Identifica unicamente um datagrama– Incrementado de uma unidade por cada

datagrama enviado

» Tempo de vida– Número máximo de routers visitáveis por

um datagrama– Inicializado (32 ou 64) – Decrementado de um quando visita router

» Protocolo– Usado para desmultiplexagem

» Checksum– Calculado sobre o cabeçalho

» Endereço de origem (32 bits)» Endereço de destino (32 bits

– endereço do host final

» Opções– Registo de rota– Registo de tempos– Encaminhamento definido pela origem

◆ Loose source routing◆ Strict source routing

IP 15

Encaminhamento de Datagramas

♦ Datagrama contém endereço de destino

♦ Se router ligado à rede de destino # encaminha datagramaSenão # encaminha para outro Router

♦ Tabela de encaminhamento» número de rede $# próximo elemento

♦ Cada computador tem um router por omissão

♦ Cada router tem uma tabela de encaminhamento

IP 16

Encaminhamento de Datagramas

♦ Cada entrada da tabela de encaminhamento de um router contém» Um endereço IP de destino (hostid ou netid)» Endereço IP do next-hop-router» Interface de rede à qual o datagrama deve ser passado

♦ Quando o datagrama chega ao nível IP este » Procura entrada na tabela que seja igual ao hostid de destino

– Se consegue ! envia pacote

» Procura entrada na tabela que seja igual ao netid de destino– Se consegue ! envia pacote

» Procura entrada de default na tabela– envia pacote

IP 17

Exemplo 1

IP 18

Exemplo 2

IP 19

Fragmentação e Reassemblagem

♦ Cada rede tem o seu MTU (Maximum Transfer Unit)♦ Estratégia

» Router fragmenta quando necessário (MTU < Datagrama)» Evitar a fragmentação na origem» Re-fragmentação é possível» Fragmentos ainda são datagramas IP» Reassemblagem no host de destino» Fragmentos perdidos não são recuperados

Rede MTU (octetos)

16 Mbits/sec token ring (IBM)4 Mbits/sec token ring (802.5)FDDIEthernetIEEE 802.3/802.2X.25Point-to-Point

179144464435215001492576512

IP 20Fragmentação - Exemplo

H1 R1 R2 R3 H8

ETH IP (1400) FDDI IP (1400) PPP IP (512)

PPP IP (376)

PPP IP (512)

ETH IP (512)

ETH IP (376)

ETH IP (512)

Ident= x Offset= 0

Start of header

0

Rest of header

1400 data bytes

Ident= x Offset= 0

Start of header

1

Rest of header

512 data bytes

Ident= x Offset= 512

Start of header

1

Rest of header

512 data bytes

Ident= x Offset= 1024

Start of header

0

Rest of header

376 data bytes

R2

R1

H4

H5

H3H2H1

Network 2 (Ethernet)

Network 1 (Ethernet)

H6

Network 3 (FDDI)

Network 4(point-to-point)

H7 R3 H8

IP 21

ifconfig

bsdi% /sbin/ifconfig weOwe0: flags=863<UP, BROADCAST, NOTRAILERS, RUNNING, SIMPLEX> inet 140.252.13.35 netmask ffffffe0 broadcast 140.252.13.63

sun% /usr/etc/ifconfig -a

leO : flags=63<UP, BROADCAST, NOTRAILERS, RUNNING> inet 140.252.13.33 netmask ffffffe0 broadcast 140.252.13.63

slO : flags=105KUP, POINTOPOINT, RUNNING, LINKO>inet 140.252.1.29 -> 140.252.1.183 netmask ffffff00

loO: flags=49<UP,LOOPBACK,RUNNING>inet 127.0.0.1 netmask ff000000

IP 22

netstat

sun% netstat -in

Name Mtu Net/Dest Address lpkts lerrs Opkts Oerrs Collis Queue

leO 1500 140.252.13.32 140.252.13.33 67719 0 92133 0 1 0

slO 552 140.252.1.183 140.252.1.29 48035 0 54963 0 0 0

loO 1536 127.0.0.0 127.0.0.1 15548 0 15548 0 0 0

IP 23

ARP – Address Resolution Protocol♦ Host TCP/IP ! endereço IP♦ Carta de rede ! endereço físico (hardware)

» Em LANs – endereço MAC

♦ ARP !» Mapeamento dinâmico» Endereço IP "! endereço de hardware

IP 24

Exemplo

IP 25

ARP Request - Reply

IP 26

ICMP

♦ ICMP ! Internet Control Message Protocol (RFC 792)

♦ Transferência de mensagens de controlo

» Routers / host "! host

» Indicam problemas

♦ Mensagens ICMP são encapsuladas em datagramas IP (não fiável)

IP 27

ICMP – Tipos de Mensagem

IP 28

Rede Exemplo

IP 29

Ping♦ ICMP Echo / Echo Reply♦ Echo

» Identificador– Pid do cliente

» Sequência– começa em 0

» Dados– tempo de envio

♦ Echo Reply» Enviado por servidor

ping (kernel)» Ecoa tudo

sun% ping gemini

PING gemini: 56 data bytes64 bytes from gemini (140.252.1.11): icmp_seq=0. time=373. ms64 bytes from gemini (140.252.1.11): icmp_seq=l. time=360. ms 64 bytes from gemini (140.252.1.11): icmp_seq=2. time=340. ms 64 bytes from gemini (140.252.1.11): icmp_seq=3. time-320. ms 64 bytes from gemini (140.252.1.11): icmp_seq=4. time=330. ms 64 bytes from gemini (140.252.1.11): icmp seq=5. time=310. ms 64 bytes from gemini (140.252.1.11): icmp seq=6. time==290. ms 64 bytes from gemini (140.252.1.11): icmp_seq-7. time=300. ms 64 bytes from gemini (140.252.1.11): icmp_seq=8. time=280. ms 64 bytes from gemini (140.252.1.11): icmp_seq=9. time=290. ms 64 bytes from gemini (140.252.1.11): icmp_seq=10. time=300. ms 64 bytes from gemini (140.252.1.11): icmp_seq=ll. time=280. ms --gemini PING Statistics--12 packets transmitted, 12 packets received, 0% packet lossround-trip (ms) min/avg/max = 280/314/373

IP 30

TraceRoute

♦ Permite detectar rotas entre máquinas♦ Usa datagramas IP e mensagens de erro ICMP

» Traceroute envia datagrama para destino com – TTL = 1 e porta UDP inexistente

» O primeiro router– decrementa valor ! elimina datagrama– envia mensagem de erro ICMP (time exceed) para origem– Traceroute obtém a sua identificação

» Traceroute envia datagrama para destino – com TTL = 2 e porta UDP inexistente

» O segundo router repete o processo e assim sucessivamente» Traceroute envia datagrama com TTL até à máquina de destino» A máquina de destino envia

– mensagem de erro ICMP – port unreachable– Traceroute obtém a sua identificação

IP 31

TraceRoute - Exemplo

svr4% traceroute slip

traceroute to slip (140.252.13.65), 30 hops max. 40 byte packets1 bsdi (140.252.13.35) 20 ms 10 ms 10 ms 2 slip (140.252.13.65) 120 ms 120 ms 120 ms

slip% traceroute svr4

traceroute to svr4 (140.252.13.34), 30 hops max, 40 byte packets1 bsdi (140.252.13.66) 110 ms 110 ms 110 ms2 svr4 (140.252.13.34) 110 ms 120 ms 110 ms

IP 32

IPv6♦ Versões

» IP v1-v3 ! fora de uso» IP v4 ! versão em uso» IP v5 ! orientado às ligações» IP v6 ! substituto do IP v4

♦ Limitações do IPv4» Endereçamento

– Dois níveis de endereçamento (rede, host) desperdiça endereços

– Endereços usados mesmo quando rede não ligada à Internet

– Crescimento do número de redes e da Internet

– Endereço único por computador

» Requisitos de novos tipos de serviços

♦ Melhorias do IPv6» Flexibilidade de endereçamento

– Espaço de endereçamento aumenta (128 bits)– Multicast - mais versátil e escalável

» Reserva de recursos– Substituição do Type of Service– Introdução do conceito de fluxo de pacotes– Fluxos com tratamento especial (QoS)

◆ Vídeo em tempo real

IP 33

IPv6 - Protocolo♦ Cabeçalho IPv6

♦ Cabeçalhos secundários (de extensão)» Hop-by-Hop Options

– Processado e alterado nos routers

» Routing– Semelhante ao Source Routing do IPv4

» Fragment» Destination options

– Para nó de destino

» TCP

IP 34

Cabeçalho IPv6♦ Version

» 6♦ Traffic Class

» Classes / prioridades de pacote♦ Flow Label

» Suporte de QoS♦ Payload length

» Cabeçalhos secundários + dados♦ Next Header

» Tipo do póximo cabeçalho(Extensão ou nível superior)

♦ Source Address♦ Destination Address

IP 35

IPv6 - Endereços

♦ 128 bits♦ Atribuídos a interfaces♦ Uma interface pode ter múltiplos endereços♦ Tipos de endereços

» Unicast– uma interface

» Anycast– Conjunto de interfaces – Pacote entregue a qualquer interface (a mais próxima)

» Multicast– Conjunto de interfaces– Pacote entregue a todas as interfaces

IP 36

Cabeçalho UDP

IP 37

Cabeçalho TCP

IP 38

Rotas IP

IP 39

Sumário♦ Encaminhamento versus Descoberta de Rotas

» Encaminhamento– Selecção de uma porta de saída a partir de um endereço de destino e de uma tabela de rotas

» Descoberta de rotas– Construção da tabela de rotas

♦ Rede modelizada como um grafo

♦ Problema ! encontrar o trajecto de menor custo entre 2 nós♦ Factores (de rede) a considerar

» Estáticos ! topologia» Dinâmicos ! carga

4

36

21

9

1

1D

A

FEB

C

IP 40

Vector Distância

♦ Cada nó mantém conjunto de entradas» (destino, custo, nextHop)

♦ Troca informação» Periodicamente (alguns segundos)» Quando a tabela de cima muda ! actualização

♦ Actualização– lista de pares (destino, custo)

♦ Tabela local actualizada se encontrada rota melhor» Custo menor» Enviada pelo nextHop

♦ Entradas devem ser refrescadas. Se timeout ! apagadas

IP 41

Exemplo, em B

Destino Custo NextHopA 1 AC 1 CD 2 CE 2 AF 2 AG 3 A

D

G

A

F

E

B

C

IP 42

Presença de Aneis» Exemplo 1

– F detecta falha em ligação a G – F actualiza distância a G para infnito e envia actualização para A– A actualiza distância a G para infinito porque usa F para comunicar com G– A recebe actualização periódica de C com custo 2 para G– A coloca actualiza distância a G para 3 e envia actualização para F– F decide que pode comunicar com G com custo 4 (hops) via A

» Exemplo 2– Ligação de A a E falha– A avisa que distância a E é infinita – Entretanto, B e C avisam distância 2 a E– B decide que pode comunicar com E em 3 hops. E avisa A– A decide que pode comunicar com E com um custo 4. Avisa C– C decide que pode comunicar com E com custo 5 e avisa …

» Heurísticas para terminação de aneis– Infinito = 16– Quebra de horizontes

D

G

A

F

E

B

C

D

G

A

F

E

B

C

IP 43

Estado da Ligação♦ Estratégia

– Enviar a todos os nós (não apenas os vizinhos) informação sobre ligações directas

♦ Link State Packet (LSP)» Identificação do nó que criou o LSP » Custo da ligação a cada nó vizinho» Número de sequência (SEQNO)» time-to-live (TTL), para este pacote

♦ Inundação fiável. Cada Router » Armazena o LSP mais recente de cada nó» Re-encaminha LSP para todos os outros nós (excepto nó de origem)» Gera novo LSP periodicamente

– incrementa SEQNO

» recomeça SEQNO em 0, no reboot» decrementa TTL de cada LSP armazenado

– Elimina quando TTL=0

IP 44

Cálculo de Rotas♦ Algoritmo de caminho mais curto, de Dijkstra♦ Seja

N, o conjunto de nós do grafo

l (i, j), o custo não negativo (peso) da ligação i !!!!j

s, este nó

M, o conjunto de nós incorporados

C(n), o custo do trajecto s !!!! n

M = {s}

para cada n in N - {s}

C(n) = l(s, n)

enquanto (N != M)M """" M U {w}, tal que C(w) seja o mínimo para todos w em (N - M)

para cada n em (N - M)C(n) = MIN( C(n), C (w) + l(w, n ) )

IP 45

Algoritmo de Dijkstra - Exemplo

IP 46

Métricas

♦ Métrica original (na ARPANET)» Número de pacotes na fila de cada ligação » Não considerava latência nem capacidade de transmissão da ligação

♦ Nova métrica» Marca cada pacote com tempo de chegada (AT)» Marca tempo de partida do pacote (DT)» Quando ACK de nível 2 chega, calcula atraso

– Delay = (DT - AT) + Tpac + Tprop (espera + transmissão + propagação)

» Se timeout, remarca DT com tempo de retransmissão» Custo da ligação = atraso médio observado num perído de tempo

♦ Sintonia precisa» Gama dinâmica comprimida» Substituição de dinâmica por utilização da ligação

IP 47

Rotas em Redes Grandes

♦ Endereços planos / Endereços Hierárquicos

♦ Utilização ineficiente do espaço de endereçamento hierárquico» Ex. classe C com 2 computadores (2/255, eficiência de 0.78%)» Ex. classe B com 256 computadores (256/65535, eficiência de 0.39%)

♦ Muitas redes» Tabelas de rotas não comportam tanta informação» Protocolos de propagação de rotas não escalam

IP 48

Estrutura da Internet

♦ No passado (recente)

NSFNET backboneStanford

BARRNETregional

BerkeleyPARC

NCAR

UA

UNM

Westnetregional

UNL KU

ISU

MidNetregional…

IP 49

Estrutura da Internet

Hoje

Backbone service provider

Peeringpoint Peering

point

Large corporation

Large corporation

Smallcorporation

“Consumer ” ISP

“Consumer”ISP

“ Consumer” ISP

IP 50

Subredes» Subrede ! introdução de nível hierárquico de endereços/rotas» Máscaras de subrede

– definem partição variável para parte endereço reservada a computadores

» Subrede visivel só dentro de uma organização

Network number Host number

Class B address

Subnet mask (255.255.255.0)

Subnetted address

111111111111111111111111 00000000

Network number Host IDSubnet ID

IP 51

Exemplo de Subredes

Forwarding table at router R1Subnet Number Subnet Mask Next Hop128.96.34.0 255.255.255.128 interface 0128.96.34.128 255.255.255.128 interface 1128.96.33.0 255.255.255.0 R2

Subnet mask: 255.255.255.128Subnet number: 128.96.34.0

128.96.34.15 128.96.34.1H1

R1

128.96.34.130 Subnet mask: 255.255.255.128Subnet number: 128.96.34.128

128.96.34.129128.96.34.139

R2H2

128.96.33.1128.96.33.14

Subnet mask: 255.255.255.0Subnet number: 128.96.33.0

H3

IP 52

Algoritmo de Encaminhamento

♦ Se não for encontrada entrada na tabela ! utilizar router por omissão♦ Os 11s da máscara de subrede não têm que ser contínuos♦ Uma rede física ! múltiplas subredes♦ Subredes não são visiveis do resto da INTERNET

D = endereço IP de destino

Para cada entrada (SubnetNum, SubnetMask, NextHop)

D1 = SubnetMask & D

se D1 = SubnetNum

se NextHop é uma interface

entrega datagrama directamente a D

senão

entrega datagrama ao NextHop

IP 53

SuperRedes

♦ Endereços de rede contíguos atribuídos a redes vizinhas♦ CIDR – Classless Inter-Domain Routing♦ Blocos de redes

» representados por entrada (first_network_address, count)» Limitação: comprimento do bloco ! potência de 2

♦ Utilização de máscara de bits ! máscara CIDR» Identificação do comprimento do bloco

♦ Routers devem entender endereçamento CIDR

IP 54

Propagação de Rotas

♦ Encaminhamento inteligente» Computadores conhecem router local» Routers locais conhecem routers da organização» Routers da organização conhecem routers de transporte» Routers de transporte conhecem tudo

♦ Autonomous System (AS)» Domínio administrativo» Exemplos – universiade, companhia, rede de transporte» Cada AS tem um identificador de 16-bit associado

♦ Propagação de rotas ! dois níveis hierárquicos» interior gateway protocol (cada AS escolhe o seu)» exterior gateway protocol (norma internet)

IP 55

Protocolos Interior Gateway Mais Usados

♦ RIP: Route Information Protocol» Desenvolvido pela XNS» Distribuido com o UNIX» Algoritmo vector-distância» Baseado na contagem de hops

♦ OSPF: Open Shortest Path First» Norma internet recente» Usa algoritmo Estado de Ligação» Com balanceamento de carga» Com autenticação

IP 56

EGP - Exterior Gateway Protocol

♦ Características» Construído para uma INTERNET organizada em árvore» Preocupado com alcançabilidade !não com rotas óptimas

♦ Mensagens do protocolo» Aquisição de vizinho

– Um router pede a outro para ser seu parceiro– Parceiros trocam informação de alcançabilidade

» Alcançabilidade de vizinho– Um router verifica periodicamente se os seus vizinhos estão alcançaveis– Troca de mensagens HELLO/ACK– Regra do k-em-n

» Actualização de rotas– Parceiros trocam tabelas de rotas (vector distância) periodicamente

IP 57

BGP-4: Border Gateway Protocol

♦ Tipos de AS» stub AS – ligação única a outro AS

– Transporte de tráfego local

» multihomed AS – ligação a múltiplos AS– Tráfego local não transportado

» transit AS – ligação a múltiplos AS – Transporte de tráfego local e tráfego de trânsito

♦ Cada AS tem» Um ou mais routers de fronteira» Um porta-voz BGP que avisa

– As redes locais– Outras redes alcançaveis (AS de trânsito, apenas)– Fornece informação sobre trajectos

IP 58

Exemplo BGP♦ Porta-voz AS2 avisa que P e Q estão alcançaveis

» rede 128.96, 192.4.153, 192.4.32, e 192.4.3 ! alcançaveis por AS2

♦ Porta-voz do backbone avisa que» redes 128.96, 192.4.153, 192.4.32, e 192.4.3 ! alcançaveis por (AS1, AS2).

♦ Porta-voz pode cancelar anúncios prévios

Backbone network(AS 1)

Regional provider A(AS 2)

Regional provider B(AS 3)

Customer P(AS 4)

Customer Q(AS 5)

Customer R(AS 6)

Customer S(AS 7)

128.96192.4.153

192.4.32192.4.3

192.12.69

192.4.54192.4.23

IP 59

IP Móvel

IP 60

Motivação

♦ Encaminhamento datagramas IP– Baseado em endereço IP de destino, prefixo de rede– Endereço de rede IP "! Rede física– Mudança de rede # mudança de endereço IP

♦ Possíveis soluções para a mobilidade» Alteração das rotas para as máquinas móveis?

# mudança de tabelas de encaminhamento dos routers# solução não compatível (não escalável) com

◆ Mudanças frequentes de posição◆ Número elevado de terminais móveis

# problemas de segurança

» Mudança do endereço IP da máquina móvel?# Endereços dependentes da localização# Localização do terminal difícil " Actualização de DNS é demorada# Quebra de ligações TCP. Problemas de segurança

IP 61

Requisitos do IP Móvel (RFC 2002)

♦ Transparência– Estações móveis devem manter o seu endereço IP– Comunicação deve ser retomada depois de quebra da ligação (a mudança de rede)– Ponto de ligação à rede fixa pode ser alterado

♦ Compatibilidade– Deve suportar mesmos protocolos de nível 2 que IP– Não deve implicar alterações dos routers/máquinas existentes– Máquinas móveis devem comunicar c/ máquinas fixas

♦ Segurança– Mensagens de sinalização devem ser autenticadas

♦ Eficiência, escalabilidade– Sistema de sinalização leve– Sistema escalável à Internet global

IP 62

Terminologia

♦ MN, Mobile Node ! estação móvel– Máquina móvel. Muda de ponto de ligação– Mantém endereço IP

♦ HA, Home Agent ! Agente na rede origem– Sistema (router) na rede origem do MN– Regista localização do MN. Usa túnel para enviar datagramas IP para COA

♦ FA, Foreign Agent ! Agente na rede visitada– Sistema (router) na rede visitada pelo MN– Entrega datagramas recebidos pelo túnel ao MN

♦ COA, Care-of Address– Endereço IP da extremidade do túnel na rede visitada– Localiza MN– Pode ser atribuído por DHCP

♦ CN, Correspondent Node – Máquina que comunica com o MN

IP 63

Exemplo

mobile end-systemInternet

router

router

router

end-system

FA

HA

MN

home network

foreign network

(physical home networkfor the MN)

(current physical network for the MN)

CN

IP 64

Transferência de Dados para o MN

Internet

sender

FA

HA

MN

home network

foreignnetwork

receiver

1

2

3

1. Sender sends to the IP address of MN,HA intercepts packet

2. HA tunnels packet to COA (FA) by encapsulation

3. FA forwards the packet to the MN

CN

IP 65

Transferência de Dados do MN

Internet

receiver

FA

HA

MN

home network

foreignnetwork

sender

1

1. Sender sends to the IP addressof the receiver as usual,FA works as default router

CN

IP 66

Fases da Mobilidade

CN

routerHA

routerFA

Internet

router

1.

2.

3.home

networkMN

foreignnetwork

4.

CN

routerHA

routerFA

Internet

router

homenetwork

MN

foreignnetwork

COA

IP 67

Comunicação com os Agentes♦ MN determina rede de acolhimento

» HA, FA ! geram regularmente mensagens de aviso para suas redesAdaptação de mensagens do ICMP Router Advertisment Protocol (RFC 1256)

» MN escuta mensagens; determina rede de acolhimento– A sua, ou– Uma rede visitada ! conhecimento de COA

♦ MN regista-se, por tempo limitado» MN envia COA para HA (via FA) » HA confirma recepção» Autenticação obrigatória ! Associação de segurança entre MN e HA

♦ Na rede origem» HA assume endereço IP do MN » Routers (na rede origem) actualizam entradas» Pacotes com destino MN são enviados para HA» Processo independente de alterações de COA/FA

IP 68Agentes –Mensagens de Aviso

preference level 1router address 1

#addressestype

addr. size lifetimechecksum

COA 1COA 2

type sequence numberlength

0 7 8 15 16 312423code

preference level 2router address 2

. . .

registration lifetime

. . .

R B H F M G V reserved

IP 69

Registo do MN no Home Agent

t

MN HAregistrationrequest

registration

reply

t

MN FA HAregistrationrequestregistrationrequest

registration

reply

registration

reply

IP 70

Mensagem de Pedido de Registo

home agenthome address

type lifetime0 7 8 15 16 312423

rsv

identificationCOA

extensions . . .

S B DMGV

IP 71

Encapsulamento, Tuneis

original IP header original data

new datanew IP header

outer header inner header original data

IP 72

IP em IP (obrigatório)

Care-of address COAIP address of HA

TTLIP identification

IP-in-IP IP checksumflags fragment offset

lengthTOSver. IHL

IP address of MNIP address of CN

TTLIP identification

lay. 4 prot. IP checksumflags fragment offset

lengthTOSver. IHL

TCP/UDP/ ... payload

Túnel entre HA e COA

IP 73

Encapsulamento Mínimo (Opcional)» Campos repetidos não são enviados

TTL, IHL, version, TOS

» Aplicável apenas a pacotes não fragmentados

care-of address COAIP address of HA

TTLIP identification

min. encap. IP checksumflags fragment offset

lengthTOSver. IHL

IP address of MNoriginal sender IP address (if S=1)

Slay. 4 protoc. IP checksum

TCP/UDP/ ... payload

reserved

IP 74

IP Móvel e IPv6

♦ IP desenvolvido para IPv4. IPv6 simplifica protocolos» Segurança suportada nativamente IPv6» COA pode ser atribuído por auto-configuração» Qualquer router pode ser um FA " routers enviam mensagens de aviso» Suporte de “soft-handover”. Sem perda de pacotes

– Quando MN muda de rede visitada ! avisa router antigo do seu novo COA– Router antigo cria túnel para novo COA. Encaminha todos os pacotes recebidos