You are on page 1of 152

OSPF - Open Shortest Path First

Redes de Comunicao de Dados

Referncias
RFC 1131 OSPFv1 (1989) RFC 2328 OSPFv2 (1998) OSPF - 8th CEENet Workshop on Network Technology - NATO ANW OSPF Design Guide Sam Halabi Cisco

20-01-2005

ISEL DEETC RCD

Objectivo

Criao de um protocolo de routing interno, (IGP Internal Gateway Protocol), dinmico e aberto que possa ser implementado por qualquer fabricante, sem pagamento de licena, de modo a tornar-se numa norma.

20-01-2005

ISEL DEETC RCD

Porqu um protocolo mais complexo?


O OSPF um protocolo do tipo link state, mais complexo que outros protocolos mais antigos, como o RIP, dado que: A documentao muito mais extensa A gesto necessita de mais informao A implementao necessita de mais cdigo Ento porqu desenhar um protocolo mais complexo? Maior escalabilidade Melhor controlo sobre o encaminhamento (routing) Menos trfego de sinalizao Calcula melhores rotas O IETF entretem-se a torn-lo melhor (existem mltiplos RFCs sobre OSPF) O em OSPF significa Open
20-01-2005 ISEL DEETC RCD 4

Concorrncia ao OSPF
Os protocolos do tipo vector-distance, como o RIP, comeam a cair em desgraa devido s suas limitaes, sobretudo em termos de tempo de resposta a alteraes, escalabilidade e quantidade de trfego de sinalizao OSPF no o nico protocolo do tipo link state O protocolo IS-IS parte do routing framework do OSI para o CLNP semelhante em desenho ao OSPF Usa terminologia diferente Outros protocolos, alguns deles proprietrios como o IGRP e EIGRP, so tambm uma alternativa possvel.

20-01-2005

ISEL DEETC RCD

Maiores vantagens do OSPF


No tem limites no nmero de saltos (hop) Suporta encaminhamento classless Trfego menor dado as actualizaes dos caminhos serem enviadas com intervalos muito grandes ou quando h uma mudana na topologia Convergncia rpida No cria loops Mais rpido a reagir s mudanas na rede Melhor balanceamento de carga Definio lgica de reas permitindo assim dividir para reinar Marcao de rotas externas Autenticao

20-01-2005

ISEL DEETC RCD

Sistemas autnomos e reas


E, no incio, era ............ um monte de redes que era necessrio interligar!
R1 N1
3 1

N1

R1
3

N3
1

R4

Sistema autnomo OSPF


8 8 7 6

R5 R6

R2 N2
3

R3 N4 N11 R9

8 2

rea 1

Ia 7

rea 0 R7
6

N3
1

R4
8 8

Sistema autnomo 6 OSPF


7

N8
1

R5 R6
Ia 7 6

R11
1

Ib 5 3 1

R2 N2
3

N9 rea 3
1 10 1 2

N6
1 4

R3 N4 N11 R9
1 3

8 2

R10 R12 rea 2

H1
R7

R8 N7

N10

N8 R11
1 2 3 Ib 5

R10
1

N9
1 10 1 2

N6
1

H1

R12

N10

Primeiro todas as redes num nico grupo (um sistema autnomo/uma rea) depois, devido complexidade crescente, foi necessrio dividir R8 para reinar, assim foi necessrio permitir a diviso 4 N7 de um grande grupo em grupos mais pequenos (um sistema autnomo/vrias reas).
7

20-01-2005

ISEL DEETC RCD

Ligao ao resto do mundo!


Depois foi necessrio ligar o sistema autnomo ao resto do mundo e, ao fazer isso, o nosso sistema autnomo pode passar tambm a conter rotas de ligao entre outros sistemas autnomos, quer utilizem, ou no, OSPF.

Sistema autnomo OSPF

20-01-2005

ISEL DEETC RCD

Resumo
Cada router constri um mapa com a topologia da rea. Para isso trocam mensagens (Link State Update) de cada um para todos os outros anunciando a quem esto ligados. Usam, sempre que possvel, multicast. Cada router calcula, utilizando o algoritmo de Dijsktra (SPF), o caminho mais curto dele para todos os outros routers da rea. A tabela de routing inclui a informao resultante do clculo e ainda a informao proveniente dos routers que fazem fronteira com outras reas. Os routers vigiam-se constantemente enviando mensagens (Hello) para verificarem se os outros continuam vivos. Se assim no for avisam os restantes routers da rea e recalculam os melhores caminhos.

20-01-2005

ISEL DEETC RCD

Definies de termos comuns


Sistema autnomo (AS) , no contexto do OSPF, um grupo de routers que trocam informao de encaminhamento entre eles atravs de um protocolo de encaminhamento comum. constituido por um grupos de redes que pode ser dividido em vrios grupos mais pequenos. Estes grupos so designados por reas. Um sistema autnomo pode ser composto por uma ou mais reas. A topologia resultante forma uma rvore com dois nveis em que a raz a rea 0 e as folhas (segundo nvel) as restantes reas. A diviso em reas tem a vantagem da topologia de cada rea ser escondida das restantes reas do sistema autnomo e da eventual instabilidade de uma rea no afectar as restantes.

20-01-2005

ISEL DEETC RCD

10

Definies de termos comuns


rea a designao atribuida a um subconjunto dos routers e redes que constituem o sistema autnomo e que participam numa instncia do protocolo OSPF. Um sistema autnomo pode ser constituido (dividido) por uma ou mais reas. Pelo menos uma rea, a rea 0 (zero), existe sempre. Vantagem da diviso em reas: limita em cada router, o tamanho do grafo da topologia e o processamento necessrio para calcular os melhores caminhos Limita o nmero de ligaes que podem mudar de estado provocando novo clculo dos melhores caminhos nos routers S as mquinas de uma rea trocam mensagens de descrio de base de dados e tm o conhecimento da topologia dessa rea. Uma rea no deve ter mais de 200 routers, na prtica, 50 um valor funcional.
20-01-2005 ISEL DEETC RCD 11

Definies de termos comuns


Area ID um nmero a 32 bits que identifica a rea. Pode representar-se como um inteiro ou num formato semelhante ao dos endereos IP. A rea 0, ou 0.0.0.0, a rea de backbone e, se existe um domnio OSPF, tem de existir sempre esta rea com este ID.

20-01-2005

ISEL DEETC RCD

12

Definies de termos comuns


Router ID um nmero de 32 bit atribudo para identificao de cada router OSPF e que o identifica dentro do AS: A norma (RFC 2328 OSPFv2), no ponto 5 (Protocol Data Structures), diz que uma estratgia para definir o router ID pode ser atribuir-lhe menor o endereo IP de entre as suas interfaces, no entanto verifica-se que algumas implementaes optaram pelo maior endereo IP, como, por exemplo, a Cisco Normalmente utilizado o maior endereo IP de entre as suas interfaces com suporte de OSPF. No caso do router possuir interfaces loopback definidas estas so preferidas em relao a qualquer outra O router ID pode tambm ser configurado manualmente O router ID pode ser alterado mas s se torna efectivo no prximo boot do router.
20-01-2005 ISEL DEETC RCD 13

Definies de termos comuns


Link - Pode ser entendido como uma interface de um router. Link state Descrio da interface e da sua relao com os routers vizinhos. A descrio da interface pode incluir, por exemplo, o endereo IP da interface, a mscara, o tipo de rede a que est ligada, os routers ligados a essa rede, etc.

20-01-2005

ISEL DEETC RCD

14

Definies de termos comuns


Interfaces Loopback Se o router possuir pelo menos uma destas interfaces virtuais definidas ele ir escolher o seu router ID de entre os endereos das interfaces loopback em detrimento de qualquer das outras interfaces fisicas. Ao contrrio das interfaces fisicas, as quais se podem activar e desactivar por muitas razes, as interfaces loopback s so activadas ou desactivadas administrativamente pelo que o router ID se manter estvel. Estas interfaces so anunciadas nos router-LSAs como caminhos simples para mquinas (single host routes), cujo endereo IP o da interface (pode ser alterado atravs da configurao do router).

20-01-2005

ISEL DEETC RCD

15

Definies de termos comuns


Cada router d a conhecer aos outros routers da sua rea informao sobre o estado (link state) das suas ligaes directas (interfaces/links) utilizando para isso mensagens com link state advertisements Link state advertisement (LSA) uma unidade de dados que descreve o estado de um router ou rede:
So gerados periodicamente ou em resposta a qualquer alterao na topologia da rede Os LSAs so enviados (flooded) para toda a rea atravs dos routers adjacentes, sendo transportados em mensagens OSPF de link state update, excepo aos AS-externalLSAs que so enviados para todo o sistema autnomo Os LSAs antes de serem enviados para a rua vem a sua idade incrementada de um valor igual ao do custo da interface por onde vo ser enviados A passagem de informao para fora da rea de origem do LSA e a forma como passa depende do tipo de LSA Alm de outras informaes, os LSAs contm: Identificao da origem Nmero de sequncia Idade da informao (link state age)
20-01-2005 ISEL DEETC RCD 16

Definies de termos comuns


Link state database (topology database) - Coleco dos router-LSAs, network-LSAs e summary-LSAs com origem na rea. Esta informao s propagada dentro da rea. A lista de AS-external-LSAs tambm considerada como fazendo parte de base de dados de cada rea. A partir das mensagens recebidas com link state advertisements cada router duma rea pode construir a sua base de dados da topologia da rede (link state database) e conhecer assim o mapa da sua rea. As link state databases dos vrios routers de uma rea so iguais entre elas mas so diferentes das de outras reas. A link state database composta por: Router-link state advertisements Network-link state advertisements Summary-link state advertisements AS-external-link state advertisements
20-01-2005 ISEL DEETC RCD 17

Definies de termos comuns


Routers vizinhos (neighboring routers) so routers que tm interfaces numa rede (sub-rede) comum.
A relao de vizinhana estabelecida e mantida pelo protocolo Hello

Dois routers s sero vizinhos se estiverem de acordo nos seguintes pontos:


Identificao da rea (area-id), autenticao (authentication), e intervalos de Hello e de Dead (intervalo mximo sem mensagens de Hello). Estes intervalos podem ser alterados com os comandos:
ip ospf hellointerval seconds, e ip ospf deadinterval seconds.

Stub area flag

20-01-2005

ISEL DEETC RCD

18

Definies de termos comuns


Adjacncia (adjacency) uma relao estabelecida entre dois routers vizinhos com o objectivo de trocar informao de routing (sincronizar as bases de dados). As bases de dados entre routers adjacentes devem ser iguais se estes pertencerem mesma rea. Nem todos os routers vizinhos so adjacentes. Designated router gera LSAs para as redes BMA (Broadcast Multiple Access) e NBMA (Non BMA). eleito atravs do protocolo Hello. O conceito de designated router permite a reduo no nmero das adjacncias entre routers requeridas numa rede BMA ou NBMA. Isto permite reduzir a quantidade de trfego relacionado com o OSPF e diminuir a dimenso das link-state databases. Cada rede BMA ou NBMA que tenha pelo menos dois routers elege um designated router. Redes ponto-a-ponto tm adjacncias entre os routers mas no tm designated routers.
20-01-2005 ISEL DEETC RCD 19

Definies de termos comuns


