• Nenhum resultado encontrado

Encaminhamento multicaminho para suporte de engenharia de tráfego

N/A
N/A
Protected

Academic year: 2019

Share "Encaminhamento multicaminho para suporte de engenharia de tráfego"

Copied!
80
0
0

Texto

(1)

Nélson Arcizet Campos

Licenciado em Engenharia Informática

Encaminhamento multicaminho para suporte de

engenharia de tráfego

Dissertação para obtenção do Grau de Mestre em

Engenharia Informática

Orientador: José Legatheaux Martins, Professor, NOVA University of Lisbon

Júri

Presidente: Doutor Pedro Manuel Corrêa Calvente de Barahona Arguente: Doutor Salvador Luís Bettencourt Pinto de Abreu

(2)
(3)

Encaminhamento multicaminho para suporte de engenharia de tráfego

Copyright © Nélson Arcizet Campos, Faculdade de Ciências e Tecnologia, Universidade NOVA de Lisboa.

A Faculdade de Ciências e Tecnologia e a Universidade NOVA de Lisboa têm o direito, perpétuo e sem limites geográficos, de arquivar e publicar esta dissertação através de exemplares impressos reproduzidos em papel ou de forma digital, ou por qualquer outro meio conhecido ou que venha a ser inventado, e de a divulgar através de repositórios científicos e de admitir a sua cópia e distribuição com objetivos educacionais ou de inves-tigação, não comerciais, desde que seja dado crédito ao autor e editor.

Este documento foi gerado utilizando o processador (pdf)LATEX, com base no template “unlthesis” [1] desenvolvido no Dep. Informática da FCT-NOVA [2].

(4)
(5)

Agradecimentos

Em primeiro lugar, quero agradecer ao meu orientador, o Professor José Legatheaux Mar-tins, pela orientação, contributo, disponibilidade e exigência na elaboração desta disser-tação. Extendo os meus agradecimentos ao Departamento de Informática da Faculdade Nova de Lisboa, aos professores, colegas e amigos que contribuiram para o meu desenvol-vimento académico e pessoal.

Agradeço à minha família, aos meus pais e aos meus irmãos, César e Óscar, por todo o apoio e encorajamento não só nesta fase, mas também durante todo o meu percurso na faculdade.

(6)
(7)

Resumo

Usando um esquema de encaminhamento multicaminho, o tráfego entre cada par de nós pode ser encaminhado usando vários caminhos, distribuindo a carga dos canais e maximizando a utilização do conjunto da capacidade disponível. Como calcular um encaminhamento multicaminho óptimo é da responsabilidade da engenharia de tráfego. Porque o tráfego em redes de ISP pode ser muito dinâmico e imprevisível, soluções de engenharia de tráfego não dinâmicas não conseguem satisfazer os requisitos dessas redes. Algumas soluções dinâmicas foram propostas na literatura, mas porque necessitam de manter o estado da rede e de a reconfigurar sistematicamente, estas soluções introduzem um custo demasiado pesado nas redes.

Neste trabalho, propomos uma nova solução que combina ambas as soluções dinâmi-cas e não dinâmidinâmi-cas, minimizando o custo introduzido pelas soluções dinâmidinâmi-cas enquanto é capaz de resistir às variações de tráfego inesperadas. Ao permitir que o encaminhamento seja optimizado de forma espaçada, e como resultado, permitir que o tráfego, entre op-timizações, seja encaminhado de uma forma potencialmente não óptima, conseguimos minimizar o custo introduzido na rede. No entanto, esta solução só é interessante se, durante esses períodos, a deterioração da qualidade do encaminhamento não for signifi-cativa.

Para determinar a deterioração da qualidade do encaminhamento, desenvolvemos um algoritmo simples e rápido para cálculo de encaminhamento multicaminho e simulamos a nossa solução usando topologias de redes debackbonereais. Também usamos funções de distorção de matrizes de tráfego para simular variações de tráfego típicas. Os nossos resul-tados mostram que a deterioração da qualidade de encaminhamento entre optimizações não é significativa.

(8)
(9)

Abstract

Using a multipath routing scheme, traffic between each pair of nodes can be routed

across several paths, balancing link loads and maximizing bandwidth utilization. How to calculate the multipath routing that optimize network utilization is a traffic engineering

task.

Because the traffic demand experienced in ISP networks can be highly dynamic and

unprectictable, non dynamic traffic engineering solutions can’t fullfill the requirements

of those networks. Some dynamic solutions have been proposed in the literature, but because they need to maintain distributed network state and systemically reconfigure it, they introduce too much overhead in the networks.

In this work, we propose a new solution that combine both dynamic and non dynamic solutions, minimizing the overhead introduced by the dynamic solutions while being capable of dynamically absorb to unexpected traffic variations. By performing routing

optimizations at (potentially) enlarged time intervals, and as result of this, letting the traffic between optimizations being routed in a potentially non optimal way, we can

min-imize the overhead introduced in the network. However this solution is only interesting if, during those periods, the deterioration of routing quality isn’t significant.

To determine the deterioration of the routing quality, we developed a fast and simple multipath routing algotithm that maximizes network utilization and we simulate our solution using topologies of real backbone networks. In our simulations, we also use distortion functions of traffic matrices to simulate typical traffic variations. Our results

show that deterioration of the routing quality between optimizations isn’t significant.

Keywords: Computer Networks, Traffic engineering, Centralized traffic distribution

(10)
(11)

Índice

Lista de Figuras xiii

Lista de Tabelas xv

Siglas xvii

1 Introdução 1

1.1 Contexto . . . 1

1.2 Motivação . . . 2

1.3 Objectivos . . . 4

1.4 Principais contribuições . . . 4

1.5 Organização da dissertação . . . 5

2 Trabalho relacionado 7 2.1 OfflinevsonlineTE . . . 8

2.1.1 OfflineTE. . . 8

2.1.2 Online TE. . . 9

2.2 IP convencional vs MPLS vs SDN . . . 11

2.2.1 IP-basedTE . . . 11

2.2.2 MPLS-basedTE . . . 11

2.2.3 Software-Defined Network . . . 12

2.3 Hose modelevaliant load balancing . . . 13

2.4 Conclusões . . . 15

3 Redes usadas nos testes experimentais 17 3.1 Redes de operadores. . . 17

3.2 Redes sintéticas . . . 20

3.3 Arquitectura da rede . . . 23

4 Matrizes de tráfego 25 4.1 Geração de matrizes de tráfego. . . 26

4.2 Matrizes de tráfego distorcidas. . . 27

(12)

ÍNDICE

5 Descrição do algoritmo 31

5.1 Definições importantes . . . 32

5.2 Algoritmo. . . 34

5.3 Descrição . . . 34

5.4 Discussão . . . 35

5.5 Conclusões . . . 40

6 Análise Experimental e Resultados 41 6.1 Distorção Aleatória . . . 43

6.2 Ataque DDoS e Eventoflash-crowd . . . 45

6.3 Mudança de política de BGP . . . 48

6.4 Conclusões . . . 50

7 Conclusões e trabalho futuro 51 7.1 Conclusões . . . 51

7.2 Trabalho futuro . . . 52

Bibliografia 55

A Comparação SSR vs SPF 59

(13)

Lista de Figuras

3.1 Topologia das redes . . . 18

3.2 Topologia das redes sintéticas . . . 22

3.3 Arquitectura da rede incluindo o controlador, osCS - core switches, osES - edge switchese um exemplo de 3 túneis entre osedge switchesxey . . . 23

5.1 Convergência do MLU para diferentes redes . . . 37

6.1 Função de distribuição acumulada - Distorção Aleatória . . . 44

6.2 Função de distribuição acumulada - Ataque DDoS . . . 46

6.3 Função de distribuição acumulada - Eventoflash-crowd. . . 47

6.4 Função de distribuição acumulada - Mudança de política BGP . . . 49

A.1 Abovenet . . . 59

A.2 AT&T . . . 60

A.3 B4 . . . 60

A.4 GÉANT . . . 61

