0% acharam este documento útil (0 voto)
14 visualizações109 páginas

Funções e Modelos da Camada de Rede

O documento aborda a Camada de Rede em Redes de Computadores, detalhando serviços, funções, modelos de serviço e algoritmos de roteamento. Discute a diferença entre circuitos virtuais e datagramas, além de apresentar algoritmos como Dijkstra para determinar rotas eficientes. Também explora a classificação de algoritmos de roteamento e suas características em relação à carga e à informação disponível.

Enviado por

gepay96781
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
14 visualizações109 páginas

Funções e Modelos da Camada de Rede

O documento aborda a Camada de Rede em Redes de Computadores, detalhando serviços, funções, modelos de serviço e algoritmos de roteamento. Discute a diferença entre circuitos virtuais e datagramas, além de apresentar algoritmos como Dijkstra para determinar rotas eficientes. Também explora a classificação de algoritmos de roteamento e suas características em relação à carga e à informação disponível.

Enviado por

gepay96781
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Redes de Computadores II

Robson Augusto Siscoutto

robson@[Link]

Camada de Rede

1
Camada de Rede
Conteúdo Programático

◼ Serviços da camada de rede

◼ Roteamento: seleção de rotas

◼ Roteamento hierárquico

◼ Protocolo Internet – IPv4

◼ Protocolos de roteamento da internet


◼ Intra-domain

◼ Inter-domain

◼ Ipv6

2
Funções da Camada de Rede

◼ Transportar pacotes entre os aplicação


sistemas finais da rede transporte
rede
◼ A camada de rede deve ter uma enlace
rede
fisica
entidade em cada sistema final ou rede
enlace
enlace
fisica
rede
enlace
roteador da rede fisica fisica
rede
4 funções importantes: enlace
fisica rede
◼ Determinação de caminhos: rota enlace
fisica
escolhida pelos pacotes entre a
origem e o destino. Algoritmos de rede
rede
enlace
roteamento enlace fisica
fisica
◼ Comutação: mover pacotes entre rede
as portas de entrada e de saída enlace
fisica
aplicação
transporte
dos roteadores rede
enlace
◼ Estabelecimento de conexão: fisica

algumas arquiteturas de rede


exigem o estabelecimento de
circuitos virtuais antes da
transmissão de dados
◼ Controle de Congestionamento 3
Modelo do Serviço de Rede

Q: como escolher um
modelo de serviço para o
canal transportando Nível mais geral
pacotes da origem ao de abstração na
destino? camada de rede
Banda-passante garantida?

? ?

◼ Preservação dos intervalos circuito virtual
entre pacotes? ou
Entrega sem perdas? datagrama



Entrega em ordem?
Realimentação de informação
de congestionamento?
?
R: O modelo de serviço de rede define as caracteristicas do
transporte de dados fim a fim entre uma borda da rede e
outra (sistemas finais) 4
Modelo do Serviço de Rede
Circuitos Virtuais (VC)

“A ligação entre a origem e o destino emula uma


ligação telefônica”
◼ Orientado ao desempenho
◼ A rede controla a conexão entre a origem e o destino

◼ Estabelecimento da conexão deve proceder o envio de dados. Camada


de rede determina o caminho entre o remetente e o destinatário – série de
enlaces e comutadores de pacote por meio dos quais o pacote do CV terão
de trafegar.

◼ Liberação da conexão após os dados.

◼ Cada pacote transporte um identificador do CV, não transporta o endereço


completo do destino
5
Modelo do Serviço de Rede
Circuitos Virtuais (VC)

◼ Cada roteador na rota mantém informação de estado


para conexão que passa por ele.
◼ A conexão de camada de transporte envolve apenas os sistemas
finais;

◼ A banda passante e os recursos do roteador podem ser


alocado por VC
◼ Controle de Qualidade de Serviço por VC

6
Modelo do Serviço de Rede
Circuitos Virtuais: Sinalização
◼ Mensagens de Sinalização: Usadas para estabelecer, manter e
encerrar Circuitos Virtuais
◼ Manter = atualizar tabelas nos roteadores
◼ Protocolos de Sinalização utilizados para trocar tais mensagens
◼ Usados em: ATM, Frame-Relay e X-25, mas não na Internet

aplicação
6. Recebe Dados aplicação
transporte 5. Inicia Fluxo de dados
4. Chamada conectada 3. Aceita chamada transporte
rede
rede
enlace
enlace
fisica
fisica
1. Inicia Chamada 2. Chamada entrando
7
Modelo do Serviço de Rede
Redes Datagrama: o modelo da Internet
◼ Não existem conexões na camada de transporte
◼ Não há informação de estado de conexão nos roteadores
◼ Não existe conexão na camada de rede
◼ Pacotes tipicamente transportam o endereço de destino
◼ Pacotes para o mesmo destino podem seguir diferentes rotas

aplicação
aplicação
transporte
transporte
rede
rede
enlace 1. Envia dados 2. Recebe dados
enlace
fisica
fisica

8
Modelos de Serviço da Camada de Rede:
Parâmetros Garantidos
Arquitetura Modelo de Realim. de
de Rede Serviço Banda Perda Ordem Tempo Congestão

Internet Datagrama não não não não não (examina


perdas)
ATM CBR taxa sim sim sim não há
constante congestão
ATM VBR taxa sim sim sim não há
garantida congestão
ATM ABR mínimo não sim não sim
garantido
ATM UBR não não sim não não

• CBR – Constant bit rate, VBR – Variable bit rate,


ABR – available bit rate, UBR – unspecifed bit rate
9
Modelos de Serviço da Camada de Rede:
◼ Classes de serviços ATM
◼ Serviço de rede de taxa constante de bits (constant bit rate – CBR)
◼ Objetivo: fazer com que a conexão da rede pareça uma conexão dedicada
◼ Ideal para transmitir áudio a taxa constante de bits e trafego de vídeo em
tempo real;
◼ As células ATM são carregados através da rede de tal modo que se garante:
◼ O atraso fim a fim sofrido pela célula
◼ Variabilidade do atraso fim a fim
◼ Fraçao de células perdidas ou entregues depois sejam menores que do
que alguns valores especificados.
◼ Taxa de transmissão alocada

10
Modelos de Serviço da Camada de Rede:

◼ Classes de serviços ATM


◼ Serviço de rede de taxa de bits não especificada – UBR
◼ Não garante nada, a não ser a entrega das células na ordem
correta;
◼ Transferência de dados interativos, como e-mail e grupos de
discussões;

11
Modelos de Serviço da Camada de Rede:

◼ Classes de serviços ATM


◼ Serviço de rede de taxas de bits disponíveis – ABR
◼ Modelo aperfeiçoado do UBR
◼ Garantia de uma taxa mínima de transmissão
◼ Realimentação sobre congestionamento feita pela
rede;
◼ Muito útil para tráfego Web
◼ Manter baixos os atrasos de transferência

12
Modelos de Serviço da Camada de Rede:

◼ Classes de serviços ATM


◼ Serviço de rede de taxas de bits variável – VBR
◼ Em tempo real
◼ As taxas admissíveis de perda de células, atraso e
variância de atraso são especificadas como no
serviço CBR
◼ Serviços não em tempo real
◼ Garantem taxa de perda de células;

13
Datagrama versus Circuito Virtual

Internet ATM
◼ Dados trocados entre ◼ Originário da telefonia
computadores
◼ Conversação humana:
◼ Serviço elástico, requisitos de
atraso não críticos ◼ Tempos estritos,
◼ Sistemas finais inteligentes exigências de
◼ Podem adaptar-se, realizar
confiabilidade
controle e recuperação de ◼ Necessário para serviço
erros garantido
◼ A rede é simples, a ◼ Sistemas finais “burros”
complexidade fica nas pontas
◼ Ex: Telefones
◼ Muitos tipos de enlaces
◼ Complexidade dentro da
◼ Características diferentes
rede
◼ Difícil obter um serviço
uniforme