Custo de uma interface - Tambm designado por mtrica, uma indicao da trica sobrecarga de enviar datagramas atravs de determinada interface. Por omisso a mtrica utilizada inversamente proporcional ao dbito suportado pela interface. Quanto mais alto for o dbito menor o custo. A frmula utilizada, por omisso, : Custo=100.000.000/dbito em bps
Ligao srie 56 Kbps 1758 Ligao srie 64 Kbps 1562 65 Ligao srie T1 (1.544 Mbps) Ligao srie E1 (2.048 Mbps) 48 Token ring 4 Mbps 25 Token ring 16 Mbps 6 FDDI 1 Ethernet 10 Fast Ethernet 1 Gigabit Ethernet ? [Como fazer se a interface fr, por exemplo, gigabit Ethernet (1.000.000.000 bps)?]
20-01-2005 ISEL DEETC RCD 20

Definies de termos comuns


O OSPF suporta vrias mtricas:
Se s for usado apenas uma mtrica o TOS (Type of Service) no suportado. Se forem utilizadas vrias mtricas o TOS suportado em opo dando origem a tabelas de routing separadas para cada uma das combinaes possveis dos trs bits do TOS (delay, throughput, reliability). Exemplo:
Se os bits do TOS do IP especificarem atraso reduzido, baixo dbito e elevada fiabilidade o OSPF calcula caminhos para todos os destinos baseado na indicao do TOS.

20-01-2005

ISEL DEETC RCD

21

Definies de termos comuns


Codificao OSPF 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
20-01-2005

RFC 1349 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Significado normal service minimize monetary cost maximize reliability maximize throughput

minimize delay

ISEL DEETC RCD

22

Caractersticas
Suporta classless routing (VLSM - Variable Length Subnet Masks). Para atingir este objectivo as mensagens OSPF transportam a mscara da rede a que se referem. Funciona sobre IP (cdigo de protocolo 89) Utiliza multicast, em redes BMA, para enviar as actualizaes sobre o estado das ligaes (link-state updates) Suporta distribuio de trfego por caminhos de igual custo e tipo (caminhos externos do tipo 1 so sempre preferidos face aos do tipo 2, independentemente do custo)

20-01-2005

ISEL DEETC RCD

23

Caractersticas
Balanceamento de carga por mltiplos caminhos R2

caminho 1 N1 caminho 2 R1 R3 N2

R4 O OSPF suporta caminhos com custos e tipos iguais.


20-01-2005 ISEL DEETC RCD 24

Caractersticas
A partir da base de dados da topologia (link-state database) da rede o router constri uma rvore com os caminhos mais curtos com ele prprio na raz. A rvore dos caminhos mais curtos indica o caminho mais curto para cada destino no Sistema Autnomo. Todos os routers correm exactamente o mesmo algoritmo, em paralelo. crucial que todos os routers duma rea possuam bases de dados de link state idnticas (sincronizadas). Caminhos derivados de informao de encaminhamento externo rea aparecem como folhas da rvore. So annciados atravs do Sistema Autnomo mas so mantidos separados da informao de link state.

20-01-2005

ISEL DEETC RCD

25

Caractersticas
O algoritmo utilizado do tipo link state SPF (Shortest Path First)
Apenas propaga alteraes topologia de rede Utiliza o algoritmo de Dijkstra no clculo dos caminhos mais curtos.

A tabela de routing de cada router derivada da tabela dos caminhos mais curtos, caminhos esses calculados com o algoritmo de Dijkstra a partir da base de dados da topologia da rede.

20-01-2005

ISEL DEETC RCD

26

Caractersticas
Encaminhamento mediante o tipo de servio (TOS) IP. Isto pode utilizar mtricas relacionadas com o TOS (Type of Service) do IP. Custos das interfaces mediante o tipo de servio (TOS) IP Permite divulgar informao recebida de outros Sistemas Autnomos Permite uma definio de uma topologia virtual da rede diferente da topologia fsica utilizando ligaes virtuais (virtual links) Suporta ligaes ponto a ponto sem utilizao de endereos IP (unnumbered) Suporta autenticao das mensagens

20-01-2005

ISEL DEETC RCD

27

reas e Tipos de Routers

20-01-2005

ISEL DEETC RCD

28

Tipos de Routers
Internal Router
Tem ligaes apenas a routers da mesma rea

Area Border Router (ABR)


Tem ligaes a routers de outra rea (backbone), sendo o responsvel pela troca de informaes de routing entre reas

Autonomous System Boundary Router (ASBR)


Tem ligaes a routers de outros Sistemas Autnomos Tambm pode executar outros protocolos de routing (IGP ou EGP - RIP, IGRP, EGP, BGP)

Backbone Router
Tem pelo menos uma interface que executa o OSPF na rea 0

20-01-2005

ISEL DEETC RCD

29

ABR Area Border Router


Liga uma rea X ao Backbone (rea 0) Cada ABR numa rea sumariza para a rea o custo para todas as redes externas rea. Depois de ser calculada a rvore SPF para a rea, os caminhos para os destinos inter-rea (exteriores rea) so calculados examinando os sumrios dos ABRs.

20-01-2005

ISEL DEETC RCD

30

rea 0 ou Backbone
rea que interliga todas as outras reas de um AS
Area Border Routers (ABR) so tambm backbone routers Se houver problemas na rea 0 todas as redes do AS sofrem

20-01-2005

ISEL DEETC RCD

31

Tipos de caminhos e publicaes

20-01-2005

ISEL DEETC RCD

32

OSPF Hierrquico

20-01-2005

ISEL DEETC RCD

33

Routing Hierrquico
Intra-Area Routing
O router tem toda a informao necessria para encaminhar para a mquina de destino

Inter-Area Routing
Encaminha para o ABR da rea, este encaminha atravs do backbone para o ABR da rea de destino e este tem toda a informao necessria para encaminhar para a mquina de destino

External Routing
Encaminha para o ASBR que anuncia a conectividade para o destino ou para o ASBR por omisso

20-01-2005

ISEL DEETC RCD

34

Protocolos usados no OSPF


Protocolo Hello
Criar e manter relaes de vizinhana, eleger o designated router e o backup designated router, quando for caso disso.

Protocolo Exchange
Sincronizar as bases de dados entre os vrios routers

Protocolo Flooding
Anunciar alteraes na topologia

O Header comum aos vrios tipos de mensagens utilizadas no OSPF


20-01-2005 ISEL DEETC RCD 35

Descrio abreviada do funcionamento do OSPF


Inicializao
Cada router testa as suas ligaes (links) com outros routers vizinhos a que est ligado (protocolo Hello) Cada router constri a sua base de dados de ligaes (link-state) (mapa da rede) atravs da sincronizao com as bases de dados dos routers adjacentes (protocolo Exchange) Cada router calcula o melhor caminho para cada destino utilizando o algoritmo Shortest Path First SPF (Dijkstra) Inclui na tabela de routing os melhores caminhos Anuncia as eventuais alteraes que detecte nas ligaes (protocolo flooding)

Encaminhamento
Cada router encaminha pacotes para um destino enviando para o prximo router (de acordo com a tabela de routing )

20-01-2005

ISEL DEETC RCD

36

Protocolo OSPF
Funcionamento normal Cada router testa periodicamente (10 segundos, por omisso) as suas ligaes (links) aos routers vizinhos (protocolo Hello) Cada router propaga, se houver alterao do estado de ligaes, o estado destas para todos os routers atravs das adjacncias (protocolo flooding) Cada router propaga periodicamente (30 minutos, por omisso) o estado de todas as ligaes que conhece, para todos os routers atravs das adjacncias (sincronizao) Cada router recalcula o melhor caminho para cada destino (Dijkstra).
20-01-2005 ISEL DEETC RCD 37

Mensagens utilizadas no OSPF


Teste das ligaes a routers vizinhos e eleio do DR e BDR (eleio apenas em redes BMA e NBMA)
Mensagens de Hello

Sincronizao (inicial) das BD de ligaes


Descrio da BD de ligaes
Mensagens de Database Description

Solicitao das ligaes desconhecidas (diferena)


Mensagens de Link State Request

Envio da informao sobre as ligaes desconhecidas


Mensagens de Link State Update

Disseminao das alteraes (flooding)


Envio da informao sobre alteraes
Mensagens de Link State Update

Confirmao da recepo
Mensagens de Link State Acknowledge
20-01-2005 ISEL DEETC RCD 38

Protocolo Hello
As mensagens de Hello so responsveis por estabelecer e manter as relaes entre vizinhos garantindo que existe comunicao bidireccional. As mensagens de Hello contm, entre outros, os seguintes campos:
Prioridade do router que envia Intervalo entre mensagens de Hello O RouterDeadInterval intervalo mximo entre mensagens de Hello Mscara da rede por onde enviado (pode ser 0.0.0.0 em redes ponto-a-ponto no numeradas ou em ligaes virtuais) O campo de opes define as capacidades adicionais do router. O bit E indica se a rea capaz de processar os AS-external-LSAs, ou seja, no uma rea stub.

Em redes broadcast e ponto-a-ponto: multicast - ALLSPFRouters Em ligaes virtuais: unicast endereo da outra ponta da ligao Em rede ponto-a-multiponto: unicast - mensagens Hello independentes em cada ligao
20-01-2005 ISEL DEETC RCD 39

Protocolo Hello (rede ponto a ponto)


Objectivo
Responsvel por estabelecer e manter as relaes entre vizinhos garantindo que existe comunicao bidireccional.

Funcionamento
O Router envia mensagens Hello (peridicas) para a rede Usa Multicast IP (224.0.0.5) - AllSPFRouters Indica na mensagem enviada os endereos dos vizinhos que j conhece. Recebe mensagens Hello dos routers vizinhos Se o seu endereo vier listado na mensagem recebida, existe comunicao bidireccional com o router em causa. Isto , est estabelecida uma relao de vizinhana.

20-01-2005

ISEL DEETC RCD

40

Protocolo Hello (redes BMA)


Objectivo
Estabelecer e manter as relaes entre vizinhos garantindo que existe comunicao bidireccional. Eleger o Designated Router (DR) e o Backup DR do segmento O DR determina quais os routers que se devem tornar adjacentes Funcionar como keepalive

Funcionamento
Router envia mensagens Hello (peridicas) para a rede
Usa Multicast IP (224.0.0.5) e Multicast MAC

Indica na mensagem que envia os endereos dos vizinhos que j conhece Indica a sua perspectiva sobre quem o DR e o BDR

Recebe mensagens Hello dos routers vizinhos


Se o seu endereo vier indicado na mensagem recebida, existe comunicao bidireccional com o router que enviou a mensagem pelo que est estabelecida a relao de vizinhana. O router que tiver maior prioridade ou o maior router ID, se as prioridades forem iguais, ser o DR.
20-01-2005 ISEL DEETC RCD 41

Protocolo Hello (redes NBMA )


Objectivo
Responsvel por estabelecer e manter as relaes entre vizinhos garantindo que existe comunicao bidireccional Eleger o Designated Router (DR) e o Backup DR da rede O DR determina quais os routers que se devem tornar adjacentes

Funcionamento
Router que quer ser DR envia mensagens Hello para uma lista de routers seus vizinhos que podem vir a ser DR
Indica a sua perspectiva sobre quem o DR e o BDR

Recebe mensagens Hello de outros routers que podem ser DR


Se outro router tiver maior prioridade ou prioridade igual e router ID maior passa a ser DR

O DR envia e recebe de todos os outros routers mensagens Hello


Indica os endereos dos vizinhos que j conhece

20-01-2005

ISEL DEETC RCD

42

Protocolo Hello
Mensagem Hello

20-01-2005

ISEL DEETC RCD

43

Protocolo de Flooding
Flooding: Parte do protocolo OSPF de disseminao selectiva dos LSAs de um router de modo a manter sincronizadas as bases de dados de link states de todos os routers Os LSAs so enviados apenas quando h uma alterao ou a cada 30 minutos. A maioria dos LSAa so limitados rea em que so gerados. Consiste em propagar os LSAs por todas as adjacncias de modo fivel
Envio de mensagens Link State Update
Campos Sequence Number

