camada de rede camada de rede - … · camada de rede redes de computadores versão 1.3 –...

34
Camada de Rede Redes de Computadores versão 1.3 – 21.Sep.02 Pág 5.1 © 1997–2000 Paulo Lício de Geus Camada de rede • serviços providos à camada de transporte independência do sistema de sub-redes usado » tipo, topologia, número de sub-redes, roteamento endereçamento uniforme à camada de transporte tipo de serviço melhor deixar para as camadas supe- riores o controle de erros e fluxo… » sem conexão, não confiável (comunidade da Internet) 100 anos de experiência do sistema telefônico melhor prover serviço completo… » com conexão, confiável (pessoal das Teles) ATM e IP » conexão ATM carregando pacotes IP » duplicação de esforços (ineficiência) • organização interna conexão circuito virtual » rota estabelecida durante conexão, fixa durante… sem conexão datagramas » cada pacote roteado independentemente dos demais » mais trabalho para “usuários” » mais robusto » adapta-se facilmente a falhas e congestionamentos

Upload: leque

Post on 17-Dec-2018

258 views

Category:

Documents


0 download

TRANSCRIPT

Camada de Rede

d Pág 5.1

© 1997–2000 Paulo Lício de Geus

Camada de rede

• serviços providos à camada de transporte

melhor deixar para as camadas supe-riores o controle de erros e fluxo…

100 anos de experiência do sistema telefônico ➔ melhor prover serviço completo…

Re

es de Computadores versão 1.3 – 21.Sep.02

– independência do sistema de sub-redes usado» tipo, topologia, número de sub-redes, roteamento

– endereçamento uniforme à camada de transporte

– tipo de serviço» sem conexão, não confiável (comunidade da Internet)

» com conexão, confiável (pessoal das Teles)

– ATM e IP» conexão ATM carregando pacotes IP

» duplicação de esforços (ineficiência)

organização interna

– conexão ➔ circuito virtual» rota estabelecida durante conexão, fixa durante…

– sem conexão ➔ datagramas» cada pacote roteado independentemente dos demais

» mais trabalho para “usuários”

» mais robusto

» adapta-se facilmente a falhas e congestionamentos

Camada de Rede

d Pág 5.2

© 1997–2000 Paulo Lício de Geus

Camada de rede

• detalhes de circuitos virtuais

além das demais informações neces-sárias, tais como nºs de seqüência e reconhecimento, checagensendereços de rede só usados por ocasião do estabelecimento da cone-xão

por ocasião do estabelecimento da conexão…

politicamente incorreta:-):-):-)

Re

es de Computadores versão 1.3 – 21.Sep.02

– rota fixa ➔ roteadores devem manter tabelas» uma entrada por circuito virtual

» pacote deve conter nº de circuito➔ porém não necessita do endereço de destino na rede

– chegada de pacote em roteador ➔ linha e circuito» info suficiente para repassar para linha de saída correta

– identificadores de circuito» significado local para cada máquina

» roteadores alocam números disponíveis sob demanda

– liberação de circuito virtual» processos devem pedir liberação

» tratamento especial ➔ máquina “crasha” ao invés de liberar

detalhes de datagramas

– roteadores mantém tabelas» qual linha de saída para cada roteador destino

» cada datagrama deve conter o endereço completo de rede

Camada de Rede

d Pág 5.3

© 1997–2000 Paulo Lício de Geus

Camada de rede

– tabela comparativa de sub-redes

qualquer das 4 combinações é possí-vel em teoria; em particular, um ser-viço orientado à conexão em sub-rede de datagrama provê robustez! Oposto: IP sobre ATM

(VC)

e º de VC (curto)

nas tabelas na

imento do VC; em tal rota

e am pelo rotea-rminados

gficientes para ra cada VC

cm

elecimentoa pacote

Re

e

c

es de Computadores versão 1.3 – 21.Sep.02

– serviço pode ser orientado à conexão ou não

– sub-rede pode ser circuito virtual ou datagrama» nível de rede fará o trabalho que falta p/ serviço oferecido

item datagramas circuitos virtuais

stabelecimento não necessário necessáriondereçamento cada pacote contém

endereços completos de ori-gem e destino

cada pacote contém um n

informação de estado

sub-rede não mantém cada VC necessita espaçosub-rede

roteamento cada pacote roteado indepen-dentemente

rota escolhida no estabelectodos os pacotes segu

feito de falhas em roteadores

nenhum, exceto por pacotes perdidos durante o crash

todos os VC’s que passavdor capotado são te

ontrole de con-estionamento

difícil fácil se houver buffers sualocação antecipada pa

arga processa-ento roteador

carga razoável para cada pacote

carga pesada no estabcarga leve para cad

Camada de Rede

d Pág 5.4

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

• função principal da camada de rede

Re

es de Computadores versão 1.3 – 21.Sep.02

– rotear pacotes da máquina origem à destino» basicamente quando não estão na mesma rede física…

– vários roteadores no meio do trajeto» vários “pulos” (diferentes redes físicas)

– decisões de roteamento» a cada pacote se sub-rede usa datagramas

» apenas no estabelecimento do circuito virtual, para conexões

qualidades buscadas para algoritmos de roteamento