A.5 NTT . . . 61

A.6 Sprint . . . 62

(14)
(15)

Lista de Tabelas

3.1 Caracterização das redes usadas para testes . . . 19

3.2 Distribuição de PoPs por classes . . . 20

3.3 Caracterização dos caminhos . . . 20

(16)
(17)

Siglas

API Application Programming Interface.

AS Autonomous System.

BGP Border Gateway Protocol.

CBR Constraint-Based Routing.

CDN Content Delivery Network.

CSPF Constrained Shortest Path First.

DDoS Distributed Denial of Service.

ECMP Equal-Cost Multi-Path.

HTTP Hypertext Transfer Protocol.

IP Internet Protocol.

IPTV Internet Protocol Television.

IS-IS Intermediate System to Intermediate System.

ISP Internet Service Provider.

JVM Java Virtual Machine.

MLU Maximum Link Utilization.

MPLS Multi Protocol Label Switching.

OMP Optimal Multi-Path.

ONF Open Networking Foundation.

(18)

SIGLAS

PoP Point of Presence.

QoS Quality of Service.

SDN Software-Defined Networking.

SLA Service Level Agreement.

SPF Shortest Path First.

SSR Short Sighted Routing.

TCP Transmission Control Protocol.

TE Traffic Engineering.

VLAN Virtual Local Area Network.

VoIP Voice over Internet Protocol.

(19)

C

a

p

í

t

u

l

o

1

Introdução

1.1 Contexto

Na última década têm-se registado um aumento contínuo do volume de dados que anual-mente atravessa a Internet, com o aumento do número de dispositivos ligados à Internet e a cada vez maior utilização de aplicações móveis e de vídeo a surgiram como os principais factores que justificam esta tendência. Segundo [4], nos últimos 5 anos o tráfego global anual da Internet quintuplicou e estima-se que triplique até 2019. O mesmo relatório estima que o tráfego da hora de ponta (busy-hour traffic),i.e., a quantidade de dados que

atravessam a Internet durante a hora de maior afluência, cresça mais rapidamente que o tráfego médio diário.

Face ao aumento do tráfego, a abordagem tradicional dosInternet Service Providers (ISPs)para evitar o congestionamento nas suas redes é investirem em formas de expansão da capacidade da rede, quer pela adição de mais equipamentos de rede (canais eswitchs) quer pela substituição destes por equipamentos mais robustos.

(20)

CAPÍTULO 1. INTRODUÇÃO

O encaminhamento tradicional, unicaminho e pelo caminho mais curto, contribui ne-gativamente para a utilização eficiente da largura de banda das redes. Apesar de simples e de fácil gestão, este tipo de encaminhamento não procura distribuir o tráfego pelos vários caminhos disponíveis, podendo facilmente congestionar alguns canais da rede. Por isso, este tipo de encaminhamento não é suficiente para satisfazer os requisitos de desempenho das redes dos operadores.

Como alternativa, são usadas novas formas de encaminhamento multicaminho que permitem um uso mais eficiente da rede. Este tipo de técnicas englobam uma área da engenharia de redes designada porTraffic Engineering (TE)1.TEé definido em [2] como

a área da engenharia de redes que lida com o problema da avaliação e a optimização do desempenho de redes. Outra definição, mais directa, é dada em [15]: "pôr o tráfego onde a largura de banda esteja disponível".

São objectivos doTEa melhoria do desempenho tanto ao nível de tráfego como ao nível dos recursos. Para tal procura-se satisfazer os requisitos de desempenho orientadas ao tráfego, ao mesmo tempo que se tenta maximizar a utilização dos recursos disponíveis. Métricas que podem ser usadas para medir o desempenho orientado ao tráfego são os tempos de atraso, ojitter, a taxa de perda de pacotes e o débito extremo a extremo [2].

Neste trabalho iremos focar-nos essencialmente no débito, que contribui para melho-rar as outras métricas. Uma rede que não tenha capacidade suficiente irá sofrer congestio-namento, originando maiores tempos de atraso na entrega dos pacotes, o que poderá levar à sua perda. Situações como esta não satisfazem requisitos de serviços onde a qualidade de serviço é essencial, como por exemplo o IPTV e o VoIP. De notar que não se pode ignorar completamente as outras métricas quando se procura melhorar a capacidade da rede. Tempos de atrasos muito grandes, elevados valores dejittere uma elevada taxa de perda de pacotes traduzem-se numa rede de má qualidade, mesmo que tenha um débito elevado.

1.2 Motivação

Das várias alternativas de encaminhamento multicaminho dinâmicas propostas na úl-tima década, poucas são as que foram adoptadas pelos ISPs. As principais razões que originaram a falta de interesse por estas alternativas são: a exigência deswitchsespeciais com capacidade computacionais para calcular encaminhamentos mais sofisticados; e a exigência de algoritmos distribuídos complexos para coordenação de informação entre switchsque podem introduzir instabilidade na rede e tempos de convergência longos.

Com o aparecimento e amadurecimento das arquitecturasSoftware-Defined Networ-king (SDN), tornou-se mais simples de implementar uma alternativa multicaminho, sem necessitar de equipamento com grande poder computacional nem de esquemas comple-xos de sincronização. O controlador centralizado tem uma visão global da rede e é quem

1Na sequência do texto usaremos a abreviatura TE (do inglês,Traffic Engineering) para designar o conceito

de engenharia de tráfego.

(21)

1.2. MOTIVAÇÃO

tem a responsabilidade de calcular o encaminhamento optimizado. Tranferir a complexi-dade computacional para o controlador central permite usarswitchsmais baratos e mais eficientes na tarefa de encaminhar os pacotes na rede, para além de permitir usar algorit-mos mais simples pois são centralizados e não necessitam de coordenar informação entre os diferentes componentes.

No entanto, manter uma visão precisa do estado da rede não é uma tarefa trivial, sobretudo numa rede de grande dimensões. Contar de forma discriminada todos os pa-cotes que passam em cada interface de cada switch induz um overhead significativo e pode afectar gravemente o desempenho da rede. Ao mesmo tempo, enviar em tempo real essa informação para o controlador central também gera uma quantidade indesejável de tráfego adicional.

Por outro lado, a frequência com que os novos fluxos chegam à rede é geralmente muito alta, sobretudo numa rede de umISP. Se calcularmos o caminho a usar por cada novo fluxo à medida que estes chegam à rede, estaremos sistematicamente a reconfigurar a rede e a gerar instabilidade nesta, até porque para maximizar a utilização da rede alguns fluxos já existentes poderão ter que ser realocados noutros caminhos. Para que esta solução possa ser escalável, é possível realizar a agregação de fluxos numa espécie de macro-fluxos.

Existem soluções não dinâmicas que não são afectadas pelas questões referidas nos parágrafos anteriores. Uma solução deste tipo calcula o encaminhamento que optimiza a utilização da rede de uma forma independente do estado real da rede, evitando assim o custo de monitorizar o tráfego e as constantes reconfigurações da rede. No entanto, para tal precisa de conhecer,a priori, o tráfego que atravessa a rede em cada momento. Este tipo de solução é usada em redes bastantes específicas onde o operador tem total controlo do tráfego que entra na rede, o que não é o caso de uma rede genérica de umISPonde o tráfego é imprevisível e com variações frequentes e significativas.

Considerando as discussões anteriores, e aproveitando as vantagens oferecidas pelo SDN, podemos admitir uma solução que passa por não manter uma visão precisa da rede, mas uma visão aproximada. Isto é, em vez de estar constantemente a recolher informação em tempo real e a enviar para o controlador central, poder-se-ia apenas recolher amos-tras de tráfego e informar o controlador de tempos em tempos, que realizaria apenas a optimização do encaminhamento. Esta solução engloba características tanto das soluções dinâmicas como das soluções não dinâmicas. Por um lado, não exige conhecimento prévio do tráfego e vai-se adaptando progressivamente às variações do mesmo, satisfazendo os requisitos dos operadores de redes genéricas de ISP. Por outro lado, alivia o overhead introduzido pela constante monitorização do tráfego e sincronização dessa informação assim como das constantes reconfiguração da rede.