14
Roteamento 5
3
Protocolo de Roteamento B C 5
2
OBJ: determinar “bons” caminhos A 2 1 F
(seqüência de roteadores) através da 3
rede da fonte ao destino. 1 2
Menor Custo.
D E
1

Algoritmos de roteamento são • “bons” caminhos:


descritos por grafos: • tipicamente corresponde
aos caminhos de menor
◼ Nós do gráfico são
custo
roteadores
• caminhos redundantes
◼ Arestas do gráfico são (arestas com o mesmo
enlaces valor), vale o caminha mais
◼ Custo do enlace: atraso, curto
preço ou nível de congestão • Ex: caminho de menor
custo entre a fonte A e o
destino F
• A-D-E-F
15
Roteamento
◼ O problema de descobrir o caminho de menor
custo requer a identificação de uma serie de
enlaces:
◼ O primeiro enlace do caminho esteja conectado a fonte;

◼ O ultimo enlace no caminho esteja conectado ao destino;

◼ Para todo i, o enlace i e o i – 1 no caminho estejam conectados


ao mesmo nó, e

◼ Para o caminho de menor custo, a soma dos custos dos


enlaces no caminho seja a minima dentre todos os possiveis
caminhos entre a fonte e o destino.
◼ Se todos os custos forem iguais = menor numero de arestas

16
Classificação dos Algoritmos de Roteamento

Classificação 1 – Tipo da Informação Descentralizada:


◼ O calculo de menor custo é interativo e
Informação global ou descentralizada distribuído
Global: ◼ Roteadores só conhecem informações
sobre seus vizinhos e os enlaces para eles
◼ Calcula o caminho de menor custo entre ◼ Processo de computação interativo, troca
uma fonte e um destino usando de informações com os vizinhos
conhecimento completo e global sobre a ◼ algoritmos “Distance vector”
rede; ◼ Algoritmo de Bellman-Ford.
◼ Conectividade e custos
Classificação 2 - Quanto à mudança das rotas:
◼ Todos os roteadores tem informações Outra Forma: Estático ou Dinâmico?
completas da topologia e do custos dos ◼ Estático:
enlaces ◼ As rotas mudam lentamente ou não ao longo do tempo
◼ Dinâmico:
◼ As rotas mudam mais rapidamente
◼ algoritmos “Link state” ◼ Atualizações periódicas
◼ Algoritmo de Dijskstra ◼ Podem responder a mudanças no custo dos
enlaces
17
Classificação dos Algoritmos de Roteamento
Classificação 3 - Quanto à Sensibilização à carga?
◼ Sensível à carga:
◼ Custo de enlaces variam dinamicamente para refletir o nível atual de
congestionamento nos enlaces subjacentes.
◼ Se houver alto custo associado com um link que está congestionado, o algoritmo tende a
escolher rotas que evitam este
◼ enlace.
◼ Algoritmos antigos do DARPA eram sensíveis à carga, mas encontraram dificuldades em
sua aplicação e foram abolidos.

◼ Insensível à carga:
◼ Não levam em consideração congestionamento.
◼ Custo do enlace não reflete seu nível de congestionamento.
◼ É o caso dos algoritmos usados na Internet atualmente: RIP, OSPF e BGP.
18
Algoritmo Link-state - Algoritmo de Dijkstra’s
Algoritmo de Dijkstra’s Notação:
◼ Topologia de rede e custo dos enlaces são ◼ C(i,j): custo do enlace do nó i ao nó j.
conhecidos por todos os nós. Custo é infinito se não houver ligação
◼ Implementado via “link state entre i e j
broadcast” – cada roteador envia
informações ao outros rot.
◼ D(v): valor atual do custo do caminho
◼ Todos os nós têm a mesma informação
da fonte ao destino V

◼ Computa caminhos de menor custo de um


◼ P(v): nó predecessor ao longo do
nó (fonte) para todos os outros nós
caminho da fonte ao nó v, isto é, antes
◼ Fornece uma tabela de roteamento do v
para aquele nó
◼ N: conjunto de nós cujo caminho de
◼ Convergência: após k iterações, conhece menor custo é definitivamente conhecido
o caminho de menor custo para k
destinos.
19
5
Algoritmo de Dijsktra’s 3
B C 5
2
1 Inicialização: A 2 1 F
3
2 N = {A} 1 2
3 para todos os nós v D E
1
4 se v é adjacente a A
5 então D(v) = c(A,v) // custo do enlace
6 senão D(v) = infty // sem conexão, custo infinito
7
8 Loop
9 ache w  N tal que D(w) é um mínimo
10 acrescente w a N
11 atualize D(v) para todo v adjacente a w e não em N:
12 D(v) = min( D(v), D(w) + c(w,v) )
13 /* novo custo para v é ou o custo anterior para v ou o menor
14 custo de caminho conhecido para w mais o custo de w a v */
15 até que todos os nós estejam em N

20
Exemplo: Algoritmo de Dijkstra’s
Infinito pois
não estão
Calcular a distância mínima de A para todos os outros nós.
ligados
diretamente

Passo início N D(B),p(B) D(C),p(C) D(D),p(D) D(E),p(E) D(F),p(F)


0 A 2,A 5,A 1,A infinito infinito
1 AD 2,A 4,D 2,D infinito
2 ADE 2,A 3,E 4,E
3 ADEB 3,E 4,E
4 ADEBC 4,E
5 ADEBCF
5
3
Notação: B C 5
2
 D(v): valor atual do custo do caminho da fonte A 2 1 F
ao destino V 3
1 2
 P(v): nó predecessor ao longo do caminho da D E
1
fonte ao nó v, isto é, antes do v 21
Exercício de Link State
5 Passo início N D(A),p(A) D(B),p(B) D(C),p(C) D(E),p(E) D(F),p(F)
D 1,D 2,D 3,D 1,D INF
3
B C 5 DA 2,D 3,D 1,D INF
2
A DAE 2,D 2,E 3,E
2
3
1 F 2,E
DAEB 3,E
1 2
D E DAEBC 3,E
1 DAEBCF

4
Passo início N D(A),p(A) D(B),p(B) D(C),p(C) D(D),p(D) D(E),p(E)
1
B C 1
F
2
A 3 F
5
2
D E
2
3
22
Discussão do Algoritmo de Dijkstra
Complexidade do Algoritmo: n nós
◼ Cada iteração: precisa verificar todos os
nós w, que não estão em N
◼ N*(n+1)/2 comparações: o(n**2)
◼ Implementações mais eficientes:
o(nlogn)

23
Algoritmo “Distance Vector” – algoritmo Bellman-Ford

◼ Os algoritmos de roteamento, que usam vetor de distância, operam de


forma que cada roteador mantenha uma tabela (isto é, um vetor), que fornece a
melhor distância conhecida até o destino, e também indica qual linha deve
ser utilizada para a transmissão.

◼ Tais tabelas são atualizadas através da troca de informações com os vizinhos.

◼ Esse algoritmo pode ser conhecido também como Bellman-Ford (algoritmo


recebe esse nome pelo seu em homenagem aos seus pesquisadores, Bellman,
1957 e Ford em 1962)
Algoritmo “Distance Vector”
Iterativo:
◼ Continua até que os nós não
Estrutura de Dados da Tabela de Distância
troquem mais informações. ◼ Cada nó tem sua própria tabela
◼ Self-terminating: Não há sinal
◼ Linha para cada possível destino
de parada. ◼ Coluna para cada roteador vizinho
◼ Exemple: no nó X, para destino Y via vizinho Z:
Assíncrono:
◼ Os nós não precisam trocar
informações simultaneamente!
distância de X to
X = Y, via Z como prox. salto
Distribuído: D (Y,Z)
Z
◼ Cada nós se comunica = c(X,Z) + minw{D (Y,w)}
apenas com os seus Caminho
vizinhos, diretamente Direto Caminho Mínimo calculado
conectados; pelos vizinhos de x
◼ Troca de cálculos entre vizinhos;
25
Algoritmo “Distance Vector”
Exemplo de Tabela de Distância