– operação correta

– simplicidade

– robustez» suportar falhas de todos os tipos e mudanças na topologia

– estabilidade» nem todos convergem a um funcionamento equilibrado

– igualdade de tratamento

– otimalidade no funcionamento» igualdade e otimalidade às vezes são excludentes…

Camada de Rede

d Pág 5.5

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

• otimalidade

A

Re

F

es de Computadores versão 1.3 – 21.Sep.02

– sink tree (árvore de absorção)» conjunto de rotas ótimas, todas as origens até um certo destino

» forma uma árvore com raiz no destino

» pode não ser única (por vezes há alternativas)

» métrica: nº de pulos constantes da rota

– objetivo dos algoritmos de roteamento» descobrir e usar as árvores de absorção p/ todos os roteadores

– problemas da vida real» conexões e roteadores caem e voltam (dinamicidade)

» quem faz o levantamento das árvores de absorção?

B

D

G

K L

M

H

O

N

J

C

I

EA

B

D

GF

K L

M

H

O

N

J

C

I

E

sub-redeárvore de absor-ção p/ roteador B

Camada de Rede

d Pág 5.6

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

• métricas (ou custo) normalmente utilizadas

Re

es de Computadores versão 1.3 – 21.Sep.02

– nº de pulos

– distância geográfica

– tamanho médio de fila (pacotes)

– atraso médio de transmissão (pacote padrão de testes)

– banda passante

– tráfego médio

– etc

– função dos fatores acima…

Camada de Rede

d Pág 5.7

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

(estático)• bolas cheias são ditas nós perma-nentes, e bolas vazias são ditas nós candidatos• pode-se partir tanto da origem quanto do destino; este será o nó ativo• marcam-se, nos nós diretamente acessíveis pelo nó ativo, as distâncias computadas nos trajetos, com a res-pectiva origem de tal caminho• substitui-se as distâncias marcadas sempre que as recém-obtidas forem menores que as existentes• escolhe-se o nó candidato de menor distância para ser marcado como nó permanente e como o novo nó ativo• repete-se o procedimento até obter-se a menor rota desejada; a etapa seguinte à etapa f) já revela o menor caminho de A a D, pois, a partir de H, D receberá custo 10, o que força o algoritmo a escolher C como nó ativo; mas então D não sofrerá redução de custo porque CD tem custo 3, e por-tanto usando C como rota só aumen-taria o custo total de D

• roteamento pelo caminho mais curto

Re

A

A

A

a

c

e

es de Computadores versão 1.3 – 21.Sep.02

– vários algoritmos conhecidos

– ex: Dijkstra, datado de 1959: menor rota A ➔ DB

G

EF

H

D

C

22

61

4

2

73

2 2

3

B (2,A)

A

G (6,A)

E (∞,-)F (∞,-)

H (∞,-)

D (∞,-)

C (∞,-)

B (2,A)

G (6,A)

E (4,B)F (∞,-)

H (∞,-)

D (∞,-)

C (9,B) B (2,A)

A

G (5,E)

E (4,B)F (6,E)

H (∞,-)

D (∞,-)

C (9,B)

B (2,A)

G (5,E)

E (4,B)F (6,E)

H (9,G)

D (∞,-)

C (9,B) B (2,A)

A

G (5,E)

E (4,B)F (6,E)

H (8,F)

D (∞,-)

C (9,B)

) b)

) d)

) f)

Camada de Rede

d Pág 5.8

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

nada prático, devido ao tráfego gerado…exceto por onde chega…estático por natureza…

• inundação (flooding)

todos os caminhos possíveis tentados em paralelo

sempre acha rota, se houver uma…

(estático)• levanta-se a matriz de tráfego entre cada nó• calcula-se o tráfego para cada linha• calcula-se o atraso médio para cada linha e para toda a sub-rede

(com pesos) via

= tamanho médio pacotes ➔bitsC = capacidade da linha (kbps)

= tráfego estimado (pcts/seg)

T 1µC λ–----------------=

µ

λ

Re

es de Computadores versão 1.3 – 21.Sep.02

– pacote que chega é enviado p/ todas as linhas de saída

– duplicações são controladas por contador no pacote» cada pulo decrementa o contador

» zerando o contador, pacote é descartado

– inundação seletiva (selective flooding)» pacote enviado somente em direções compatíveis

» obviamente é necessário algum conhecimento da topologia

– alg. inundação é sempre ótimo

– alg. inundação é robusto

roteamento baseado em fluxo (tráfego)

– leva em conta topologia e carga estimada

– rotas fixas pré-descobertas por outro algoritmo

– capacidade da linha e fluxo médio conhecidos» teoria de filas permite calcular o atraso médio

– testa-se alternativas até achar a de menor atraso global

– melhor algoritmo com os dados acima…

Camada de Rede

d Pág 5.9

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

(dinâmico)

usado originalmente na ARPANET, usado na Internet com o nome RIP (porém não exatamente assim), e também na DECnet e Novell IPX

• roteamento por vetor de distância

e também escutam a divulgação dos demais (difusão)…

em poucos pulos todos ficam sabendo…