(22)

CAPÍTULO 1. INTRODUÇÃO

não óptimo, e relacionado com esta questão, se o risco que corremos ao perder qualidade de encaminhamento é justificável face às vantagens oferecidas por esta solução?

1.3 Objectivos

O objectivo deste trabalho é analisar a qualidade de um encaminhamento multicaminho dado um estado da rede que entretanto se afastou do estado para o qual foi optimizado, respondendo às questões introduzidas no final da secção anterior. Se a perda de qualidade não for elevada, então não se justifica o custo de manter em tempo real o estado da rede e podemos alargar os intervalos entre optimizações do encaminhamento.

Os diferentes momentos em que capturamos o estado da rede são representadas por diferentes matrizes de tráfego. Queremos estudar o comportamento desta solução para diferentes tipos de variação de tráfego típicas: variação aleatória, ataqueDDoS, ocorrência de um eventoflash-crowde mudança de políticaBGP.

Adicionalmente, queremos analisar a qualidade da solução em topologias de redes de backbonereais.

1.4 Principais contribuições

As principais contribuições apresentadas por esta dissertação são:

• Desenvolvimento de um algoritmo simples e rápido para cálculo de um encaminha-mento optimizado, dado a topologia da rede e uma matriz de tráfego.

• Desenvolvimento de um modelo de síntese de matrizes de trafégo que procuram ser representativas de matrizes de tráfego reais.

• Desenvolvimento de um conjunto de funções de distorção de matrizes de tráfego que simulam padrões típicos de variação de tráfego

• Desenvolvimento de um simulador que permite analisar a qualidade do encami-mento.

• Resultados das análises efectuadas, usando 7 topologias de redesbackbonereais e usando 4 funções diferentes de distorção do tráfego.

De forma geral, chegámos a conclusão de que a perda de qualidade do encaminha-mento entre intervalos entre optimizações é bastante pequena para condições bastante adversas. Os resultados obtidos indicam-nos que é viável implementar uma solução de encaminhamento multicaminho baseada num controlador central, sem ser necessário manter uma visão global da rede em tempo real.

(23)

1.5. ORGANIZAÇÃO DA DISSERTAÇÃO

1.5 Organização da dissertação

Neste capítulo introduzimos o que será tratado nesta dissertação, explicando o contexto em que está introduzida e quais os principais problemas que a motivam. Apresentamos também quais são os objectivos desta dissertação e quais são as suas contribuições.

No capítulo2apresentamos o estado da arte, descrevendo uma taxonomia para clas-sificação de soluções deTE, assim como apresentando exemplos propostos na literatura para cada um dos tipos de soluções discutidos. Discutimos também algumas das tecnolo-gias existentes para implementar estas soluções.

No capítulo3apresentamos as redes que usámos nas nossas simulações. No capítulo 4discutimos em mais detalhe o que são matrizes matrizes de tráfego e apresentamos o modelo que usámos para gerar matrizes de tráfego, assim como as funções de distorção que desenvolvemos.

No capítulo5apresentamos o algoritmo para cálculo do encaminhamento que desen-volvemos, assim como a sua discussão. No capítulo6descrevemos o nosso processo de simulação e apresentamos os resultados que obtivemos nas nossas simulações.

(24)
(25)

C

a

p

í

t

u

l

o

2

Trabalho relacionado

Em [29] é proposta uma taxonomia para classificar a engenharia de tráfego. Do ponto de vista do âmbito, esta pode ser classificada em Inter-DomainTE ouIntra-Domain TE. Inter-DomainTE diz respeito ao tráfego que atravessa váriosAutonomous Systems (ASs)e tem como tarefa a optimização na escolha dos nós de entrada/saída de cadaASde forma a minimizar o uso da largura de banda do ponto de vista global, entre os diversosASs. O Intra-DomainTE diz respeito à optimimização do encaminhamento de todo tráfego que atravessa o interior de umAS, optimizando o uso da rede. Este será o âmbito usado neste trabalho. De notar que, para uma efectiva optimização da Internet, os dois pontos de vista devem ser considerados.

Do ponto de vista do tipo do encaminhamento usado, o TE pode ser classificado em MPLS-basedouIP-based, e mais recentemente, podemos considerar também outras alternativas, como por exemplo o recurso a técnicas deSDN[6,17].

OTEpoderá ser classificado ao nível da forma como é processado comoonline TE ouofflineTE. A principal diferença entre ambos está na capacidade doASconhecer,a priori, qual é o tráfego que atravessa a rede em cada momento. O tráfego estimado pode ser representado por uma matriz de tráfego, onde o elemento (i,j) da matriz representa o volume de tráfego que o nó i quer enviar para o nó j. No capítulo 4discutimos em

mais detalhe o que é uma matriz de tráfego e as várias características que estas podem apresentar.

Finalmente, o TE pode ser classificado conforme o tipo de tráfego: unicast TE ou multicastTE. Neste trabalho iremos focar-nos apenas nounicastTE.

(26)

CAPÍTULO 2. TRABALHO RELACIONADO

Nas secções seguintes deste capítulo vamos discutir estes tipos diferentes de soluções e apresentaremos alguns exemplos que podem ser encontrados na literatura.

2.1

O

ffl

ine

vs

online

TE

2.1.1 OfflineTE

Em alguns cenários é possível o operador da rede prever as matrizes de tráfego antes de proceder à optimização do encaminhamento, nomeadamente através de Service Le-vel Agreements (SLAs), porque controla toda a arquitectura da rede incluindo o níLe-vel aplicacional, como é o caso das redes que interligamdatacenters, ou usando sistemas de monitorização para encontrar padrões de tráfego.

As soluçõesofflineTE baseiam-se na assumpção de que as matrizes de tráfego são co-nhecidas, logo o processo de optimização pode ser realizado de uma forma independente do estado real da rede. Este tipo de soluções funcionam em ciclos temporais, designados por ciclos deTE. O encaminhamento é recalculado em cada ciclo tendo em conta a matriz de tráfego expectável para esse ciclo. A duração dos ciclos tipicamente é semanal ou men-sal, podendo variar consoante diversos factores como, por exemplo, a duração dos SLAs acordados com os clientes.

O principal inconveniente deste tipo de soluções é que se comportam bastante mal perante a alterações imprevistas do tráfego. Mas, por outro lado, não é necessário conhecer em tempo real o estado da rede, tornando estas soluções mais simples e elegantes quando comparadas com as soluçõesonline, como veremos a seguir.

A optimização do encaminhamento pode ser formalizado como um problema de flu-xos multicomodidade e pode ser resolvido por programação linear, já que tanto a função objectivo e as restrições são lineares e consistem geralmente em minimizar a carga má-xima entre os diferentes canais da rede. No entanto, formalizando o problema desta forma, implica uma divisão arbitrária do tráfego tornando a solução, por um lado, impossível usando encaminhamento IP convencional, e por outro lado, muito pouco escalável usando MPLS. Na secção2.2iremos aprofundar mais estas restrições. De referir que uma solução sem divisão de tráfego está provado como sendo NP-Difícil [7,24].

O problema da escalabilidade está associado à divisão arbitrária do tráfego, que pode originar um número muito elevado de caminhos. Mas se ao invés de permitir uma divisão completamente arbitária, se permitirmos apenas dividir o tráfego por um número limi-tado de caminhos, digamos 5 a 10 caminhos, em diversas situações concretas é possível concluir que se pode calcular uma solução suficientemente próxima da óptima e que seja escalável [8].

Com o aparecimento de serviços diferenciados (DiffServ), é necessário adicionar re-quisitos deQuality of Service (QoS), para além dos requisitos de engenharia de tráfego. Nestas condições, a função de custo é uma função convexa e a formalização do problema

(27)

2.1. OFFLINEVSONLINETE

conduz a um problema de programação não linear, necessitando recorrer a métodos bas-tante mais complexos para o resolver [29].