1 custo via nó vizinho


B C E
Custo de E até A dado que o 7 D () A B D
primeiro passo ao longo do A 8 2
caminho é D: é o custo de ir de E
1 A 1 14 5
até D, mais qualquer que seja o E D
custo mínimo de ir de D até A. 2

E
B 7 8 5
Note que o caminho menor de D D
até A é 3 e esta rota passa D (C,D) = c(E,D) + minw {D (C,w)}
novamente por E ! = 2+2 =4 C 6 9 4
E D
D (A,D) = c(E,D) + min
w
{D (A,w)}
D 4 11 2
= 2+3 =5
E B
D (A,B) = c(E,B) + minw{D (A,w)} Ex: Distancia E – A passando po
= 8 + 6 = 14
Caminho A
Caminho
Direto Mínimo 27
A tabela de
Exemplo de Tabela de Distância distâncias gera a
tabela de
Tabela de distância roteamento
1
B C custo via nó vizinho
E
7 E
D ()
D () A B D Enlace de Saída, custo
A 8 2
1
E D A 1 14 5 A A,1
2

E D B 7 8 5 B D,5
D (D,B) = c(E,B) + minw{D (B,w)}
= 8 + 3 = 11 C D,4
E
C 6 9 4
B
D (B,B) = c(E,B) + minw{D (B,w)}
= 8+0 = 8 D 4 11 2 D D,2
E C
D (C,A) = c(E,A) + minw{D (A,w)} Ex: Distancia E – A passando por
= 1+5 =6 A
28
Exercício de Distance Vector
custo via nó vizinho
D
D () A B C E

A 1 4 6 3

B 3 2 6 4
5
1
B C
3 7
B C 5
C 4 5 3 2
2 A 8 2
A 2 1 F 1
3 E 3 5 4 1
1 E D
2 2
D E
1
F 5 7 6 3

29
Comparação dos Algoritmos LS e VD
Complexidade Robustez: o que acontece
◼ LS: com n nós, E links, o(ne) se um roteador funciona
mensagens enviadas mal?
◼ DV: trocas somente entre Ls:
vizinhos
◼ Nós podem advertir custos
◼ Tempo de convergência incorretos para os enlaces.
varia
◼ Cada nó calcula sua
Tempo de convergência própria tabela de
roteamento
◼ LS: algoritmo o(n**2) exige
o(ne) msgs Dv:
◼ Pode ter oscilações ◼ Nó pode advertir caminhos
◼ DV: tempo de convergência com custo incorreto
varia ◼ Tabela de cada nó é usada
◼ Podem haver loops de por outros
roteamento ◼ Propagação de erros pela
rede
◼ Problema da contagem ao
infinito
30
Roteamento Hierárquico
Problemas do mundo real
• roteadores não são todos idênticos
• as redes não são “flat” na prática

Escala: com 50 milhões de Autonomia Administrativa


destinos: ◼ Internet = rede de redes
◼ Não é possível armazenar ◼ Cada administração de rede
todos os destinos numa pode querer controlar o
única tabela de rotas! roteamento na sua própria
◼ As mudanças na tabela de rede
rotas irão congestionar os
enlaces!
31
Roteamento Hierárquico

◼ Agrega roteadores em roteadores de borda


regiões, “sistemas ◼ Roteadores de interface
autônomos ” (AS) de um AS
◼ Rodam protocolos de
◼ Roteadores no mesmo roteamento intra-as com
AS rodam o mesmo os outros roteadores do
protocolo de AS
roteamento ◼ Também responsáveis por
enviar mensagens para
◼ Protocolo de roteamento fora do AS
“Intra-as” ◼ Rodam protocolo de
◼ Roteadores em diferentes roteamento inter-as
AS podem rodar com outros rotea-
diferentes protocolos de dores de borda
roteamento

32
Roteamento Intra-as and Inter-as
C.b Roteadores de Borda
B.a • realizam
A.a roteamento inter-
b c AS entre si
a A.c
C a • realizam
b
a B roteamento intra-
d AS com outros
c roteadores do
A b
mesmo AS

Camada de rede
Roteamento inter-AS, Camada de enlace
intra-AS no roteador A.c
Camada fisica

33
Roteamento Intra-AS e Inter-AS
roteamento Inter-AS
entre A e B
C.b
B.a
A.a Host
b c h2
A.c
a a
C b
a B
Host
d roteamento Intra-AS
h1 c
A b dentro do AS B
roteamento Intra-AS
dentro AS A

34
A camada de rede da Internet
Entidade de rede em roteadores ou hosts:
Camada de Transporte: TCP, UDP

Prot. de roteamento protocolo IP


•escolha de caminhos •endereçamento
•RIP, OSPF, BGP •formato dos datagramas
Camada de •tratamento de pacotes
Rede tabela
de rotas protocolo ICMP
•aviso de erros
•sinalização de rotas

Camada de enlace

Camada física

RIP – protocolo de informação de roteamento – roteamento intraAS, OSPF


– open shorstest path first – roteamento intraAS, BGP – border gateway
protocol – roteamento interAS 35
Protocolo IP
Endereçamento IP
◼ endereço IP: identificador de 32-bits [Link]
para interfaces de roteadores e hosts [Link]
[Link]
[Link] [Link]

[Link]
◼ Total de 232
endereços; [Link] [Link]

◼ Interface: conexão entre roteador ou


host e enlace físico
◼ Roteador tem tipicamente múltiplas [Link]
[Link]
interfaces
◼ Hosts podem ter múltiplas interfaces
◼ endereços IP são associados com
interfaces, não com o host ou com o
roteador [Link] = 11011111 00000001 00000001 00000001

223 1 1 1

36
Endereçamento IP
◼ Endereço IP: [Link]

◼ parte de rede (bits mais [Link]


significativos) [Link]
[Link] [Link]
◼ parte de Host (bits menos
significativos)
[Link]
[Link] [Link]

◼ O que é uma rede? (na perspectiva do LAN


endereço)
◼ Interfaces de dispositivos com a [Link] [Link]
mesma parte de rede no endereço IP;

◼ Podem fisicamente se comunicar sem o


auxílio de um rotedor; rede consistindo de 3 redes IP
(para endereços IP começando com 223,
os primeiros 24 bits mais significativos
são o endereço de rede )

37
Endereçamento IP
endereçamento “class-full”:
28 rede = 256
224 hosts

216 rede = 16000


216 hosts = 65000

224 rede
28 Hosts = 256

38
Endereçamento IP
◼ Os bits de endereço para todos os hosts de uma determinada
rede compartilham um prefixo comum → chamado de
endereço de rede.

◼ Um endereço IP consiste de 32 bits, divididos em dois ou três


campos:
◼ Número de rede (network number)
◼ Número do host (host number)
ou então
◼ Número de rede (network number)
◼ Número de sub-rede (subnet number)
◼ Número de host (host number)

39
Endereçamento IP

◼ O roteador IP → usa o número de rede para enviar os pacotes


para a rede desejada.

◼ Uma vez na rede de destino → o número de sub-rede (caso


exista), é usado para enviar o pacote à sub-rede correspondente.

◼ Após isso, o número de host é utilizado para enviar o pacote à


estação de destino.

40
Endereçamento IP
Como encontrar as redes [Link] [Link]
[Link]
◼ Separe cada interface de
roteadores e hosts [Link]