o custo (p.ex. medido em pulos) começa a aumentar e tenderá ao infi-nito, levando muitos ciclos até lá (é útil definir “infinito” como sendo o nº de pulos da rota mais longa somado com 1)…exemplo ao lado:• rota para A surge• rota para A cai

Re

A

es de Computadores versão 1.3 – 21.Sep.02

– roteadores mantém tabelas de menores distâncias» roteadores vizinhos interagem para atualizar as tabelas

– detalhes: entradas nas tabelas contém» cada roteador na sub-rede

» linha de saída preferencial para alcançar tal roteador

» medida da distância ou tempo de alcance de tal destino

– métricas comumente usadas» nº de pulos, atraso em ms, nº de pacotes enfileirados

– roteadores divulgam periodicamente suas tabelas

– característica de funcionamento» reage bem ao surgimento de novas rotas

» reage mal à queda de rotas existentes (count-to-infinity)B C D E

∞ ∞ ∞ ∞1 ∞ ∞ ∞1 2 ∞ ∞1 2 3 ∞1 2 3 4

inicialmentedepois de 1 divulgaçãodepois de 2 divulgaçõesdepois de 3 divulgaçõesdepois de 4 divulgações

A B C D E

1 2 3 43 2 3 43 4 3 45 4 5 45 6 5 6

inicialmentedepois de 1 divulgaçãodepois de 2 divulgaçõesdepois de 3 divulgaçõesdepois de 4 divulgações

7 6 7 6 depois de 5 divulgações7 8 7 8 depois de 6 divulgações

… ∞

Camada de Rede

d Pág 5.10

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

• roteamento por vetor de distância (cont.)

sucessor na ARPANET do roteamento por vetor de distância…notar que os caminhos mais curtos em toda a rede podem ser medidos localmente, e com o algoritmo de dis-tribuição de info, todos ficam sabendo…

pacotes simples tipo ECHO são usa-dos para medir atraso…

OSPF = Open Shortest Path FirstIS-IS = Intermediate System - Intermediate System

conhecimento detalhado da rede localconhecimento de um ponto de acesso a uma rede remota (região)

Re

es de Computadores versão 1.3 – 21.Sep.02

– possível solução para count-to-infinity» split horizon hack (também não é perfeita…)

roteamento por estado de conexãocada roteador deve:

– descobrir vizinhos e aprender seus endereços de rede

– medir atraso ou custo para cada vizinho

– enviar pacote com tal info a todos os roteadores

– computar caminho mais curto para todos os roteadores

– usar Dijkstra, p.ex., para achar o caminho mais curto

– usado pelo OSPF e IS-IS (recentes na Internet)

roteamento hierárquico

– objetivo: evitar crescimento exagerado de tabelas

– divisão em “regiões”» e subdivisões suas até tabelas se adequarem…

Camada de Rede

d Pág 5.11

© 1997–2000 Paulo Lício de Geus

Algoritmos de roteamento

• roteamento para máquinas móveis (ou migratórias)

algum mecanismo de autenticação provê um certo nível de segurança…

máq. móvel está agora “regis-trada”…

próprio para mensagens de difusão

gera tráfego exagerado

roteadores multiplicam pacotes pelas várias linhas de comunicação neces-sárias

roteador difunde se linha de chegada é mesma que melhor rota de retorno

Re

es de Computadores versão 1.3 – 21.Sep.02

– usuários móveis sempre têm uma localização base

– regiões geográficas dispõem de» agentes locais, home agents (cuidam de seus “habitantes”)

» agentes externos, foreign agents (cuidam de “hóspedes”)

– máquina móvel registra-se junto a agentes externos» mecanismos de difusão acessíveis a ambos

– agentes externos contactam agentes locais» informam localização atual da máquina móvel

– após reconhecimento do agente local:» agente externo adiciona entrada (máq. móvel) nas suas tabelas

roteamento por difusão, alternativas:» pacotes individuais a cada destino

» inundação

» roteamento multi-destino (lista de destinos no pacote)

» spanning tree ➔ por definição é ótimo…

» repasse por caminho de volta (reverso)

» roteamento multicast ➔ divisão em grupos de interesse

Camada de Rede

d Pág 5.12

© 1997–2000 Paulo Lício de Geus

Algs. controle de congestionamento

• situação de congestionamentoeste é também o comportamento das principais redes físicas em uso geral, no nível de enlace

quando a oferta aumenta muito, a Ethernet torna-se inutilizável, ao passo que a TokenRing aproxima-se cada vez mais da eficiência máxima

com ofertas menores, contudo, a Ethernet oferece atrasos menores, pois quase sempre os quadros serão transmitidos sem atraso (em Token-Ring o token deve passar de mão em mão até chegar ao transmissor que precisa dele…)

pacotes começam a ser descartados por vencerem sua temporização…

controle de congestionamento ➔ garantir que a sub-rede carregue o tráfego oferecidocontrole de fluxo ➔ relacionado ao tráfego ponto-a-ponto entre um dado transmissor e um dado receptor

aa

paco

tes

Re

cc

es de Computadores versão 1.3 – 21.Sep.02

– aumento na oferta de tráfego faz cair desempenho

– eventos que levam ao congestionamento» pacotes em linhas de entrada concentram-se em 1 saída apenas