Mecanismo de timeout e retransmisso Receptor actualiza a link state database e confirma a recepo atravs de do envio de mensagens Link State Acknowledge
Campos Sequence Number e de Link Age

Muito rpido e muito fivel, mas gasta largura de banda Os LSAs so transportados em mensagens Link State Update.
20-01-2005 ISEL DEETC RCD 44

Segurana das actualizaes dos mapas


O procedimento de flooding inclui as confirmaes (acknowledgments) hopby-hop As mensagens de descrio da base de dados so transmitidads de uma forma segura Cada registo (LSA) protegido com um timer e removido da base de dados se uma mensagem a refresc-lo no aparecer no devido tempo Todos os registos so protegidos por um checksum As mensagens podem ser autenticadas, por exemplo atravs de passwords.

20-01-2005

ISEL DEETC RCD

45

Timers
So necessrios dois tipos de timers:
"single shot timers", disparam uma vez e provocam que um evento do protocolo seja processado. "interval timers", disparam a intervalos regulares. So utilizados para enviar pacotes a intervalos regulares. Exemplo: Envio de pacotes Hello.

A granularidade dos timers de um segundo. No envio de pacotes deve-se evitar a sincronizao entre routers para evitar sobrecargas pontuais da rede. Com este fim podem ser introduzidos pequenos atrasos aleatrios.

20-01-2005

ISEL DEETC RCD

46

Designated Router
Em redes NBMA e Broadcast Multi-Access (BMA) so escolhidos um designated router (DR) e um backup designated router (BDR)
BDR DR

Relaes de vizinhana - adjacncias

A escolha do BDR e do DR efectuada pelo protocolo Hello


A prioridade e o ID do router so usados na eleio. (Router priority igual a 0 significa que o router no pode ser DR nem BDR)
20-01-2005 ISEL DEETC RCD 47

Funes do DR e do BDR
DR e BDR: Criam uma adjacncia com cada router do segmento
Sincronizam as bases de dados de link state com todos os routers adjacentes

DR: Gera os Network LSAs em nome dos routers da rede


Usando como ID o endereo IP do DR na rede Envia uma lista de todos os routers do segmento Redes Broadcast Redes NBMA

20-01-2005

ISEL DEETC RCD

48

Algoritmo de eleio do Designated Router (DR)


O algoritmo para a eleio funciona da seguinte forma: A primeira vez que o router corre o algoritmo o DR e o BDR so inicializados a 0.0.0.0, isto indica a no existncia de DR ou BDR. A eleio do DR prossegue da seguinte forma (assumindo que o router X o router que efectua o clculo) : A lista de vizinhos do router X que se encontram num estado igual ou superior a 2-way examinada. So excluidos todos os routers no elegiveis para DR (exemplo: prioridade = 0). Tendo em considerao a lista resultante, onde se inclui o router X, os prximos passos so os seguintes: 1 anotado quem so os actuais BDR e DR. 2 - Calcula-se o novo BDR de entre os que declaram no serem DR. Se houver routers a declararemse BDRs (nas mensagens de Hello) o que tiver maior prioridade versus Router ID ser eleito BDR. Se no houver nenhum a declarar-se BDR a eleio ser efectuada entre todos os elegiveis que no se tenham declarado DR. Ser eleito o que possuir maior Prioridade versus Router ID. 3 - O novo DR ser ento eleito ento da seguinte forma: De entre os routers que se declararam DRs eleito o que tiver maior prioridade versus router ID. Se no houver nenhum que se tenha declarado DR o novo DR ser igual ao BDR eleito. 4 - Se o router X passar a ser agora o novo DR ou BDR ou deixar de ser o BDR ou DR repetir os passos 2 e 3 e prosseguir para 5. Por exemplo, se o router X for agora o DR quando o passo 2 for repetido ele no entrar para a eleio do BDR. Entre outras coisas evita-se assim que um router seja BDR e DR em simultneo.
20-01-2005 ISEL DEETC RCD 49

Algoritmo de eleio do Designated Router (DR)


5 Como resultado deste algoritmo o prprio router pode ser agora DR ou BDR. A interface do router deve ser actualizada no estado DR. Se o router for BDR o estado deve ser actualizado como BDR. Se no for nenhum deles deve passar ao estado DR Other. 6 Se a rede for NBMA e se o router tiver acabado de se tornar BDR ou DR deve comear a enviar mensagens Hello aos vizinhos que no forem elegiveis para se tornarem DRs (prioridade igual a 0). 7 Se com os clculos acima a identidade do DR ou BDR se alterarem o conjunto de adjacncias associadas com a interface tero de ser modificadas.

20-01-2005

ISEL DEETC RCD

50

Eleio do Designated Router (DR)

No segmento comum a RTA e RTB como RTA e RTB tm a mesma prioridade e RTB tem um router ID maior este ltimo ser o DR desse segmento. No segmento comum a RTB e RTC este ltimo ser o DR dado ter maior prioridade (P=2).
20-01-2005 ISEL DEETC RCD 51

Adjacncias
As adjacncias so estabelecidas com algum subconjunto dos routers vizinhos. Routers ligados a redes ponto-a-ponto, redes ponto-a-multiponto e ligaes virtuais tornam-se sempre adjacentes. Em redes BMA e NBMA todos os routers se tornam adjacentes do DR e BDR. Resumindo: Uma adjacncia deve ser estabelecida com um vizinho sempre que: O tipo da rede for ponto-a-ponto, ponto-a-multiponto ou uma ligao virtual O router for DR ou BDR O router vizinho for DR ou BDR
20-01-2005 ISEL DEETC RCD 52

Adjacncias
N routers na mesma rede (broadcast ou non-broadcast) N(N-1) LSAs sero necessrios para transmitir informao sobre a mesma rede. Sobrecarga para a rede.

A forma de minimizar a sobrecarga na rede devido aos LSAs criar adjacncias entre os routers vizinhos.

20-01-2005

ISEL DEETC RCD

53

Adjacncias
Routers adjacentes, para alm da troca das mensagens de Hello, participam na troca da base de dados (mapa) da rea (sincronizao da link state database). Para minimizarem o trfego elegem um designated router (DR) e um backup designated router (BDR) por cada segmento multi-acesso da rea. O DR funciona como relay da informao entre os routers adjacentes.

20-01-2005

ISEL DEETC RCD

54

Adjacncias entre routers


Estados porque passam dois routers para sincronizao das suas BD de link states
ExStart - Envio de mensagens Database Description (DD) vazias para estabelecer a ligao (sincronizar o n seq) e escolha do Master Exchange - Envio de mensagens Database Description (DD) indicando os LSAs existentes na BD do router Comparao entre as indicaes recebidas e os LSAs da BD local Loading - Pedido dos LSAs que necessitam de actualizao atravs de Link State Requests Loading - Actualizao da BD com os LSAs recebidos nos Link State Updates Full - BD sincronizadas
20-01-2005 ISEL DEETC RCD 55

Adjacncias entre routers


Quando a interface do router RTA com a rede fica operacional ele comea a enviar mensagens de Hello, embora desconhea a identidade do DR ou de qualquer dos vizinhos. RTB ouve os Hellos (coloca o vizinho no estado Init) e indica na sua prxima mensagem de Hello que ele o DR e que ouviu o Hello de RTA. Isto causa com que o RTA v para o estado ExStart no qual comea a estabelecer a adjacncia. RTA comea por se declarar Master. Quando verifica que RTB que o Master (tem maior router ID). RTB transita para o estado Slave e adopta o nmero de sequncia do DD do vizinho. As mensadens de DD so ento trocadas com as perguntas a virem do Master (RTB) e as respostas do Server (RTA). Esta troca termina quando as perguntas e as respectivas respostas tiverem o bit M a 0. Neste exemplo assumiu-se que RTB preencheu completamente a sua base de dados. Neste caso RTB vai imediatamente para o estado Full. RTA ir para o estado Full apenas depois de acabar de actualizar a sua base de dados Isto feito enviando mensagens Link State Request e recebendo como resposta Link State Updates. Note-se que, enquanto RTA esperou at ter recebido toda a descrio da base de dados de RTB antes de enviar os LSReq,, isto no necessita ser o caso de RTA. RTA pode intervalar o envio de LSReq com a recepo de mensagens DD. .
20-01-2005 ISEL DEETC RCD 56

Criao das adjacncias


192.168.1.1/24
Down State

192.168.1.2/24
Attempt

Router esquerdo: ID 192.168.1.1, Nenhum vizinho Router direito Lista de adjacncias 192.168.1.1/24, Int xxx

Init State

Hello Recebido

Router direito ID 192.168.1.2, vizinho 192.168.1.1 Router esquerdo Lista de adjacncias 192.168.1.2/24, Int xxx
Two-Way State

20-01-2005

ISEL DEETC RCD

57

Criao das adjacncias

192.168.1.1/24
ExStart

192.168.1.2/24

Router esquerdo: ID 192.168.1.1, vizinho 192.168.1.2 Router direito ID 192.168.1.2, vizinho 192.168.1.1
Negociao

Router direito torna-se Master porque possui um router ID maior, o router esquerdo tornase Slave
Negociao efectuada

20-01-2005

ISEL DEETC RCD

58

Criao das adjacncias


Slave Master

192.168.1.1/24 192.168.1.2/24
Exchange

Os vizinhos trocam e confirmam pacotes de descrio da base de dados (DD). No mximo um pacote pode ficar por confirmar. (a verificao efectuada atravs do nmero de sequncia dos pacotes DD)
Loading

Os pacotes de Link State Request so enviados para os vizinhos de forma a completar a informao na base de dados.
Full

20-01-2005

ISEL DEETC RCD

59

Refazer a adjacncia
Sincronizar as bases de dados atravs da comparao do nmero de sequncia A relao cliente-servidor estabelecida antes Registos interessantes Os nmeros de sequncia so superiores aos dos LSAs na base de dados ou os LSAs ainda no esto presentes na bases de dados

20-01-2005

ISEL DEETC RCD

60

Alterao de topologia: fluxo de dados


1 - Alterao comunicada ao DR (e ao BDR) utilizando multicast 2 - O DR comunica a alterao aos restantes routers adjacentes
DR
2 Via 224.0.0.5 ( AllSPFRouters)

LSU

DR Update da tabela de routing

Via 224.0.0.6 ( AllDRRouters)

LSU B
3

A router com ligao alterada

LSU

3 - devolvido um acknowledge por cada LSUpdate recebido


20-01-2005 ISEL DEETC RCD 61

Mensagens OSPF
Existem 5 tipos diferentes de mensagens: 1. Hello
Estabelecimento de relaes de vizinhana, teste de vizinhos activos, criao de adjacncias,

2. Database Description
Descrio da base de dados (lista de LSAs existentes na base de dados) Ateno: apena enviada a lista de LSAs existentes e no os LSA completos

3. Link State Request (LSR)


Pedido de registos da base de dados (LSAs) a um router vizinho

4. Link State Update (LSU)


Envio de registos da base de dados (LSAs) a um router vizinho

5. Link State Acknowledge (LSAck)


Confirmao de mensagens LSU
20-01-2005 ISEL DEETC RCD 62

Tipos de LSAs (link type)


Type 1 Router-LSA
Router descreve as redes a que est ligado e respectivos custos

Type 2 Network-LSA
DR descreve os routers existentes na rede Multiple Acess e a sua mscara

Type 3 Summary-LSA
ABR descreve sumrio de redes destino da rea vizinha