[Link] [Link]
◼ Criar ilhas de redes isoladas

◼ Técnica de nuvens
[Link] [Link]
[Link] [Link]

[Link] [Link]

Sistema com seis [Link] [Link] [Link] [Link]


redes interconectadas

41
Endereçamento IP
◼ Endereços Classe A
◼ Atribui 8 bits para o campo de rede e um total de 24 bits para o restante do
endereço.
◼ Esta classe pode endereçar quase 17 milhões de diferentes nós em uma rede. Um
endereço classe A é usado para redes muito grandes.

◼ Endereços Classe B
◼ Um endereço classe B atribui 16 bits para o campo de rede e um total de 16 bits
para o restante do endereço.
◼ Isto permite endereçar cerca de 65.000 diferentes nós em uma rede.

◼ Endereços Classe C
◼ Um endereço classe C atribui 24 bits para o campo de rede e 8 bits para o resto do
endereço.
◼ Isto permite endereçar 254 diferentes nós na rede.

◼ É possível determinar se um endereço é classe A, B, ou C examinando os


primeiros bits do endereço.
◼ Para um endereço classe A → o primeiro bit é sempre 0.
◼ Para um endereço classe B → os dois primeiros bits são 10.
◼ Para um endereço classe C → os três primeiros bits são 110.

42
Endereçamento IP
◼ Todos os endereços dentro de uma mesma rede IP têm o mesmo network
address → o mesmo tipo de classe.

◼ Após a classe e o número da rede serem atribuídos:


◼ → o restante dos bits de endereço são alocados para o campo de host ou
subdividido em campos de sub-redes e de host.

◼ O que isso significa ?


◼ → usuário de uma rede pode utilizar os bits usados para a identificação de hosts e
subdividi-los de tal forma a obter um esquema de sub-redes e hosts
◼ → ou seja uma sub-divisão do número de endereçamento de host para aplicar como divisão de
sub-redes.

◼ Por exemplo: Um endereço classe B, dos 16 bist de host, podemos ter 8 bits
atribuídos para o campo de sub-rede e 8 bits para o campo de host.
◼ Isto permite cerca de 256 sub-redes com cerca de 256 hosts em cada uma.

43
Endereçamento IP

◼ Endereços de REDE
◼ Para se referir a uma rede particular → os bits dos
campos de sub-rede e de host são colocados
como 0 → chamado endereço de rede.

◼ Para se referir a uma particular sub-rede → os bits


do campo de host são colocado como 0. § [Link].000: • Network: todos os bits
de host ajustados para 0.
• n.n.n.0 – Exemplo: End. Rede para rede /24
◼ Exemplos: • n.n.0.0 – Exemplo: End. Rede para rede /16
◼ O endereço classe B identificado como [Link] • n.0.0.0 – Exemplo: End. Rede para rede /8
refere-se à rede 137.4. *.*
◼ O endereço classe C identificado como [Link]
refere-se à rede 200.17.28.*

44
Endereços IP - Broadcast
§ [Link].255:
◼ Endereços de broadcast • BroadCast : todos os bits de host ajustados para 1.
• n.n.n.255 – Exemplo: End. BroadCast para rede /24
◼ Um endereço IP pode também se referir a um • n.n.255.255 – Exemplo: End. BroadCast para rede /16
grupo de nós → endereço de broadcast. • n.255.255.255 – Exemplo: End. BroadCast para rede /8

◼ Para se referir a todos os nós em uma rede em


particular, os bits de sub-rede e de host são
ajustados para 1 → Endereço de broadcast;
◼ Exemplos:
◼ O endereço [Link]/8 Refere-se a todos os nós
da rede 15 /8
◼ O endereço [Link] Refere-se a todos os nós da
rede 200.17.28 /24

◼ Para se referir a todos os nós em uma rede


local, todos os bits de rede são ajustados
para 1
45
Endereços IP

◼ Endereços de broadcast

(*) Exceto endereços privados: 192.168

46
Endereços IP - Subneting e subnetmask (1)
◼ Algumas vezes pode ser necessário subdividir um conjunto de endereços IP
para criar redes menores, ou seja, sub-redes.
◼ Máscaras de sub-rede (subnetmasking) são usadas para indicar a subdivisão de
redes.
◼ Os administradores podem definir o campo de subnetmask para dividir uma rede em sub-
redes menores, de acordo com a conveniência necessária.
◼ Para se referir a todos os nós de uma sub-rede em particular, os bits de host
são ajustados para 1.

◼ A máscara de sub-rede diz para um roteador ou software específico quais


comprimento dos campos de rede e de host devem ser considerados para uma
determinada rede.
◼ Exemplo: [Link]/23
47
Endereços IP - Subneting e subnetmask (1)

48
Endereços IP - Subneting e subnetmask (1)
◼ Dividir uma rede /24 em 16 subredes e vamos utilizar 4
bits para identificar a subrede e 4 bits para identificar os
hosts.

◼ Máscara resultante = /28


◼ Cálculo da máscara:

◼ Binário 11110000 = 240


◼ Resulta na subnetmask à [Link]

49
Endereços IP - Reservados

◼ Endereços privados (categoria 1)


◼ 1 REDE /8:
◼ [Link] a [Link]
◼ 16 REDES /16:
◼ [Link] a [Link]
◼ 256 REDES /24:
◼ [Link] a [Link]

◼ Também chamados de:


◼ Endereços não roteáveis ou redes não roteáveis.
◼ Usados para redes locais
50
Endereços IP
◼ Não podem ser atribuídos a nenhuma estação:
◼ [Link]:
◼ Endereço de Loopack

◼ [Link].255:
◼ BroadCast : todos os bits de host ajustados para 1.
◼ n.n.n.255 – Exemplo: End. BroadCast para rede /24
◼ n.n.255.255 – Exemplo: End. BroadCast para rede /16
◼ n.255.255.255 – Exemplo: End. BroadCast para rede /8

◼ [Link].000:
◼ Network: todos os bits de host ajustados para 0.
◼ n.n.n.0 – Exemplo: End. Rede para rede /24
◼ n.n.0.0 – Exemplo: End. Rede para rede /16
◼ n.0.0.0 – Exemplo: End. Rede para rede /8

◼ [Link]:
◼ Endereço de Inicialização (DHCP)
51
Endereçamento IP: CIDR

◼ Endereçamento “Classful – classe cheia”:


◼ Uso ineficiente do espaço de endereçamento, exaustão do espaço de endereços
◼ E.G., rede de Classe B aloca endereços para 65K hosts, mesmo se só existem 2000
hosts naquela rede

◼ CIDR: classless interdomain routing


◼ A porção de endereço de rede tem tamanho arbitrário
◼ Formato do endereço: a.B.C.D/x, onde x é o número de bits na parte de rede do
endereço
parte de parte de
rede host
11001000 00010111 00010000 00000000
[Link]/23
52
Como obter um endereço IP

Rede (porção de rede)


◼ Obter uma parte do espaço de endereços
do seu ISP:
bloco do ISP 11001000 00010111 00010000 00000000 [Link]/20
23 bits=8 redes

Organização 0 11001000 00010111 00010000 00000000 [Link]/23

Organização 1 11001000 00010111 00010010 00000000 [Link]/23

8 redes Organização 2 11001000 00010111 00010100 00000000 [Link]/23


... ….. …. ….

Organização 7 11001000 00010111 00011110 00000000 [Link]/23

53
Endereçamento Hierárquico: agregação de rotas

Essa capacidade de usar um unico prefixo de rede para anunciar


Mulitplas redes é conhecido como agregação de rotas ou redes.

O endereçamento hierárquico permite uma propagação de rotas


mais eficiente:

