31
1 Camada de rede 1 Camada de rede Serviços fornecidos pela camada de rede Encaminhamento Estado-da-ligação Vector-distância Internet Protocol (IP) Encaminhamento na Internet Intra-domínio Inter-domínio IPv6, DHCP, IP móvel, VPN, NAT Encaminhamento multicast Camada de rede 2 Funções Determinação de caminhos e construção das tabelas de expedição Expedição de pacotes Comutação de pacotes Fragmentação e reconstrução de datagramas (internets) Estabelecimento e terminação de circuitos (comutação de circuitos virtuais) rede dados físico aplicação transporte rede dados físico rede dados físico rede dados físico rede dados físico rede dados físico rede dados físico rede dados físico rede dados físico aplicação transporte rede dados físico

Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

Embed Size (px)

Citation preview

Page 1: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

1

Camada de rede 1

Camada de rede

Serviços fornecidos pela camada de redeEncaminhamento

• Estado-da-ligação • Vector-distância

Internet Protocol (IP)Encaminhamento na Internet

• Intra-domínio• Inter-domínio

IPv6, DHCP, IP móvel, VPN, NATEncaminhamento multicast

Camada de rede 2

Funções

Determinação de caminhos e construção das tabelas de expedição Expedição de pacotesComutação de pacotesFragmentação e reconstrução de datagramas (internets)Estabelecimento e terminação de circuitos (comutação de circuitos virtuais)

rede dadosfísico

aplicação transporte

rededados físico rede

dadosfísico

rede dadosfísico

rede dadosfísico

rede dadosfísico

rede dadosfísico

rede dadosfísico

rede dadosfísico

aplicação transporte

rededados físico

Page 2: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

2

Camada de rede 3

Serviços

Circuitos-virtuais• Estabelecimento e terminação de circuitos• Transferência de dados• Alocação de recursos ao longo de um caminho• Garantias de qualidade de serviço• Informação de estado por fluxo em todos os encaminhadores

Datagramas• Transferência de dados não é precedida por estabelecimento de

circuito • Serviço na base do melhor esforço• Encaminhadores não mantêm informação de estado por fluxo

Camada de rede 4

Encaminhamento

Determinação de “bons caminhos” entre origens e destinosRede modelada por um grafo

• Nós• Ligações

Comprimento de uma ligação• Função aditiva• Atraso, custo monetário, nível de

congestão

Conceito de “bom caminho”• Caminho mais curto

A

ED

CB

F2

21

3

1

1

2

53

5

Page 3: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

3

Camada de rede 5

Protocolos para encaminhamento dinâmico

Vector-distância• Algoritmo distribuído para cálculo das distâncias• Nós enviam vectores de distâncias aos seus vizinhos

Estado-da-ligação• Algoritmo distribuído para difusão da topologia da rede• Nós difundem o comprimento das ligações por toda a rede• Algoritmo sequencial para cálculo dos caminhos mais curtos

Vector-caminho• Como em vector-distância, mas os vectores incluem todo o

caminho para alcançar cada nó destino

Camada de rede 6

Difusão fiávelinicializaçãopara todo v

lspA[v] := 0seqA := 1

recebe <LSP,v,n> de wse (n > lspA[v])

envia <LSP,v,n> a todos os vizinhos excepto wlspA[v] := n

ligação entre A e w é alteradaenvia <LSP,A,seq> a todos os vizinhosseqA := seqA + 1

A

ED

CB

F

lspA[v] – número do último LSP com origem no nó v recebido em A

Page 4: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

4

Camada de rede 7

Algoritmo de Dijkstrapara todo v

dA[v] := infinitopA[v] := nulo

dA[A] := 0N := todos os nós

enquanto (N não é vazio)extrair de N o nó w tal que dA[w] é mínimo para (v vizinho de w)

se (dA[v] > dA[w] + c[w,v])dA[v] := dA[w] + c[w,v]pA[v] := w dA[v] – distância do nó A ao nó v