Sem fazer uso da Teoria de Optimização, uma solução possível deofflineTE, proposta na literatura, é usarConstraint-Based Routing (CBR)[30]. A ideia é, antes de atribuir um caminho para um determinado fluxo1, todos os caminhos que não tenham capacidade

suficiente para acomodar este fluxo são retirados da topologia da rede e é escolhido o caminho mais curto usando Shortest Path First (SPF) sobre a topologia recalculada. Caminhos com igual custo são desempatados tendo como critério a maior capacidade mínima disponível, dispersando assim a reserva de largura de banda por todos os canais. Repete-se o método até que sejam atribuídos caminhos a todos os fluxos ou que não haja possibilidade de acomodar mais fluxos.

O algoritmo começa por colocar os fluxos com maior prioridade, ou caso não haja diferenciação de prioridade, os fluxos com maior exigência de largura de banda. Também é possível, depois de retirar da topologia da rede os caminhos que não tenham capaci-dade residual suficiente, escolher o caminho com maior capacicapaci-dade residual, ao invés de escolher caminho mais curto. Esta variante distribui melhor a carga, mas à custa de um aumento na latência.

Estes algoritmos conduzem a soluções não necessariamente óptimas do ponto de vista de maximização da utilização da rede e a solução que produzem está dependente da ordem com que os fluxos são colocados na mesma.

2.1.2 Online TE

Normalmente, as matrizes de tráfego estimadas não correspondem com exactidão ao verdadeiro tráfego que flui na rede, o que pode conduzir a divergências entre a solução óptima e as soluções de encaminhamento calculadas pelos métodos offline. Ao mesmo

tempo, estes métodos não reagem em tempo útil a variações bruscas do tráfego. Para endereçar estes problemas, foram propostos métodosonline deTE. Estes métodos não necessitam do conhecimento sobre exigências futuras de tráfego e funcionam numa escala de tempo medida em minutos, reagindo mais rapidamente às variações bruscas do tráfego.

OnlineTE procura alocar dinamicamente os fluxos de tráfego distribuíndo-os pela rede de forma a optimizar a sua utilização. No entanto, surgem alguns problemas em rela-ção aos métodos utilizados emonlineTE. Em primeiro lugar, apesar de não ser necessário conhecer a exigência de tráfego no futuro, é necessário conhecer o estado actual da rede. Fazer medições na rede é um processo com custos elevados, tanto a nível computacional como de tráfego. Em segundo lugar, alguns destes métodos requerem reencaminhamento de fluxos já existentes para inserção de novos fluxos, o que pode levar a situações indese-jáveis de instabilidade na rede.

1Neste contexto, usámos o termo fluxo para designar a agregação de todo o tráfego que entra na rede pelo

ie que sai da rede pelo nój. Dito de outra forma, é a quantidade de tráfego representada pelo elemento

(28)

CAPÍTULO 2. TRABALHO RELACIONADO

Em [29], são referidos alguns algoritmos para implementação deonlineTE. Em pri-meiro lugar são distinguidos duas categorias: ajuste dinâmico do rácio da divisão de tráfego (traffic splitting ratio) em caminhos estáticos pré-construídos e computação

dinâ-mica de novos caminhos para cada novo fluxo que entra na rede.

Na primeira categoria, é referido a solução MATE [5]. Esta solução procura ajustar o tráfego que entra na rede por caminhos pré-instalados, usando informação recolhida por sondas para determinar o estado da rede e assim procurar balancear a distribuição da carga. No entanto, não existe uma preocupação de optimizar globalmente o encaminha-mento na rede e é necessário endereçar os problemas que se levantam quando se pretende implementar uma solução dinâmica, o que muitas vezes não é trivial.

Na segunda categoria, são referidos vários algoritmos, que essencialmente são basea-dos no CBR, descrito na secção anterior. Em [3], é apresentado o DORA. Este algoritmo funciona por fases. Uma primeira, que só é executada uma vez por cada alteração na topologia da rede, calcula um parâmetro chamado PPV (path potencial value) para todos os canais, tendo em conta todos os pares de nós de entrada/saída. Este parâmetro indica a frequência de uso de cada canal em caminhos disjuntos entre pares de nós de entrada/-saída. Numa segunda fase, sempre que um novo fluxo chega à rede são removidos todos os canais do grafo da rede que não tenham a capacidade residual requerida e é calculado, para cada canal, um peso combinado baseado no capacidade residual do canal e o seu valor de PPV. Finalmente, é usado o algoritmo de Dijkstra para calcular o caminho mais curto no grafo, tendo em conta o conjunto de pesos calculados.

Em [12], é proposto o MIRA. Este algoritmo procura minimizar interferências entre caminhos. A interferência entre caminhos é definido como a competição destes por canais críticos que não tem capacidade disponível suficiente para satisfazer todos os fluxos que atravessam esses caminhos. O algoritmo em primeiro lugar, para cada par nó de entrada/saída, identifica os canais mais críticos, calculando o valor de fluxo máximo (maxflow value). Depois, é atribuído a cada canal um peso (específico a cada par de nós de entrada/saída), que indica a criticidade desse canal. Depois, mais uma vez, são removidos do grafo os canais que não tenham capacidade requerida, e é calculado o caminho mais curto tendo em conta os pesos atribuidos. Desta forma, sempre que um novo caminho seja requisitado, é criado procurando usar os canais menos críticos disponíveis, evitando assim os canais mais críticos que podem ser usados no futuro, se nenhum outro caminho estiver disponível. Assim, consegue-se minimizar a interferência.

No geral os métodos online procuram de alguma forma conhecer o estado da rede em tempo real, e na ocorrência de uma alteração significativa, usar uma variante de CBR para determinar o encaminhamento de cada fluxo. Isto exige que cada nó da rede consiga monitorizar a taxa de utilização dos seus canais e que consiga partilhar esta informação com todos os outros nós. Um sistema distribuído deste tipo é bastante difícil de implementar numa rede de operadora de grande escala e acarreta custos elevados. A única soluçãoonlineque foi adoptada na prática pelos operadores comerciais é baseada em MPLSe é discutida na próxima secção. Mas, como veremos, esta solução pode introduzir

(29)

2.2. IP CONVENCIONAL VS MPLS VS SDN

instabilidade na rede e exigerouterscom capacidades especiais e caros.

2.2 IP convencional vs MPLS vs SDN

2.2.1 IP-basedTE

Implementar TEusando apenas encaminhamento IP convencional apresenta diversas vantagens, como por exemplo não existir necessidade de instalarhardwareesoftware es-pecial e a simplicidade de configuração. No entanto, os únicos mecanismos existentes para optimizar o encaminhamento é a alteração dos valores dos pesos dos canais, usa-dos pelos protocolos de encaminhamento (OSPF e IS-IS) e a aplicação deEqual-Cost Multi-Path (ECMP), onde o tráfego é encaminhado por múltiplos caminhos com custo igual. A alteração dos pesos dos canais é uma forma de emular encaminhamento explícito, mas infelizmente este mecanismo não permite definir explicitamente todos os caminhos sem introduzir ciclos no grafo [29]. Por outro lado, o ECMP distribui o tráfego uniforme-mente, não permitindo divisão arbitrária do tráfego, requisito necessário para resolver o problema de optimização usando programação linear.

2.2.2 MPLS-basedTE

De forma a tirar proveito do processo deTE, é necessário mecanismos que permita à rede fazer um encaminhamento que não seja necessariamente pelo caminho mais curto. Uma forma de se conseguir isto é usar alguma forma de tunéis, como por exemplo oMPLS, em vez de usar encaminhamento IP convencional.

O MPLS [21] é uma tecnologia que permite aos routers fazer encaminhamento de dados baseando-se em etiquetas curtas (Label Switch Path ou LSP) em vez de longos endereços de rede. Quando um fluxo de dados chega à rede, este é etiquetado à entrada com um LSP tendo em conta oForwarding Class Equivalence(FEC) a que pertence. FEC é um termo que descreve um conjunto de pacotes com características semelhantes que podem ser encaminhados da mesma forma. Um LSP indica aos nós interiores (chamados de Label Switch Routersou LSRs) da rede por onde devem encaminhar os pacotes que recebem e pertencentes a esse LSP.