Type 4 Summary-LSA
ABR descreve a localizao dos ASBR existentes na rea vizinha

Type 5 AS-External- LSA


ASBR descreve o sumrio de destinos exteriores para os quais Gateway

Type 7 NSSA-Ext

20-01-2005

ISEL DEETC RCD

63

Tipos de LSAs (interior da rea)


Type 1 - Router LSA
Gerado por todos os routers Descreve as interfaces do router
tipo, endereo, mscara, custos

Propagado apenas dentro da rea Entra para o algoritmo SPF (Dijkstra)

Type 2 - Network LSA


Gerado pelo DR duma rede Multiple Access Descreve os routers da rede e mscara Propagado apenas dentro da rea Entra para o algoritmo SPF (Dijkstra)
ISEL DEETC RCD 64

20-01-2005

Tipos de LSAs (exterior da rea)


Type 3 e 4 - Summary LSA
Gerados pelos ABR Descreve o sumrio de outra rea (3) ou a existncia de ASBR noutra rea (4)
tipo, endereo, custos

Propagado dentro da rea No entra para o algoritmo Dijkstra

Type 5 AS-external LSA


Gerado pelos ASBR Descreve sumrio de destinos exteriores
tipo, endereos de rede, custos

Propagado dentro do Sistema Autnomo No entra para o algoritmo Dijkstra


20-01-2005 ISEL DEETC RCD 65

ABR Area Border Router


Liga uma rea X ao Backbone (rea 0) Fluxo de LSAs: rea X Backbone
Gera LSAs tipo 3 com informao dos LSAs tipo 1 e 2 locais (sumarizao) Gera LSA tipo 4 por cada LSA tipo 5 dum ASBR local Propaga os LSAs tipo 5

Fluxo de LSAs: Backbone rea X


Gera LSAs tipo 3 com informao dos LSAs tipo 1 e 2 locais (sumarizao) Gera LSA tipo 4 por cada LSA tipo 5 dum ASBR local Propaga os LSAs tipo 5 Propaga os LSAs tipo 4 gerados por ABRs de outras reas Propaga os LSAs tipo 3 gerados por ABRs de outras reas

20-01-2005

ISEL DEETC RCD

66

Representao de routers e de redes


A link state database, tambm designada topology database, descreve um grafo orientado: orientado
Vrtices Arcos
Ligam um router a uma rede e indicam que esse router tem uma interface ligada a essa rede. Ligam dois routers e indicam que eles tm uma ligao ponto-a-ponto. Representam os routers e as redes. Existem trs tipos de vrtices: Router, rede de trnsito e rede stub. Apenas os dois primeiros podem transportar trfego.

As redes podem ser redes de trnsito ou redes stub.


Redes de trnsito - So capazes de transportar trfego que no local - origem e destino externos. Uma rede de trnsito representada por um vrtice do grafo que possui arcos de entrada e de sada. Redes stub - Possuem apenas um arco de entrada. Transportam apenas trfego local, isto s transporta trfego com origem ou destino locais.

20-01-2005

ISEL DEETC RCD

67

Grafo directo representativo da rede


Redes e routers so representados por vrtices. Um arco de custo x ligando um vrtice A a um vrtice B representa um ligao fsica ponto-a-ponto. Os arcos so unidirecionais uma ligao bidireccional implica dois arcos. Um arco ligando um router a uma rede indica que esse router tem uma interface nessa rede. A vizinhana de cada n da rede no grafo depende do tipo de rede (ponto-aponto, broadcast, NBMA ou ponto-a-multiponto) e do nmero de routers com interfaces ligadas rede. Todas as redes dum grafo tm associados um endereo IP e uma mscara.

20-01-2005

ISEL DEETC RCD

68

Grafo de adjacncias
R1 8 6 R2 R7
DR

R3
BDR

R4 N2

R1

R2

R5 R7 R5

R6

Em redes fsicas ponto-a-ponto, ponto-amultiponto e ligaes virtuais os routers vizinhos tornam-se adjacentes sempre que puderem comunicar directamente. Em redes BMA e NBMA apena o BDR e o DR se tornam adjacentes de todos os outros routers ligados mesma rede.
20-01-2005 ISEL DEETC RCD

R6 R4 R3
69

Representao de redes sem suporte de broadcast


O OSPF suporta redes sem broadcast de uma de duas formas: NBMA ou ponto-amultiponto. A escolha do modo determina a forma como o protocolo Hello e o flooding funcionam sobre a rede sem broadcast e a forma como a rede representada na base de dados da topologia. Modo NBMA: O OSPF emula o funcionamento sobre uma rede com broadcast. eleito um DR.e o DR envia um LSA para a rede. Tem, no entanto, uma restrio: Requer que todos os routers ligados rede NBMA sejam capazes de comunicar directamente. A representao no grafo idntica para NBMAs e BMAs. Modo ponto-a-multiponto: O router trata todas as ligaes entre routers atravs da rede sem broadcast como se elas fossem ligaes ponto-a-ponto. No eleito um DR para a rede nem gerado um LSA para a rede. Na representao grfica da base de dados da topologia os routers que podem comunicar directamente atravs da rede ponto-a-multiponto so ligados por arcos bidirecionais tendo cada router tambm uma ligao stub ao endereo da sua prpria interface, o que no se passa nas ligaes ponto-a-ponto.
20-01-2005 ISEL DEETC RCD 70

Representao de routers e de redes


Tipos de redes
Ponto-a-ponto (point-to-point)
Ex.: Ligao srie No tem DR ou BDR

BMA (Broadcast Multiple Access)


Ex.: Ethernet, Token Ring, FDDI Utiliza multicast e so eleitos DR e BDR:

224.0.0.5 AllSPFRouters 224.0.0.6 AllDRouters NBMA (Non-Broadcast Multiple Access)


Ex.: FR, ATM, X.25 So definidos DR e BDR
Frame Relay ATM

Ponto-a-multiponto (point-to-multipoint)
NBMA tratada como mtiplos ponto-a-ponto No tem eleio de DR e BDR

X.25

Virtual links
Tnel entre reas OSPF
20-01-2005 ISEL DEETC RCD 71

Exemplo, simplificado, de uma Link State Database


De Para

A c 1 D

a 1 d e 2

B 2

b 3 f 1

Ligao Custo Nmero de sequncia do LSA


a c a b d b f c e d f e 1 1 1 3 2 3 1 1 2 2 1 2 2 2 2 1 2 1 1 2 1 2 1 1
72

A A B B B C C D D E E E

B D A C E B E A E B C D

Link-state advertisements (LSA)


De A para B, Ligao a, Custo = 1, NSeq LSA = 2

20-01-2005

ISEL DEETC RCD

Caso de falha na ligao


A 1 D e 2 a 1 d E B 2 f 1 b 3 No caso da ligao a falhar os C routers A e B enviam informao (LSA) a todos os outros routers sobre a alterao do estado da ligao a. Todos os routers tero de calcular de novo a rvore dos caminhos mais curtos para restabelecerem as ligaes. O mesmo se passa com os routers D e E se a ligao e falhar. No caso da rede ser segmentada as bases de dados de cada segmento ficaro diferentes.
20-01-2005 ISEL DEETC RCD 73

Rede segmentada
a 1 d e 2 E b 3 f D Se b for abaixo, A e D no recebero o LSA e as suas C bases de dados ficaro diferentes em relao s existentes em B, C e E. 1

A 1

B 2

Quando e vier acima as bases de dados dos routers tm de se sincronizar. A este processo chama-se refazer a adjacncia.

20-01-2005

ISEL DEETC RCD

74

Representao de routers e redes numa tabela


R1 8 Ia 6 Ib De: R1 R2 X X X X R2 Interfaces para redes ponto-a-ponto no necessitam que lhes sejam atribudos endereos IP. Quando so atribudos endereos s interfaces elas devem ser representadas como redes stub, com cada router a publicitar uma ligao do tipo stub ao endereo da interface do outro router. Opcionalmente uma subrede IP pode ser atribuda rede ponto-a-ponto. Neste caso ambos os routers devem publicitar uma ligao stub subrede IP em vez de publicitarem os endereos mtuos.
ISEL DEETC RCD 75

R1 Para: R2 Ia Ib

Rede ponto-a-ponto
20-01-2005

Representao de routers e redes numa tabela


R7 N3 De: Para: R7 N3 X R7 N3 4 Neste caso existe apenas um arco do router para a rede.

Rede stub

20-01-2005

ISEL DEETC RCD

76

Representao de routers e redes numa tabela


R3 N2 R5 10 10 R6 R4 10 10 Quando vrios routers esto ligados a uma rede com suporte de broadcast o grafo da base de dados mostra os routers ligados bidirecionalmente ao vrtice da rede. Cada rede (stub ou trnsito) no grafo tem um endereo IP e uma mscara associada. Mquinas ligadas directamente a routers aparecem no grafo como redes stub. A mscara sempre 255.255.255.255 a qual indica a presena de apenas um nico n.
ISEL DEETC RCD 77

De: R3 R4 R5 R6 N2 X Para: R3 R4 X R5 X R6 X N2 X X X X Rede BMA ou NBMA


20-01-2005

Representao de routers e redes numa tabela


R3 N2 R5 I3 I5 R6 R4 I4 I6 De R3 R4 R5 R6 R3 X X X R4 X X R5 X X Para R6 X X X I3 X I4 X I5 X I6 X

Rede ponto-a-multiponto

Todos os routers podem comunicar directamente atravs de N2, excepto os routers R4 e R5. I3 a I6 indicam os endereos IP das interfaces.

20-01-2005

ISEL DEETC RCD

78

Ligaes virtuais (Virtual links)


Suportados sobre tneis IP que atravessam uma rea (e apenas uma) Permitem a ligao entre uma rea e a rea 0 atravs de outra rea intermdia Podem ser configuradas ligaes virtuais entre quaisquer dois routers backbone que tenham interfaces numa rea que no seja de backbone. O protocolo trata os dois routers ligados por uma ligao virtual como se eles estivessem ligados atravs de uma ligao ponto-a-ponto no numerada. No grafo do backbone os dois routers so unidos por arcos cujo custo so as distncias intra-rea entre os dois. O trfego do protocolo de routing que flui ao longo da ligao virtual utiliza routing intra-rea.

20-01-2005

ISEL DEETC RCD

79

N1

R1
3 1

N3
1

R4
8

N12 8 N13 8
8 6

N14
8

Exemplo de um AS
Exemplos
De: R12 N9 N10 H1 R12 Para: N9 N10 H1 1 2 10

R2 1 N2 3 R3 N4 N11 R9 R5 e R7 so routers de fronteira (border)


10

R5 7
8 2 6 6

R6
Ia 7 6

N12
2

Router-LSA do R12

R7 N8 R11
1 2 3 Ib 5

R10
1

N15
R9

N9
1 1 2

N6
1

R9 Para: R11 R12 N9

De: R11 R12 N9 0 0 0

H1
20-01-2005

R12
ISEL DEETC RCD

R8
4

Network-LSA da N9 (Enviado pelo DR da N9)

N10

N7
80

Grafo directo resultante


De: R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 N3 N6 N8 N9 R1 0 R2 0 R3 6 0 R4 8 0 R5 8 6 6 R6 7 5 R7 6 0 R8 0 R9 0 R10 7 0 0 R11 0 0 Para: R12 0 N1 3 N2 3 N3 1 1 1 1 N4 2 N5 N6 1 1 1 N7 4 N8 3 2 N9 1 1 1 N10 2 N11 3 N12 8 2 N13 8 N14 8 N15 9 H1 10