pA[v] – predecessor no caminho mais curto de A até v

c[w,v] – comprimento da ligação entre os nós w e v

Camada de rede 8

Algoritmo de Dijkstra: exemplo

123456

NBCDEF

BCEFBCF

CFF

d[B],p[B]2,A2,A2,A

d[C],p[C]5,A4,D3,E3,E

d[D],p[D]1,A

d[E],p[E]infinito

2,D

d[F],p[F]infinitoinfinito

4,E4,E4,E

A

ED

CB

F2

21

3

1

1

2

53

5

iteração

Page 5: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

5

Camada de rede 9

Algoritmo de Bellman-Fordpara todo A e todo t

se (A = t)dant[A,t] := 0

senãodant[A,t] := infinito

fazer N-1 vezespara todo A e todo t

se (A = t)d[A,t] := 0

senãod[A,t] := min {c[A,B] + dant[B,t], B vizinho de A}

dant := d

d[A,t] – distância do nó A ao nó tdant[A,t] – antiga distância do nó A ao nó tc[A,B] – comprimento da ligação entre os nós A e BN – número de nós

Camada de rede 10

Bellman-Ford distribuído: recepção de mensagem

inicializaçãopara todo t

dA[t] := infinitodA[A] := 0

recebe <d,t> do vizinho BdtabA[B,t] := c[A,B] + dse (t = A)

dA[t] := 0senão

dA[t] := min {dtabA[B,t], B vizinho de A}se (dA[t] foi alterado)

envia <dA[t],t> a todos os vizinhos

dA[t] – distância do nó A ao nó tdtabA[B,t] – distância do nó A ao nó t via nó Bc[A,B] – comprimento da ligação entre os nós A e B

Page 6: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

6

Camada de rede 11

Bellman-Ford distribuído: alteração das ligações

ligação entre A e B foi restauradapara todo t

envia <dA[t],t> ao nó B

comprimento da ligação entre A e B aumentou de ddpara todo t

dtabA[B,t] := dd + dtabA[B,t] se (t = A)

dA[t] := 0senão

dA[t] := min {dtabA[B,t], B vizinho de A}se (dA[t] foi alterado)

envia <dA[t],t> a todos os vizinhos

Camada de rede 12

Exemplo de uma tabela de distâncias

A

E D

CB7

81

2

1

2dtabE[ , ]

A

B

C

D

A

1

7

6

4

B

14

8

9

11

D

5

5

4

2

vizinho

dest

ino

dtabE[D,C] c[E,D] + 2 = 4=

ciclo!dtabE[D,A] c[E,D] + 3 = 5=

ciclo!dtabE[B,A] c[E,B] + 6 = 14=

Page 7: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

7

Camada de rede 13

Bellman-Ford distribuído: exemplo

A E C

A

d[ , ]

7 ∞ ∞

B D

A

d[ , ]

C E

A

d[ , ]

∞∞

A B D

A

d[ , ]

1 ∞ ∞

A E C

A

d[ , ]

7 9 ∞

B D

A

d[ , ]

C E

A

d[ , ]

A B D

A

d[ , ]

1 15 ∞

8

3

A

E D

CB7

81

2

1

2

E

D

C

B

Camada de rede 14

Bellman-Ford distribuído: cont. exemplo

A E C

A

d[ , ]

7 9 9

B D

A

d[ , ]

C E

A

d[ , ]

A B D

A

d[ , ]

1 15 5

A E C

A

d[ , ]

7 9 6

B D

A

d[ , ]

C E

A

d[ , ]

A B D

A

d[ , ]

1 15 5

8 5 8 5

10 3

A

E D

CB7

81

2

1

2

E

D

C

B

7 3

Page 8: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

8

Camada de rede 15

Bellman-Ford distribuído: propriedades

Comprimento de uma ligação diminui• Convergência rápida

Comprimento de uma ligação aumenta• Convergência lenta• Problema da contagem para o infinito