Uma importante característica do MPLS é a possibilidade de efectuar encaminha-mento explícito em vez do tradicional encaminhaencaminha-mento IP. Os nós exteriores (chamados deLabel Edge Routersou LERs) podem definir um qualquer caminho arbritário para cada LSP e instalar esses caminhos na rede. Dependente da situação, a instalação de LSPs pode ser feito estaticamente ou por um processo dinâmico controlado por um algorítmo espe-cífico. O encaminhamento IP convencional não oferece essa flexibilidade e está limitado ao encaminhamento pelo caminho mais curto.

(30)

CAPÍTULO 2. TRABALHO RELACIONADO

dado a sua prioridade. Para além disso, oMPLSoferece um serviço unificado de trans-porte de dados, que suporta tanto clientes baseados em comutação de circuitos como clientes baseados em comutação de pacotes. Juntamente com a possibilidade de efectuar encaminhamento explícito, estas são as características que fazem doMPLSa tecnologia dominante nas operadoras de redes de internet.

Actualmente, o único processo deTEque é usado na prática pelos ISPs é o MPLS-TE. Este processo faz uso doConstrained Shortest Path First (CSPF), descrito anteriormente, para dinamicamente escolher caminhos que satisfaçam os requisitos dos trunksque en-tram na rede. Umtrunké um conjunto de fluxos com a mesma origem e destino e com requisitos de QoS semelhantes, logo do nóxpara o nóy(edge routers) podem existir vários

trunks. Quando um caminho é seleccionado, o LSP reserva a largura de banda necessária em todos os canais que atravessa. Cada nó da rede mantém informação sobre a capa-cidade ainda disponível para cada canal a que está ligado, e periodicamente envia esta informação para todos os outros nós. Quando um novotrunkchega a um nó de entrada, este irá atribuir um LSP, calculando o caminho mais curto sobre uma árvore onde os cami-nhos que não tenham capacidade suficiente são removidos da árvore. De notar, que um LSP pode ser interrompido (preempted) por um LSP com maior prioridade se não existir capacidade disponível suficiente na rede.

De tempos em tempos, a rede irá procurar re-optimizar o encaminhamento, podendo usar para isso o mecanismo deauto-bandwidth. Um LSP pode transportar mais ou menos tráfego do que reservou, e para resolver esta situação, oMPLSpermite a configuração de parâmetros deauto-bandwidth, que permitirá o reajustamento da capacidade reservada, caso um LSP não esteja a usá-la ou precise de mais. Isto é feito periodicamente (os inter-valos de reajustamento são configuráveis) e poderá desencadear uma nova execução do CSPF, caso hajam alterações da capacidade reservada de um LSP. Apesar deste mecanismo automático de reajustamento de caminhos parecer interessante, na prática, introduz na rede grandes instalabilidades e pode levar a grandes inflações momentâneas na latência [19]. Como tal, justifica-se investigar e analisar outros processos de engenharia de tráfego.

2.2.3 Software-Defined Network

SDN é uma tecnologia emergente, apontada como uma das soluções mais promissoras para o futuro da gestão de redes. AOpen Networking Foundation (ONF)foi criada com o objetivo de promover o uso deSDNnas redes de computadores actuais, e defineSDN como "uma arquitetura de rede emergente onde o controlo da rede é separado do encami-nhamento e é directamente programável"[22].

Tradicionalmente um switch, para além de ter que encaminhar os pacotes que che-gam por uma das suas interfaces, segundo a sua tabela de encaminhamento, também tem que se preocupar em manter esta tabela, calculando a topologia da rede e execu-tando algoritmos de encaminhamento sobre esta. Separando o encaminhamento (plano de dados) do plano de controlo é possível usar um controlador central responsável pelas

(31)

2.3. HOSE MODELEVALIANT LOAD BALANCING