Organização 0
[Link]/23
Organização 1
“Me envie qualquer coisa com
[Link]/23 endereço começando por
Organização 2 [Link]/20”
[Link]/23 . Fly-By-Night-ISP
.
. . Internet
.
Organização 7 .
[Link]/23
“Me envie qualquer coisa com
ISPs-R-Us
endereço começando por
[Link]/16”
54
Roteamento Hierárquico:rotas mais específicas

• Organização 1 migra mantendo seu numero. O numero /XX maior vale;


• ISPs-R-Us tem uma rota mais específica para a organização 1: Quando outros roteadores virem o
• anuncia um prefixo de endereço mais longo (mais específico) que anúncio dos blocos de endereço
combina com o endereço destino. [Link]/20 e [Link]/23 e
• Regra de compatibilização com o prefixo mais longo. quiserem rotear para um endereço
no bloco [Link]/23 eles vão
Organização 0 usar a regra de ajuste ao prefixo
[Link]/23 mais longo e rotear em direção
“Me envie qualquer coisa endereço de rede maior (mais
com endereço começando por específico) que casa com o
Organização 2 [Link]/20” endereço de destino.
[Link]/23 . Fly-By-Night-ISP
.
. . Internet
.
Organização 7 .
[Link]/23
“Me envie qualquer coisa
ISPs-R-Us
com endereço começando por
Organização 1 [Link]/16 ou [Link]/23”
[Link]/23
55
Como obter um endereço IP...

Q: Como o ISP obtém seu bloco de endereço?


A: ICANN: internet corporation for assigned
names and numbers
◼ Aloca endereços
◼ Gerencia DNS, principalmente raiz.
◼ Atribuí nomes de domínios e resolve disputas

◼ No Brasil, estas funções foram delegadas ao Registro Nacional