Problema da contagem para o infinito• Protocolo não converge quando não há caminho entre

origem e destino• Separação de horizontes com envenenamento inverso não

resolve o problema da contagem para o infinito• Limitação do diâmetro da rede• Alteração ao protocolo

Camada de rede 16

Encaminhamento adaptado ao tráfego: oscilações

Encaminhamento adaptado ao tráfego pode gerar oscilações

AD

C

B1 1+e

e0

e

1 1

0 0

início

AD

C

B2+e 0

001+e 1

1a iteração

AD

C

B0 2+e

1+e10 0

2a iteração

AD

C

B2+e 0

e01+e 1

3a iteração

Page 9: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

9

Camada de rede 17

Encaminhamento adaptado ao tráfego: paradoxo de Braess

Equilíbrio quando todos os caminhos que suportam um fluxo têm comprimentos iguais

0.1f

1

1

10

5 5

55

10

Atraso=1.5

10 010

0 10

Atraso=2!

10

0.1f

0.1f

1

1

0

10

0.1f

Camada de rede 18

Paradoxo de Braess na prática

Page 10: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

10

Camada de rede 19

Encaminhamento hierárquico

Partição dos encaminhadores em áreasAgregação de endereços associados a uma área

• Redução do número mensagens de encaminhamento• Redução do número de entradas nas tabelas de expedição• Caminhos extremo-a-extremo deixam de ser óptimos

Protocolo de encaminhamento intra-área pode ser diferente do protocolo de encaminhamento inter-área

Camada de rede 20

Encaminhamento hierárquico: exemplo

a

b

b

a

a

C

A

B

d

cb

c

B (1,1) c

C (1,2) d

a (0,2) d

c (0,1) c

d (0,1) d

Tabela de expedição em A.b

c

Caminho A.c-A.d-A.a-C.c-C.b não é o caminho maiscurto de A.c para C.b

Page 11: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

11

Camada de rede 21

Camada de rede na Internet

tabela deexpedição

Protocolos encaminhamentoRIP, OSPF, BGP

Protocolo IPEndereçamentoFormato dos datagramas Operações sobre datagramas

Protocolo ICMPRelato de errosControlo

Camada de transporte: TCP, UDP

Camada de ligação de dados

Camada física

Camada de rede

Camada de rede 22

Endereços IP

Identificadores de 32 bitsCada endereço IP identifica uma interface, e não uma estação

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.2223.1.3.1

223.1.3.27

223.1.1.1 = 11011111 00000001 00000001 00000001

223 1 11

Page 12: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

12

Camada de rede 23

RedesEndereço IP

• Componente de rede• Componente de estação

Conceito de rede • Interfaces com a mesma

componente de redeInterfaces com a mesma componente de rede comunicam directamenteInterfaces com componente de rede distintas comunicam através de encaminhadores

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.2223.1.3.1

223.1.3.27LAN223.1.3.0/24223.1.3.*

3 redes IP (neste caso os primeiros24 bits formam a componente de rede)

Camada de rede 24

Classes de endereços IP

Divisão implícita em classes

0 rede

10

110 rede

1110 Endereço multicast

A

B

C

D

classe0.0.0.0 a127.0.0.0

128.0.0.0 a191.255.255.255

192.0.0.0 a223.255.255.255

224.0.0.0 a239.255.255.255

32 bits

estação

estaçãorede

estação

Page 13: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

13

Camada de rede 25

Expedição de datagramas: local

A descobre que B está na mesma rede Camada de ligação de dados entrega datagrama a B, encapsulado numa trama

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.2223.1.3.1

223.1.3.27

A

B

Rede dest. Sucessor distância

223.1.1.0/24 - 1223.1.2.0/24 223.1.1.4 2223.1.3.0/24 223.1.1.4 2

Outroscab. 223.1.1.1 223.1.1.3 dados

IP origem

IP destino

Camada de rede 26

Expedição de datagramas:remoto