funções de controlo da rede, o que retira complexidade aosswitchs, 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 usarswitchsmais 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. OOpenFlow[17] é considerado a implementação de factoda 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 dedatacenters[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 redefull 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 porhose model[13].

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

(32)

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, conGarante-segue encaminhar uma qualquer matriz de tráfego compatível com ohose 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 topologiafull meshe 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

(33)

2.4. CONCLUSÕES

dadas por formulações dependentes do conhecimento da matriz de tráfego real e que calculam o encaminhamento óptimo.

Para comparar as diversas soluções foram simuladas redes tendo por base topologias reais de ISPs e redes académicas. Os autores concluem que o débito da rede resultante de encaminhamento em duas fases não está muito longe da solução óptima (está aproximada-mente a 6% desta nas simulações apresentadas). O encaminhamento em duas fases é um esquema que não necessita do conhecimento total da matriz de tráfego, e por isso robusto contra a variação dos padrões de tráfego, e é relativamente simples de implementar (as formulações de programação linear são de complexidade polinomial e oMPLSpermite divisão de tráfego).

No entanto, tem como inconveniente o aumento da latência pois o tráfego é enca-minhado para um intermediário antes de ser encaenca-minhado para o destino, aumentando assim o comprimento médio dos caminhos que os fluxos atravessam, desde a origem até ao destino. Porque o encaminhamento é feito em duas fases, ou invés de ser apenas neces-sário instalar um LSP por cada par origem-destino, torna-se necesneces-sário instalar um LSP por cada par origem-intermediário mais outro LSP por cada par intermediário-destino, tornando esta solução muito pouco escalável.

2.4 Conclusões

Neste capítulo, vimos que, face ao volume crescente de tráfego na Internet e à necessidade de optimizar a utilização dos recursos, vários estudos foram realizados e novas soluções foram propostas com vista a implementar soluções de TEem redes de computadores. Estas soluções podem ser essencialmente divididas em duas grandes categorias: soluções offline e soluções online. Cada uma destas categorias de soluções oferece vantagens e desvantagens, e trabalham com conjuntos diferentes de requisitos.

Vimos também que existem diferentes tecnologias para implementar soluções de TE. As redes IP convencionais, apesar de mais simples, apresentam grandes limitações para implementação de soluções mais sofisticadas. O MPLS, por suportar uma grande variedade de requisitos, encontra-se implementado na maioria das redes de operadores comerciais, e porque permite encaminhamento explícito oferece suporte a soluções deTE. A única solução deTEque podemos considerar ter sido adoptado de forma generalizada pela indústria é baseada em MPLS, mas exige equipamentos complexos e caros, e ao mesmo tempo, está longe de ser perfeita, podendo provocar efeitos indesejáveis na rede durante as reconfigurações, sobretudo quando se usa a funcionalidadeautobandwidth.

(34)

CAPÍTULO 2. TRABALHO RELACIONADO

O nosso trabalho procura adaptar algumas destas ideias numa solução híbrida on-line/offline, assumindo uma arquitetura baseada num controlador central, em linha com

as soluçõesSDN. UsandoSDN, podemos considerar um controlador central que recebe informação do estado da rede dos switchs, e que em intervalos de tempo relativamente curtos (15 ou 30 minutos), calcula uma distribuição optimizada dado o estado da rede (matriz de tráfego) sobre caminhos pré-instalados na mesma. Como os caminhos já se encontram instalados na rede, o controlador central só necessita de ajustar a proporção de cada fluxo que deve ser encaminhado em cada caminho, evitando assim a instabilidade introduzida quando se adiciona e se retira fluxos da rede, como é o caso do MPLS-TE.

(35)

C

a

p

í

t

u

l

o

3

Redes usadas nos testes experimentais

Para avaliar e validar o algoritmo descrito no capítulo5, assim como para a realização das experiências descritas no capítulo6, usámos diversas redes.

Dados os objectivos desta dissertação, as redes que são mais interessantes para realizar os testes experimentais devem ser redes que modelizam, tanto quanto possível,backbones de operadores. Também seria possível usar redes totalmente sintécticas, com proprieda-des bem conhecidas. Apesar de as mesmas não serem tão interessantes, algumas delas foram igualmente usadas, numa primeira fase, para testar o comportamento do algoritmo.

Neste capítulo também descrevemos a arquitectura de rede que permite implementar a nossa solução de encaminhamento multicaminho. De notar que nas nossas experiências considerámos que todos os PoPs desempenham ambos os papéis de edge switch ecore switch.

3.1 Redes de operadores

Apenas usámos modelos de rede ao nívelPoPpois as políticas de encaminhamento são mais relevantes a este nível que ao nível dosrouters. Como critério de escolha, preferimos usarbackbonescuja a configuração é pública, ou baseada em dados públicos, para evitar recorrer a topologias sintetizadas.

(36)

CAPÍTULO 3. REDES USADAS NOS TESTES EXPERIMENTAIS

(a) GEÁNT

(b) B4

(c) NTT

Figura 3.1: Topologia das redes

(37)

3.1. REDES DE OPERADORES

anos, mas mesmo assim julgamos que continuam a ser representativas das mais impor-tantes características topológicas de grandesbackbonesreais.

Em todos estesbackbones, como as capacidades dos canais, em geral1, não são

divulga-das publicamente, escolhemos arbitrar um valor para a capacidade, uniforme em todos os canais. Também calculámos a latência (aproximadamente inferida da distância geográfica das cidades onde os PoPs estão localizados), que é usada como critério de desempate.

Rede # nós # arcos # caminhos caracterização

|V| |E| óptimos (como usado neste trabalho)

Abovenet 15 30 – backbone EUA

ATT 35 68 – backbone EUA

B4 12 19 – datacenter backbone mundial

Géant 32 49 – backbone de investigação europeu

NTT 27 63 – backbone mundial

Sprint 32 64 – backbone mundial

Tiscali 30 76 – backbone europeu

Tabela 3.1: Caracterização das redes usadas para testes

Reflectimos no nosso modelo de rede a existência de diferentes classes de PoPs. Fa-zemos isto porque, como veremos no capítulo4, o processo de geração de matrizes de tráfego faz uso desta diferenciação de PoPs. Em redes reais, existem PoPs em que o volume de tráfego que entra e sai por esses PoPs é maior em relação a outros PoPs. Geralmente, essa diferença de tráfego está relacionada com o tamanho das cidades onde os PoPs estão geograficamente localizados, sendo que quanto maior a população de uma cidade, maior o tráfego que tem origem e destino num PoP localizado nessa cidade. Tendo isso em conta, definimos 3 classes de PoPs: pequeno, médio e grande. Como trabalhamos combackbones de diferentes escalas (continentais ou intercontinentais), a classificação dos PoPs é rela-tiva ao conjunto de cidades cobertas pelobackbone, i.e. numbackbonecontinental, uma determinada cidade pode ser considerada grande, mas numbackboneintercontinental ser considerada média. A distribuição de PoPs por classe em cada rede encontra-se na tabela 3.2(o número da classe representa a importância dos PoPs, por ordem crescente).

Utilizando um algoritmo de selecção de caminhos foram calculados 4 caminhos in-teressantes entre cada par de PoPs em cada uma destas redes. Esses caminhos são selec-cionados segundo uma estratégia que procura maximimizar a disjunção dos caminhos seleccionados entre o subconjunto que liga o par de PoPs e cujo custo e comprimento não ultrapassa o custo e o comprimento do caminho mais curto para além de factores definidos como parâmetro. Para mais detalhes consultar [10].

Os caminhos seleccionados estão sinteticamente caracterizados na tabela3.3. Podemos observar que a rede com mais nós é a AT&T com 35 nós e a rede com menos nós é a B4, com 12 nós. A rede Tiscali apesar de ter menos nós que a rede AT&T, é a rede com mais arcos

(38)

CAPÍTULO 3. REDES USADAS NOS TESTES EXPERIMENTAIS

Rede Classe 1 Classe 2 Classe 3

Abovenet – 8 7

ATT 10 17 8

B4 12 – –

Géant 12 13 7

NTT 5 13 9

Sprint 15 7 10

Tiscali 8 17 5

Tabela 3.2: Distribuição de PoPs por classes

Rede # nós # arcos # pares # total alongamento alongamento

caminhos médio médio

óptimos (hops) (latência)

Abovenet 15 30 105 420 1,098 4,92

AT&T 35 68 595 2366 1,209 5,00

B4 12 19 66 264 1,277 12,85

Géant 32 49 496 1991 1,746 8,49

NTT 27 63 351 1404 1,042 11,15

Sprint 32 64 496 1984 1,254 6,49

Tiscali 30 76 435 1740 0,809 1,69

Tabela 3.3: Caracterização dos caminhos

(76 arcos). O alongamento médio é uma métrica que nos diz de entre todos os caminhos óptimos calculados, quanto em média estes caminhos excedem o custo do caminho mais curto (emhopsou em latência), para o mesmo par origem-destino. Por exemplo, para a rede Tiscali, os caminhos calculados em média têm mais 0,809hopsque o caminho mais curto para o respectivo par origem-destino.

3.2 Redes sintéticas

As redes sintécticas, apesar de não serem tão interessantes, têm propriedades bem co-nhecidas. Estas redes foram usadas para testar e confirmar que o algoritmo foi bem implementado pois são mais fáceis para estimar o comportamento do algoritmo. As 4 redes que usámos foram: anel,full-mesh,folded-close hierárquica.

Na rede em anel, todos os nós são origem e destino de tráfego. Esta rede é caracterizada por ser bastante simples e onde cada nó liga-se a outro nó por um arco, de forma circular. Como resultado, cada nó está sempre ligado a dois arcos (i.e., todos os nós são de grau 2). Esta rede é notável por ser uma rede que minimiza o número de arcos mantendo um caminho debackupentre cada par de nós, completamente disjunto do caminho mais curto. Ou seja, existem sempre dois caminhos entre cada par de nós. Por outro lado, a rede em anel comporta-se muito mal em relação à congestão. Oferece apenas duas oportunidades

(39)

3.2. REDES SINTÉTICAS

de balanceamento de tráfego por caminhos disponíveis e existe uma elevada sobreposição de arcos dos caminhos entre diferente pares de nós, originado uma grande interferência de tráfego. Na realidade, admitindo uma matriz de tráfego uniforme, a melhor solução é encaminhar todo o tráfego o tráfego pelo caminho mais curto pois esta solução minimiza a interferência. Para uma matriz de tráfego não uniforme poderá existir uma pequena oportunidade de minimizar a congestão, sobretudo se exitir um elemento da matriz de tráfego que seja consideravelmente maior que os outros elementos.

Na redefull-mesh, também todos os nós são origem e destino de tráfego. Nesta rede, cada nó está directamente ligado a todos os outros nós por um arco. Esta topologia oferece o máximo desempenho, mas o seu custo também é elevado pois maximiza o número de arcos e é pouco escalável. O preço de umswitchnão é linearmente proporcional em relação ao número de interfaces, mas sim exponencial. Para uma rede de grande dimensão, o custo financeiro de uma topologiafull-meshpode ser imcomportável. Esta topologia é usada em redes relativamente pequenas e onde o desempenho é crucial, caso se justifique o custo. Para uma matriz uniforme, a melhor solução também é o encaminhamento mais curto. Para matrizes não uniforme, existe grande oportunidade de balancear o tráfego pois a interferência do tráfego é pequena e pode-se aproveitar os arcos que ligam pares de nós menos exigentes em termos de tráfego para encaminhar o tráfego dos pares de nós mais exigentes. De referir também que, como vimos no capítulo2, esta topologia permite usar oblivious routingpara encaminhar uma qualquer matriz de tráfego de forma óptima.

As redesfolded-close hierárquica são bastante usadas em redes dedatacenters. Nestas redes apenas um subconjunto de nós são origem e destino de tráfego, enquanto os outros nós são usados para interligação dos nós. Em ambos os casos existem diferentes níveis de nós, onde os nós origem e destino de tráfego encontram-se no nível mais baixo. Ex-cluindo os nós do nível mais alto, na rede hierárquica, cada nó liga-se a um nó do nível imediatamente superior, enquanto que na redefolded-closcada nó liga-se a todos os nós do nível imediatamente superior. Assim sendo, a rede hierárquica é menos exigente no número de arcos e mais escalável que a redefolded-clos, mas não tem um desempenho tão bom. O critério para optar por uma destas duas redes é mais uma vez otrade-off entre o

custo financeiro e o desempenho. Estas topologias oferecem oportunidade de balancear o tráfego até para matrizes unitárias.

(40)

CAPÍTULO 3. REDES USADAS NOS TESTES EXPERIMENTAIS

(a)Folded-closcom 2 níveis (b) Folded-closcom 3 níveis

(c) Hieráquica (d) Anel

(e) Full-mesh

Figura 3.2: Topologia das redes sintéticas

(41)

3.3. ARQUITECTURA DA REDE

3.3 Arquitectura da rede

A rede, ver a figura3.3, é composta por um controlador e um conjunto deswitches, que se dividem emnedge switchese várioscore switches. Uma matriz de tráfego é uma matriz

n×nem que cada par (x,y) representa o débito requerido pelo tráfego que entra na rede

noedge switchxe tem por destino oedge switchy. O papel de cada componente é a seguir discriminado.

Controlador

ES - Edge Switch CS - Core Switch

ES CS

CS CS

CS

CS

CS ES x

ES

ES

ES

ES y

ES

Figura 3.3: Arquitectura da rede incluindo o controlador, osCS - core switches, osES - edge switchese um exemplo de 3 túneis entre osedge switchesxey

Edge switches Recebem o tráfego vindo do exterior da rede, classificam-no em função

do destino, computam estatísticas agregadas de forma a estimarem cada linha da matriz de tráfego em que figuram como origem, e executam a distribuição dos pacotes pelos caminhos definidos a priori, de acordo com as ordens do controlador. Adicionalmente, recebem o tráfego encaminhado peloscore switchesque a eles se destinam e entregam-no ao exterior da rede.

Core switches Implementam estaticamente os diferentes caminhos de interligação dos

edge switches através de túneis (IP over IP,MPLS,VLAN [18], . . . ). Os caminhos são computados a priori, de forma a maximizarem a diversidade de canais sem comprometerem o tempo de trânsito, usando algoritmos conhecidos [8,10,18].

(42)
(43)

C

a

p

í

t

u

l

o

4

Matrizes de tráfego

Uma matriz de tráfego é um modelo que permite organizar informação sobre o tráfego esperado entre cada dois nós de entrada e saída da rede, num determinado período, onde o elemento (i,j) da matriz representa o tráfego que o nóienvia para o nój nesse período.

O tráfego é medido em quantidade de informação por unidade de tempo (por exemplo, Gbps). Medir o tráfego que atravessa a rede não é trivial, exigindo uma contagem de pacotes à medida que estes chegam à rede durante um intervalo de tempo e calculando o débito que estes representam.

Numa rede de grandes dimensões, é irrealista pretender medir todos os pacotes que entram na rede, visto que ooverhead associado é incomportável e isso afectaria negati-vamente o funcionamento da rede. Por isso, a medição é feita por amostragem em deter-minados intervalos de tempo, resultando numa medida de agregação, como uma média, máximo ou mínimo. Infelizmente estas medidas agregadas escondem possíveis flutuações de tráfego entre amostras, e como consequência, estas não são reflectidas nas matrizes de tráfego recolhidas. Apesar de tudo, as matrizes de tráfego são um modelo simples e que dão uma visão geral do tráfego que atravessa a rede, sendo comum o seu uso em diversos trabalhos (e.g., [1,8,13,16,24,28]).

Como o volume de tráfego varia ao longo do tempo, é necessário uma matriz de tráfego por cada intervalo de tempot. Podemos agregar todas as matrizes de tráfego que variam ao longo do tempo num matriz tridimensionalM(i,j,t), também conhecida por família

de matrizes de tráfego. O intervalo de tempo de t costuma variar entre intervalos de 5

minutos até uma hora, por exemplo, mas podem ser usados intervalos maiores.

(44)

CAPÍTULO 4. MATRIZES DE TRÁFEGO

com origem no nó de entradaie destino ao nó de saídaj.

O conjunto de tráfego quei envia paraj é a nossa unidade de trabalho do tráfego.

Numa rede real esta unidade de tráfego representa todos os fluxos de pacotes que entram na rede em i e saem em j. Neste trabalho, não se pretende diferenciar os fluxos em

diversostrunks1. Essa agregação é comum em engenharia de tráfego com base em classes de serviço (diferentestrunks) onde cada classe é afectada a um caminho particular, e que é uma faceta que não é abordada neste trabalho.

No modelo que usámos, uma matriz representa uma única classe de serviço e todos os fluxos entreiej podem ser distribuídos por todos os caminhos disponíveis entreiej

desde que os pacotes com a mesma origem e destino e dirigidos às mesmas portas sigam o mesmo caminho. Este tipo de distribuição é facilmente realizável com os routers actuais de forma aproximada.

4.1 Geração de matrizes de tráfego

Por motivos comerciais, os operadores debackbonespreferem não divulgar publicamente dados reais sobre as suas redes, e por isso, a disponibilidade de matrizes de tráfego reais é escassa. Apenas matrizes de tráfego debackbonesde investigação foram publicadas [14, 27], mas os dados disponíveis datam de 2004 e 2006, e já se encontram desactualizados. Tendo isto em conta e considerando o conjunto das redes estudadas, preferimos gerar matrizes de tráfego sintéticas para usar nas nossas experiências, de forma a uniformizar os métodos de trabalho usados.

O modelo mais simples para geração de matrizes de tráfego é a geração de matrizes unitárias. Estas são matrizes uniformes onde o tráfego esperado entre cada par origem-destino é de 1 unidade. Este tipo de matrizes, dada a sua simplicidade, só é usada para testes e validação.

Um modelo um pouco mais elaborado e muito usado para geração de matrizes de tráfego é o modelo de gravidade [8,20]. O nome deste modelo deriva do modelo gra-vitacional de Newton, que diz que a força gragra-vitacional entre dois objectos é igual ao produto das suas massas a dividir pelo quadrado da distância entre os dois objectos. A generalização deste modelo é definida por duas forças: uma força repulsivaRiassociada

ao “sair” deie uma força atractivaAj associada ao “entrar” emj. O factor de fricçãofi,j

representa o enfraquecimento das forças e depende do fénomeno que está a ser modelado (no modelo de Newton corresponde à distância). No contexto de geração de matrizes de tráfego, tanto a força atractiva como a força repulsiva são relativas ao tamanho da popu-lação da cidade onde se localiza o PoP. Consideramos que quanto maior é uma cidade, maior deverá ser o tráfego com origem ou destino nessa cidade. O factor de fricção, neste contexto, muitas vezes é uma constante e tem pouco impacto na variação do tráfego. Um

1Trunkpoderia ser traduzido por tronco ou caminho partilhado por um conjunto de fluxos; mas na

sequência deste texto optámos por usar a designação na língua inglesa. É um termo frequentemente usado

na tecnologiaMPLS.

(45)

4.2. MATRIZES DE TRÁFEGO DISTORCIDAS

modelo mais robusto poderá ter em conta factores como a crescente utilização deContent Delivery Networks (CDNs)e barreiras línguisticas entre POPs em diferentes países como factor de fricção sobre o fluxo de tráfego entre POPs. Nesta dissertação preferimos manter o modelo simples e considerar a fricção constante. Adaptámos o modelo usado em [8], considerando as diferentes classes de POPs que introduzimos no capítulo3.

4.2 Matrizes de tráfego distorcidas

Para estudar o impacto de usar uma distribuição de trafégo num dado instante, usando uma matriz de tráfego obtida num instante anterior, e que já não corresponde à matriz de tráfego real, precisamos de usar modelos de distorção de matrizes de tráfego. Usámos distorção proporcional apenas para testes e validação. Os outros modelos de distorção pro-curam reflectir padrões de alteração de tráfego que ocorrem em redes reais. Denotamos a matriz de tráfego original porDe a matriz de tráfego distorcida porD′.

Distorção proporcional

Este modelo distorce a matriz D multiplicando todos os elementos da matriz por um

determinado factor. Como o algoritmo que usámos neste trabalho encaminha iterativa-mente proporções fixas da matriz de tráfego (por exemplo, encaminha 1% do tráfego origem-destino em cada iteração), este modelo de distorção não apresenta variações no encaminhamento resultante. Porque este resultado pode ser deduzido formalmente, po-demos usá-lo para confirmar que o algoritmo está a comportar-se de forma expectável. De notar que a ocorrência de uma distorção desta natureza numa rede real é pouco provável.

Distorção aleatória

Este modelo procura simular distorções imprevistas, dentro de um determinado intervalo de distorção. Formalmente, o intervalo de distorçãoIé um intervalo [1−l,1 +l], ondelé

um factor de distorção. Sejav um número real aleatório pertencente aI, o valor de que

cada elemento deD′ é dado porDx,y′ =v×Dx,y. Por exemplo, considerando uma matriz unitária el= 0.1,D′ será composta por valores aleatórios, que variam entre 0.9 e 1.1. A

(46)

CAPÍTULO 4. MATRIZES DE TRÁFEGO

Ataque DDoS

Um ataque de distributed denial of service (DDoS) é um tipo de ataque que geralmente não tem especificamente como alvo umbackbone, mas que pode comprometer o seu fun-cionamento de forma séria. Este ataque tem como objectivo inutilizar um determinado serviço oferecido por um servidor (ou conjunto de servidores), impossibilitando os utili-zadores de acederem a esse serviço. Tipicamente são usadasbotnetspara perpetuar este tipo de ataque, onde múltiploshostscomprometidos são usadas para gerar um gigantesco volume de dados que é enviado para sistema alvo do ataque. Cerca de 70% dos ataques são menores que 1 Gbps, enquanto que 1% dos ataques são maiores que 20 Gbps [25]. O maior ataque registado é de aproximadamente 400 Gbps.

Um ataque desde género inunda a rede com um aumento considerável e repentino de tráfego. Para estudarmos o impacto de um ataque DDoS num backboneusámos um modelo simples: consideramos que todos os nós da rede enviam repentinamente mais tráfego para um nó alvo. Sejaao nó alvo do ataque e l um factor de aumento (ou seja,

l >1). A matriz de deformaçãoAé dado por:

Axy=

        

l sey=a

1 sey,a

(4.1)

Assim, temos queD′ =D×A, ou por outras palavras, a colunaada matrizDé

multipli-cada porl. Porlser parametrizável, podemos estudar o comportamento doshort sighted routingpara diferentes dimensões de ataques DDoS.

Como está patente na função 4.1, o aumento do tráfego (dado porl) é igual para

todos os nós. Um modelo mais realista talvez procurasse considerar diferentes factores de aumento l para cada nó, mas isso implicaria que: 1) o tráfego gerado pelos ataques