Arcos que no esto marcados com um custo tm um custo 0 (so ligaes de rede-router). No so indicados nesta tabela os caminhos para as redes externas N12-N15.

20-01-2005

ISEL DEETC RCD

81

Rede e tabela representando o grafo respectivo


De: R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 N3 N6 N8 N9 R1 0 R2 0 R3 6 0 R4 8 0 R5 8 6 6 R6 7 5 R7 6 0 R8 0 R9 0 R10 7 0 0 R11 0 0 Para: R12 0 N1 3 N2 3 N3 1 1 1 1 N4 2 N5 N6 1 1 1 N7 4 N8 3 2 N9 1 1 1 N10 2 N11 3 N12 8 2 N13 8 N14 8 N15 9 H1 10

20-01-2005

ISEL DEETC RCD

82

Tabela de routing de R6 sem a presena de reas


Tipo N N N N N N N N N N N N N R R N N N N Destino rea N1 0 N2 0 N3 0 N4 0 Ib 0 Ia 0 N6 0 N7 0 N8 0 N9 0 N10 0 N11 0 H1 0 R5 0 R7 0 N12 N13 N14 N15 * * * * Tipo Prximo caminho Custo salto intra-rea 10 R3 intra-rea 10 R3 intra-rea 7 R3 intra-rea 8 R3 intra-rea 7* intra-rea 12 R10 intra-rea 8 R10 intra-rea 12 R10 intra-rea 10 R10 intra-rea 11 R10 intra-rea 13 R10 intra-rea 14 R10 intra-rea 21 R10 intra-rea 6 R5 intra-rea 8 R10 tipo 1 ext. tipo 1 ext. tipo 1 ext. tipo 1 ext. 10 14 14 17 R10 R5 R5 R10 Router anunciante * * * * * * * * * * * * * * * R7 R5 R5 R7

Tabela de routing de R6
20-01-2005 ISEL DEETC RCD 83

Clculo dos caminhos mais curtos


Cada router constri um grafo da topologia da rea, baseado na base de dados de LSAs, e calcula o caminho mais curto para cada destino utilizando o algoritmo de Dijkstra Shortest Path Tree

20-01-2005

ISEL DEETC RCD

84

Shortest Path Tree e Tabela de Routing de R6


R5
8 8 8 6

R6
6 2 1

7 7

Ib

Destinos locais
5
Prximo Distncia Destino salto N1 R3 10 N2 R3 10 N3 R3 7 N4 R3 8 Ib * 7 Ia R10 12 N6 R10 8 N7 R10 12 N8 R10 10 N9 R10 11 N10 R10 13 N11 R10 14 H1 R10 21 R5 R7 R5 R10 6 8

N12 N13

N14 R4 R2
3

N4

R3 R10
3

Ia N6 R8
4 2

N3
3

N8 R11 N9 R12
10 2 1

R7
9

R1 N1

N2 N11
20-01-2005

R9
3

N12 N7

N15

H1

N10
ISEL DEETC RCD 85

Tabela de routing de R6 sem a presena de reas


Tipo N N N N N N N N N N N N N R R N N N N Destino rea N1 0 N2 0 N3 0 N4 0 Ib 0 Ia 0 N6 0 N7 0 N8 0 N9 0 N10 0 N11 0 H1 0 R5 0 R7 0 N12 N13 N14 N15 * * * * Tipo Prximo caminho Custo salto intra-rea 10 R3 intra-rea 10 R3 intra-rea 7 R3 intra-rea 8 R3 intra-rea 7* intra-rea 12 R10 intra-rea 8 R10 intra-rea 12 R10 intra-rea 10 R10 intra-rea 11 R10 intra-rea 13 R10 intra-rea 14 R10 intra-rea 21 R10 intra-rea 6 R5 intra-rea 8 R10 tipo 1 ext. tipo 1 ext. tipo 1 ext. tipo 1 ext. 10 14 14 17 R10 R5 R5 R10 Router anunciante * * * * * * * * * * * * * * * R7 R5 R5 R7

Tabela de routing de R6
20-01-2005 ISEL DEETC RCD 86

Mltiplas reas
Grupo de mquinas e redes contiguas IR Uma BD de LSAs por rea rea de backbone rea 2 Ligaes virtuais (virtual links) Routing inter-area Para outros AS rea 0 rea 4 ASBR rea 1 Virtual link
20-01-2005 ISEL DEETC RCD 87

rea 3 ABR

N1

R1
3

N3
1

R4

N12 8 N13 8
8 8 6

N14
8

Exemplo de um AS com reas


Exemplos
Rede N1 N2 N3 N4 R3 4 4 1 2 R4 4 4 1 3

R5 7
8 2 6 6

R2 1 N2 3 rea 1

R3 N4 N11 R9

R6
Ia 7

rea 0 R7
6

Redes anunciadas para o backbone por R3 e R4 (summary-LSA type 3) 2

N12

N8
1

R5 e R7 so routers de fronteira (border) rea 3


10

R11
1

Ib 5 3 1

N15

N9
1 1 2

N6
1 4

R10 R12
ISEL DEETC RCD Ligao virtual

H1
20-01-2005

R8 N7
88

N10

rea 2

Base de dados da rea 1


De:
R1 R2 R3 R4 R5 R7 N3 R1 0 R2 0 R3 0 R4 0 R5 14 8 R7 20 14 N1 3 N2 3 N3 1 1 1 1 N4 2 Ia,Ib 20 27 N6 16 15 N7 20 19 N8 18 18 N9-N11,H1 29 36 N12 8 2 N13 8 N14 8 N15 9

Para:

Base de dados da rea 1


20-01-2005

A tabela descreve totalmente o encaminhamento intrarea 1. Mostra tambm a vista completa da internet dos dois routers R1 e R2. funo dos routers ABR R3 e R4 anunciar na rea 1 todas as distncias para todos os destinos externos rea. Tambm R3 e R4 devem anunciar na rea 1 a localizao dos ASBRs R5 e R7. Finalmente, ASexternal-LSAs de R5 e R7 so enviados atravs de todo o AS e, em particular, atravs da rea 1. Estes LSAs so includos na base de dados da rea 1 e contm caminhos para as redes N12-N15. Os routers R3 e R4 devem tambm sumarizar a topologia da rea 1 para distribuio no backbone. Os LSAs para o backbone so mostrados na tabela junto da figura do exemplo anterior. Estes sumrios mostram quais as redes que esto contidas na rea 1 (redes N1 a N4), e a distncia a essas redes dos routers R3 e R4 respectivamente.
ISEL DEETC RCD 89

Base de dados da rea 1


De:
R1 R2 R3 R4 R5 R7 N3 R1 0 R2 0 R3 0 R4 0 R5 14 8 R7 20 14 N1 3 N2 3 N3 1 1 1 1 N4 2 Ia,Ib 20 27 N6 16 15 N7 20 19 N8 18 18 N9-N11,H1 29 36 N12 8 2 N13 8 N14 8 N15 9

Para:

Base de dados da rea 1


Ligao virtual 20-01-2005 ISEL DEETC RCD 90

Base de dados da rea 1


De:
R1 R2 R3 R4 R5 R7 N3 R1 0 R2 0 R3 0 R4 0 R5 14 8 R7 20 14 N1 3 N2 3 N3 1 1 1 1 N4 2 Ia,Ib 20 27 N6 16 15 N7 20 19 N8 18 18 N9-N11,H1 29 36 N12 8 2 N13 8 N14 8 N15 9

Para:

Justifique os seguintes valores da tabela: R3:R7=20; R4:N8=18; R3:H1=29; R4:H1=36; R4:Ia=27


20-01-2005

Ligao virtual

Base de dados da rea 1


91

ISEL DEETC RCD

Base de dados da rea de backbone


De: R3 R4 R5 R6 R7 R10 R11 R3 6 R4 8 R5 8 6 6 R6 8 7 5 R7 6 R10 7 2 R11 3 N1 4 4 Para: N2 4 4 N3 1 1 N4 2 3 Ia 5 Ib 7 N6 1 1 3 N7 5 5 7 N8 4 3 2 N9-N11,H1 11 N12 8 2 N13 8 N14 8 N15 9

O conjunto de routers da rea 0 so os backbone routers. O router R11 um routers de backbone porque pertence a duas reas. De maneira a interligar o backbone ligaram-se atravs de um link virtual os routers R10 e R11. Os routers de fronteira (ABRs) R3, R4, R7, R10 e R11 condensam a informao de encaminhamento das reas que no so de backbone para distribuio atravs de backbone. A terceira rea foi configurada para condensar as redes N9-N11 e mquina H1 num simples caminho. Isto implica uma nica linha na tabela para as rede N9-N11 e mquina H1. Os routers R5 e R7 so ASBRs a informao obtida externamente tambm aparece no grafo como stubs.

Base de dados do backbone


20-01-2005 ISEL DEETC RCD 92

Base de dados da rea de backbone


De: R3 R4 R5 R6 R7 R10 R11 R3 6 R4 8 R5 8 6 6 R6 8 7 5 R7 6 R10 7 2 R11 3 N1 4 4 Para: N2 4 4 N3 1 1 N4 2 3 Ia 5 Ib 7 N6 1 1 3 N7 5 5 7 N8 4 3 2 N9-N11,H1 11 N12 8 2 N13 8 N14 8 N15 9

Base de dados do backbone


Ligao virtual 20-01-2005 ISEL DEETC RCD 93

Clculo das distncias no backbone


O backbone permite a troca de informao sumria entre ABRs. Cada ABR ouve os sumrios de todos os ABRs de todas as reas. Formam assim um mapa da distncia de todas as redes exteriores sua rea examinando os LSAs recebidos e adicionando a distncia no backbone a cada router anunciante. Usando de novo R3 e R4 como exemplos o procedimento o seguinte:
Distncia Distncia de R3 de R4 Para R3 * 21 Para R4 22 * Para R7 20 14 Para R10 15 22 Para R11 18 25

Primeiro calculam o SPF para o backbone. Isto fornece a distncia a todos os outros Para Ia 20 27 ABRs. Ficam tambm a saber a distncia a redes (Ia e Ib) e a ASBRs (R5 e R7) que Para Ib 15 22 pertencem ao backbone. Ver tabela de cima. A seguir, analisando os sumrios dos Para R5 14 8 ABRs, R3 e R4 podem determinar a distncia de todas as redes exteriores sua rea. Para R7 20 14 Essas distncias so ento annciadas internamente na rea por R3 e R4. Os anncios realizados por R3 e R4 na rea 1 so mostrados na tabela de baixo. Distncia no backbone Note-se que a tabela abaixo assume que o limite da rea foi configurado para o calculadas por R3 e R4

backbone de maneira a agrupar Ia e Ib num simples LSA. A informao importada para a rea 1 por R3 e R4 permite a um router interno, como R1, escolher um ABR de forma intiligente. R1 usar R4 para o trfego para N6, R3 para o trfego para N10 e balancear o trfego entre os dois para N8. R1 poder tambm determinar desta forma o melhor caminho para os ASBRs R5 e R7. Ento, analisando os As-external-LSAs de R5 e R7, R1 pode decidir entre R5 e R7 quando pretende enviar trfego para outro AS (N12 N15). Note-se que a ruptura da ligao entre R6 e R10 far com que o backbone fique desligado. Configurando uma ligao virtual entre R7 e R10 dar ao backbone maior resistncia a falhas deste tipo.
20-01-2005 ISEL DEETC RCD

Destino Ia, Ib N6 N7 N8 N9-N11, H1 R5 R7

R3 R4 anncia anncia 20 16 20 18 29 14 20 27 15 19 18 36 8 14