A descobre que o datagrama deve ser enviado para 223.1.1.4Camada da ligação de dados em A entrega datagrama a 223.1.1.4, encapsulado numa tramaEncaminhador descobre que E está na rede 223.1.2.0/24Camada da ligação de dados no encaminhador entrega datagrama a E, encapsulado numa trama

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 (I1) 223.1.2.9 (I2)

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27 (I3)

A

E

Rede dest. sucessor dist. interface

223.1.2.0/24 - 1 I2223.1.3.0/24 - 1 I3

223.1.1.0/24 - 1 I1

Outroscab. 223.1.1.1 223.1.2.2 dados

IP origem

IP destino

Page 14: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

14

Camada de rede 27

Gestão de endereços IP: objectivos

Utilização eficiente dos endereços• Rede necessita de 300 endereços• É-lhe atribuído um bloco de endereço de classe B, com

65536 endereços• Eficiência na utilização endereços é 0.46%!

Reduzir o número de entradas nas tabelas de expedição

• Organização necessita de 8100 endereços• São-lhe atribuídos 32 blocos de endereços de classe C,

num total de 8160 endereços • Tabelas de expedição têm que ter 32 entradas à conta desta

organização!

Camada de rede 28

Classless Inter-Domain Routing (CIDR)

Endereços IP agregados em blocos contíguos denominados prefixosPrefixo

• Endereço IP de base• Comprimento da máscara • Exemplo: a.b.c.d/x

Número de endereços IP associados a um prefixo é uma potência de 2

11001000 00010111 00010000 00000000

Componente de rede

Componente de estação

200.23.16.0/23

Page 15: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

15

Camada de rede 29

Agregação de endereços IP

200.23.16.0/20

200.23.16.0/23

200.23.18.0/23

200.23.30.0/23

ISP1

Organização 0

Internet

ISP2 199.31.0.0/16

200.23.20.0/23...

...

Organização 1

Organização 2

Organização 7

200.23.19.172

200. 23. 19.172 Endereço IP destino255.255.254. 0 Máscara da organização 1200. 23. 18. 0 Endereço base da organização 1

Camada de rede 30

Expedição por prefixo mais específico

200.23.16.0/20

200.23.16.0/23

200.23.18.0/23

200.23.30.0/23

ISP1

Organização 0

Internet

ISP2 199.31.0.0/16 200.23.18.0/23

200.23.20.0/23...

...

Organização 1

Organização 2

Organização 7

Organização 1 mudou do ISP1 para o ISP 2 mas manteve o seu bloco de endereços IP

200.23.19.172

Page 16: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

16

Camada de rede 31

Anatomia de um datagrama IP

TOS• Tipo de serviço

Protocolo• Chave de desmultiplexagem

para a camada de transporte: TCP, UDP, ...

Identificador, offset e sinalizadores

• Fragmentação e reconstrução de datagramas

TTL• Decrementado em cada

encaminhador

ver. comprimento do datagrama

32 bits

dados da camada de transporte (comprimento variável)

identificador

checksumTTL

endereço IP fonte

comp. cab. TOS

sinal. offset

protocolo

endereço IP destino

opções (comprimento variável)

Camada de rede 32

Fragmentação e reconstrução

Cada ligação tem um MTUsDatagramas fragmentados na camada IPReconstrução apenas no destinoCampos no cabeçalho proporcionam reconstruçãoOffset indica número do primeiro byte do fragmento, em múltiplos de 8 bytes

ID=x

offset=0

s. frag=0

comp.=4000

ID=x

offset=0

s. frag=1

comp.=1500

ID=x

offset=1480

s. frag=1

comp.=1500

ID=x

offset=2960

s. frag=0

comp.=1040

Fragmentação (MTU=1500 bytes)

Page 17: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

17

Camada de rede 33

Internet Control Message Protocol (ICMP)

Utilizado para propagação de informação de controlo• Erros: destino não existe, porto não existe, TTL chegou a 0,