» falta de memória nos buffers dos roteadores

» memória excessiva nos buffers dos roteadores➔ duplicações dos pacotes tornam o cenário pior ainda

» processadores lentos nas interfaces dos roteadores

– analogia com tecnologias de rede (figura acima)» Ethernet permite demanda maior que capacidade

➔ disputa pelo meio progressivamente rouba banda passante

» Token Ring não deixa demanda maior se traduzir no meio

pacidade máx. de rga da sub-rede

perfeito

desejável (…Token Ring)

entre

gues

pacotes oferecidos

congestionamento (…Ethernet)

Camada de Rede

d Pág 5.13

© 1997–2000 Paulo Lício de Geus

Algs. controle de congestionamento

• políticas que afetam o congestionamento

r

Re

t

es de Computadores versão 1.3 – 21.Sep.02

camada política detalhes

ansporte retransmissão semelhante ao enlacecacheamento de

quadros fora de ordemidem

reconhecimento idemcontrole de fluxo idem

determinação de tempo-rização

dificuldade, muitas redes diferentes

rede circuitos virtuaisversus datagramas

maioria opera controle em circuitos vir-tuais apenas

filas de pacotes, serviço filas por linhas, prioridadesdescartamento escolha, falta de espaço em buffer

roteamento espalhamento de tráfego, várias linhastempo de vida/pacote temporização prematura, pacotes per-

didos “velhos” causam entupimentoenlace retransmissão temporização, quadro/carona

cacheamento de quadros fora de ordem

descartamento

reconhecimento imediato (quadro) ou carona, retrans-missões

controle de fluxo janela estreita diminui chance de con-gestionamento

Camada de Rede

d Pág 5.14

© 1997–2000 Paulo Lício de Geus

Algs. controle de congestionamento

ATM usa…• modelamento do tráfego (fixando comportamento)

nº de pacotes constante em, p.ex., ATM, ou nº de bytes constante com pacotes de tamanho variável

fluxo irregular, como no caso da tor-neira pouco ou muito aberta, é repre-sado no balde e sempre liberado a uma taxa constante (desconsiderado o efeito da pressão da água, nesta analogia)

Re

es de Computadores versão 1.3 – 21.Sep.02

– regular taxa média e de rajada

leaky bucket (balde que vaza)

– pacotes liberados a taxa constante» analogia: vazamento do balde por furo ➔ taxa constante

» balde cheio ➔ derramamento, perda

rede

Camada de Rede

d Pág 5.15

© 1997–2000 Paulo Lício de Geus

Algs. controle de congestionamento

bastões podem contabilizar direitos de transmissão de pacotes ou de bytes…

• token bucket (balde com bastões)

na figura, pode-se ver que a segunda rajada remetida por camada superior conseguiu ser enviada no ritmo mais rápido determinado pela banda pas-sante disponível, pois créditos sufici-entes foram acumulados após a primeira rajada (que foi retardada por ausência de créditos)

ao esgotarem-se os créditos, o ritmo de envio fica limitado ao ritmo de liberação dos créditos, cujos instan-tes estão representados pelos símbo-los $

ttaa

Re

tt

es de Computadores versão 1.3 – 21.Sep.02

» balde armazena direitos de transmissão (bastões)➔ se, é claro, a máquina não os está usando…

» se necessário, máquina pode transmitir rajada➔ do tamanho da quantidade de bastões armazenados

» tamanho máximo de rajada ➔ capacidade do balde

especificação de fluxo

– acordo inicial entre transmissor, sub-rede e receptorcaracterísticas da entrada serviço desejado

amanho máx. de pacote (bytes) sensibilidade a perdas (bytes)axa do balde com bastões (B/s) sensibilidade a intervalo de perdas (µs)manho do balde c/ bastões (B) sensib. a perdas de rajadas (pacotes)xa de transmissão máxima (B/s) atraso mínimo notado (µs)

variação máxima no atraso, jitter (µs)qualidade da garantia

rede

$$ $

$

$ = direito de transmissão

$$$$$$$$$$

Camada de Rede

d Pág 5.16

© 1997–2000 Paulo Lício de Geus

Algs. controle de congestionamento

• controle em sub-redes de circuitos virtuais

depende da “boa-vontade” dos trans-missores em cumprir ou não a deter-minação do choke packetflag ligado no pacote original para avisar roteadores seguintes que aviso de controle de fluxo já foi enviado…

pacotes medidos por comprimento (término de recepção) e enviados na ordem em que foram completamente recebidos

Re

es de Computadores versão 1.3 – 21.Sep.02

– controle dinâmico, com realimentação

– controle de admissão de novos circuitos» evita que situação problemática desmorone de vez

– controle de roteamento de novos circuitos» contorna canais problemáticos

– negociação inicial» sub-rede nunca aloca mais do que pode lidar

pacotes de sufocamento

– monitoramento de tráfego» subida além de limiar ➔ estado de sobreaviso

➔ pacote de sufocamento enviado ao transmissor➔ redução do tráfego de transmissão por determinado fator

– enfileiramento justo por pesos» roteadores mantém filas por linhas de entrada

– pacotes de sufocamento por pulos (hops)» tempo de propagação grande ➔ reação muito lenta