seguisse um padrão bem conhecido que permitisse inferir quais deveriam ser os factores de aumento, o que não é verdade, ou 2) os factores de aumento seriam aleatórios, o que tornariam o modelo bem mais complexo e difícil de estudar. Por outro lado, ao usar um factor de aumento uniforme, podemos considerar que estamos perante um caso degenerativo de um caso com factores aleatórios, ondeltoma o valor máximo dos valores gerados aleatoriamente. Por estarmos a estudar a robustez do algoritmo, interessa-nos estudar os piores casos e por isso, consideramos ser preferível usar o modelo mais simples.

Eventoflash-crowd

Este modelo de distorção procura reflectir um padrão recorrente e que as operadoras de backbonedevem esperar na suas redes. Um eventoflash-crowdé definido por um aumento inesperado e repentino de tráfego na rede, que tipicamente é desencadeado por um evento no mundo real que leva um número elevado e anormal de utilizadores a aceder num determinado momento a um determinado serviço na Internet. Casos típicos de eventos flash-crowdsão acessos a websites noticiosos aquando de eventos catástróficos estreamde

(47)

4.2. MATRIZES DE TRÁFEGO DISTORCIDAS

vídeos de eventos culturais ou desportivos. Em relação ao primeiro caso, estes eventos são imprevisíveis, enquanto que em relação ao segundo caso os eventos são mais espectavéis, o que permite às operadores dosbackbonesse prepararem. Mesmo considerando eventos de flash-crowdimprevistos, o aumento do tráfego originado geralmente não é tão repentino e agressivo em comparação com um ataque DDoS, mas potencialmente podem atingir aumentos totais de tráfego semelhantes.