Destinos anunciados na rea 1 por R3 e R4


94

Clculo das distncias no backbone


Distncia Distncia de R3 de R4 Para R3 * 21 Para R4 22 * Para R7 20 14 Para R10 15 22 Para R11 18 25 Para Ia Para Ib Para R5 Para R7 20 15 14 20 27 22 8 14

Distncia no backbone calculadas por R3 e R4


Destino Ia, Ib N6 N7 N8 N9-N11, H1 R5 R7 R3 R4 anncia anncia 20 16 20 18 29 14 20 27 15 19 18 36 8 14

Destinos anunciados na rea 1 por R3 e R4


20-01-2005 ISEL DEETC RCD 95

Tabela de routing do R4 na presena de reas


Tipo N N N N R N N R R R R R N N N N N N N N Destino N1 N2 N3 N4 R3 Ib Ia R3 R5 R7 R10 R11 N6 N7 N8 N9-N11,H1 N12 N13 N14 N15 * * * * rea 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 Tipo Prximo salto caminho Custo intra-rea 4 R1 intra-rea 4 R2 intra-rea 1* intra-rea 3 R3 intra-rea 1* intra-rea intra-rea intra-rea intra-rea intra-rea intra-rea intra-rea inter-rea inter-rea inter-rea inter-rea tipo1 ext. tipo1 ext. tipo1 ext. tipo1 ext. 22 27 21 8 14 22 25 15 19 18 36 16 16 16 23 R5 R5 R5 * R5 R5 R5 R5 R5 R5 R5 R5 R5 R5 R5 Router anunciante * * * * * * * * * * * * R7 R7 R7 R11 R5, R7 R5, R7 R6 R7

Tabela de routing de R4
20-01-2005 ISEL DEETC RCD 96

Tabela de routing do R4 na presena de reas


Tipo N N N N R N N R R R R R N N N N N N N N Destino N1 N2 N3 N4 R3 Ib Ia R3 R5 R7 R10 R11 N6 N7 N8 N9-N11,H1 N12 N13 N14 N15 * * * * rea 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 Tipo Prximo caminho Custo salto intra-rea 4 R1 intra-rea 4 R2 intra-rea 1* intra-rea 3 R3 intra-rea 1* intra-rea intra-rea intra-rea intra-rea intra-rea intra-rea intra-rea inter-rea inter-rea inter-rea inter-rea tipo1 ext. tipo1 ext. tipo1 ext. tipo1 ext. 16 21 1 8 14 16 19 15 19 18 30 16 16 16 23 R3 R3 * * R5 R3 R3 R5 R5 R5 R3 R5 R5 R5 R5 Router anunciante * * * * * * * * * * * * R7 R7 R7 R11 R5, R7 R5, R7 R6 R7

Alteraes resultantes da criao duma ligao virtual entre R3 e R4


20-01-2005

Tabela de routing de R4
97

ISEL DEETC RCD

Redistribuio de rotas
Domnio RIP Domnio OSPF

ASBR

O router ASBR redistribui RIP no OSPF e vice-versa


20-01-2005 ISEL DEETC RCD 98

Informao externa de routing (AS-external-LSAs)


Depois de criada a rvore examinada a informao externa. Informao obtida de protocolos externos, rotas estticas e caminhos por omisso. A informao externa de encaminhamento publicitada (flooded) a todo o sistema autnomo sem alterao. O OSPF suporta dois tipos de mtricas externas: Tipo 1 Expressas nas mesmas unidades dos custos das interfaces OSPF. Esta mtrica soma distncia at ao router que d acesso ao exterior. Tipo 2 As mtricas so consideradas uma ordem de magnitude superiores. Para efeito de deciso SPF, qualquer distncia do Tipo 2 superior a qualquer do Tipo 1.
20-01-2005 ISEL DEETC RCD 99

Informao externa de routing


Destinos externos
Prximo Destino salto N12 R10 N13 R5 N14 R5 N15 R10 Distncia 10 14 14 17

Para esta tabela de routing foi considerado que as distncias annciadas eram Tipo 1.

O router de origem continua a ser o R6

Se um router ASBR anunciar um destino Tipo 1 a deciso tomada considerando o caminho interno at ao ASBR que o anncia somado ao caminho interno dentro sistema autnomo. Se um ASBR anuncia um destino Tipo 2 a deciso tomada considerando apenas o valor annciado. O caminho interno no AS no considerado.
20-01-2005 ISEL DEETC RCD 100

Limitao na obteno da informao de routing


No encaminhamento dentro das reas os pacotes so encaminhados com informao apenas baseada em dados obtidos dentro da rea; no pode ser utilizada informao para encaminhamento obtida fora da rea. Isto protege o encaminhamento dentro da rea da injeco de informaes erradas.

20-01-2005

ISEL DEETC RCD

101

Forwarding address"
Suponha-se que ligado N6 da figura anterior existe um router (Rx) que participa na troca de trfego BGP com R7 mas no encaminha trfego OSPF. o R7 que anncia o caminho mesmo que reenvie para Rx. Isto pode significar que embora enviando para Rx directamente se poupe algum caminho isso no feito porque o R7 (advertising router) que anuncia que router ele que encaminha para o exterior. Para evitar situaes como a referida o OSPF permite que os ASBR especifiquem um "forwarding address" no seus AS-external-LSAs. No address exemplo anterior o R7 poderia anunciar o endereo IP do Rx como "forwarding address para todos os destinos em que os datagramas devam ser enviados directamente para Rx.

20-01-2005

ISEL DEETC RCD

102

Forwarding address"
O forwarding address tem uma outra aplicao. Permite que routers no interior do AS funcionem como route servers. Por exemplo, o R6 pode servers tornar-se um route server atravs de configurao de rotas estticas e de aquisio de protocolos de routing externos. R6 pode ento comear a annciar-se a si prprio como ASBR e gerar um conjunto de AS-externalLSAs. Em cada AS-external-LSA o router R6 pode assim especificar o ponto de sada correcto do AS para determinados destinos atravs da afectao do campo forwarding address dos LSAs.

20-01-2005

ISEL DEETC RCD

103

Stub Areas
Uma rea pode ser configurada como stub quando existe um nico ponto de sada dessa rea, ou quando a escolha do ponto de sada no necessite ser efectuado com base em destinos externos. A rea 3 da figura podia ser configurada como stub dado todo o trfego para o exterior fluir atravs do ABR R11. Se a rea 3 fosse configurada como stub o router R11 anunciaria uma rota por omisso para distribuio dentro da rea 3 (num summaryLSA), em vez de fazer o flooding na rea 3 de AS-external-LSAs para as redes N12-N15. Caractersticas ABR no injecta LSAs External (Type 5) na rea ABR no injecta LSAs ASBR-Summary (Type 4) na rea ABR injecta (automaticamente) uma rota por omisso na rea No pode conter ASBRs No pode ser atravessada por Virtual Links
20-01-2005 ISEL DEETC RCD 104

Stub Area ABR (Area Border Router)


Liga uma Stub Area X ao Backbone (rea 0) Fluxo de LSAs: Stub Area X Backbone
Gera LSAs tipo 3 com informao dos LSAs tipo 1 e 2 locais (sumarizao) No pode conter ASBRs

Fluxo de LSAs: Backbone Stub Area X


Filtra LSAs tipo 4 e 5 Gera LSA tipo 3 com a rota por omisso (0.0.0.0/0) para representar a informao externa gerada por ASBRs (LSAs tipo 4 e 5) Gera LSAs tipo 3 com informao dos LSAs tipo 1 e 2 locais (sumarizao)
Podem ser filtrados configurando no-summaries (Totally Stubby A.)

Propaga os LSAs tipo 3 gerados por ABRs de outras reas


Podem ser filtrados configurando no-summaries (Totally Stubby A.)

20-01-2005

ISEL DEETC RCD

105

Totally Stubby Areas


Caractersticas ABR no injecta AS-external-LSAs (Type 5) na rea ABR no injecta ASBR Summary-LSAs (Type 4) na rea ABR no injecta Summary-LSAs (Type 3) na rea ABR injecta (automaticamente) uma rota por omisso na rea No pode conter ASBRs No pode ser atravessada por Virtual Links Tambm chamadas Stub no-Summaries Areas

20-01-2005

ISEL DEETC RCD

106

Not So Stuby Areas (NSSA)


Caractersticas AS-external-LSAs de outras reas no so propagados para a rea automaticamente propagada uma rota por omisso para a rea (LSA Type 3) Pode conter ASBRs Propaga AS-external-LSAs com rotas dos seus ASBRs para as outras reas No pode ser atravessada por Virtual Links
20-01-2005 ISEL DEETC RCD 107

NSSA ABR
Liga uma NSSA X ao Backbone (rea 0) Fluxo de LSAs: NSSA X Backbone
Gera LSAs tipo 3 com informao dos LSAs tipo 1 e 2 locais Gera LSA tipo 4 por cada LSA tipo 7 dum ASBR local Converte LSAs tipo 7 em LSAs tipo 5

Fluxo de LSAs: Backbone NSSA X


Filtra LSAs tipo 4 e 5 Gera LSA tipo 3 com a rota por omisso (0.0.0.0/0) para representar a informao externa gerada por ASBRs (LSAs tipo 4 e 5) Gera LSAs tipo 3 com informao dos LSAs tipo 1 e 2 locais
Podem ser filtrados configurando no-summaries

Propaga os LSAs tipo 3 gerados por ABRs de outras reas


Podem ser filtrados configurando no-summaries

20-01-2005

ISEL DEETC RCD

108

Mensagens OSPF
As mensagens OSPF so enviadas em datagramas IP
Utilizam no datagrama IP o cdigo de protocolo 89 Sem especificar nenhum Type of Service TOS = 0 Preference = Internetwork Control (se possvel)

As mensagens OSPF so enviadas directamente de um router a outro(s) no mesmo segmento


Viajam um nico hop - no so apenas reencaminhadas

Em ligaes ponto-a-ponto o endereo destino sempre AllSPFRouters. Noutros tipos de redes incluindo virtual links a maioria das mensagens OSPF so enviadas por unicast, sendo o endereo IP destino o dos seus routers adjacentes, isto , so enviadas directamente para o endereo IP da mquina adjacente. Os nicos pacotes que no so enviados em unicast so em redes broadcast; nestas redes os pacotes Hello so enviados para o endereo multicast AllSPFRouters, o DR e o BDR enviam ambos Link State Updates.
20-01-2005 ISEL DEETC RCD 109

Mensagens OSPF
Excluem-se, nas redes com suporte de broadcast, as mensagens de Hello que so enviadas para o endereo de multicast AllSPFRouters, o DR e o BDR enviam as suas mensagens de Link State Update e Link State Acknowledgment para o endereo AllSPFRouters enquanto todos os outros routers enviam os seus Link State Updates e Link State Acknowledgments para o endereo AllDRRouters. Retransmisses de pacotes Link State Update so sempre enviadas directamente para o vizinho. Isto implica que em redes multiple access as retransmisses sejam enviadas para o endereo IP do vizinho.
Em OSPF utilizam-se os endereos multicast: 224.0.0.5 AllSPFRouters, e 224.0.0.6 AllDRouters

20-01-2005

ISEL DEETC RCD

110

Mensagens OSPF

Actualizao da idade dos LSA Os LSAs das mensagens LSUpdate tm a idade incrementada (InfTransDelay) antes de serem enviadas. Este valor deve incluir os atrasos de transmisso e propagao; deve ser maior que zero.

20-01-2005

ISEL DEETC RCD

111

Recepo de mensagens
Pa ra :

Ligao virtual

