• Nenhum resultado encontrado

Hose model e valiant load balancing

funções de controlo da rede, o que retira complexidade aos switchs, facilita a configuração da rede, aumenta o controlo da rede e encoraja o uso de arquitecturas de rede e opera-

cionalizações inovadoras. Estas características fazem do SDN uma arquictectura ideal

para implementação de TE. Por ser programável e simples de configurar, esta solução

permite encaminhamento explícito. Ou seja, podemos usar um qualquer algoritmo de encaminhamento sem necessitar de usar switchs mais complexos e mais caros.

O modelo doSDNé composto por três camadas: camada da infraestrutura, camada de

controlo e camada aplicacional. A camada de infraestrutura é composta por equipamentos de rede (switchs, routers, etc...) e é responsável por processar os pacotes segundo as regras fornecidas pelo controlador e por recolher informação sobre o estado da rede e enviar esta informação para o controlador.

A camada de controlo faz a ponte entre a camada de infraestrutura e a camada aplicaci-

onal, permitindo a comunicação entre estas duas camadas. O OpenFlow [17] é considerado

a implementação de facto da camada de controlo doSDN e encontra-se em processo de

normalização pela ONF.

A camada aplicacional é responsável por correr as aplicaçõesSDN, que fazem uso da

APIoferecida pela camada de controlo para aceder e controlar os equipamentos de rede

e que tomam decisões de encaminhamento, entre outras operacionalizações da rede.

OSDNainda é uma tecnologia muito recente que aos poucos está a ser adoptado pela

indústria. A ONF foi fundada por grandes nomes da indústria como a Deutsche Telekom, Facebook, Google, Microsoft, Verizon, e a Yahoo, e actualmente conta com mais de 150

membros. A Google afirmou publicamente que usa SDN na rede que interliga os seus

datacenters [11] e a Microsoft publicou um artigo de investigação onde testa uma solução

deTEbaseada emSDNna sua rede de datacenters [9].

2.3 Hose model e valiant load balancing

Com o propósito de aumentar o débito da rede2, existem também outras propostas. O

Valiant Load Balancing (VLB) [16] é uma forma de encaminhamento, que mesmo sem conhecimento da matriz de tráfego, consegue maximizar a utilização da rede perante todas as matrizes de tráfego que satisfaçam certos constrangimentos, como explicado a seguir, mas exigindo contudo uma topologia lógica da rede full mesh (todos os nós estão

logicamente ligados a todos os outros nós) com capacidade dos canais igual a 2rN, onde N é

o número de nós na rede e r é o máximo de tráfego que um nó consegue receber ou enviar. Adicionalmente, a matriz de tráfego deverá respeitar os limites da capacidade de tráfego de cada nó. Por outras palavras, a soma de cada linha da matriz não pode ser maior que r, e a soma de cada coluna da matriz também não pode ser maior que r. Este modelo, dadas

as restrições na matriz de tráfego, é denominado por hose model [13].

2Débito da rede neste contexto pode ser entendido como a proporção da matriz de tráfego que a rede é

capaz de encaminhar. Caso um canal esgote a sua capacidade, e se existir mais tráfego por encaminhar por esse canal, então o débito da rede começerá a dimininuir.

CAPÍTULO 2. TRABALHO RELACIONADO

Existem duas variantes de encaminhamento: equilíbrio de carga uniforme ou adapta- tivo. Em equilíbrio de carga uniforme, o tráfego atravessa todos os caminhos com distân- cia igual a 2 e o tráfego é distribuído igualmente por todos estes caminhos. Esta variante aplica-se quando não se tem qualquer conhecimento da matriz de tráfego. Apesar de ser um encaminhamento cego, é garantido o encaminhamento de todas as matrizes de tráfego que respeitem as condições acima referidos.

O número médio de saltos (hop counts) de todos os caminho e para todo o tráfego,

é igual a 2(1 −N1), significando que esta média varia entre 1 e 2. Esta expressão deriva

do facto de existirem dois caminhos onde o tráfego é encaminhado da origem directa- mente para o destino, pelo canal que interliga os dois nós. Em mais detalhe, o algoritmo funciona em duas fases. Na primeira fase, o tráfego é enviado da origem para todos os nós intermédios, e na segunda fase, o tráfego é enviado dos nós intermédios para o nó destino. Ora, no cálculo de todos os caminhos entre origem e destino com distância igual a 2, existem dois casos particulares: origem-origem-destino e origem-destino-destino. De notar que a operação de um nó enviar tráfego para si mesmo não é problemática porque não consome recursos da rede. Dito isto, estes dois casos particulares resultam nos tais dois caminhos que enviam tráfego directamente da origem para o destino, ambos com números de saltos igual a 1. O número de saltos de todos os outros caminhos é igual a 2,

o que resulta na expressão 2(1 −N1).

Por hipótese, cada nó só poderá enviar para a rede uma quantidade de tráfego menor ou igual a r. Simetricamente, cada nó também só receberá da rede uma quantidade de tráfego menor ou igual a r. Usando VLB com equilíbrio de carga uniforme, durante cada

uma das fases, o máximo que um nó poderá enviar para um canal é r

N unidades de tráfego.

Como existem duas fases, a capacidade dos canais deverá então ser igual a 2rN. Garante-

se desta forma que uma rede, que respeite os requisitos desta arquitectura, consegue encaminhar uma qualquer matriz de tráfego compatível com o hose model.

Se tivermos alguma informação sobre a matriz de tráfego, então conseguimos fazer melhor. Com vista a minimizar o número médio de saltos, podemos procurar maximizar o tráfego enviado directamente da origem para o destino. Esta é motivação da variante equilíbrio de carga adaptativo. Usando programação linear, é possível em vez de distribuir o tráfego igualmente por todos os caminhos com distância 2, distribui-lo de uma forma que maximize o encaminhamento directo. Esta variante tem duas sub-variantes: uma onde só se tem informação sobre tráfego local a cada nó, e outra em que se conhece a matriz de tráfego completa. Informação sobre tráfego local significa que cada nó sabe o tamanho de cada fluxo que tem origem em si.

O VLB é também conhecido por encaminhamento em duas fases. Em [16], procura-se

generalizar o encaminhamento em duas fases para topologias mais genéricas, visto que a topologia full mesh e com todos o canais com a mesma capacidade não é escalável e nem sempre é realista em redes de ISPs. Nesse artigo são apresentados várias formulações de programação linear para definição de rácios de divisão de tráfego de modo a optimizar o débito da rede. As solução dadas por estas formulações são comparadas com as soluções

Documentos relacionados