➔ agem imediatamente por cada roteador por onde passam

Camada de Rede

d Pág 5.17

© 1997–2000 Paulo Lício de Geus

Algs. controle de congestionamento

• corte de carga

política do vinho:-)

política do leite:-)

bufferização nos roteadores não é uma boa solução, porque causará um atraso maior do que o necessário, muito embora a seqüência de entrega seja mais homogênea…

Resource reSerVation Protocol

spanning tree ➔ árvore de enverga-dura ou de cobertura

Re

es de Computadores versão 1.3 – 21.Sep.02

– medida extrema (outros métodos não funcionam…)

– pacotes descartados seletivamente

– para transferências de arquivos:» pacotes antigos faltando irão causar retransmissões futuras

– para aplicações multimídia» pacotes mais novos são mais importantes

➔ melhor seleção possível, por tipo de aplicação

controle de variação no atraso (jitter)

– leva em conta necessidade de certas aplicações

controle em multicasting (difusão para grupos)

– RSVP» grupos roteados via multicast com spanning trees

» estações enviam pedidos de reserva rumo ao remetente

» retorno da mensagem revela sucesso ou falha do pedido

» bandas reservadas em todo o trajeto

Camada de Rede

d Pág 5.18

© 1997–2000 Paulo Lício de Geus

Interconexão de redes

• cenário típico

…à sua plena potência nominal

mas não fragmenta pacotes para adaptar a uma dada sub-rede

não sabe como…

Re

es de Computadores versão 1.3 – 21.Sep.02

hardware de interconexão

– repetidor» amplificadores eletrônicos ➔ regeneram sinais fracos

» copiam bits, em forma eletrônica

– bridge» armazena e repassa quadros

» faz checagem de erros

» adapta cabeçalhos de quadros (redes físicas diferentes)

» jamais analisa cabeçalhos de nível 3

B

802.3 LAN 802.4 LAN

802.3 LANRM

RM

RMRM SNA WANX.25 WAN802.5 LAN

RM = roteador multiprotocoloB = bridge

Camada de Rede

d Pág 5.19

© 1997–2000 Paulo Lício de Geus

Interconexão de redes

– roteador multiprotocolos

IPX, IP, AppleTalk, SNA, DECnet

)

q

c

Re

co

es de Computadores versão 1.3 – 21.Sep.02

» armazena e repassa pacotes (nível 3)

» redes físicas diferentes, pacotes de protocolos diferentes

» fragmenta pacotes, se necessário, para adaptar às sub-redes

diferenças entre redesitem algumas possibilidades

serviço oferecido orientado à conexão vs. sem conexãoprotocolos IP, IPX, CLNP, AppleTalk, DECnet etc

