17.06.2015 Views

Monografia - UFF

Monografia - UFF

Monografia - UFF

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.2 A Implementação Real 55<br />

Este grafo é, então, passado para um algoritmo de caminho mínimo tradicional, como o<br />

Algoritmo de Dijkstra [15]. Uma vez encerrada a computação dos caminhos mínimos, o<br />

protocolo constrói a tabela de roteamento.<br />

É importante notar que estes processos acontecem de forma cíclica e concorrente. O<br />

diagrama de estados da Figura 4.4 ilustra o funcionamento de um protocolo deste tipo.<br />

Inicialmente, o protocolo entra no primeiro estado, no qual os enlaces são monitorados,<br />

possivelmente através do envio de pacotes de controle. Neste estado, podem ocorrer dois<br />

eventos: a verificação de mudança no estado dos enlaces ou a chegada de um novo pacote<br />

de topologia.<br />

O primeiro caso se refere a um evento local. Ou seja, ao monitorar os enlaces locais, o<br />

protocolo de roteamento detecta uma mudança significativa (por exemplo, o surgimento<br />

de um novo vizinho). Neste caso, um pacote de topologia é criado e propagado pela rede<br />

(estado 2). Já o segundo caso (chegada de um pacote de topologia) se refere a um evento<br />

da rede. Quando novas informações sobre a topologia da rede são recebidas, o protocolo<br />

de roteamento deve considerá-las e recalcular os melhores caminhos (estado 3).<br />

A execução do protocolo fica bastante centralizada no estado 1. Os estados 2 e 3<br />

apenas se encarregam do tratamento destes dois eventos. Em ambos os estados, ao final<br />

do processo de tratamento a execução retorna ao estado 1. No entanto, durante o estado<br />

2 novas informações de topologia podem ser recebidas. Neste caso, pode haver uma<br />

transição do estado 2 para o estado 3.<br />

A máquina de estados da Figura 4.4 é não determinística. No estado 3, quando o<br />

evento de término do algoritmo é disparado, ele pode culminar tanto na transição para<br />

o estado 1, quanto para o estado 2. Isso acontece porque, ao se encerrar a execução<br />

do algoritmo de cálculo dos caminhos mínimos, deve-se retornar ao estado anterior, seja<br />

ele o estado 1 ou o estado 2. No entanto, pode-se facilmente tornar esta máquina de<br />

estados determinística dividindo o estado 3 nos estados 3a e 3b. O estado 3a apresentaria<br />

transições apenas para o estado 1, enquanto 3b teria as transições para o estado 2. Para<br />

simplificar a figura, no entanto, optou-se pela versão não determinística.<br />

4.2.1.1 Características do Protocolo Implementado<br />

O protocolo de roteamento implementado neste trabalho, daqui em diante referenciado<br />

como SLSP (Simple Link State Protocol), segue o modelo básico apresentado até aqui. No<br />

entanto, como todo protocolo, ele apresenta especificidades. Esta seção tem por objetivo

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!