reconstrução do datagrama falhou• Pedido/resposta

Mensagens ICMP transportadas em datagramas IP• Tipo• Código• 8 primeiros bytes do datagrama que causou o erroTraceroute

• ICMP time exceeded (TTL é zero)Ping

• ICMP echo request• ICMP echo reply

Camada de rede 34

Encaminhamento na InternetA Internet consiste num número de sistemas autónomos interligados (Autonomous System, AS)

• AS terminal• AS multi-terminal• AS de trânsito

Encaminhamento intra-AS (Interior Gateway Protocols, IGP)

• RIP: Routing Information Protocol• OSPF: Open Shortest Path First

Encaminhamento inter-AS (Exterior Gateway Protocol, EGP)

• BGP: Border Gateway Protocol

Page 18: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

18

Camada de rede 35

A Internet

AS de trânsito Tier-1

AS de trânsito Tier-2

AS de trânsito Tier-3

AS multi-terminal

AS terminal

Relação fornecedor cliente

Relação de paridade

Camada de rede 36

Exemplo de uma tabela de expedição

Destino Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ ---------127.0.0.1 127.0.0.1 UH 0 26492 lo0 192.168.2. 192.168.2.5 U 2 13 eth2193.55.114. 193.55.114.6 U 3 58503 eth0 192.168.3. 192.168.3.5 U 2 25 ppp0 224.0.0.0 193.55.114.6 U 3 0 eth1 0.0.0.0 193.55.114.129 UG 0 143454 eth1

Três redes: 192.168.2., 193.55.114., 192.168.3.Um endereço multicast: 224.0.0.0Entrada por omissão: 0.0.0.0

Page 19: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

19

Camada de rede 37

Routing Information Protocol (RIP)

Vector distânciaComprimento das ligações é unitárioDiâmetro da rede inferior a 16Cada 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çãoOpera sobre UDP (!)Processo que executa RIP é o routed

Camada de rede 38

Open Shortest Path First (OSPF)

Estado da ligaçãoA cada ligação podem estar associadas várias métricasMúltiplos caminhos do mesmo comprimento entre pares origem destinoSegurança Suporte de hierarquias dentro de uma ASSuporte de multicastOpera sobre IPProcesso que executa OSPF é o gated

Page 20: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

20

Camada de rede 39

OSPF hierárquico

Encaminhamento intra-área: estado-da-ligaçãoEncaminhamento inter-área: vector-distânciaToda a comunicação inter-área atravessa a área 0

Área 0Área 1

Área 2

Área 3

Camada de rede 40

Border Gateway Protocol (BGP)

Vector caminho• Cada encaminhador fronteira anuncia, para cada prefixo IP

destino, todo o caminho de ASes até chegar a esse destino• Problema da contagem para o infinito não existe

Políticas na escolha de caminhos• Cada AS pode decidir não anunciar os seus caminhos a

algumas ASes vizinhas• Cada AS atribui um nível de preferência aos caminhos

anunciados pelos vizinhos

External BGP (EBGP) e Internal BGP (IBGP)Opera sobre TCP

Page 21: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

21

Camada de rede 41

Atributos do BGPLOCAL-PREF

• Nível de preferência atribuído localmente a uma rota• Não é passado fora da AS

AS-PATH• Sequência de ASes pelas quais a rota passou• Acrescentado pela AS

MED• Discrimina ligações diferentes a uma mesma AS vizinha• Algum controlo sobre o tráfego que entra na AS

NEXT-HOP• Endereço IP do encaminhador fronteira da AS vizinha que

anuncia a rota• Não é alterado pelo iBGP

Camada de rede 42

IPv6

Motivação principal• Escassez de endereços IP

Razões adicionais• Expedição e comutação rápidas de datagramas• Qualidade de serviço• Autoconfiguração• Endereços anycast

Formato dos datagramas• Endereços de 128 bits• Não permite fragmentação• Não tem checksum