Quando recebida uma mensagem ela marcada com a identificao da interface por onde foi recebida. Para routers que possuam links virtuais pode no ser bvio qual a interface por onde receberam a mensagem. Por exemplo, considere-se que R11 recebe uma mensagem pela sua interface com N8, ele pode querer associar a mensagem com a rea 2 ou com a ligao virtual com R10. Para o que se segue assume-se que a mensagem no associada ligao virtual.
112

20-01-2005

ISEL DEETC RCD

Recepo de mensagens
Para a mensagem ser aceite ao nvel IP deve:
O checksum IP deve estar correcto O endereo IP deve ser o da interface que est a receber ou um dos endereos multicast AllSPFRouters ou AllDRouters O protocolo especificado no datagrama IP deve ser OSPF Os pacotes gerados localmente no devem ser passados ao OSPF.

A seguir o header OSPF deve ser verifcado:


A verso deve ser 2 O campo Area ID deve: Ser igual ao Area ID da interface que recebe. Em redes que no ponto-a-ponto, aps aplicar a mscara deve ser verificado se o endereo de rede igual. Neste caso a mensagem atravessou um simples troo de rede. Indicar o backbone. Neste caso foi enviado atravs duma ligao virtual. O router que recebe deve ser um ABR e o endereo de origem da mensagem deve ser o da outra ponta da ligao virtual. Se assim for a mensagem associada ligao virtual e rea de backbone.

20-01-2005

ISEL DEETC RCD

113

Recepo de mensagens
Se o endereo destino do pacote IP for AllDRouters este s deve ser aceite se o estado do router for DR ou backup. A mensagem deve ser autenticada. Se a mensagem for do tipo Hello deve ser processada pelo protocolo Hello. Todos as outras mensagens so trocadas apenas entre routers adjacentes. Isto implica que deve ser proveniente de um dos vizinhos activos. Se no for vai fora. Em redes com broadcast, ponto-a-multiponto e NBMA quem envia indicado no endereo IP de origem do datagrama. Em redes ponto-a-ponto ou ligaes virtuais a origem indicada pelo campo Router ID do header da mensagem OSPF.

20-01-2005

ISEL DEETC RCD

114

Recepo de mensagens
A seguir o header OSPF deve ser verificado: A verso deve ser 2 O campo Area ID deve: Ser igual ao Area ID da interface que recebe. Em redes que no ponto-a-ponto, aps aplicar a mscara deve ser verificado se o endereo de rede igual. Neste caso a mensagem atravessou um simples troo de rede. Indicar o backbone. Neste caso foi enviado atravs duma ligao virtual. O router que recebe deve ser um ABR e o endereo de origem da mensagem deve ser o da outra ponta da ligao virtual.

20-01-2005

ISEL DEETC RCD

115

Mensagens OSPF
Existem 5 tipos diferentes de mensagens: 1. Hello
Estabelecimento de relaes de vizinhana, teste de vizinhos activos, criao de adjacncias,

2. Database Description
Descrio da base de dados (lista de LSAs existentes na base de dados) Ateno: apena enviada a lista de LSAs existentes e no os LSA completos

3. Link State Request (LSR)


Pedido de registos da base de dados (LSAs) a um router vizinho

4. Link State Update (LSU)


Envio de registos da base de dados (LSAs) a um router vizinho

5. Link State Acknowledge (LSAck)


Confirmao de mensagens LSU
20-01-2005 ISEL DEETC RCD 116

Mensagens OSPF - Header


Formato do header comum a todas as mensagens OSPF

0 Version #

16

31

packet length Type Router ID Area ID Checksum AuType Authentication Authentication


Type 1 2 3 4 5 Significado Hello Database Description Link Status Request Link Status Update Link Status Acknowledgment
117

20-01-2005

ISEL DEETC RCD

Mensagens OSPF - Header


Version Colocado a 2 para o OSPFv2 Packet type (Type) Tipo de pacote OSPF Packet length dimenso do pacote em bytes Router ID Identidade do router de origem da mensagem Area ID rea de origem da mensagem Checksum Complemento para 1, a 16 bits, de todo o pacote OSPF, excluindo o campo de 64 bits da autenticao AuType e Authentication Os pacotes OSPF podem utilizar autenticao. Interfaces distintas, ligadas a redes distintas, podem utilizar autenticaes distintas. Autype indica o tipo de autenticao em uso. O campo de autenticao de 64 bits para uso do processo de autenticao.

20-01-2005

ISEL DEETC RCD

118

Mensagem Hello
0 Version # 8 1 Router ID Area ID Checksum AuType Authentication Authentication Network mask Hello Interval Options Rtr Priority RouterDeadInterval Designated router Backup Designated Router Neighbor ... 16 packet length 31

20-01-2005

ISEL DEETC RCD

119

Mensagem Hello
Formato do campo Options:
* * DC EA N/P MC E *

E-bit descreve a forma como os AS-external-LSAs so enviados MC-bit descreve a forma como os datagramas IP multicast so enviados
[RFC 1584]

N/P-bit descreve como so tratados os Type-7 LSAs (NSSA)

[RFC 1587]

EA-bit descreve a disponibilidade do router para receber e enviar ASexternal-LSAs DC-bit descreve a forma como o router trata o pedido de circuitos
1793]
20-01-2005 ISEL DEETC RCD 120