endereçamento plano (802) vs. hierárquico (IP ➔ rede e máquinamulti/broadcasting presente ou ausentetamanho de pacote cada rede tem seu tamanho máximoualidade de serviço presente ou ausente, muitas variaçõestratamento de erros confiável, ordenado, e entrega sem ordemcontrole de fluxo janela deslizante, controle de taxa, outros, nenhum

ntr. congestionamento balde que vaza, pacotes de sufocamento etcsegurança regras de privacidade, cifragem etcparâmetros temporizações diferentes, especificações de fluxo et

contabilidade tempo de conexão, por pacotes, bytes ou nenhum

Camada de Rede

d Pág 5.20

© 1997–2000 Paulo Lício de Geus

Interconexão de redes

roteadores multiprotocolos tomam parte no estabelecimento de VC entre sub-redes, mantendo entradas em suas tabelas

• circuitos virtuais conectados

diferenças entre protocolos de redes torna inviável conversão “literal” de pacotes

razoável: operação de um dado pro-tocolo (ou vários) sobre a rede glo-bal interconectada

Re

es de Computadores versão 1.3 – 21.Sep.02

sem conexão

RM

RM

RM

RM

X.25

SNA

OSI

ATM

m1

m2

RM

RM

RM

RM

m1

m2

Camada de Rede

d Pág 5.21

© 1997–2000 Paulo Lício de Geus

Interconexão de redes

• tunelamento

carona…

AS = Autonomous System

pedaços devem ser todos recebidos para permitir reconstrução do pacote original

em IPv6 (nova versão do protocolo IP), fragmentação só é feita na ori-gem, nunca no meio do caminho; é necessário o remetente descobrir a mínima MTU do trajeto de antemão

Re

es de Computadores versão 1.3 – 21.Sep.02

– duas redes locais remotas, mesmo protocolo

– rede diferente disponível, provendo intercomunicação» pacotes rede local encapsulados na rede de conexão

roteamento em redes interconectadas

– redes locais (AS) ➔ protocolos de roteamento interno

– redes interconectadas ➔ protoc. de roteamento externo

– encapsulamento conforme neccessário

fragmentação

– tamanhos máximos distintos (enlace/rede)

– transparente» roteadores “externos” fragmentam e desfragmentam

➔ antes de entregar ao destino

– não transparente» se necessário ➔ fragmentação

➔ novos pacotes (pequenos) gerados➔ mas nenhum roteador os combina de volta

» máquinas destino devem ser capazes de remontar os pacotes

Camada de Rede

d Pág 5.22

© 1997–2000 Paulo Lício de Geus

Camada de rede na Internet

• versão atual: 4; próxima: 6 (IPv6)• IHL ➔ comprimento do cabeçalho em palavras de 32 bits• tipo de serviço ➔ serviria para atender diferentes serviços com dife-rentes qualidades, porém até hoje ele tem sido ignorado completamente• comprimento total ≤ 65.535 B• identificação de datagramas indiivi-duais; fragmentos de um datagrama têm todos a mesma identificação…• DF ➔ pedido para não fragmentar• MF ➔ indica que há mais fragmen-tos ainda; o último não tem este flag• deslocamento ➔ indica posição do fragmento dentro do datagrama• tempo de vida ➔ contador, teorica-mente conta segundos; na prática, conta pulos (roteadores decremen-tam de 1); quando chega a zero pacote é descartado• protocolo ➔ tipo carga: TCP, UDP• checagem ➔ soma das palavras de 16 bits do cabeçalho, tomadas em complemento de 1, complemen-tando de 1 o resultado• opções ➔ security, strict source routing, loose source routing, record route, timestamp

• cabeçalho do protocolo IP

0

1

1

1

1

Re

es de Computadores versão 1.3 – 21.Sep.02

endereços IP

versão IHL tipo de serviço comprimento total

tempo de vida protocolo

identificação D M deslocamento de fragmento

checagem do cabeçalho

endereço de origem

endereço de destino

opções (0 ou mais palavras de 32 bits)

F F

32 bits

rede máquina

10 rede

rede máquina

máquina

32 bits

0

110 endereço de multicast

1110 reservado para uso futuro

1.0.0.0 a 127.255.255.255128.0.0.0 a 191.255.255.255192.0.0.0 a 223.255.255.255224.0.0.0 a 239.255.255.255

240.0.0.0 a 247.255.255.255

Camada de Rede

d Pág 5.23

© 1997–2000 Paulo Lício de Geus

Camada de rede na Internet

• endereços especiais

0 ➔ bits do endereço de máquina1 ➔ bits do endereço de rede

0

0

1

1

Re

es de Computadores versão 1.3 – 21.Sep.02

subnet (sub-rede)

– máscara (netmask) ➔ palavra de 32 bits» implementa fronteira rede/máquina no endereço (real)

00………………………………………………………000

máquina

32 bits

00……………0000

rede 111……………………………111

127 (qualquer coisa)

esta máquina

uma máquinanesta rededifusão na redelocaldifusão em uma rede remotaloopback(retorno)

11………………………………………………………111

32 bits

rede máquina0 sub-rede

netmask

Camada de Rede

d Pág 5.24

© 1997–2000 Paulo Lício de Geus

Camada de rede na Internet

r

ICMP = Internet Control Message Protocol

ARP = Address Resolution Protocol

e

r

poo

Re

P

d

p

es de Computadores versão 1.3 – 21.Sep.02

otocolos de controle

ICMP

– mensagens carregadas por pacotes IP; principais:

ARP

– tradução end. lógico IP ➔ end. físico (ex. Ethernet)

– tabela em arquivo ➔ impraticável p/ muitas máquinas

– cacheamento em memória de dados descobertos

– aprende por ocasião da pergunta de outra máquina

tipo de mensagem descrição

stination unreachable pacote não pôde ser entregue

tempo excedido campo TTL (tempo de vida) alcançou 0oblema c/ parâmetro campo do cabeçalho inválido

source quench pacote de sufocamentoredirect ensina um roteador sobre topologia da rede

echo request pergunta a uma máquina se está vivaecho reply sim, estou viva

timestamp request mesmo que echo request, mas com registro de temtimestamp reply mesmo que echo reply, mas com registro de temp

Camada de Rede

d Pág 5.25

© 1997–2000 Paulo Lício de Geus

Camada de rede na Internet

• entrega via sua própria interface (interação ARP)o teste é feito via AND da netmask com o IP destino.

máq_a e máq_b, nomes IP, só conhecem seus endereços IP, além de seu próprio endereço Ethernet, mas precisam do endereço Ethernet da outra para seus pacotes se alcança-rem.

efeito colateral: aprende o endereço físico de máq_b…

Re

es de Computadores versão 1.3 – 21.Sep.02

– IP, em máq_a➔ verifica se o IP de máq_c pertence à sua sub-rede

– se sim, e primeira comunicação máq_a ➔ máq_b➔ ou se entrada na tabela ARP expirou

1- IP, em máq_a, requisita ao módulo ARP a obtenção do endereço físico de máq_b

2- ARP, em máq_a, lança pacote de broadcast perguntando quem é máq_b

3- ARP, em máq_b, ouve, como todos, e deve responder com o endereço físico de máq_b

3/4- ARP, em máq_a, põe tal endereço em sua tabela local

4- IP, em máq_a, envia pacote IP endereçado a máq_b➔ carregado por quadro Ethernet corretamente endereçado

…ARPIP

ARPIP

máq_a máq_b

1

2

3

4

Camada de Rede

d Pág 5.26

© 1997–2000 Paulo Lício de Geus

Camada de rede na Internet

máq_c reside em outra subnet…• entrega via roteadoro teste é feito via AND da netmask com o IP destino.

pode haver mais de um roteador…

essa função, IP Forwarding, só é habilitada em condições especiais, como quando a máquina em questão tiver mais de uma interface.

Re

es de Computadores versão 1.3 – 21.Sep.02

– IP, em máq_a➔ verifica se o IP de máq_c pertence à sua sub-rede

– se não➔ consulta tabela de rotas para descobrir qual roteador

1- IP, em máq_a, envia pacote IP endereçado a máq_c➔ mas com endereço Ethernet de roteador

2/3- IP, em roteador, repassa para outra interface sua➔ talvez fazendo ciclo ARP para obter end. Ethernet de máq_c

…ARP

IPARP

IP

máq_a máq_c

roteador

IP ARPIPARP

… 23

1

Camada de Rede

d Pág 5.27

© 1997–2000 Paulo Lício de Geus

Camada de rede na Internet

RARP = Reverse Address Resolu-tion Protocol

• RARP

difusão (estação boot’ando, não sabe seu end. IP)

usa quadro de enlace

pois usa difusão

OSPF = Open Shortest Path Firstsucessor do RIP (próprio para redes maiores)

cômputo é dinâmico; roteador pode mudar de idéia a qualquer hora…

BGP = Border Gateway Routing Protocol

tráfego que pode ou não passar

trânsito ➔ usado por outros…

Re

es de Computadores versão 1.3 – 21.Sep.02

– resolução reversa: end. físico (Ethernet) ➔ lógico (IP)

– servidor RARP consulta arquivos e responde

– limitado à sub-rede local (cabo)

BOOTP

– semelhante a RARP, mas usa UDP como transporte

– repassado a outros roteadores (ultrapassa subnet local)

OSPF ➔ roteamento interno

– grafos representando a rede» arcos com pesos (distância, atraso, carga etc)

» nós: roteadores e redes de acesso múltiplo

» roteadores computam rota mais curta entre si

BGP ➔ roteamento externo

– preocupação: garantir política de uso

– 3 classes de SA: stub, multiconectados e trânsito

Camada de Rede

d Pág 5.28

© 1997–2000 Paulo Lício de Geus

IPv6

• principais metas da nova versãomesmo com alocação ineficiente de espaço de endereçamento…

simplificar construção de árvores de absorção para multicast

SIPP = Simple Internet Protocol Plus

Re

es de Computadores versão 1.3 – 21.Sep.02

– suportar bilhões de máquinas

– reduzir tamanho das tabelas de roteamento

– simplificar protocolo» para roteadores processarem pacotes mais rapidamente

– prover melhor segurança (autenticação e privacidade)

– dedicar mais atenção ao tipo de serviço» em especial a tráfego de tempo real

– ajudar multicasting através da especificação de escopos

– permitir a máquinas móveis mover-se na rede mundial➔ sem mudança de endereço

– permitir evolução do protocolo no futuro

– permitir coexistência dos protocolos antigo e novo

escolha dentre as propostas apresentadas

– SIPP, por Deering, Francis, Katz e Ford, 1993

Camada de Rede

d Pág 5.29

© 1997–2000 Paulo Lício de Geus

IPv6

• versão ➔ 6 (IPv6)• prioridade ➔ permite identificar pacotes cujas fontes podem ter seu fluxo controlado ou não0–7 ➔ tráfego que pode ser reduzido in caso de congestionamento8–15 ➔ tráfego em tempo real cuja taxa de envio é constante, mesmo que todos os pacotes estejam sendo per-didos (video, audio)valores menores dentro de cada grupo indicam pacotes menos impor-tantes1 ➔ news, 4 ➔ ftp, 6 ➔ telnet• rótulo de fluxo ➔ pares poderão negociar parâmetros de uma pseudo-conexão, exigindo requisitos particu-lares de qualidade; roteadores deve-rão buscar parâmetros de tratamento em tabelas próprias toda vez que o campo for não-nulo• comprimento da carga útil ➔ quantos bytes se seguem ao cabeça-lho fixo de 40 bytes• próximo cabeçalho ➔ contém código do próximo cabeçalho, espe-cialmente importante para os cabeça-lhos de extensão• limite de hops ➔ número permi-tido de pulos em roteadores

• cabeçalho do protocolo IP versão 6

Re

es de Computadores versão 1.3 – 21.Sep.02

versão prioridade rótulo (identificador) de fluxocomprimento da carga útil limite de hops

endereço de origem

endereço de destino

32 bits

próximo cabeçalho

(16 bytes)

(16 bytes)

Camada de Rede

d Pág 5.30

© 1997–2000 Paulo Lício de Geus

IPv6

total de 2128, ou 3 x 1038 máquinas

7 x 1023 máquinas por metro qua-drado

uso ineficiente de espaço de endere-çamento ➔ cerca de 1000 máquinas por metro quadrado!

• endereços IPv6

endereços IPv4 ➔ ::143.106.60.2

Re

es de Computadores versão 1.3 – 21.Sep.02

» 8000:0000:0000:0000:0123:4567:89AB:CDEF➔ 8000::123:4567:89AB:CDEF

prefixo (binário) uso fração0000 0000 reservado (inclui IPv4) 1/2560000 0001 não alocado 1/2560000 001 endereços OSI NSAP 1/1280000 010 endereços Novell NetWare IPX 1/1280000 011 não alocado 1/1280000 1 não alocado 1/320001 não alocado 1/16001 não alocado 1/8010 endereços baseados em provedores 1/8011 não alocado 1/8100 endereços geográficos 1/8101 não alocado 1/8110 não alocado 1/81110 não alocado 1/161111 0 não alocado 1/321111 10 não alocado 1/641111 110 não alocado 1/1281111 1110 0 não alocado 1/5121111 1110 10 endereços de uso local em links 1/10241111 1110 11 endereços de uso local em sites 1/10241111 1111 multicast

Camada de Rede

d Pág 5.31

© 1997–2000 Paulo Lício de Geus

Camada de rede em ATM

• virtual circuit ou virtual channelporém conexões multicast também são possíveis

UNI = User-Network Interface

NNI = Network-Network Interface

célula: 53 B, cabeçalho: 5 bytesCLP ➔ 1 serão as primeiras células a serem descartadas caso haja falta de recursos

teoricamente uma máquina pode ter até 256 agrupamentos de 64K con-xões; na prática, algumas delas são reservadas para funções de controle

b

b

U

N

Re

GVV

es de Computadores versão 1.3 – 21.Sep.02

– conexão entre uma origem e um destino

hierarquia de conexão

– virtual path » agrupamento de virtual channels

tipos de interface

– UNI» entre máquina e a rede ATM (switch)

– NNI» entre switches (“roteadores”) ATM

PTI

itsCLP

VCIVPIGFC HEC

4 8 16 3 1 8

PTI

itsCLP

VCIVPI HEC

12 16 3 1 8

FC = General Flow ControlPI = Virtual Path IdentifierCI = Virtual Channel Identification

PTI = Payload TypeCLP = Cell Loss PriorityHEC = Header Error Check

NI

NI

Camada de Rede

d Pág 5.32

© 1997–2000 Paulo Lício de Geus

Camada de rede em ATM

• circuitos virtuais ➔ permanentes ou comutados

Re

es de Computadores versão 1.3 – 21.Sep.02

estabelecimento de conexão

– realizada pelo “plano de controle” do ATM

– 1ª alternativa ➔ via circuito de controle» célula contendo requisição enviada por VP=0, VC=5

» caso positivo, nova conexão é aberta em outro circuito

– 2ª alternativa ➔ VP alocado a um par de máquinas» máquina pode então alocar VCs desta VP sem pedir à switch

primitivas

– SETUP: estabeleça circuito ou indicação de chamada

– CALL PROCEEDING: “estou ciente sobre pedido”

– CONNECT: aceitação ou confirmação de chamada

– CONNECT ACK: reconhecimento da aceitação

– RELEASE: termine a chamada ou chamada terminada

– RELEASE COMPLETE: reconhecimento de liberação

Camada de Rede

d Pág 5.33

© 1997–2000 Paulo Lício de Geus

Camada de rede em ATM

Re

R

M

es de Computadores versão 1.3 – 21.Sep.02

oteamento

tabela convencional de roteamento reune:

– origem, linha de entrada, VPI/VCI de entrada,destino, linha de saída, VPI/VCI de saída

em ATM, tabelas individuais por linha com:

– VPI/VCI de entrada, linha de saída, VPI/VCI de saída

anipulação de cabeçalhos pelo roteamento

cada switch tem seus próprios números de VPI/VCI

ao repassar célula, switch reescreve VPI/VCI

– sua própria numeração é que vai agora no cabeçalho

– a próxima switch terá assim a mesma tarefa

– se numeração fosse única na rede inteira:» haveria nº insuficiente de circuitos disponíveis

Camada de Rede

d Pág 5.34

© 1997–2000 Paulo Lício de Geus

Camada de rede em ATM

especificadas durante estabeleci-mento de conexão; assim switches podem honrar QoS

• categorias de serviço

atraso médio de células e variações desse atraso

variações no atraso não são tão rele-vantes

banda extra não garantida

QoS = Quality of Service

Re

es de Computadores versão 1.3 – 21.Sep.02

– CBR: Constant Bit Rate» emula conexão física (fio de cobre)

– VBR: Variable Bit Rate, taxa variável» com requisitos de tempo real (videoconferência)

» sem requisitos de tempo real (e-mail com multimídia)

– ABR: Available Bit Rate

» tráfego em rajada, com garantia de banda mínima

– UBR: Unspecified Bit Rate» sem banda garantida ou informação sobre congestionamento

» adequado para tráfego IP

parâmetros de qualidade de serviço (QoS)» PCR (Peak Cell Rate), SCR (Sustained Cell Rate)

» MCR (Minimum Cell Rate), CLR (Cell Loss Ratio)

» CDVT (Cell Delay Variation Tolerance), CER (Cell Error Rate)

» CTD (Cell Transfer Delay), CDV (Cell Delay Variation)

» SECBR (Severely-Errored Cell Block Ratio)

» CMR (Cell Misinsertion Rate)