Page 22: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

22

Camada de rede 43

Anatomia de um datagrama IPv6

Classe de tráfego• Prioridades

Rótulo de fluxo• QoS ?

Comprimento• Dos dados apenas

Próximo cabeçalho• Chave de

desmultiplexagem

Limite de saltos• Semelhante ao TTL

ver. rótulo de fluxo

dados da camada de transporte (comprimento variável)

comprimento

classe tráfego

próximocab.

lim. saltos

32 bits

endereço IP fonte

endereço IP destino

Camada de rede 44

Migração IPv4 - IPv6

Não vai haver um dia R em que todos os encaminhadores mudam de IPv4 para IPv6Migração de IPv4 para IPv6 terá que ser gradualSoluções de migração

• Pilha dupla IPv4/IPv6: alguns encaminhadores conseguem traduzir datagramas entre os dois formatos

• Túneis: Datagramas IPv6 transportados como dados de datagramas IPv4

Page 23: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

23

Camada de rede 45

Pilha dupla

Há informação no cabeçalho do datagrama IPv6 inicial que é perdida quando ele é traduzido num datagrama IPv4

A B C D E F

IPv6Fluxo: XIP fonte: AIP dest.: F

IPv6Fluxo: ?IP fonte: AIP dest.: F

IPv4 IPv4 IPv6 IPv6IPv6 IPv6

IPv4IP fonte: AIP dest.: F

IPv4IP fonte: AIP dest.: F

Camada de rede 46

Túnel

A B C D E F

IPv6Fluxo: XIP fonte: AIP dest.: F

IPv4 IPv4 IPv6 IPv6IPv6 IPv6

IPv4Proto: IP-IPIP fonte: BIP dest.: E

A F

IPv6 IPv6IPv6 IPv6

EB

IPv6Fluxo: XIP fonte: AIP dest.: F

IPv4Proto: IP-IPIP fonte: BIP dest.: E

IPv6Fluxo: XIP fonte: AIP dest.: F

IPv6Fluxo: XIP fonte: AIP dest.: F

Page 24: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

24

Camada de rede 47

Dynamic Host Configuration Protocol (DHCP)

Atribuição dinâmica de endereços IP

• Partilha de endereços

• Configuração automática

Porto UDP bem-conhecido: 67 e 68Mensagens

• DHCPDISCOVER• DHCPOFFER• DHCPREQUEST• DHCPACK

ClienteServidor 1200.2.6.5

Servidor 2200.2.6.10

0.0.0.0,68255.255.255.255,67DHCPDISCOVERY0.0.0.0756200.2.6.5,67

255.255.255.255,68DHCPOFFER200.2.6.1207563600

200.2.6.10,67255.255.255.255,68DHCPOFFER200.2.6.307563600

0.0.0.0,68255.255.255.255,67DHCPREQUEST200.2.6.120200.2.6.57573600200.2.6.5,67

255.255.255.255,68DHCPACK200.2.6.120757200.2.6.53600

Camada de rede 48

IP móvel

Mobilidade transparente para as aplicações• Manutenção do endereço IP aquando da deslocação de

uma rede para outraEntidades intervenientes

• Estação móvel• Agente caseiro (home agent, HA)• Agente estrangeiro (foreign agent, FA)

Sinalização• Endereço temporário (care-of-address, COA)• Protocolo estação móvel – agente estrangeiro• Protocolo agente estrangeiro – agente caseiro

Transferência de dados• Túneis

Page 25: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

25

Camada de rede 49

Encaminhamento indirecto

HA FA

198.27.30.253

198.27.30.45

77.174.12.25477.174.12.130 COA

200.129.12.165

198.27.30.0/24

200.129.12.0/24

77.174.12.0/24

2

1

Camada de rede 50

Encaminhamento directo

HA FA

198.27.30.253

198.27.30.45

77.174.12.25477.174.12.130 COA

200.129.12.165

198.27.30.0/24

200.129.12.0/24