[RFC

Mensagem Database Description (DD)


Esta mensagem transporta apenas a descrio da base de dados, e no o seu contedo, de maneira a permitir que routers adjacentes possam comparar as suas bases de dados.
0 Version # 8 2 Router ID Area ID Checksum AuType Authentication Authentication Interface MTU Options DD Sequence number LSA Headers
20-01-2005 ISEL DEETC RCD 121

16 packet length

31

00000IMMS

Mensagem Database Description (DD)


I - Initialize = 1 na primeira mensagem M - More = 0 na ltima mensagem MS - Master/Slave - Indica quem comea e controla a sincronizao dos LSAs
Ambos comeam como Master e fica o que tiver o maior identificador

DD Sequence Number - Numera as mensagens DD enviadas por um router Link Type - Router (1), Network (2), Summary (3 e 4), External (5), NSSA (7) Link State ID - Identificador do LSA Advertising Router - Identificador do router que gerou o LSA Sequence Number - Verso do LSA para detectar LSAs antigos ou duplicados Link checksum Teste de erro do LSA Link age Idade da informao transportada (LSA) em segundos. envelhecido quando passa por um router e, na base de dados, conforme o tempo passa
20-01-2005 ISEL DEETC RCD 122

Mensagem Link Status Request


Esta mensagem permite pedir a troca de LSAs entre routers adjacentes. So propagadas (flooding) a toda a rea.
0 Version # 8 3 Router ID Area ID Checksum Authentication Authentication LS type Link state ID Advertising Router LS type Link state ID Advertising Router ...
20-01-2005 ISEL DEETC RCD 123

16 packet length

31

AuType

Mensagem Link Status Update


Esta mensagem permite a troca de LSAs entre routers adjacentes. Transporta um ou mais Link State Advertisement (LSAs). So propagadas (flooding) a toda a rea.
0 Version # 8 4 Router ID Area ID Checksum Authentication Authentication # LSAs LSAs AuType 16 packet length 31

20-01-2005

ISEL DEETC RCD

124

Mensagem Link Status Acknowledgement


Transporta acknowledges de um ou mais Link State Advertisement (LSAs). Esta mensagem serve para dar acknowledge a LSAs recebidos. Os LSAs so acknowledge individualmente embora possam coexistir vrios acknowledges de LSAs num mesmo pacote de LSAck. So propagadas (flooding) a toda a rea.
0 Version # 8 5 Router ID Area ID Checksum Authentication Authentication LSA Headers AuType 16 packet length 31

20-01-2005

ISEL DEETC RCD

125

Estrutura dos LSAs - Header


Em cada mensagem LSUpdate vai um ou mais LSAs. Existem vrios LSAs diferentes cuja estrutura varia conforme o campo type. O header dos LSAs comum a todos o que se segue:

16 31 Options LS Type Link State ID Advertising Router LS sequence number LS checksum Length

8 LS Age

LS Age - Tempo em segundos desde que o LSA foi gerado (actualizado nas BD) Options - T (suporta TOS)[obsoleta], E (external routing), P (NSSA ext.) LS Type - Router [1], Network [2], Summary [3 e 4], External [5], NSSA Ext. [7] Link State ID - Identificador do LSA (a interpretao deste campo varia conforma o link type) Advertising Router - Identificador do router que gerou o LSA LS Sequence Number - Verso do LSA, para detectar LSAs antigos ou duplicados (-231+ 1 a 231 1) LS checksum Checksum de todo o header, exceptuando o Link Age Length - Tamanho da mensagem em bytes
20-01-2005 ISEL DEETC RCD 126

E T

Tipos de LSAs (link type)


Type 1 - Router LSA
Router descreve as redes a que est ligado e respectivos custos

Type 2 - Network LSA


DR descreve os routers existentes na rede Multiple Acess e a sua mscara

Type 3 - Summary LSA


ABR descreve sumrio de redes destino da rea vizinha

Type 4 - Summary LSA


ABR descreve a localizao dos ASBR existentes na rea vizinha

Type 5 - External LSA


ASBR descreve o sumrio de destinos exteriores para os quais Gateway

Type 7 - NSSA Ext


20-01-2005 ISEL DEETC RCD 127

Interpretao do campo link state ID dos LSAs


Parte do domnio de routing que descrito pelo LSA. Dependendo do LS type do LSA o Link State ID deve ser interpretado da seguinte forma: LS type = 1: Router ID do router de origem. LS type = 2: Endereo IP da interface do DR da rede. LS type = 3: Endereo IP da rede de destino. LS type = 4: Router ID do ASBR descrito. LS type = 5: Endereo IP da rede de destino.

20-01-2005

ISEL DEETC RCD

128

Tipos de LSAs (interior da rea)


Type 1 - Router LSA
Gerado por todos os routers Descreve as interfaces do router
tipo, endereo, mscara, custos

Propagado apenas dentro da rea Entra para o algoritmo SPF (Dijkstra)

Type 2 - Network LSA


Gerado pelo DR duma rede Multiple Access Descreve os routers da rede e mscaras Propagado apenas dentro da rea Entra para o algoritmo SPF (Dijkstra)
ISEL DEETC RCD 129

20-01-2005

Router-LSA (1)
Descreve as redes a que o router est ligado
0 8 16 24 31

Link State Age Link State ID

Options Advertising Router Link State Sequence Number

Type = 1

Header
Checksum Zero V E B Zero

Length Number of Links Link ID Link Data

Type TOS

Number of TOS

TOS 0 Metric Metric Metric Link ID Link Data

Ligao

TOS

Ligao

20-01-2005

ISEL DEETC RCD

130

Router-LSA (2)
Link State ID Router ID do router que envia o LSA Flags - Caractersticas do router
V (virtual link) - o router possui pelo menos uma ligao virtual E (external) - o router ASBR - possui pelo menos uma ligao a outro AS B (border) - o router ABR - possui pelo menos uma ligao a outra rea

Number of Links - Nmero de ligaes descritas no LSA Type


1 - ponto-a-ponto 2 - rede de trnsito 3 - rede stub 4 - virtual

Link ID

Link Data

Router ID do router vizinho ID da interface de acesso ao router vizinho Endereo IP do DR IP da interface de acesso ao router vizinho Endereo IP da rede Mscara de rede Router ID do router vizinho IP da interface de acesso ao router vizinho

Em interfaces ponto-a-ponto no numeradas o Link Data contm o ifIndex Number of TOS - Nmero de custos de um link, associados a TOS especficos TOS 0 Metric - Custo normal (sem nenhum TOS especificado) TOS e Metric - Indicao de um TOS e custo associado
20-01-2005 ISEL DEETC RCD 131

Network-LSA
Utilizado pelos DR para descrever redes BMA: Routers e mscara de rede
0 8 16 24 31

Link State A ge Link State ID A dvertisingR outer

O ptions

Type = 2

Link State Sequence N ber um C hecksum N ork M etw ask A ttachedR outer 1 A ttachedR outer 2 A ttachedR outer N Length

Link State ID - Endereo da interface do prprio Designated Router Network Mask - Mscara de rede para o endereo de rede destino anunciado Attached Router - Lista dos router IDs de todos os routers da rede comum
20-01-2005 ISEL DEETC RCD 132

Exemplo de LSAs Intra-rea (1)


rea 1
Rede Stub Rede de Trnsito

RT3
Area 0
R LSA
1 Link

Area 1
R LSA
2 Link

RT4
Area 1
R LSA rea 0 Backbone
1 Link

N LSA
3R

20-01-2005

ISEL DEETC RCD

133

Exemplo de LSAs Intra-rea (2)


Router LSA (Type=1 no header) enviado pelo router RT3 para a rea 0
0 8 16 24 31

Link State Age = 0

Options = T, E Link State ID = 192.1.1.3 Advertising Router = 192.1.1.3

Type = 1

Link State Sequence Number = 123457 Checksum Zero 0 0 B Zero Link ID = 18.10.0.6 Link Data = 0.0.0.3 Type = 1 Number of TOS = 0 TOS 0 Metric = 8 Length =288 Number of Links = 1

O router 192.1.1.3 ABR e tem uma ligao ponto-a-ponto ao router 18.10.0.6 atravs da interface 0.0.0.3 (ifIndex) com um custo de 8

20-01-2005

ISEL DEETC RCD

134

Exemplo de LSAs Intra-rea (3)


Router-LSA enviado pelo router RT3 para a rea 1
0 8 16 24 31

Link State Age = 0

Options = T, E Link State ID = 192.1.1.3 Advertising Router = 192.1.1.3

Type = 1

Link State Sequence Number = 123456 Checksum Zero 0 0 B Zero Link ID = 192.1.1.4 Link Data = 192.1.1.3 Type = 2 Number of TOS = 0 Link ID = 192.1.4.0 Link Data = 255.255.255.0 Type = 3 Number of TOS = 0 TOS 0 Metric = 2 TOS 0 Metric = 1 Length =384 Number of Links = 2

O router 192.1.1.3 ABR e tem duas ligaes:


rede de trnsito 192.1.1.0 que tem como DR 192.1.1.4 atravs da interface 192.1.1.3 com um custo de 1 rede stub 192.1.4.0 que tem mscara de rede 255.255.255.0 com um custo de 2
20-01-2005 ISEL DEETC RCD 135

Exemplo de LSAs Intra-rea (4)


Network-LSA enviado pelo router RT4 para a rea 1
0 8 16 24 31

Link State Age = 0

Options = T, E Link State ID = 192.1.1.4

Type = 2

Advertising Router = 192.1.1.4 Link State Sequence Number = 98765 Checksum Network Mask = 255.255.255.0 Attached Router = 192.1.1.4 Attached Router = 192.1.1.3 Attached Router = 192.1.1.5 Length = 320

O router 192.1.1.4 DR da rede 192.1.1.0 (mscara 255.255.255.0) e tem mais dois routers na rede: 192.1.1.3 e 192.1.1.5
20-01-2005 ISEL DEETC RCD 136

Tipos de LSAs (exterior da rea)


Type 3 e 4 Summary-LSA
Gerados pelos ABR Descreve o sumrio de outra rea (3) ou a existncia de ASBR noutra rea (4)
tipo, endereo, custos

Propagado dentro da rea No entra para o algoritmo Dijkstra

Type 5 AS-external-LSA
Gerado pelos ASBR Descreve sumrio de destinos exteriores
tipo, endereos de rede, custos

Propagado dentro do SistemaAutnomo No entra para o algoritmo Dijkstra


20-01-2005 ISEL DEETC RCD 137

Summary-LSA
ABR descreve rotas (sumarizadas) da rea vizinha [Type=3] ou a existncia de ASBRs na rea vizinha [Type=4]
0 8 16 24 31

Link State Age Link State ID

Options Advertising Router Link State Sequence Num ber

Type = 3, 4

Checksum Network M ask TOS M etric

Length
Rota

Link State ID - Endereo de destino anunciado Network Mask - Mscara de rede para o endereo de destino anunciado (Tipo 3) TOS e Metric - TOS e custo associado ao endereo de destino

20-01-2005

ISEL DEETC RCD

138

AS-external-LSA
ASBR descreve rotas exteriores que conhece
0 8 16 24 31

Link State Age Link State ID Advertising Router

Options

Type = 5

Link State Sequence Number Checksum Network Mask E TOS Forwarding Address External Route Tag Metric Length

Rota

Link State ID - Endereo de destino anunciado Network Mask - Mscara de rede para o endereo de destino anunciado E - Tipo de mtrica externa (1 ou 2) TOS e Metric - TOS e custo associado ao endereo de destino Forwarding Address - Endereo para encaminhar para o destino anunciado ou 0 External Route Tag - Para transportar informao dos protocolos de EGP
20-01-2005 ISEL DEETC RCD 139

Autenticao das mensagens OSPF


Objectivo Troca de informao autenticada entre routers de modo a evitar ataques Tipos de autenticao None Sem autenticao Simple - Chave em claro MD5 Hash da chave (Podem existir esquemas de autenticao diferentes consoante a rea)

20-01-2005

ISEL DEETC RCD

140

Configurao OSPF de router


interface loopback 0 ip address 33.1.1.9 255.255.255.255 ! interface FastEthernet 0/0 ip address 10.1.19.2 255.255.255.252 ! interface FastEthernet 0/1 ip address 10.1.29.2 255.255.255.252 ! interface FastEthernet 0/2 ip address 20.1.91.9 255.255.255.240 ! router ospf 1 ! Area 0.0.0.0 network 10.1.19.0 0.0.0.3 area 0.0.0.0 network 10.1.29.0 0.0.0.3 area 0.0.0.0 network 33.1.1.9 0.0.0.0 area 0.0.0.0 ! ! Area 0.0.0.1 network 20.1.91.0 0.0.0.15 area 0.0.0.1 ! passive-interface loopback0
20-01-2005 ISEL DEETC RCD 141

Exemplo de mensagens OSPF - Hello

20-01-2005

ISEL DEETC RCD

142

Exemplo de Mensagens OSPF - Update

20-01-2005

ISEL DEETC RCD

143

Exemplo de Mensagens OSPF - Acknowledge

20-01-2005

ISEL DEETC RCD

144

Exemplo de estado do OSPF


Chicago#sh ip osp neighbor Neighbor ID Pri State 30.0.0.5 1 FULL/BDR Chicago#sh ip ospf database AS External Link States Link ID ADV Router 141.29.155.0 180.142.78.73 192.168.254.1 180.142.78.73 Dead Time 00:00:35 Address 180.142.78.74 Interface FastEthernet6/0

Age 77 77

Seq# 0x80000001 0x80000001

Checksum 0xa9cc 0x8059

Router Link States (Area 0.0.0.1) Link ID ADV Router Age 30.0.0.5 30.0.0.5 33 180.142.78.73 180.142.78.73 32 Network Link States (Area 0.0.0.1) Link ID ADV Router Age 180.142.78.73 180.142.78.73 37

Seq# 0x80000003 0x80000004

Checksum 0x62f1 0x7e64

Seq# 0x80000001

Checksum 0x465f

20-01-2005

ISEL DEETC RCD

145

Exemplo de estado do OSPF


Chicago#sh ip ospf interface FastEthernet6/0 FastEthernet6/0 is up, OSPF line protocol is up OSPF interface configuration: Internet Address 180.142.78.73, Area 0.0.0.1 Network type BROADCAST, No authentication Cost: 1 Transmit Delay is 1 sec, Interface State DR, Priority 1 Designated Router (Interface address) 180.142.78.73 Backup Designated Router (Interface address) 180.142.78.74 Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 Neighbor Count is 1, Adjacent neighbor count is 1 Adjacent with neighbor 30.0.0.5 (Backup Designated Router)

20-01-2005

ISEL DEETC RCD

146

Sumarizao de rotas (Route Aggregation)


Subnetting: Criao de multiplas subredes tornando o prefixo maior Sumarizao: Sumarizao de multiplas subredes tornando o prefixo mais pequeno

prefixo

host

Comprimento do prefixo

prefixo Comprimento do prefixo

host

20-01-2005

ISEL DEETC RCD

147

Subnetting, Sumarizao e Classless Routing


10.138.1.0/24 10.138.2.0/24 10.139.1.0/24 10.139.2.0/24 10.140.1.0/24 10.140.2.0/24

10.138.3.128/30 10.138.3.64/30

10.139.3.128/30 10.139.3.64/30

10.140.3.128/30 10.140.3.64/30

10.138.0.0/16 10.139.0.0/16 10.140.0.0/16 10.137.0.0/16 10.192.0.0/12 10.137.0.0/16

10.192.0.0/12 10.128.0.0/12

10.0.0.0/8

10.192.0.0/12

20-01-2005

ISEL DEETC RCD

148

Protocolos Classless Routing


192.200.229.0/24 192.200.229.0/24 192.200.230.0/24

192.200.28.0/22 192.200.230.0/24

Mscara de rede transmitida Suporta VLSM


Variable Length Subnet Mask

Suporta CIDR
Classless Inter Domain Routing
20-01-2005 ISEL DEETC RCD 149

Estrutura de dados da rea (1)


Contm toda a informao utilizada para correr o algoritmo bsico de encaminhamento do OSPF. Cada rea composta por uma ou mais subredes em que cada router mantm a sua prpria link-state database. Numa rea, todas as link-state database existentes nos vrios routers so iguais entre si. Uma sub-rede pertence apenas a uma rea. Uma interface dum router liga apenas a uma nica rea. Cada adjacncia de um router efectuada dentro de uma nica rea. O backbone OSPF (rea 0) uma rea especial responsvel por disseminar informao de encaminhamento entre as vrias reas.

20-01-2005

ISEL DEETC RCD

150

Estrutura de dados da rea (2)


Area ID Lista da gama de endereos da rea
Esta lista constituida por pares [endereo, mscara] e por uma indicao de estado Advertise ou DoNotAdvertise

Interfaces associadas ao router (associated router interfaces)


Interfaces do router que ligam rea. Uma interface pertence a uma e apenas a uma rea. No caso do backbone a rea inclui os virtual links. Um virtual link identificado pelo router ID do ponto onde termina e o seu custo o custo do caminho mais curto (intraarea) atravs da rea de trnsito atravessada entre os dois routers.

Lista de router-LSAs Lista de network-LSAs Lista de summary-LSAs


20-01-2005 ISEL DEETC RCD 151

Estrutura de dados da rea (3)


Shortest-path tree
rvore dos caminhos mais curtos com o prprio router como raz. Calculada a partir da coleco de router-LSAs e network-LSAs pelo algoritmo de Dijkstra.

TransitCapability
True se puder ser atravessada por virtual links

ExternalRoutingCapability
Se possvel propagar AS-external-LSAs para/atravs da rea

StubDefaultCost
Se a rea foi configurada como uma rea de stub e o router for um ABR ento este parmetro indica o custo do summary-LSA por omisso que o router deve anunciar nessa rea.

20-01-2005

ISEL DEETC RCD

152