Nós modelamos este padrão considerando que há um aumento repentino de tráfego de um nó da rede para todos os outros. Consideramos que o nó visado é o nó que contém o contéudo de informação requisitado pelos utilizadores, o que no nosso modelo resulta em multiplicar a matriz de tráfego pela matriz de deformação dada pela seguinte função, ondeaé o nó visado:

Axy=

        

l sex=a

1 sex,a

(4.2)

Consideramos que o volume de tráfego originado nesse nó é várias ordens de grandeza maior que o volume de tráfego com origem nos pedidosHTTPdos utilizadores, tornando este desprezível. Um modelo mais realista teria tido em conta também um aumento pequeno do tráfego de todos os outros nós para o nó atacado, mas preferimos usar um modelo mais simples, fácil de estudar e também representativo do pior caso, como no modelo precedente.

Mudança de política BGP

Dentro de um AS, o tráfego que nele transita pode ser proveniente de um cliente ou pode entrar na rede vindo de outro AS, através de um ponto de peering. Similarmente, o destino do tráfego pode estar dentro do AS ou pode estar fora, e neste caso deverá ser encaminhado para um AS que ofereça conectividade para esse destino. Como estamos a usar redes de backbone, i.e. redes de trânsito, a maior parte do tráfego tem origem e destino em outros ASs, e portanto consideramos esse tipo de tráfego mais representativo. Os pontos depeeringpor onde o tráfego entra ou sai está dependente da configuração das políticas de BGP, e assim sendo, uma mudança nestas políticas pode originar modificações na matriz de tráfego.

Imagem

Figura 3.1: Topologia das redes
Tabela 3.1: Caracterização das redes usadas para testes
Tabela 3.2: Distribuição de PoPs por classes
Figura 3.2: Topologia das redes sintéticas
+7

Referências

Documentos relacionados

Discussion: Local suicidal patients have higher incidence of overt thyroid disorder and lower FT 3 levels compared to non-suicidal psychiatric

De seguida, vamos adaptar a nossa demonstrac¸ ˜ao da f ´ormula de M ¨untz, partindo de outras transformadas aritm ´eticas diferentes da transformada de M ¨obius, para dedu-

6 Consideraremos que a narrativa de Lewis Carroll oscila ficcionalmente entre o maravilhoso e o fantástico, chegando mesmo a sugerir-se com aspectos do estranho,

Coopera com os companheiros para o alcance do objetivo dos Jogos Desportivos Coletivos, desempenhando com oportunidade e correção as ações solicitadas pelas situações de

Nesse sentido, é imprescindível e urgente que o MEC revogue a autorização dos cursos de Medicina Veterinária oferecidos exclusivamente na modalidade EAD e não

representar o IFFar ou o campus em atividades artísticas, culturais, esportivas, científicas e técnicas, entre outras, quando menor de idade autorizado pelos pais

Esclareceu sobre os motivos da não cicatrização (hi- pertonia esfincteriana, persistência do trauma, conta- minação local). Não esclareceu ou referiu apenas persistência do

Dentro deste contexto, este trabalho visa utilizar o modelo clássico do problema do menor caminho, para otimizar uma rota utilizada semanalmente por uma empresa para efetuar