77.174.12.0/24

2

1

3

Page 26: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

26

Camada de rede 51

Virtual Private Networks (VPN)

10.1.0.0/16

10.2.0.0/16

10.3.0.0/16

198.150.2.73

220.10.68.2

IP-IP198.150.2.73220.10.68.2

10.1.0.510.3.12.2

10.1.0.510.3.12.2

Internet

R1

R2

R3

IRT site 1

IRT site 2

IRT site 3193.12.96.1

Camada de rede 52

Network Address Translation (NAT)

10.1.0.0/16

10.2.0.0/16

10.3.0.0/16

198.150.2.0/24

220.10.68.0/24

10.1.0.5

Internet

R1

R2

R3

IRT site 1

IRT site 2

193.12.96.0/24

128.234.7.2

198.150.2.1128.234.7.2

Page 27: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

27

Camada de rede 53

Multicast

Quando a aplicação fonte gera uma mensagem, uma cópia dessa mensagem deverá ser entregue a cada um de vários destinos distintosMulticast emulado

• Fonte estabelece sessões unicast com cada um dos destinos

Multicast na camada de aplicação• Estações terminais constroem árvore multicast lógica sobre

a rede

Multicast na camada de rede• Encaminhadores constroem árvore multicast

Camada de rede 54

Tipos de multicast

Multicast emulado

Multicast na camada de aplicação

Multicast na camada de rede

Page 28: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

28

Camada de rede 55

Multicast na camada de rede

Questões fundamentais• Como endereçar os elementos de um grupo multicast?• Como realizar a entrada e saída de elementos do grupo multicast?• Como expedir um datagrama para todos os elementos de um

grupo multicast ?• Como desenhar protocolos de encaminhamento multicast, para

construção de tabelas de expedição multicast?Parâmetros para a comparação de protocolos de encaminhamento multicast

• Número máximo de elementos nos grupos multicast• Propagação de tráfego desnecessário• Concentração de tráfego • Caminhos óptimos

Camada de rede 56

Internet Group Management Protocol (IGMP)

Destinos de um grupo multicast partilham um mesmo endereço IP multicast, de classe DInternet Group Management protocol

• 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

Informação de estado soft• Encaminhador infere a inexistência de elementos de um

grupo multicast associados a uma interface

Page 29: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

29

Camada de rede 57

Árvores multicast

Árvore de grupo partilhada Árvores de fonte específicas

Camada de rede 58

Árvore de grupo partilhada

Todos os nós do grupo multicast partilham a mesma árvore Árvore de custo mínimo que cobre todos os nós do grupo

• Árvore de Steiner• Complexo do ponto de vista

computacional

4

32

1

122

1

Page 30: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

30

Camada de rede 59

Árvores de grupo centradas

Existe um nó que é escolhido como centroNós enviam mensagens de participação ao nó central usando encaminhamento unicastMensagens de participação são expedidas até que cheguem ao nó central ou até um nó que já pertença à árvore multicast

1

2

3

Camada de rede 60

Expedição por caminho inverso

Difusão de um datagrama por toda a rede usando as tabelas de expedição unicastDatagrama é recebido pela interface que conduz ao caminho mais curto até à origem do datagrama

• Encaminhador propaga o datagrama

Redução do número de cópias enviadas

• Encaminhadores designados• Mensagens de corte

Page 31: Camada de rede - Técnico Lisboa - Autenticação Camada de rede 5 Protocolos para encaminhamento dinâmico Vector-distância • Algoritmo distribuído para cálculo das distâncias

31

Camada de rede 61

Multicast na Internet

Distance Vector Multicast Routing Protocol (DVMRP)• Árvores de fonte• Expedição por caminho inverso

Multicast Open Shortest Path First (MOSPF)• Árvores de fonte

Core based Trees (CBT)• Árvore centrada

Protocol Independent Multicast (PIM)• Modo esparso: árvore centrada• Modo denso: árvores de fonte