([Link] sediado na FAPESP (SP), e comandado pelo
Comitê Gestor Internet BR (CG-Br)
56
Levando um Datagrama da Fonte ao Destino
tabela de roteamento
em A
Rede destino próx. roteador Núm. saltos

223.1.1 1
223.1.2 [Link] 2
datagrama IP: 223.1.3 [Link] 2
outros endereço endereço
IP origem IP destino dados
campos A [Link]

• os endereços do [Link]
datagrama não mudam ao [Link]
viajar da fonte ao destino [Link] [Link]
B
[Link]
[Link] [Link] E

[Link] [Link]

57
Levando um Datagrama da Fonte ao
Destino

outros Rede destino Próx. roteador Núm. saltos


dados
campos [Link] [Link]
223.1.1 1
Começando em A, levar datagrama IP para B: 223.1.2 [Link] 2
223.1.3 [Link] 2
• examine endereço de rede de B
• descobre que B está na mesma rede de A (usando
o prefixo do endereço) A [Link]
• camada de enlace envia datagrama diretamente
para B num quadro da camada de enlace [Link]
[Link]

• Se necessário descobre endereço físico de B [Link] [Link]


• B e A são diretamente conectados B
[Link]
[Link] [Link] E

[Link] [Link]

58
Levando um Datagrama da Fonte ao
Destino

outros Rede destino Próx. roteador Núm. saltos


dados
campos [Link] [Link]
223.1.1 1
Começando em A, dest. E: 223.1.2 [Link] 2
• examina endereço de rede de E 223.1.3 [Link] 2
• E está num rede diferente
• A, E não
A [Link]

• tabela de roteamento: próximo roteador para [Link]


E é [Link] [Link]
[Link]
• encontra endereço físico de [Link] e envia [Link]
o datagrama num quadro de enlace B
[Link]
• datagrama chega em [Link] [Link] [Link] E
• continua…..
[Link] [Link]

59
Levando um Datagrama da Fonte ao
Destino
Próx. Núm. Endereço
outro Rede destino roteador saltos Interface
dados
campos [Link] [Link]
223.1.1 - 1 [Link]
Chegando em [Link], destined 223.1.2 - 1 [Link]
for [Link] 223.1.3 - 1 [Link]
• examina endereço de rede de E
• E está na mesma rede da A [Link]
interface [Link] do roteador [Link]
• roteador e E estão [Link]
diretamente ligados [Link] [Link]
• descobre endereço físico de B
[Link]
[Link] e envia o datagrama [Link] [Link] E
num quadro da camada de enlace
• datagrama chega em [Link]!!! [Link] [Link]
(ufa!)

60
Levando um Datagrama da Fonte ao Destino

◼ “saltando” de um roteador até outro, até seu destino final.


◼ Conforme o roteamento determina.

◼ Processo chama “encaminhamento”.

◼ Há 2 tipos:
◼ Encaminhamento indireto.
◼ Encaminhamento direto.
Para fazer o encaminhamento

◼ Para enviar um datagrama um emissor vai:


◼ 1. Encapsular o datagrama IP num frame da camada de enlace.

◼ [Link] o endereço de destino do frame (endereço MAC) como


sendo aquele do destino.
◼ Destino é determinado pela rota a seguir.

◼ [Link] o hardware da rede local para entregar ao próximo passo


de rota.
◼ Camada Datalink ou enlace (MAC).
Para fazer o encaminhamento

◼ Encaminhamento indireto
◼ Quando um host de origem deseja enviar algo para outro host de destino:
◼ Descobre a rota a seguir.
◼ Se é um host: rota default (gateway)
◼ Obtém o IP do gateway.
◼ Obtém o endereço MAC (enlace) do IP do Gateway.
◼ Usa Protocolo ARP (visto mais adiante).
◼ Encapsula o datagrama IP num frame da camada de enlace com destino ao
roteador.
◼ O datagrama passa de roteador a roteador, até chegar a um que possa
entrega-lo diretamente.
◼ Quando um frame chega no roteador:
◼ O software do roteador extrai o datagrama encapsulado, e seleciona o próximo roteador
ao longo do caminho em direção ao destino e repete o processo.
Para fazer o encaminhamento
◼ Encaminhamento direto
◼ Encaminhamento direto é sempre o passo final de qualquer
transmissão de datagrama.
◼ Sempre o roteador final se conectará diretamente à mesma rede física do destino.
◼ Chamado de “último passo da rota” (last hop).

◼ Último roteador da rota:


◼ extraia parte da rede do endereço IP de destino.
◼ compara à parte de rede de seu próprio endereço.
◼ Se houver correspondência, significa que o datagrama pode ser enviado
diretamente, na mesma rede.
Levando um Datagrama da Fonte ao Destino

◼ O Datagrama da origem ao destino não altera os IPs origem e destino originais. Mas os
endereços de enlace são sempre do próximo passo da rota
Como obter um endereço IP - DHCP
Hosts :
◼ Endereço fixo (manual): definido pelo administrador

◼ DHCP: dynamic host configuration protocol: permite a atribuição dinâmica de endereços


IP
◼ O DHCP usa as portas 67 e 68;
◼ Usa o protocolo UDP na camada de transporte.
◼ Pode renovar o empréstimo pelo uso do endereço
◼ Permite a reutilização de endereço (retém o endereço apenas quando está conectado);
◼ O DHCP pode retornar mais do que apenas ovendereço IP alocado na subrede
◼ Endereço do próximo roteador para o cliente
◼ Nome e endereço IP do servidor DNS
◼ Máscara de rede (indicando as porções do endereço que identificam a rede e o hospedeiro)

66
Como obter um endereço IP

◼ DHCP: Mensagens trocadas


◼ Host envia (broadcast) mensagem “DHCP
discover”
◼ DHCP server responde com mensagem
“DHCP offer”
◼ Host pede endereço IP com mensagem :
“DHCP request”
◼ DHCP server envia endereço mensagem:
“DHCP ack”

67
Formato do Datagrama IP
versão do Protocolo IP 32 bits tamanho total
do datagrama
tamanho do header type of
ver head. service lenght
(bytes)
(bytes) len
fragment para
16-bit identifier flgs fragmentação/
Classe de serviço offset
-Especificar a importância do datagrama
time to proto- Internet remontagem
-D: solicita atraso pequeno
-T: solicita alta performance
live col checksum
-R: solicita alta confiabilidade
32 bit endereço IP de origem

número máximo 32 bit endereço IP de destino


de saltos Ex. timestamp,
Opções (se houver)
(decrementado em registro de rota
cada roteador) data lista de rotea-
(tamanho variável , dores a visitar.
Protocolo da camada
superior com dados no tipicamente um segmento Para testes e
datagrama TCP ou UDP) debugging da rede

68
IP Fragmentação e Remontagem
◼ enlaces de rede têm MTU ([Link]
size) - corresponde ao maior frame que
pode ser transportado pela camada de fragmentação
enlace. in: um datagrama grande
out: 3 datagramas menores
◼ tipos de enlaces diferentes possuem
MTU diferentes (ethernet: 1518 bytes)

◼ datagramas IP grandes devem ser


reassembly
divididos dentro da rede (fragmentados)
◼ um datagrama dá origem a vários
datagramas
◼ “remontagem” ocorre apenas no
destino final
◼ O cabeçalho IP é usado para
Todos os protocolos de enlace suportado pelo IP tem
identificar e ordenar datagramas MTU = 536 bytes paylod + 40 de Header (MSS –
relacionados tamanho máximo do segmento); 69
IP Fragmentação e Remontagem
tamanho ID fragflag offset
=4000 =x =0 =0
Datagrama de 4000 bytes = 20 bytes de cabeçalho + 3980 dados
MTU de 1500 bytes.
Um grande datagrama se torna vários datagramas menores
tamanho ID fragflag offset
=1480 =x =1 =0

tamanho ID fragflag offset


=1480 =x =1 =1480

tamanho ID fragflag offset


=1020 =x =0 =2960

Tamanho: numero de bytes de dados no datagrama;


ID: identificação;
FragFlag: 1 – existe outros fragmentos e 0 é o ultimo fragmento
Offset ou deslocamento: indica que os dados devem ser inseridos a partir
70
do byte identificado
NAT: Network Address Translation (1)
◼ Associar de um endereço IP (geralmente externo) com outro IP (geralmente
privado/interno), mantendo uma associação entre portas externas e internas que
estão em uso por cada processo IPexterno > ao IPlocal.
◼ Assim, redes locais podem utilizar apenas um endereço IP de entrada e saída
externos, com diversos Ips internos à rede local.
◼ Motivação:
◼ Esgotamento dos endereços IPv4.
◼ Permitir alterar os endereços dos dispositivos na rede local sem precisar notificar o mundo exterior.
◼ Mudar de ISP sem alterar os endereços na rede local.
◼ Dispositivos da rede local não são explicitamente endereçáveis ou visíveis pelo mundo exterior (um
adicional de segurança ?).

71
NAT: Network Address Translation (2)

72
NAT: Network Address Translation (3)
◼ Implementação: o roteador NAT deve:
◼ Datagramas que saem:
◼ Substituir (endereço IP de origem interno, porta #) para (endereço IP válido do NAT, nova porta #).
◼ . . . Hosts remotos respondem usando (endereço IP do NAT, nova porta #) como
endereço de destino.
◼ Armazena na tabela de tradução do NAT: cada (endereço IP de origem interno, porta
#) com o par de tradução (endereço IP do NAT, nova porta #).

◼ Datagramas que chegam:


◼ substituir (endereço IP do NAT, nova porta #) nos campos de destino de cada datagrama pelos
correspondentes (endereço IP de origem, porta #) armazenados da tabela NAT.

◼ Campo número de porta com 16 bits: 60.000 conexões simultâneas com um único
endereço de LAN.

73
NAT: Network Address Translation (4)

◼ Carrier-grade NAT (CGNAT)


◼ CGNAT é a NAT de Operadora (CGN) – Para
Provedores
◼ Ou NAT de grande escala (LSN - Large Scale NAT) ou NAT444

◼ Semelhante ao NAT comum, mas usa uma faixa


de endereços específicos (RFC-6598).
◼ Shared Address Space para ISP CGNAT
◼ CGNAT has its own reserved IP range between [Link] and [Link]
74
ISP will traditionally allocate IPv4 addresses

CGNAT has been applied by your ISP


75
ARP - Address Resolution Protocol RFC-826

◼ Usado para mapeamento entre Endereços Físicos (geralmente ethernet) e


Endereços Internet (IP)

◼ Internet → cada máquina possui um (ou mais) endereços IP.

◼ Entretanto → endereços IP não podem ser usados para enviar frames, pois o
hardware da camada de enlace de dados não entende endereços Internet.

◼ Em geral → a placa de rede da LAN só entende endereços de LAN.

◼ Por exemplo: as placas ethernet possuem endereços MAC ethernet de 48 bits e elas
não sabem nada sobre os endereços IP de 32 bits da Internet.

◼ Problema: como os endereços IP são mapeados nos endereços da camada de


enlace de dados (endereços ethernet) ?
◼ O ARP faz via broadcast uma pergunta (Request): quem tem o IP tal? A maquina que tem
responde com o MAC dela diretamente para que pediu (Reply);

76
RFC-903

RARP - Reverse Address Resolution Protocol


◼ “Qual é o endereço IP que corresponde a um
determinado endereço ethernet - MAC? ”
◼ Solução ! RARP - Reverse ARP

◼ Desvantagem do RARP:
◼ ele usa endereço de destino composto de difusão limitada
(campo de host composto de bits all-1) ! é preciso um servidor RARP
em cada rede local pois roteadores não encaminham broadcast.

◼ Para solucionar este problema ! BOOTP (RFC-951, 1048 e


1084)
◼ Ao contrário do RARP, o BOOTP usa mensagens UDP que são enviadas
pelos roteadores.
◼ O BOOTP também pode fornecer informações adicionais para
as estações de trabalho que dele se utilizam.
◼ É possível haver um servidor de BOOTP único para uma rede
complexa, com várias redes locais.

77
Protocolo ICMP:
Internet Control Message Protocol
RFC 792

◼ usado por computadores e roteadores para troca de


informação de controle da camada de rede:
◼ Identificação de erros: host, rede, porta ou
protocolo Tipo Código descrição
◼ echo request/reply (usado pela aplicação ping) 0 0 Respota de Echo (ping)
◼ transporte de mensagens: 3 0 rede de dest. inalcançável
3 1 Host de dest. inalcançável
◼ mensagens ICMP transportadas em datagramas 3 2 Protocolo dest. inalcançável
Ip 3 3 Porta de Dest. inalcançável
◼ ICMP message: 3 6 Redes de Dest. Desconh.
◼ Campo de tipo, código, mais primeiros 8 bytes do 3 7 Host dest. desconhecida
datagrama IP que causou o erro 4 0 redução da fonte (controle
de congest – não usado)
8 0 solicitação de echo (ping)
◼ Usado em ferramentas vitais de administração e 9 0 anuncio do router
monitoramento à ping e traceroute. 10 0 Descoberta do router
11 0 TTL expirado
12 0 cabeçalho IP inválido
78
• no de porta improvável
Protocolo ICMP
• O transmissor envia uma série de segmentos UDP destino
◼ O 1o possui TTL = 1
◼ O 2o possui TTL = 2
◼ etc.
◼ Usa No de porta de destino improvável (exemplo 30000)

• Quando o datagrama M chega ao roteador N:


• O roteador descarta o datagrama
• E envia à origem uma mensagem ICMP (type 11, code 0 - TTL expirado)
• A mensagem inclui o nome do roteador e o endereço IP
• Quando a mensagem ICMP chega, a origem calcula o RTT
• O traceroute faz isso três vezes

• Critério de interrupção
• O segmento UDP finalmente chega ao hospedeiro de destino
• O destino retorna o pacote ICMP “hospedeiro unreachable” (type 3, code 3 - Porta de Dest. inalcançável)
• A origem interrompe quando receber essa msg ICMP.
Protocolo ICMP ◼ Mensagens de redirecionamento
• Neste exemplo H1 envia para R1 um datagrama destinado a
rede N2.

• Entretanto, R1 verifica que R2 está na mesma rede e possui


uma rota direta para N2.

Então, R1 redireciona o datagrama para R2 e envia uma


mensagem ICMP de redirecionamento (Redirect Message) para o
host H1 que guardará em cache a nova rota para ser utilizada na
próxima vez.

• Comando no linux para listar a entradas no cache da tabela de


roteamento:
ip route show

Ex:

Meu IP
Roteamento na Internet
◼ A Internet consiste de Sistemas Autônomos (AS)
interconectados entre si:
◼ Stub AS: pequena corporação
◼ Multihomed AS: grande corporação (sem tráfego de trânsito)
◼ Transit AS: provedor

◼ Dois níveis de roteamento:


◼ Intra-AS: o administrador é responsável pela definição do
método de roteamento
◼ Inter-AS: padrão único 81
Hierarquia de AS
Roteador de borda Inter-AS (exterior gateway)

Roteador interno Intra-AS (gateway)

82
Roteamento Intra-AS

◼ Também conhecido como Interior Gateway Protocols ou


Protocolos de Roteamento Internos (IGRP)

◼ IGRPs mais comuns:

◼ RIP: Routing Information Protocol


◼ OSPF: Open Shortest Path First
◼ EIGRP: Enhanced Interior Gateway Routing
Protocol (proprietário da Cisco)

83
RIP ( Routing Information Protocol)
V1 – RFC 1058 e DEMAIS RFC 1723

◼ Um dos primeiros protocolos de roteamento Intra-AS


◼ Surgiu do XNS – Xerox Network Systems
◼ Algoritmo do tipo vetor distância
◼ o RIP converge proporcionalmente ao número de nós da rede;
◼ Incluso na distribuição do BSD-UNIX em 1982
◼ Métrica de distância: # de saltos (max = 15 saltos)
◼ motivo: simplicidade
◼ Vetores de distância: trocados cada 30 sec via uma mensagem de
resposta RIP pela porta 520 (também chamado advertisement, ou
anúncio)
◼ Cada anúncio: indica tabela de rotas para até 25 redes de destino
84
RIP (Routing Information Protocol)

z
w x y
A D B

C
Rede de Destino Proximo Router Num. de saltos para dest.
w A 2
y B 2
z B 7
x -- 1
…. …. ....
Tabela de roteamento em D

85
RIP: Falha de Enlaces e Recuperação

Se não receber tabelas de rotas depois de 180 sec --> o


vizinho e o enlace são declarados mortos

◼ rotas através do vizinho são anuladas

◼ novos anúncios são enviados aos vizinhos

◼ os vizinhos por sua vez devem enviar novos anúncios (se suas
tabelas de rotas foram alteradas)

◼ a falha de um enlace se propaga rapidamente para a rede inteira


86
RIP Processamento da tabela de rotas

◼ O RIP é um protocolo da camada de aplicação;


◼ As tabelas de roteamento do RIP são manipuladas por um processo de
aplicação chamado routed (daemon)
◼ Mantém a tabela de roteamento e troca msgs com outros routed vizinhos
◼ anúncios são enviados em pacotes UDP com repetição périódica

87
Exemplo de tabela RIP

Roteador: [Link]
Destination Gateway-IP Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
[Link] [Link] UH 0 26492 lo0
192.168.2. [Link] U 2 13 fa0
193.55.114. [Link] U 3 58503 le0
192.168.3. [Link] U 2 25 qaa0
[Link] [Link] U 3 0 le0
default [Link] UG 0 143454

• 3 redes classe C diretamente conectadas (LANs)


• Interfaces: fa0, le0 e qaa0
• Roteador somente conhece rotas para as LANS locais (nesse caso particular)
• rota Default usada para mandar mensagens para fora
• endereço de rota multicast: [Link]
• Loopback interface (para depuração): [Link]

88
OSPF (Open Shortest Path First)
RFC 2178

◼ “open”: publicamente disponível


◼ Utilizada para roteamento Intra-AS;
◼ Usa algoritmo do tipo Link State
◼ disseminação de pacotes LS
◼ Mapa topológico em cada nó
◼ usa algoritmo de Dijkstra’s para cálculo de rotas

◼ anúncios do OSPF transportam um registro para cada roteador vizinho

◼ OSPF converge em uma proporção logarítmica ao número de enlaces.

◼ Anúncios são distribuídos para todo sistema autônomo – AS (via


flooding - inundação de informação de estado de enlace)
89
OSPF características avançadas
◼ Segurança: todas as mensagens do OSPF são autenticadas (para previnir intrusão de
hackers); usa conexões TCP para as suas mensagens

◼ Múltiplos caminhos de mesmo custo são permitidos (o RIP só permite um caminho


para cada destino)

◼ Para cada enlace podem ser calculadas múltiplas métricas uma para cada tipo de
serviço -TOS (ex, custo de enlace por satélite definido baixo para tráfego de “melhor
esforço” e alto para serviços de tempo real)

◼ Integra tráfego unicast e multicast :


◼ Multicast OSPF (MOSPF) fornece extensões simples ao OSPF para prover roteamento multicast;
◼ Usa a mesma base de dados topológica de enlaces do OSPF e adiciona um novo tipo de
anúncio de estado do enlace ao mecanismo OSPF de transmissão do estado de enlace;

90
OSPF características avançadas
◼ OSPF Hierárquico:
◼ Suporte para hierarquia dentro de domínio de roteamento;
◼ Capacidade de estruturar hierarquicamente um sistema autônomo;

◼ Um sistema autônomo pode ser configurado em áreas:


◼ Cada área roda seu próprio algoritmo de Roteamento OSPF;
◼ Cada roteador em uma área transmite seu estado de enlace a todos os outros roteadores
daquela área;
◼ Detalhes internos de uma área permanecem invisíveis para os outros roteadores externos a
aquela área;

◼ Dentro de cada área, roteadores de borda de área, são responsáveis pelo roteamento de
pacotes para fora da área;

◼ Uma área do OSPF é configurada para ser o backbone.

91
Troca informações de
OSPF Hierárquico roteamento com roteadores
de outros AS

Roteador de Borda do AS
Roteamento
dentro da área
e do backbone
Roteamento
dentro do
backbone

Roteamento
dentro da área
92
EIGRP (Enhanced Interior Gateway Routing Protocol)

◼ Protocolo proprietário da CISCO; sucessor do RIP (meados


dos anos 80)

◼ Vetor distância, como RIP

◼ várias métricas de custo (atraso, banda, confiabilidade, carga,


etc.)

◼ usa o TCP para trocar informações de novas rotas

◼ Loop-free routing via Distributed Updating Algorithm (DUAL)


baseado em técnicas de computação difusão de mensagens
para calcular de maneira rápida os caminhos de roteamento
sem loop 93
Inter-AS routing

AS3
AS2

AS1

94
Internet inter-AS
routing: BGP
AS3
AS2

RFC 1771, rfc 1772 e rfc 1773 AS1

◼ BGP (Border Gateway Protocol): é o padrão de fato para uso na


Internet
◼ O BGP permite que cada AS conheça quais destinos podem ser
alcançados via seus AS’s vizinhos;
◼ o BGP faz uso da porta TCP identificada pelo número 179;
◼ BGP utiliza prefixos ciderizados, sendo que cada prefixo representa
uma sub-rede ou um conjunto de sub-redes

◼ Ex1: 4 sub-redes conectadas ao AS2: 138.16.64/24, 138.16.65/24,


138.16.66/24 e 138.16.67/24
◼ AS2 pode agregar os prefixos das 4 sub-redes e utilizar o BGP para
anunciar ao AS1 o prefixo único 138.16.64/22

◼ Ex2: as primeiras 3 sub-redes estão no AS2 e a última no AS3


◼ Roteadores usam Regra de compatibilização com o prefixo mais longo:
◼ AS3 anuncia a AS1 o prefixo mais específico 138.16.67/24
◼ AS2 anuncia a AS1 o prefixo agregado 138.16.64/22 95
Internet inter-AS routing: BGP
RFC 1771, rfc 1772 e rfc 1773

◼ Algoritmo Path Vector – protocolo vetor de caminho :


◼ similar ao protocolo Distance Vector,
◼ cada Border Gateway envia, em broadcast, aos seus vizinhos
(peers) o) até o destino via anúncios:caminho inteiro (isto é a
seqüência de AS’s - rotas
◼ e não informações de custo - Ex: numero de saltos.
◼ evita loops de roteamento

◼ Ex: Roetador X deve enviar seu caminho até o destino Z:

Path (X,Z) = X,Y1,Y2,Y3,…,Z

X pode enviar datagramas para Z via AS´s: X,Y1,Y2,Y3,…,Z

96
Internet inter-AS routing: BGP
RFC 1771, RFC 1772 e RFC 1773

◼ Pares BGP definem uma rota trocando alguns


atributos dentro de anúncios, [Link]:
◼ AS-PATH
◼ Este atributo contém os AS’s pelos quais passou o anúncio para o
prefixo;
◼ Quando um anuncio passa por um AS, este adiciona seu numero de
sistema autônomo (ASN) ao atributo AS-PATH;
◼ AS2 para AS1 e AS1 para AS3 = AS-PATH = AS2 AS1

◼ NEXT-HOP
◼ Um par de AS (A e B) possui vários enlaces físicos conectados
diretamente entre eles;
◼ Quando um pacote é repassado de A para B, poderia ser
enviado por qualquer enlace direto;
◼ Um roteador de A pode receber varias rotas para um mesmo prefixo
– destino – mas pode escolher um roteador de próximo salto
diferente (rotas diferentes para cada pacote recebido) 97
Internet inter-AS routing: BGP
Suponha: roteador X envia seu caminho ao roteador parceiro W
◼ W pode escolher ou não o caminho oferecido por X
◼ critérios de escolha: custo, regras (não rotear através de AS
rivais ), prevenção de loops.

◼ Se W seleciona o caminho oferecido por X, então:


Path (W,Z) = w, Path (X,Z) = w, X,Y1,Y2,Y3,…,Z

◼ Nota: X pode controlar o tráfego de entrada (filtrar) controlando as


rotas que ele informa aos seus parceiros:
◼ ex., se X não quer rotear tráfego para Z, X não informa
nenhuma rota para Z
◼ Isso é chamado de política de importação. 98
Internet inter-AS routing: BGP
◼ As mensagens do BGP são trocadas encapsuladas no TCP.
◼ Anúncios/mensagens BGP:

◼ OPEN: inicia a conexão TCP com um roteador parceiro e


autentica o transmissor e porta 179

◼ UPDATE: anuncia novo caminho – rota (ou retira um velho)

◼ KEEPALIVE mantém a conexão viva em caso de ausência de


atualizações; também reconhece mensagens OPEN

◼ NOTIFICATION: reporta erros nas mesnagens anteriores;


também usado para encerrar uma conexão

99
Por que os protocolos Intra- e Inter-AS são diferentes ?

Políticas:
◼ Inter-AS: a administração quer ter controle sobre como seu tráfego é roteado e sobre
quem roteia através da sua rede;
◼ Intra-AS: administração única: as decisões políticas são mais simples.

Escalabilidade
◼ O roteamento hierárquico poupa espaço da tabela de rotas e reduz o tráfego de
atualização.

Performance:
◼ Intra-AS: preocupação maior é desempenho;
◼ Inter-AS: regras de mercado podem ser mais importantes que desempenho.

100
IPv6

◼ Motivação inicial: o espaço de endereços de 32-bits estará completamente


alocado por volta de 2008.

◼ Motivação adicional:
◼ melhorar o formato do header para permitir maior velocidade de processamento e de
transmissão
◼ mudanças no header para incorporar mecanismos de controle de QOS
◼ novo tipo de endereço: “anycast” - permite enviar uma mensagem para o melhor dentre
vários servidores replicados
◼ 3 tipos de endereços no IPv6: Unicast, Unycast e Multicast

◼ IPv6 formato dos datagramas:


◼ cabeçalho fixo de 40 bytes
◼ não é permitida fragmentação
101
IPv6 Header (Cont)
Priority: permitir definir prioridades diferenciadas para vários fluxos de
informação
Flow Label: identifica datagramas do mesmo “fluxo.” (conceito de “fluxo” não é
bem definido).
Next header: identifica o protocolo da camada superior ou um header auxiliar

102
Outras mudanças do IPv4

◼ Checksum: removido inteiramente para reduzir o tempo de


processamento em cada hop

◼ Options: são permitidas, mas são alocadas em cabeçalhos


suplementares, indicados pelo campo “Next Header”

◼ ICMPv6: nova versão de ICMP


◼ tipos de mensagens adicionais , ex. “Packet Too Big”
◼ funções de gerenciamento de grupos multicast

103
Transição do IPv4 para IPv6

◼ Nem todos os roteadores poderão ser atualizados simultaneamente


◼ não haverá um dia da vacinação universal

◼ A rede deverá operar com os dois tipos de datagramas simultaneamente


presentes

◼ Duas abordagens propostas:


◼ Dual Stack: algusn roteadores com pilhas de protocolos duais (v6, v4) podem trocar
pacotes nos dois formatos e traduzir de um formato para o outro

◼ Tunneling: IPv6 transportado dentro de pacotes IPv4 entre roteadores IPv4

104
Abordagem de Pilha Dupla

De A para F tudo em IPv6, mas quando o pacote passo pelo C e D há perda


De informações pois o pacote IPv4 é menor;
Solução: tunelamento 105
Tunelamento
IPv6 dentro do IPv4 onde necessário

106
Como obter um endereço IP - DHCP
Hosts :
◼ Endereço fixo (manual): definido pelo administrador

◼ DHCP: dynamic host configuration protocol: permite a atribuição dinâmica de endereços


IP
◼ O DHCP usa as portas 67 e 68;
◼ Usa o protocolo UDP na camada de transporte.
◼ Pode renovar o empréstimo pelo uso do endereço
◼ Permite a reutilização de endereço (retém o endereço apenas quando está conectado);
◼ O DHCP pode retornar mais do que apenas ovendereço IP alocado na subrede
◼ Endereço do próximo roteador para o cliente
◼ Nome e endereço IP do servidor DNS
◼ Máscara de rede (indicando as porções do endereço que identificam a rede e o hospedeiro)

107
Como obter um endereço IP

◼ DHCP: Mensagens trocadas


◼ Host envia (broadcast) mensagem “DHCP
discover”
◼ DHCP server responde com mensagem
“DHCP offer”
◼ Host pede endereço IP com mensagem :
“DHCP request”
◼ DHCP server envia endereço mensagem:
“DHCP ack”

108
Bibliografia
◼ James F. Kurose e Keith W. Ross
◼ Redes de Computadores e a Internet:

◼ Andrew S. Tanenbaum
◼ Redes de Computadores

◼ SOUSA, Lindeberg Barros de


◼ Redes de computadores: dados, voz e imagem

◼ Comer, Douglas E.,


◼ Interligação de Redes Com Tcp/ip
109

Você também pode gostar