Investigação de Predição de Fluxos em Redes de Computadores

83
UNIVERSIDADE FEDERAL DO ABC ORLANDO DA SILVA JUNIOR INVESTIGA ¸ C ˜ AO DE PREDI ¸ C ˜ AO DE FLUXOS EM REDES DE COMPUTADORES Santo Andr´ e – SP 2014

description

Um importante desafio na área de Redes Definidas por Software é a minimização das consultas enviadas pelo switch ao controlador, que produzem um atraso inicial na comunicação. Esse problema pode ser resolvido se o controlador instalar antecipadamente os fluxos nos switches, autorizando a comunicação antes da chegada do primeiro pacote. Com essa motivação, este trabalho investiga o problema da predição de fluxos em redes de computadores. Duas redes de aplicação são mapeadas em diversos modelos topológicos de Redes Complexas para representar o tráfego das informações das redes de aplicação nas redes físicas subjacentes. Diversos algoritmos tradicionais de Predição de Links são utilizados separadamente para predizer os fluxos em cada uma das redes e também como entrada para técnicas de Aprendizado de Máquina. O problema é ainda modelado em uma nova abordagem de Predição de Links que prediz em conjunto as conexões da rede que se manterão ou se formarão em um instante futuro. Os resultados experimentais mostram que as técnicas de Aprendizado de Máquina podem ser usadas para a predição de fluxos com desempenho significativo em muitas situações.

Transcript of Investigação de Predição de Fluxos em Redes de Computadores

Page 1: Investigação de Predição de Fluxos em Redes de Computadores

UNIVERSIDADE FEDERAL DO ABC

ORLANDO DA SILVA JUNIOR

INVESTIGACAO DE PREDICAO DE FLUXOS

EM REDES DE COMPUTADORES

Santo Andre – SP

2014

Page 2: Investigação de Predição de Fluxos em Redes de Computadores
Page 3: Investigação de Predição de Fluxos em Redes de Computadores

UNIVERSIDADE FEDERAL DO ABC

Pos-graduacao em Engenharia da Informacao

Mestrado em Engenharia da Informacao

Orlando da Silva Junior

INVESTIGACAO DE PREDICAO DE FLUXOS

EM REDES DE COMPUTADORES

Dissertacao de Mestrado apresentada a Universidade Federal

do ABC como parte dos requisitos necessarios para a obtencao

do tıtulo de Mestre em Engenharia da Informacao, orientada

pela Prof.a Dr.a Ana Carolina Lorena e coorientada pelo Prof.

Dr. Carlos Alberto Kamienski.

Santo Andre – SP

2014

Page 4: Investigação de Predição de Fluxos em Redes de Computadores
Page 5: Investigação de Predição de Fluxos em Redes de Computadores
Page 6: Investigação de Predição de Fluxos em Redes de Computadores

A meus irmaos, Jacquelyne e Rodrigo.

Page 7: Investigação de Predição de Fluxos em Redes de Computadores

Agradecimentos

A Deus, Uno e Trino, e a Maria Santıssima.

Aos meus pais, Orlando e Silvia, e aos meus irmaos, Jacquelyne e Rodrigo.

Ao Revmo. Pe. Marcus Muscatelle pela direcao espiritual e conselhos de estudo.

A minha orientadora, Prof.a Dr.a Ana Lorena, pela orientacao neste trabalho,

pelo auxılio durante toda a minha pos-graduacao na Universidade Federal do ABC

(UFABC) e pela direcao em meus estudos. Ao meu coorientador, Prof. Dr. Carlos

Kamienski, pelo aceite em me coorientar e pelas sugestoes a minha pesquisa.

Aos professores Ronaldo Prati, Edson Pimentel, David Martins e Cesar Marcon-

des pelas sugestoes e crıticas ao meu trabalho.

Aos alunos e ex-alunos de meus orientadores pelo suporte tecnico e cientıfico.

A equipe do Laboratorio de Biologia Computacional e Bioinformatica (LBCB)

pelo espaco concedido as minhas pesquisas.

Aos amigos e familiares que colaboraram de alguma forma para a realizacao deste

trabalho.

Aos alunos de graduacao da UFABC que me mostraram o valor do ser docente.

Este trabalho foi apoiado financeiramente pelo Conselho Nacional de Desenvolvimento Cientıfico e Tecnologico

(CNPq) sob o processo no 133068/2012-9. As opinioes, hipoteses e conclusoes ou recomendacoes expressas neste

material sao de responsabilidade do autor e nao necessariamente refletem a visao do CNPq.

Page 8: Investigação de Predição de Fluxos em Redes de Computadores

Omni enim habenti dabitur, et abundabit;

ei autem, qui non habet, et quod habet,

auferetur ab eo.

—Evangelium secundum

Matthaeum XXV, XXIX

Page 9: Investigação de Predição de Fluxos em Redes de Computadores

Resumo

Um importante desafio na area de Redes Definidas por Software e a minimizacao

das consultas enviadas pelo switch ao controlador, que produzem um atraso inicial

na comunicacao. Esse problema pode ser resolvido se o controlador instalar anteci-

padamente os fluxos nos switches, autorizando a comunicacao antes da chegada do

primeiro pacote. Com essa motivacao, este trabalho investiga o problema da pre-

dicao de fluxos em redes de computadores. Duas redes de aplicacao sao mapeadas

em diversos modelos topologicos de Redes Complexas para representar o trafego das

informacoes das redes de aplicacao nas redes fısicas subjacentes. Diversos algoritmos

tradicionais de Predicao de Links sao utilizados separadamente para predizer os flu-

xos em cada uma das redes e tambem como entrada para tecnicas de Aprendizado

de Maquina. O problema e ainda modelado em uma nova abordagem de Predicao de

Links que prediz em conjunto as conexoes da rede que se manterao ou se formarao

em um instante futuro. Os resultados experimentais mostram que as tecnicas de

Aprendizado de Maquina podem ser usadas para a predicao de fluxos com desempe-

nho significativo em muitas situacoes.

Palavras-chave: predicao de links, aprendizado de maquina, redes definidas por

software.

i

Page 10: Investigação de Predição de Fluxos em Redes de Computadores

Abstract

A major challenge for Software-Defined Network area is to minimize the number of

queries sent by switches to the controller, that produce an initial delay on commu-

nication. This problem can be solved if the controller installs the flows on switches

in advance, enabling the communication before the arrival of the first packet. From

this motivation, this work investigates the problem of flow prediction in computer

networks. Two application networks are mapped into several topological models

from Complex Network Theory to represent the network traffic information of those

networks on the physical underlying networks. Several traditional algorithms of Link

Prediction are used independently and as input for supervised Machine Learning te-

chniques to predict flows in all network. The problem is still modelled in a new

approach that predicts the persisted and the new connections together. Experimen-

tal results show that the Machine Learning techniques can be used to predict flows

with a significant performance in many situations.

Keywords: link prediction, machine learning, software-defined network.

ii

Page 11: Investigação de Predição de Fluxos em Redes de Computadores

Lista de Figuras

2.1 Exemplos de redes complexas. . . . . . . . . . . . . . . . . . . . . . . 8

2.2 Diagramas de construcao do conjunto de dados para Predicao de Links. 13

2.3 Arquitetura geral de SDN. . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1 Metodologia experimental. . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2 Ilustracao do processo de mapeamento. . . . . . . . . . . . . . . . . . 31

4.1 Desempenho dos algoritmos de PL nos modelos sem topologia e alea-

torio para a rede P2P. . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.2 Desempenho dos algoritmos de PL nos modelos de mundo pequeno e

sem escala para a rede P2P. . . . . . . . . . . . . . . . . . . . . . . . 40

4.3 Desempenho dos algoritmos de AM para a rede P2P. . . . . . . . . . 42

4.4 Desempenho dos algoritmos de PL nos modelos sem topologia e alea-

torio para a rede de e-mails. . . . . . . . . . . . . . . . . . . . . . . . 45

4.5 Desempenho dos algoritmos de PL nos modelos de mundo pequeno e

sem escala para a rede de e-mails. . . . . . . . . . . . . . . . . . . . . 46

4.6 Desempenho dos algoritmos de AM para a rede de e-mails. . . . . . . 47

iii

Page 12: Investigação de Predição de Fluxos em Redes de Computadores

Lista de Tabelas

2.1 Raciocınio para a construcao dos conjuntos de aprendizado conforme

a tarefa de Predicao de Links. . . . . . . . . . . . . . . . . . . . . . . 14

3.1 Caracterısticas das redes . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.2 Caracterizacao do conjunto de dados para a rede P2P. . . . . . . . . . 32

3.3 Caracterizacao do conjunto de dados para a rede de e-mails. . . . . . 32

A.1 Desempenho dos algoritmos de PL na rede P2P. . . . . . . . . . . . . 65

A.2 Desempenho dos algoritmos de AM na rede P2P. . . . . . . . . . . . 66

A.3 Desempenho dos algoritmos de PL na rede de e-mails. . . . . . . . . . 67

A.4 Desempenho dos algoritmos de AM na rede de e-mails. . . . . . . . . 68

iv

Page 13: Investigação de Predição de Fluxos em Redes de Computadores

Lista de Abreviaturas

AA Coeficiente de Adamic/Adar

AM Aprendizado de Maquina

ARC Analise de Redes Complexas

AUC Area Abaixo da Curva ROC

CMC Caminho Mais Curto

CN Vizinhos Comuns

HDI Indice do Hub Deprimido

HPI Indice do Hub Promovido

KZ Medida Katz

k -NN k -Vizinhos Mais Proximos

JC Coeficiente de Jaccard

P2P Peer-to-Peer

PA Conexao Preferencial

PF PropFlow

PL Predicao de Links

PR Precisao

RAI Indice de Alocacao de Recursos

RV Revocacao

SVM Maquina de Vetor de Suporte

v

Page 14: Investigação de Predição de Fluxos em Redes de Computadores

Sumario

1 INTRODUCAO 1

1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2 Organizacao do Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 CONCEITOS FUNDAMENTAIS 6

2.1 Analise de Redes Complexas . . . . . . . . . . . . . . . . . . . . . . . 6

2.1.1 Modelos de Redes Complexas . . . . . . . . . . . . . . . . . . 7

2.1.2 Medidas Estatısticas . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 Predicao de Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2.1 Modelagem de Tarefas . . . . . . . . . . . . . . . . . . . . . . 12

2.2.2 Algoritmos de Predicao de Links . . . . . . . . . . . . . . . . 14

2.3 Redes Definidas por Software . . . . . . . . . . . . . . . . . . . . . . 18

2.4 Aprendizado de Maquina . . . . . . . . . . . . . . . . . . . . . . . . . 20

3 PREDICAO DE FLUXOS EM REDES DE COMPUTADORES 24

3.1 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2 Gerenciamento de Dados . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.1 Dados das Redes de Aplicacao . . . . . . . . . . . . . . . . . . 26

3.2.2 Dados das Redes Fısicas . . . . . . . . . . . . . . . . . . . . . 28

vi

Page 15: Investigação de Predição de Fluxos em Redes de Computadores

3.3 Mapeamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.4 Predicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.4.1 Selecao e Configuracao de Algoritmos . . . . . . . . . . . . . . 33

3.4.2 Avaliacao de Desempenho . . . . . . . . . . . . . . . . . . . . 34

4 RESULTADOS 38

4.1 Resultados da Rede P2P . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.1.1 Algoritmos de Predicao de Links Tradicionais . . . . . . . . . 38

4.1.2 Algoritmos de Aprendizado de Maquina . . . . . . . . . . . . 41

4.1.3 Discussao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.2 Resultados da Rede de E-mails . . . . . . . . . . . . . . . . . . . . . 44

4.2.1 Algoritmos de Predicao de Links Tradicionais . . . . . . . . . 44

4.2.2 Algoritmos de Aprendizado de Maquina . . . . . . . . . . . . 47

4.2.3 Discussao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

4.3 Consideracoes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5 CONCLUSAO 52

5.1 Principais Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.2 Contribuicoes e Limitacoes . . . . . . . . . . . . . . . . . . . . . . . . 54

5.3 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

REFERENCIAS 57

A RESULTADOS DOS EXPERIMENTOS 64

vii

Page 16: Investigação de Predição de Fluxos em Redes de Computadores

Capıtulo 1

INTRODUCAO

As aplicacoes de redes de computadores, incluindo a Internet, geram trafegos de

dados que podem ser usados para construir redes logicas sobrepostas a rede fısica.

Em aplicacoes peer-to-peer (P2P), por exemplo, quando um usuario pertencente a

uma rede decide transferir um arquivo para outro usuario, o sistema P2P registra a

ocorrencia da transferencia e realiza uma conexao entre os dois usuarios. Apos um

determinado intervalo de tempo, varias outras conexoes sao formadas entre esses e

outros usuarios, estruturando uma rede logica. Essa rede pode ser modelada como

um grafo, onde os nos sao os usuarios e a ocorrencia de transferencias entre os usuarios

sao as arestas.

Existe tambem, intermediando e efetivamente realizando as transmissoes, uma

rede fısica, que e formada por dispositivos interligados, como roteadores e switches.

As informacoes trocadas na rede logica efetivamente trafegam por uma rede fısica

subjacente, que nem sempre possui a mesma topologia da rede logica. Por exemplo,

a transferencia de um arquivo entre dois usuarios de uma rede P2P nao implica em

seus dispositivos estarem diretamente conectados para realizarem essa transferencia.

1

Page 17: Investigação de Predição de Fluxos em Redes de Computadores

Deve ser observado ainda que a rede logica, em geral, nao possui informacoes a

respeito do trafego da rede subjacente.

Essa abstracao pode ser aplicada a qualquer arquitetura de rede. Atualmente,

diversas pesquisas em redes de computadores tem se voltado para o paradigma das

Redes Definidas por Software (Software Defined Networks, ou SDN) [ONF, 2012] em

razao das possibilidades amplas de sua aplicacao. A arquitetura SDN e formada por

dois planos desacoplados: um plano de dados e um plano de controle. Enquanto

o plano de dados e o responsavel pelo encaminhamento dos dados das aplicacoes,

o plano de controle tem a funcao de programar os caminhos que esses dados irao

trafegar na rede.

Nas arquiteturas tradicionais, esses planos sao combinados, o que torna a rede

menos flexıvel. Com a separacao dos planos em SDN, os elementos da rede que

trabalham no plano de dados (switches) tem apenas a funcao de encaminhar os

pacotes com base em uma tabela que armazena esses caminhos, chamada de tabela

de fluxos. Nos casos em que o switch nao tem informacoes suficientes para tratar com

o pacote, uma solicitacao e enviada pelo switch ao controlador da rede, que tem a

funcao de executar o plano de controle de maneira logicamente centralizada [Guedes

et al., 2012].

Um importante desafio da area e a minimizacao das consultas enviadas pelo switch

ao controlador, que produzem um atraso inicial na comunicacao e geram sobrecarga

no proprio controlador [Sezer et al., 2013]. Uma maneira de tratar esse problema e

fazer com que o controlador instale fluxos antecipadamente nos switches, autorizando

a comunicacao antes da chegada do primeiro pacote do fluxo no switch.

Essa situacao, no entanto, gera um trade-off entre a quantidade de requisicoes

enviadas ao controlador e a quantidade de memoria do switch ocupada pelos fluxos

nao concretizados. Esse impasse pode ser superado se o controlador realizar predicoes

2

Page 18: Investigação de Predição de Fluxos em Redes de Computadores

de trafego na rede. Deste modo, se, apesar da perda de memoria, ainda houver

benefıcios em termos de reducao de requisicoes ao controlador, e possıvel afirmar que

a predicao de fluxos soluciona o problema da minimizacao de consultas em SDN.

Uma das formas de realizar predicao e fluxos e utilizando o arcabouco da Pre-

dicao de Links (PL) [Liben-Nowell e Kleinberg, 2007], uma area em expansao da

Analise de Redes Complexas (ARC). Contudo, a solucao e dificultada pelo fato de

a topologia das redes logicas que geram as informacoes nem sempre possuırem as

mesmas caracterısticas e estruturas das redes fısicas. Por outro lado, as conexoes da

rede logica podem colaborar para a solucao desse problema, indicando o padrao de

formacao das conexoes das aplicacoes e, por conseguinte, do fluxo das informacoes

na rede fısica. Esse nao e um trabalho trivial e uma solucao adequada precisa ser

investigada.

Este trabalho aborda esse problema mapeando duas redes de aplicacao – uma

rede P2P e uma rede de e-mails – em diversos modelos topologicos comuns da ARC,

como as redes de mundo pequeno e sem escala [Newman, 2003]. O mapeamento re-

presenta a conexao entre a rede fısica de computadores e a rede logica formada pelas

aplicacoes e resulta em uma nova rede, cujas conexoes entre os nos designam o fluxo

das informacoes presente na rede fısica. A ideia central do trabalho e combinar os re-

sultados de algoritmos de PL como entrada para diferentes tecnicas de Aprendizado

de Maquina (AM) supervisionado e comparar os resultados com abordagens tradicio-

nalmente utilizadas em PL. Este trabalho contribui principalmente para impulsionar

futuras solucoes de predicao de fluxos em SDN e na modelagem de problemas de

PL, utilizando uma nova abordagem de predicao. Usualmente, as tarefas de PL vi-

sam predizer as ligacoes futuras ou aquelas que irao persistir no tempo [Silva-Junior

et al., 2013]. Neste trabalho e adotada uma abordagem conjunta, que prediz simul-

taneamente quais conexoes se manterao e quais surgirao em um instante futuro. Os

3

Page 19: Investigação de Predição de Fluxos em Redes de Computadores

resultados experimentais mostram que as tecnicas de AM podem ser usadas para a

predicao de fluxos com desempenho significativo.

1.1 Objetivos

O objetivo geral deste trabalho e investigar a predicao de fluxos em redes com-

putadores. Essa investigacao se fundamenta nos conceitos de Redes Definidas por

Software. A partir desse enfoque, os objetivos especıficos deste trabalho sao:

• Elaborar um metodo de mapeamento entre a rede fısica e a rede de aplicacao;

• Investigar uma nova forma de predizer simultaneamente ligacoes que se formam

ou se mantem na rede;

• Experimentar diferentes algoritmos de Predicao de Links e Aprendizado de

Maquina supervisionado no problema de predicao de fluxos;

• Comparar os resultados dos algoritmos de Predicao de Links tradicionais com

os resultados das tecnicas de AM supervisionado.

1.2 Organizacao do Trabalho

Os demais capıtulos deste trabalho encontram-se organizados do seguinte modo:

• O Capıtulo 2 apresenta os conceitos fundamentais para a compreensao geral do

trabalho;

• O Capıtulo 3 descreve a proposta de trabalho e metodologia experimental em-

pregada em sua avaliacao;

4

Page 20: Investigação de Predição de Fluxos em Redes de Computadores

• O Capıtulo 4 apresenta e discute os resultados dos experimentos conduzidos

para a rede P2P e a rede de e-mails;

• O Capıtulo 5 apresenta as conclusoes do trabalho.

5

Page 21: Investigação de Predição de Fluxos em Redes de Computadores

Capıtulo 2

CONCEITOS FUNDAMENTAIS

Neste capıtulo sao abordados os conceitos fundamentais deste trabalho relaci-

onados as redes complexas, as SDNs e tambem as tecnicas de AM adotadas nos

experimentos.

2.1 Analise de Redes Complexas

A Analise de Redes Complexas e uma das areas mais interdisciplinares das ci-

encias atualmente. Diversos campos de conhecimento tem trabalhado juntos para

conceituar e investigar o comportamento das relacoes sociais humanas ou analisar a

estrutura fısica dos relacionamentos entre diferentes tipos de entidades.

Uma rede pode ser definida como um conjunto de itens com conexoes entre eles

[Newman, 2003], sendo, em geral, modeladas como grafos do tipo G = (V,E), onde

V e o conjunto de nos e E e o conjunto de arestas. Quandos os grafos sao orientados,

eles sao do tipo G = (V,A), onde A e o conjunto de pares ordenados de nos, chamados

de arcos ou arestas.

6

Page 22: Investigação de Predição de Fluxos em Redes de Computadores

Os nos do grafo representam as entidades do mundo real e as arestas representam

as interacoes entre essas entidades, que podem representar pessoas, grupos, organi-

zacoes ou dispositivos. As interacoes podem designar qualquer forca ou influencia

exercida por essas entidades em outras entidades. A estrutura de interconexao da

Internet e a World Wide Web sao os exemplos mais populares de redes complexas

que seguem essa formulacao.

2.1.1 Modelos de Redes Complexas

Diversos modelos de redes complexas foram propostos para prover maior com-

preensao a respeito do comportamento das redes existentes no mundo real. Este

trabalho utiliza tres modelos populares de redes para atuarem como uma rede fısica

de computadores:

• Modelo Erdos-Renyi: e um modelo para a geracao de grafos aleatorios

[Erdos e Renyi, 1959] do tipo G(n, p), em que n e o numero de vertices do

grafo e p e a probabilidade de existencia de cada aresta. Neste modelo, as ares-

tas sao adicionadas com probabilidade independente e de maneira aleatoria. A

distribuicao de arestas conectadas segue a distribuicao de Poisson [Montgomery

et al., 2003] limitada em n;

• Modelo Watts-Strogatz: e um modelo de geracao de grafos aleatorios [Watts

e Strogatz, 1998] bastante similar ao modelo Erdos-Renyi. Seu principal ob-

jetivo e gerar grafos com propriedades de mundo pequeno, forcando a rede a

formar conexoes entre nos mais proximos. Essas propriedades estao presen-

tes em muitas redes do mundo real. O modelo Watts-Strogatz possui ainda

duas caracterısticas proprias, ao contrario do simples modelo Erdos-Renyi: um

7

Page 23: Investigação de Predição de Fluxos em Redes de Computadores

tamanho medio de caminho mınimo pequeno e uma alta probabilidade de for-

macao de grupos. Essas duas propriedades implicam na formacao topologica

da rede, cujas novas arestas sao formadas entre nos ja conectados;

• Modelo Barabasi-Albert: este modelo [Barabasi e Albert, 1999] gera grafos

aleatorios usando o mecanismo da conexao preferencial. Esse mecanismo tende

a formar conexoes em nos com elevado numero de conexoes. As redes Barabasi-

Albert, chamadas tambem de redes sem escala, possuem poucos nos altamente

conectados, chamados hubs, e muitos nos com poucas conexoes. Neste modelo,

a distribuicao de arestas conectadas segue a funcao de probabilidade P (k) =

k−γ, que e chamada lei de potencia, onde γ e um parametro que varia conforme

a topologia da rede.

Figura 2.1: Exemplos de redes complexas.

Os tres modelos podem ser melhor visualizados na Figura 2.1, que ilustra a to-

pologia das redes aleatoria (Figura 2.1(a)), formada pelo modelo Erdos-Renyi, de

mundo pequeno (Figura 2.1(b)), formada pelo modelo Watts-Strogatz, e sem escala

(Figura 2.1(c)), gerada conforme o modelo Barabasi-Albert.

As redes podem ser geradas por meio dos modelos descritos ou ainda pela coleta de

dados e observacao de uma situacao real do mundo. Uma rede pode ser representada

de diversas maneiras, independentemente de como ela e formada. A representacao

8

Page 24: Investigação de Predição de Fluxos em Redes de Computadores

grafica, ilustrada anteriormente na Figura 2.1, e uma das maneiras de observar a

topologia de um grafo. No entanto, ela pode nao ser a melhor opcao quando e

desejavel compreender e avaliar a estrutura da rede em termos matematicos. Nesse

sentido, as medidas estatısticas descritas a seguir podem colaborar de modo mais

eficiente [Oliveira e Gama, 2012].

2.1.2 Medidas Estatısticas

Entre as medidas estatısticas mais usadas para caracterizar as redes complexas

estao:

• Grau Medio (g): o grau g de um no u e a quantidade de arestas que ele

possui. O grau medio da rede corresponde a media dos graus de todos os nos

N da rede e pode ser calculado deste modo:

g =1

N

N∑i=1

g(ui) (2.1)

• Diametro (D): corresponde ao maior valor de caminho mınimo CMC entre

dois nos u e v. O diametro pode ser medido como:

D = max {CMC(u, v)} (2.2)

• Densidade (DS): quantifica o nıvel de conectividade presente na rede. Valores

altos de densidade estao associados a redes densas, que sao redes que tendem

a ter todos os nos conectados entre eles. A densidade pode ser medida como

a proporcao entre a quantidade m de arestas presentes na rede e o numero

9

Page 25: Investigação de Predição de Fluxos em Redes de Computadores

maximo possıvel mmax de arestas que poderiam ser formadas:

DS =m

mmax

(2.3)

• Coeficiente de Assortatividade (AS): e uma medida que varia entre -1

e 1 e indica a tendencia em encontrar nos altamente conectados que estao

conectados uns com os outros. Coeficientes negativos indicam que nos com

alto grau tendem a se conectar com nos de baixo grau. Coeficientes positivos

indicam que nos com graus semelhantes tendem a se conectarem. O coeficiente

de assortatividade pode ser calculado deste modo, onde euv e a fracao das

arestas que conectam os nos u e v:

AS =

∑Nu=1 euu −

∑Nu=1

(∑Nv=1 euv

∑Nu=1 euv

)1−

∑Nu=1

(∑Nv=1 euv

∑Nu=1 euv

) (2.4)

• Coeficiente Medio de Agrupamento (C): e o calculo da media de todos

os valores de agrupamento local C para a vizinhanca e do no u. O coeficiente

de agrupamento local indica o nıvel de coesao de um no com seus vizinhos. E

uma das medidas mais importantes da ARC e pode ser calculada conforme as

seguintes equacoes:

C =1

N

N∑i=1

C(ui) (2.5)

C(u) =2|eu|

g(u)(g(u)− 1)(2.6)

Neste trabalho essas medidas sao utilizadas para descrever estatisticamente a

topologia das redes de aplicacao utilizadas nos experimentos.

10

Page 26: Investigação de Predição de Fluxos em Redes de Computadores

2.2 Predicao de Links

Uma das areas originadas da Analise de Redes Complexas e em maior expansao

atualmente e a Predicao de Links [Getoor e Diehl, 2005], que investiga a probabilidade

de associacoes futuras entre entidades de uma rede. Ela tem sido utilizada em duas

principais tarefas: na predicao de novos links [Hasan et al., 2006] ou na predicao

de links que permanecerao conectados no futuro [Fire et al., 2011], chamada de

persistencia de links. Embora o termo “predicao de links” refira-se geralmente a

primeira tarefa, o texto deste trabalho utiliza-o genericamente para indicar ambas as

tarefas. Os termos especıficos serao explicitados quando necessario.

Neste trabalho e adotada uma abordagem conjunta para o problema da PL, em

que a predicao e a persistencia de links sao realizadas simultaneamente, e nao de

maneira isolada. Deste modo, os preditores inferem os links futuros e tambem aqueles

que persistem no tempo.

Entre os metodos usualmente utilizados para solucionar a PL estao aqueles que

estimam escores para todos os pares de nos da rede [Liben-Nowell e Kleinberg, 2007].

Esses metodos predizem os links com base no valor do escore, que indica a proba-

bilidade de presenca do link em um instante futuro da rede. Por nao apresentarem

um parametro temporal, os preditores tradicionais de PL sao chamados muitas ve-

zes de nao-supervisionados [Lu et al., 2010, Wang et al., 2011]. Por outro lado,

quando esse parametro temporal existe na rede, e comum as pesquisas [Benchettara

et al., 2010b, Feyessa et al., 2011, Scellato et al., 2011] indicarem o uso de tecni-

cas de Aprendizado de Maquina como uma alternativa para a obtencao de melhores

resultados.

11

Page 27: Investigação de Predição de Fluxos em Redes de Computadores

2.2.1 Modelagem de Tarefas

Em problemas de PL e dada uma rede complexa representada por um grafo do

tipo G = (V,E), onde V e o conjunto de nos e E e o conjunto de arestas da rede.

Cada aresta em E e do tipo e = (u, v) e representa um par de nos (u, v), tal que u e

v fazem parte do conjunto de vertices V de G.

O metodo de modelagem adotado neste trabalho visa construir um conjunto de

dados para a tarefa de predicao conjunta de links novos e links que persistem. Ele

resulta em um conjunto formado por apenas duas categorias: links positivos e negati-

vos. Os links que se formam ou persistem sao chamados de links positivos, enquanto

os links que nao existem mais ou deixam de existir sao chamados de links negativos

A modelagem binaria, ou seja, a modelagem com apenas duas classes, e a forma pre-

dominante para a caracterizacao do problema de PL [Hasan et al., 2006, Benchettara

et al., 2010a, Sun et al., 2012].

Na Figura 2.2 sao ilustrados os metodos utilizados para a construcao dos conjun-

tos de dados de PL no tempo. Neste caso, dados exemplos descrevendo uma rede e

suas conexoes em um intervalo de tempo δt, deseja-se predizer o padrao de formacao

de conexoes em um instante posterior ∆t+σ. Na Figura 2.2, X representa o conjunto

de nos presentes na rede no intervalo ∆t. O conjunto U corresponde ao conjunto de

todas as arestas que poderiam existir entre os nos do grafo formado pelo conjunto

X. E Y representa o conjunto das arestas presentes na rede do intervalo seguinte.

Em X−Y estao os links deixam de existir porque nao existiam ou nao se formaram.

Na interseccao de X e Y estao os links que persistem com o tempo. E em Y − X

estao os novos links formados. Tem-se, entao, que:

• A Figura 2.2(a) representa a predicao de novos links;

• A Figura 2.2(b) representa a persistencia de links; e

12

Page 28: Investigação de Predição de Fluxos em Redes de Computadores

• A Figura 2.2(c) indica a abordagem que une as duas tarefas.

Figura 2.2: Diagramas de construcao do conjunto de dados para Predicao de Links.

A Tabela 2.1 apresenta o raciocınio utilizado para a composicao dos conjuntos de

aprendizado em cada tarefa de PL. Usando essas configuracoes e possıvel construir

um conjunto rotulado para treinamento das tecnicas de PL. Ele sera, entao, composto

por pares de nos e sua rotulacao sera apresentada a algum algoritmo de modelagem

para a construcao de um preditor. Esse preditor deve ser capaz de realizar predicoes

futuras de links existentes ou nao existente na rede.

Uma caracterıstica inerente da PL e o alto desbalanceamento na proporcao de

links positivos e links negativos [Shibata et al., 2012]. Um conjunto de dados e consi-

derado desbalanceado se cada classe nao esta representada de modo aproximado. Em

PL, a existencia de exemplos negativos e usualmente muito maior que de exemplos

positivos. Isso acontece porque, muitas vezes, as entidades da rede nao esbelecem

13

Page 29: Investigação de Predição de Fluxos em Redes de Computadores

Tabela 2.1: Raciocınio para a construcao dos conjuntos de aprendizado conforme a tarefade Predicao de Links.

Tarefa Conjunto de dados Positivos Negativos

Predicao de novos links U −X Y −X U − (X + Y )Persistencia de links X U ∩X X − (X ∩ Y )Abordagem conjunta U Y U − Y

conexoes de fato. Neste trabalho, o desbalanceamento e amenizado por meio meio do

mapeamento entre as rede de aplicacao e os modelos topologicos, que ainda contribui

para a eficacia da predicao.

2.2.2 Algoritmos de Predicao de Links

Os algoritmos tradicionais de PL sao preditores que atribuem um escore a cada um

dos pares de nos de um conjunto de dados, representando o grau com que cada aresta

entre eles pode ser formada. Os escores visam qualificar a topologia da rede ou indicar

a probabilidade de um determinado par de nos estar conectado. Para calcular essa

probabilidade, os algoritmos podem ser baseado em um dos tres seguintes metodos

[Lu e Zhou, 2011]:

• Baseado no grau do no: observa apenas a quantidade de conexoes que cada

no possui;

• Baseado na vizinhanca do no: calcula o escore com base na afinidade entre

as conexoes de cada no;

• Baseado no caminho entre nos: calcula o escore a partir de uma sequencia

consecutiva e nao repetida de vertices ligados por uma aresta que possam ser

percorridos.

14

Page 30: Investigação de Predição de Fluxos em Redes de Computadores

Em geral, diversos preditores sao experimentados a fim de investigar qual dentre

os selecionados alcanca o melhor desempenho. Neste trabalho sao adotados onze

preditores baseados em escores diferentes e usualmente mencionados na literatura

de PL [Lichtenwalter et al., 2010, Lu e Zhou, 2011, Silva-Junior e Lorena, 2013].

Nos algoritmos listados a seguir, Γ(u) define o conjunto de vizinhos do no u, ou

Γ(x) = {y | y ∈ V, (x, y) ∈ E}:

• Grau do No (g): e uma medida de centralidade que indica a popularidade

do no no grafo, podendo ser calculada como:

g(u) = |Γ(u)| (2.7)

• Caminho Mais Curto (CMC): corresponde a distancia geodesica entre os

nos. A medida representa o numero mınimo de arestas existentes em paths〈s〉u,v

que parte do no u e atinge o no v. Ela pode ser definida genericamente como:

CMC(u, v) = min{s | paths〈s〉u,v > 0

}(2.8)

• Vizinhos Comuns (CN): e uma das medidas mais importantes em PL. O

numero de vizinhos comuns informa a probabilidade de uma aresta ser formada

ou ser removida entre dois nos, e e definida como:

CN(u, v) = |Γ(u) ∩ Γ(v)| (2.9)

• Conexao Preferencial (PA): fornece a probabilidade de novos nos poderem

se conectar a cada vertice. Nas redes de aplicacao, indica a tendencia dos

15

Page 31: Investigação de Predição de Fluxos em Redes de Computadores

usuarios em terem mais conexoes no futuro. Pode ser definida como:

PA(u, v) = |Γ(u)| · |Γ(v)| (2.10)

• Indice de Jaccard (JAC): calcula a similaridade entre diferentes conjuntos

de amostras e definine o estado da ligacao entre dois nos. O ındice de Jaccard

expressa a forca de uma ligacao e pode ser definido como:

JAC(u, v) =|Γ(u) ∩ Γ(v)||Γ(u) ∪ Γ(v)|

(2.11)

• Coeficiente de Adamic/Adar (AA): define um escore de similaridade entre

dois nos por meio da ponderacao dos vizinhos comuns mais raros e com maior

peso. O coeficiente de Adamic/Adar informa o grau de exclusividade ou esta-

bilidade entre um vizinho comum e o par de nos sendo analisado. A medida e

definida como:

AA(u, v) =∑

w ∈ Γ(u)∩Γ(v)

1

log |Γ(w)|(2.12)

• Indice de Alocacao de Recursos (RAI): e um ındice de similaridade moti-

vado pela alocacao dinamica de recursos em redes complexas. Dados dois nos

nao conectados, seus vizinhos comuns atuam como transmissores de recursos

entre esses dois nos. Cada um dos transmissores distribui igualmente entre

os vizinhos seus recursos disponıveis [Lu e Zhou, 2011]. A medida pode ser

calculada do seguinte modo:

RAI(u, v) =∑

w ∈ Γ(u)∩Γ(v)

1

|Γ(w)|(2.13)

16

Page 32: Investigação de Predição de Fluxos em Redes de Computadores

• Medida Katz (KZ): e uma medida de centralidade de redes que aprimora

o calculo do caminho mais curto entre dois nos. A medida realiza a soma

direta ponderada de todos os caminhos entre os nos e e computada pelo calculo

da equacao 2.14, onde paths〈l〉x,y designa o conjunto de todos os caminhos de

tamanho l entre o no u e o no v. O parametro β colabora para o calculo dos

caminhos. A medida Katz e expressa como:

KZ(u, v) =∞∑l=1

βl · |paths〈l〉u,v| (2.14)

• Indice do Hub Promovido (HPI): e um ındice que quantifica as sobreposi-

coes topologicas dos pares de nos em conjuntos de amostras. Ele verifica se as

conexoes adjacentes aos hubs sao suscetıveis a receber altos escores, uma vez

que o denominador da equacao e determinado pelo menor grau entre os nos. O

HPI e calculado como:

HPI(u, v) =|Γ(u) ∩ Γ(v)|

min {|Γ(u)|, |Γ(v)|}(2.15)

• Indice do Hub Deprimido (HDI): e um ındice oposto ao HPI. Ele e utili-

zado neste trabalho para medir o valor das conexoes de valor oposto ao HPI,

auxiliando-as em sua formacao.

HDI(u, v) =|Γ(u) ∩ Γ(v)|

max {|Γ(u)|, |Γ(v)|}(2.16)

• PropFlow (PF): considerado o estado-da-arte entre os metodos baseados em

caminho, o PropFlow calcula a probabilidade de existir um passeio aleatorio

restrito path de u para v com uma quantidade maxima de passos, usando pesos

17

Page 33: Investigação de Predição de Fluxos em Redes de Computadores

nos links como probabilidades de transicao. Pode ser expressa como:

PF (u, v) =∞∑

path∈P

|path|−1∏x=1

(f(pathx, pathx+1)

c(pathx)

) (2.17)

Neste trabalho, os algoritmos apresentados sao utilizados como preditores de ma-

neira independente, como tradicionalmente e feito em PL, e tambem como atributos

de entrada para os algoritmos de AM supervisionado adotados.

2.3 Redes Definidas por Software

Embora este trabalho nao se proponha a resolver o problema existente em SDN

apresentado no Capıtulo 1, mas apenas a orientar a uma das diversas solucoes pos-

sıveis, e relevante descrever alguns dos aspectos fundamentais desse novo paradigma

para melhor compreensao das motivacoes do trabalho.

SDN emerge no cenario atual ante as dificuldades das redes tradicionais. O cres-

cimento no volume de dados, os servicos baseados em nuvem, a dinamicidade da

computacao e a complexidade dos servicos sao algumas das limitacoes que as ar-

quiteturas de redes atuais vem enfrentando [ONF, 2012]. A necessidade de um novo

paradigma como SDN parece ser a solucao mais eficaz para lidar com esses problemas.

Em geral, as arquiteturas de redes sao formadas por dois componentes principais

[Yang et al., 2004]: um plano de controle e um plano de dados. O plano de controle

e responsavel pela configuracao dos nos existentes na rede e pela programacao dos

caminhos a serem usados pelos fluxos de dados. O plano de dados e responsavel

pelo encaminhamento dos dados, que sao originados pelo trafego das informacoes

nas aplicacoes. Tradicionalmente, o plano de controle e combinado com o plano de

18

Page 34: Investigação de Predição de Fluxos em Redes de Computadores

dados, sendo ambos alocados em um no da rede. Nos paradigmas em que isso ocorre,

o plano de controle e tambem responsavel pela configuracao do no.

Figura 2.3: Arquitetura geral de SDN.

Um problema existente nesse formato e a complexidade da manutencao dos ca-

minhos uma vez definida a polıtica de encaminhamento de dados [Sezer et al., 2013].

SDN resolve esse problema com a divisao dos planos, separando-os logicamente e

utilizando um controlador centralizado que se torna responsavel pelas operacoes que

acontecem na rede. Esse controlador manipula os dispositivos de rede e possui uma

visao global do estado da rede, alem de fornecer alta abstracao para o desenvolvedor

das aplicacoes.

A divisao de planos e a utilizacao de um controlador centralizado sao as prin-

cipais caracterısticas [Feamster et al., 2013] da arquitetura SDN. Uma arquitetura

geral desse novo paradigma pode ser ilustrada como na Figura 2.3, que apresenta os

19

Page 35: Investigação de Predição de Fluxos em Redes de Computadores

principais componentes de rede em camadas. A primeira camada e a infraestrutura,

que agrega os dispositivos de rede, como os roteadores e os switches. A camada in-

termediaria e composta pelos controladores, que obtem informacoes dos dispositivos

de rede para configurar os fluxos. A ultima camada e constituıda pelas aplicacoes

que atuam na rede.

Um desafio presente na area e a necessidade de minimizar a quantidade de consul-

tas enviadas pelo switch. Essas consultas produzem um atraso no estabelecimento da

comunicacao e ainda geram sobrecarga no controlador. Uma maneira de tratar esse

problema e fazer com que o controlador realize predicoes de trafego e instale anteci-

padamente os fluxos nos switches, autorizando a comunicacao antes que o primeiro

pacote do fluxo chegue. Como toda predicao e um indicador de probabilidades que

acontecem no futuro, ou seja, apresenta elementos incertos, uma certa quantidade de

fluxos poderia ser instalada e nunca utilizada. Essa situacao gera um trade-off entre

a quantidade de requisicoes enviadas ao controlador e a quantidade de memoria do

switch ocupada pelos fluxos nao concretizados. Neste caso, a predicao seria justifi-

cada se, apesar da perda de memoria, ainda houver benefıcios em termos de reducao

de requisicoes ao controlador.

Neste trabalho sao utilizados os conceitos de SDN apresentados como motivacao

para a investigacao do problema de predicao de fluxos em redes de computadores.

2.4 Aprendizado de Maquina

O aumento da complexidade de problemas tratados computacionalmente e o cres-

cente volume de dados gerados a partir de diferentes setores exigiram a existencia

de ferramentas computacionais mais sofisticadas. Com o surgimento da Inteligencia

Artificial (IA) moderna na decada de 70, novas tecnicas foram desenvolvidas. Essas

20

Page 36: Investigação de Predição de Fluxos em Redes de Computadores

tecnicas analisavam inicialmente o problema e tinham como objetivo criar hipoteses

a partir de experiencias passadas para soluciona-lo. Em IA, essa inducao de hipote-

ses a partir de experiencias passadas ficou conhecida como Aprendizado de Maquina

[Faceli et al., 2011].

Dado um conjunto de dados com informacoes passadas, as tecnicas de AM buscam

a solucao de um problema por meio de um processo indutivo, em que conclusoes

genericas sao inferidas a partir de situacoes particulares. Um algoritmo de AM que

induz hipoteses se utiliza de um conjunto de dados em que cada elemento incluso

descreve um exemplo contendo atributos que qualificam as caracterısticas especıficas

do conjunto.

A inducao de hipoteses e um processo que pode ser obtido por meio de tarefas

preditivas ou descritivas. As tarefas preditivas tem por meta encontrar uma hipotese

a partir dos valores dos atributos dos dados de treinamento. Em geral, os algorit-

mos dessa categoria pertencem ao paradigma supervisionado. Nesse paradigma, o

algoritmo aprende a hipotese a partir de um conjunto de dados pre-classificados para

utiliza-la em casos futuros. Nas hipoteses obtidas por meio das tarefas descritivas,

os algoritmos seguem o paradigma nao-supervisionado, que agrupa os dados que nao

sao classificados para encontrar padroes. A partir dessa busca de padroes, as tarefas

descritivas exploram ou descrevem o conjunto de dados [Faceli et al., 2011].

Este trabalho utilizadas tecnicas do paradigma supervisionado para atingir os

objetivos descritos no Capıtulo 1. Nas tarefas supervisionadas, a etapa de inducao e

denominada treinamento e consiste no aprendizado de uma hipotese que relacione os

atributos de entrada de um exemplo com seu respectivo atributo de saıda, chamado

rotulo. Quando o algoritmo aprende uma hipotese valida tambem para os dados

fora do subconjunto de treinamento, diz-se que essa hipotese possui capacidade de

generalizacao. Este trabalho utiliza quatro algoritmos de AM para inferir hipoteses

21

Page 37: Investigação de Predição de Fluxos em Redes de Computadores

sobre os conjuntos gerados a partir das redes de aplicacao. Cada um dos seguintes

algoritmos foi escolhido com base nas aplicacoes realizadas de PL [Hasan et al.,

2006, Shibata et al., 2012] e em experimentos passados [Silva-Junior et al., 2013]:

• Algoritmo C5.0: o algoritmo C5.0 e a versao atual do conhecido algoritmo

C4.5 [Quinlan, 1993], uma tecnica de AM que infere hipoteses construindo

modelos de arvores de decisao. A arvore de decisao gerada pelo C5.0 e um

grafo acıclico direcionado, em que cada no da arvore e um no folha ou um

no de divisao. Os nos folha sao rotulados com uma funcao, indicando uma

classificacao. No caso abordado neste trabalho, o no folha indica se um link e

positivo ou negativo. Por outro lado, os nos de divisao sao aqueles que agregam

testes condicionais, baseados nos valores dos atributos dos exemplos;

• Maquinas de Vetores de Suporte (do ingles, Support Vector Machi-

nes (SVM)): as SVMs sao baseadas na Teoria do Aprendizado Estatıstico

[Vapnik, 1995], que determina um conjunto de princıpios para a obtencao de

classificadores com boa capacidade de generalizacao. Neste trabalho e empre-

gada uma SVM linear, que procura um hiperplano linear capaz de separar os

dados de duas classes com erro mınimo e margem de separacao maxima;

• Naıve Bayes: e um dos metodos probabilısticos mais simples em AM. O

naıve Bayes e baseado no teorema de Bayes sobre probabilidades condicionais

e assume que os atributos de entrada do conjunto de dados sao independentes

entre si;

• Algoritmo dos k-Vizinhos Mais Proximos (k-NN): no k -NN, cada re-

gistro e representado como um ponto em um espaco de entrada, sendo possıvel

calcular a distancia entre dois pontos. Usualmente a distancia euclidiana e

22

Page 38: Investigação de Predição de Fluxos em Redes de Computadores

usada para esse calculo. Na fase de treinamento, o algoritmo memoriza os

exemplos de treinamento rotulados. Para obter previsoes, e feito o calculo da

distancia entre o vetor de atributos do exemplo nao rotulado e cada exemplo

presente no conjunto de treinamento. Os exemplos mais proximos fornecem a

previsao final. O k -NN e um dos algoritmos mais simples em AM.

Cada um dos algoritmos apresentados dispoe de uma serie de parametros que po-

dem ser configurados. A parametrizacao de cada um deles e apresentada no Capıtulo

3.

23

Page 39: Investigação de Predição de Fluxos em Redes de Computadores

Capıtulo 3

PREDICAO DE FLUXOS EM

REDES DE COMPUTADORES

Neste capıtulo e apresentada a metodologia proposta neste trabalho para o ma-

peamento das redes logicas sobre as redes fısicas. A PL e realizada no resultado desse

mapeamento. Tambem e apresentado o procedimento experimental adotado na rea-

lizacao dos experimentos deste trabalho, cujos resultados sao discutidos no Capıtulo

4.

3.1 Metodologia

A metodologia descreve os metodos empregados no trabalho para a avaliacao dos

modelos preditivos gerados a instalacao dos fluxos em redes de computadores. Foram

testadas duas categorias de preditores: algoritmos tradicionais de PL e tecnicas de

AM supervisionado. Outras caracterısticas importantes para a elaboracao da meto-

dologia incluem a aplicacao de uma modelagem conjunta para a predicao de novos

24

Page 40: Investigação de Predição de Fluxos em Redes de Computadores

fluxos e de fluxos que persistem e ainda um metodo de mapeamento entre a rede

de aplicacao e a rede fısica. A metodologia adotada e ilustrada na Figura 3.1, que

descreve os procedimentos executados:

• Gerenciamento de Dados: consiste no pre-processamento dos dados e na

geracao das redes complexas;

• Mapeamento: compreende o processo de mapeamento das redes logicas e,

consequentemente, a modelagem previa a predicao; e

• Predicao: consiste na predicao de links pelos preditores e na avaliacao dos

resultados obtidos nessa tarefa.

Figura 3.1: Metodologia experimental.

25

Page 41: Investigação de Predição de Fluxos em Redes de Computadores

As secoes seguintes detalham cada um desses procedimentos e as tarefas envolvi-

das em cada um deles.

3.2 Gerenciamento de Dados

Nesta etapa foram coletados e organizados todos os dados necessarios para a re-

alizacao dos experimentos. Inicialmente foram coletados dados para a formacao das

redes de aplicacao. Para a modelagem das redes fısicas foram gerados modelos topo-

logicos baseados na Teoria de Redes Complexas. As subsecoes seguintes descrevem

esse procedimentos.

3.2.1 Dados das Redes de Aplicacao

Para representar as informacoes das redes de aplicacao foram utilizados dados

de uma rede P2P e de uma rede de e-mails. Esses tipos de redes sao comumente

responsaveis pela geracao de trafegos de redes de computadores. Os dados de ambas

as redes representam situacoes reais.

Os dados da rede P2P foram coletados a partir das informacoes disponıveis na

base de dados Can-O-Sleep [Fast et al., 2005], que foram recolhidas de um servidor

OpenNap entre fevereiro e maio de 2003. A base de dados possui registros de todas

as transferencias de arquivos entre os usuarios da rede P2P Gnutella naquele perıodo

e ela esta disponıvel publicamente no formato XML.

A base Can-o-Sleep e composta por dados registrados entre 80 dias. No entanto,

verificou-se que apenas 10 dias apresentam registros completos ao longo de 24 horas.

Observou-se ainda que a maior parte dos dias dentre os 10 dias apresentados nao

possui um sucessor ou antecessor com registros completos, o que pode impossibi-

26

Page 42: Investigação de Predição de Fluxos em Redes de Computadores

litar para uma predicao de ligacoes mais acurada. Assim, optou-se por selecionar

apenas os dois dias de numeros na sequencia (60/61 e 68/69) que apresentaram, ao

menos, um dia posterior de registros, para gerar redes complexas. Todos os dias

selecionados foram pre-processados para permitir a geracao de diversos conjuntos de

dados representando diferentes instantes da rede. Esses conjuntos sao chamados de

snapshots. Em seguida, gerou-se as redes complexas para cada um dos conjuntos

de dados. Cada uma das redes e um grafo orientado, em que os nos representam

os peers e as arestas representam a transferencia de arquivos entre os usuarios da

rede. Por fim, escolheu-se a rede com maior densidade (dia 69) para ser utilizada nos

experimentos.

Para a composicao dos dados da rede de e-mails foram utilizadas as informacoes

do conhecido corpus Enron [Klimt e Yang, 2004], que contem comunicacoes de e-

mails corporativos dessa empresa desde 1979. Os dados do corpus foram inicialmente

pre-processados, resultando em um grafo orientado, em que os nos representam os

usuarios de e-mails e as arestas representam o envio de e-mails entre esses usuarios.

Para os experimentos foram selecionados apenas os ultimos 4 anos, que condensam

as informacoes mais atualizadas sobre a troca de e-mails entre os usuarios da rede.

Tanto nas redes P2P modeladas quanto na rede de e-mails foi incluıdo um atri-

buto, procedente das bases de dados originais, para auxiliar a predicao conforme o

paradigma supervisionado. Esse atributo consiste em um timestamp [ISO, 2004] que

registra a ocorrencia temporal de cada evento. Na rede P2P, o evento corresponde

ao instante em que um arquivo foi transferido. Na rede de e-mails, o evento e a data

de envio do e-mail.

Por fim, a Tabela 3.1 mostra algumas caracterısticas das redes modeladas: os

numeros de nos e arestas, o grau medio total, o diametro e a densindade da rede,

e os coeficientes de assortatividade e medio de agrupamento. Os valores maiores de

27

Page 43: Investigação de Predição de Fluxos em Redes de Computadores

Tabela 3.1: Caracterısticas das redes

Rede P2P Rede de E-mails

Nos 1097 144Arestas 3679 1311Grau Medio Total 6,707 9,104Diametro 9 7Densidade 0,003 0,064Assortatividade -0,119 0,096Coef. Medio de Agrupamento 0,016 0,384

grau medio, densidade e quantidade de grupos da rede de e-mails mostram que as

informacoes topologicas dessa rede estao mais organizadas em relacao a rede P2P.

No entanto, a rede P2P apresenta um numero maior de informacoes, o que pode co-

laborar na acuracia predicao. As redes complexas modeladas de ambas as aplicacoes

estao disponıveis em [Silva-Junior, 2013].

3.2.2 Dados das Redes Fısicas

A segunda parte do gerenciamento de dados corresponde a geracao dos dados dos

modelos topologicos, que representam a rede fısica. Optou-se por gerar topologias

de tres diferentes modelos da ARC e utilizar um modelo sem topologia definida. Ao

contrario das redes geradas, o modelo sem topologia nao apresenta uma estrutura de

conexao. Nesse modelo, os vertices sao um conjunto previamente definido de nos,

enquanto que o conjunto de arestas e formado pelas conexoes existentes na rede de

aplicacao que foram mapeadas de acordo com uma determinada configuracao de nos.

Para todos os modelos foi adotada a mesma topologia, exceto pela quantidade

de nos (Nc = {10, 15, 25, 50, 100, 200}). Com excecao do modelo sem topologia,

os parametros de todas redes foram configurados para permitir a existencia de, ao

menos, uma aresta para cada no da rede. Assim, as rede foram geradas deste modo:

28

Page 44: Investigação de Predição de Fluxos em Redes de Computadores

• Rede Aleatoria: geracao de uma rede segundo o modelo Erdos-Renyi, com

25% de chance de um no formar arestas (p = 0, 25);

• Rede de Mundo Pequeno: geracao de uma rede conforme o modelo Watts-

Strogatz com grau medio igual a 2 e 25% de chances de um no formar arestas;

• Rede Sem Escala: utilizacao do modelo Barabasi-Albert com conexao prefe-

rencial linear.

3.3 Mapeamento

Uma das principais contribuicoes deste trabalho e o metodo de mapeamento entre

a rede de aplicacao e a rede fısica. O metodo consiste na associacao dos nos e das

arestas entre ambas as redes e resulta em um conjunto de pares de nos, que e com-

preendido neste trabalho como um modelo de trafego de informacoes. As principais

vantagens do mapeamento sao a amenizacao do desbalanceamento natural existente

em PL e a possibilidade de verificacao de influencias entre duas redes complexas.

Antes do metodo ser aplicado, as redes de aplicacao geradas foram divididas para

se ajustarem ao procedimento usual em PL, descrito no Capıtulo 2.2. Os dados de

cada uma das redes foram, entao, divididos em dois subconjuntos nao-sobrepostos,

chamados de subconjunto de treinamento X e subconjunto de avaliacao Y . Para a

rede P2P, os subconjuntos foram divididos igualmente, ficando com dados de 12 horas

cada um deles. Para a rede de e-mails, o subconjunto de treinamento abrangeu os

tres primeiros anos (1998-2000), enquanto subconjunto de avaliacao ficou apenas com

o ultimo ano (2001). Primeiramente, os pares de nos presentes na rede de avaliacao

mas ausentes na rede de treinamento foram eliminados. Esse processo visou adequar

29

Page 45: Investigação de Predição de Fluxos em Redes de Computadores

a predicao de links a predicao que sera realizada para a rede mapeada, chamada de

predicao de fluxos.

Formalmente, o mapeamento consiste na distribuicao uniforme e aleatoria dos

nos de uma rede GA para uma rede nao orientada GF . Cada no presente na rede

GA corresponde a um no da rede GF . Esse procedimento resulta em um conjunto

com|VGF |·(|VGF |−1)

2pares de nos, onde VGF

e o conjunto de nos da rede GF . Os nos

associados podem se repetir caso a quantidade de nos em GF seja menor que em GA.

Alem disso, a distribuicao uniforme e adotada a fim de manter a distribuicao das

informacoes originais da rede de aplicacao. Esse procedimento tambem mantem na

nova rede a formacao de conexoes da rede de aplicacao.

A primeira etapa do metodo e o mapeamento da rede de aplicacao completa, que

fornece os nos que centralizam e emitem os fluxos de dados. Todos os nos da rede de

aplicacao sao distribuıdos de maneira uniforme e aleatoria a cada um dos nos da rede

fısica. Em seguida sao mapeados os subconjuntos de treinamento e avaliacao, que

fornecem as conexoes e representam a existencia ou nao dos fluxos. Para exemplificar,

considerar uma rede de aplicacao GA com 500 nos e 600 arestas, e uma rede fısica

GF com 100 nos. O mapeamento consiste em associar cada no de GA a um dos 100

possıveis nos de GF .

A Figura 3.2 ilustra o procedimento adotado, onde P1 a P6 sao os nos da rede de

aplicacao e S1 a S4 sao os nos da rede fısica. Na pratica, os nos PN podem designar

computadores pessoais e os nos SN podem representar switches de borda. O seguinte

mapeamento aleatorio foi, entao, realizado: P1 e P3 foram conectados a S4, P4 e P5

a S1, P2 a S2 e P6 a S3. Na Figura 3.2(b), a comunicacao entre P1 e P6, por exemplo,

gerara os seguintes fluxos na rede da Figura 3.2(a): P1 transmite a informacao a S4,

que solicita, entao, ao controlador SDN que instale um fluxo para S3. Esse no fısico

encontra o no P6 conectado a ele e transmite a informacao a esse no.

30

Page 46: Investigação de Predição de Fluxos em Redes de Computadores

Figura 3.2: Ilustracao do processo de mapeamento.

31

Page 47: Investigação de Predição de Fluxos em Redes de Computadores

Independentemente da topologia adotada, o mapeamento e capaz de gerar con-

juntos com a mesma quantidade total de exemplos, incluindo o mesmo numero de

links positivos e negativos, para o calculo das probabilidades de predicao de fluxos.

As Tabelas 3.2 e 3.3 apresentam, respectivamente, a quantidade de exemplos nos

conjuntos gerados a partir da rede P2P e de e-mails. Para ambas as redes, a quan-

tidade de links negativos existentes cresce a medida que o numero de nos aumenta,

mostrando o desbalanceamento dos conjuntos. Observa-se tambem que nem sempre

o conjunto de dados a ser empregado nos experimentos de predicao tera a quanti-

dade maxima de exemplos disponıveis. Isso porque o mapeamento restrige-se aos

nos da rede de treinamento, que pode ter menos exemplos que a rede de avaliacao e

ocasionar na perda de algumas conexoes.

Tabela 3.2: Caracterizacao do conjunto de dados para a rede P2P.

Nos Max. Exemplos Exemplos Positivos Negativos

10 45 45 44 (97,78%) 1 (2,22%)15 105 105 91 (86,67%) 14 (13,33%)25 300 300 171 (57%) 129 (43%)50 1225 1225 243 (19,84%) 982 (80,16%)100 4950 4851 326 (6,72%) 4525 (93,28%)200 19900 14365 305 (2,12%) 14060 (97,88%)

Tabela 3.3: Caracterizacao do conjunto de dados para a rede de e-mails.

Nos Max. Exemplos Exemplos Positivos Negativos

10 45 45 45 (100%) 0 (0%)15 105 105 76 (72,38%) 29 (13,33%)25 300 300 29 (9,67%) 271 (90,33%)50 1225 1081 258 (23,86%) 823 (76,13%)100 4950 2926 300 (10,25%) 2626 (89,75%)200 19900 5151 330 (6,41%) 4821 (93,59%)

32

Page 48: Investigação de Predição de Fluxos em Redes de Computadores

As tabelas tambem mostram um alto desbalanceamento entre links positivos e

negativos. Na rede P2P, a quantidade de positivos decai com o aumento no numero

de nos (Nc). O melhor balanceamento ocorre nos modelos com Nc = 25. Na rede de

e-mails, ao contrario, a majoritariedade do numero de links positivos e dependente

de Nc. O balanceamento menos favoravel a predicao ocorre no modelo com Nc = 10,

onde nao ha nenhum link negativo que sirva como exemplo contrario a formacao de

links. As melhores situacoes ocorrem nos modelos em Nc = {15, 50}.

Porem, observa-se tambem que o modelo com 10 nos possui apenas 1 registro na

rede P2P e nenhum registro na rede de e-mails. Por falta de exemplos, os conjuntos de

dados desse modelo foram descartados. Alguns experimentos previos nos conjuntos

com 15 nos mostraram tambem que essa caracterizacao nao gera hipoteses por falta

de exemplos contrarios necessarios a predicao. Esse motivo ocasionou o descarte dos

conjuntos com 15 nos.

3.4 Predicao

A etapa de predicao compreende a aplicacao dos algoritmos, suas configuracoes

e os metodos de analise de resultados. Esta secao descreve os metodos empregados

para a etapa de predicao.

3.4.1 Selecao e Configuracao de Algoritmos

Este trabalho utiliza duas categorias de algoritmos para a predicao de links: algo-

ritmos tradicionais de PL e tecnicas de AM. Neste trabalho foram usados os seguintes

algoritmos tradicionais de PL:

33

Page 49: Investigação de Predição de Fluxos em Redes de Computadores

• Baseados no grau do no: Grau do No de Entrada, Grau do No de Saıda,

Conexao Preferencial;

• Baseados na vizinhanca do no: Vizinhos Comuns, Indice de Jaccard, Co-

eficiente de Adamic/Adar, Indice de Alocacao de Recursos, Indice do Hub

Promovido e Indice do Hub Deprimido; e

• Baseados no caminho entre os nos: Caminho Mais Curto, Medida Katz e

PropFlow.

Todos os algoritmos que trabalham com o grau da rede foram configurados para

utilizar o grau de saıda do no. Para o calculo do caminho mais curto (CMC) foi em-

pregado o algoritmo de busca em largura, que procura pelo melhor resultado em uma

arvore transversal percorrendo-a em sentido pos-ordem [McConnell, 2008]. O algo-

ritmo Katz foi parametrizado com l = 5 e α = 0, 05. O PropFlow foi parametrizado

para ter, no maximo, 5 passos aleatorios.

Entre os algoritmos de AM supervisionado empregados estao o C4.5, a SVM, o

naıve Bayes e o k -NN. Dentre esses, apenas a SVM e o k -NN tiveram seus parametros

alterados em relacao a opcao padrao da ferramenta R [R Core Team, 2013]. O

algoritmo SVM foi ajustado para ser uma SVM com kernel linear. E para o algoritmo

k -NN foi adotado k = 1, baseando-se em experimentos anteriores [Silva-Junior et al.,

2013].

3.4.2 Avaliacao de Desempenho

A avaliacao de desempenho consiste em mensurar a precisao p de um determinado

preditor H. Esse preditor observa as conexoes de uma determinada rede em um

34

Page 50: Investigação de Predição de Fluxos em Redes de Computadores

instante de tempo ∆t e prediz as conexoes dessa mesma rede durante um instante

de tempo posterior ∆t+ σ.

Na avaliacao dos preditores, primeiramente amostrou-se o conjunto de dados se-

gundo alguma metodologia para a geracao de subconjuntos de treinamento e teste.

Geralmente as aplicacoes de PL adotam a validacao cruzada [Lu e Zhou, 2011], que

particiona o conjunto de dados em K subconjuntos de tamanho aproximadamente

igual. Enquanto os K−1 primeiros subconjuntos sao designados como um unico con-

junto de treinamento, o subconjunto restante e designado como conjunto de teste.

Esse processo e repetido K vezes, alternando o conjunto de teste. Este trabalho

adotou K = 10 para os experimentos.

Os escores presentes no conjunto de teste representam as probabilidades das co-

nexoes que se formaram ou se mantiveram. Segundo a metodologia usual em PL [Lu

e Zhou, 2011, Lichtnwalter e Chawla, 2012], a predicao consiste em obter um valor

das probabilidades calculadas e extrair o menor valor entre elas, que e chamado de

limiar. Esse valor indica a probabilidade mınima para que uma aresta se forme ou

se mantenha no grafo no instante futuro posterior. Em geral, o limiar e obtido por

meio do ranqueamento em ordem decrescente dos escores do conjunto de teste. Para

realizar a predicao, a abordagem usual confere o valor limiar com o escore de todos

os pares de nos do conjunto de treinamento, seguindo esta regra:

• Se o valor do limiar e menor ou igual ao valor do escore do par de nos, entao

esse par de nos e contabilizado como formado ou mantido;

• Senao, o par de nos e contabilizado como nao formado ou nao mantido;

Na segunda etapa da avaliacao de desempenho e realizado o calculo das metricas

de desempenho sobre os conjuntos de teste. As metricas empregadas na area visam

35

Page 51: Investigação de Predição de Fluxos em Redes de Computadores

calcular a quantidade de links que o preditor acerta em cada uma das classes. A

maior parte dos trabalhos em PL adota a curva ROC ou a sua area (AUC) [Fawcett,

2006] para avaliar os preditores [Silva-Junior e Lorena, 2013]. Alguns trabalhos

incluem tambem a medida escalar de precisao [Faceli et al., 2011], que fornece a

quantidade de links corretamente preditos. Mais recentemente as pesquisas tem

advogado [Lichtnwalter e Chawla, 2012] pelo uso da curva Precisao-Revocacao [Davis

e Goadrich, 2006], que fornece uma visao mais discriminante do desempenho do

preditor em contextos altamente desbalanceados, como e o caso dos conjuntos de

dados de PL.

Neste trabalho optou-se por adotar uma metrica escalar que permitisse analisar

graficamente o desempenho em relacao aos acertos e erros do preditor ao longo de

diferentes momentos da rede. Essa metrica deveria ainda focar-se nos links positivos,

que sao os de maior interesse. Assim, escolheu-se a medida F1 [Faceli et al., 2011],

que resulta em um valor escalar entre 0 e 1 e pode ser obtida por meio dos seguintes

calculos:

• Medida F1 (F1): e a media harmonica ponderada da precisao e da revocacao,

as quais possuem o mesmo grau de importancia no calculo da medida. Ela pode

ser expressa deste modo:

F1(H) = 2 · PR(H) ·RV (H)

PR(H) +RV (H)(3.1)

• Precisao (PR): e a razao entre os links positivos preditos corretamente e

todos os links preditos como positivos. E expresso pela seguinte formula:

PR(H) =|links preditos corretamente ∩ links preditos como positivos|

|links preditos como positivos|(3.2)

36

Page 52: Investigação de Predição de Fluxos em Redes de Computadores

• Revocacao (RV): e a razao entre os links positivos preditos corretamente e

todos os links positivos existentes. A revocacao e expressa pela formula:

RV (H) =|links preditos corretamente ∩ links positivos|

|links positivos|(3.3)

37

Page 53: Investigação de Predição de Fluxos em Redes de Computadores

Capıtulo 4

RESULTADOS

Neste capıtulo sao apresentados e discutidos os resultados dos experimentos reali-

zados para a predicao de fluxos em redes de computadores utilizando a metodologia.

As secoes seguintes descrevem os resultados para a rede P2P e a rede de e-mails,

assim como uma discussao a respeito da predicao de fluxos e algumas consideracoes

finais. Os resultados completos de todos os experimentos podem ser consultados no

Apendice A.

4.1 Resultados da Rede P2P

Esta secao apresenta os resultados dos algoritmos tradicionais de PL e das tecnicas

de AM adotadas para os experimentos na rede P2P.

4.1.1 Algoritmos de Predicao de Links Tradicionais

As Figuras 4.1 e 4.2 apresentam os resultados obtidos em cada um dos modelos

topologicos experimentados. Nas figuras e nas analises seguintes, os algoritmos foram

38

Page 54: Investigação de Predição de Fluxos em Redes de Computadores

categorizados de acordo com o metodo no qual eles sao desenvolvidos, conforme

explicado no Capıtulo 2.2: metodos baseados no grau do no, na vizinhanca do no ou

no caminho entre nos.

Figura 4.1: Desempenho dos algoritmos de PL nos modelos sem topologia e aleatoriopara a rede P2P.

Na rede sem topologia definida, os algoritmos baseados no grau do no (Graus do

no de entrada e saıda e Conexao Preferencial) comecaram apresentando os melhores

resultados, em termos de F1. Porem, o aumento no numero de nos (Nc) acabou

deteriorando o desempenho dos preditores. Os algoritmos baseados em vizinhanca

(Vizinhos Comuns, Jaccard, Adamic/Adar, RAI, HPI e HDI) sao os de mais fraco

desempenho em todas as variacoes de Nc. Essa situacao tambem acontece com

39

Page 55: Investigação de Predição de Fluxos em Redes de Computadores

Figura 4.2: Desempenho dos algoritmos de PL nos modelos de mundo pequeno e semescala para a rede P2P.

aqueles baseados em caminho (CMC, Katz e PropFlow), exceto pelo CMC, que

apresenta o melhor desempenho geral na rede e pouca deterioracao.

Na rede aleatoria, o algoritmo CMC nao apenas e o melhor entre os preditores

como e o de melhor estabilidade, pois seus resultados variam menos para diferentes

configuracoes de numeros de nos. Outros algoritmos similares, como o Katz e o

PropFlow, permanecem abaixo dos algoritmos de outras categorias. As medidas de

grau de no e os Vizinhos Comuns foram os preditores com melhor desempenho inicial

e com menor deterioracao para redes com mais nos.

Na rede de mundo pequeno observa-se que a situacao se altera. Embora o CMC

e os Vizinhos Comuns comecem apresentando bons resultados, o desempenho de

40

Page 56: Investigação de Predição de Fluxos em Redes de Computadores

ambos os preditores deteriora a medida que Nc cresce. Outra observacao nessa rede

e o desempenho maximo obtido em Nc = 200 pelo seguinte conjunto de preditores:

Vizinhos Comuns, Coeficientes de Jaccard e Adamic/Adar, RAI, HPI e HDI. Todos

esses preditores sao algoritmos baseados em vizinhanca.

Os resultados na rede sem escala aproximam-se dos resultados na rede de mundo

pequeno. As medidas de grau do no e os Vizinhos Comuns sao os que apresentam

melhor desempenho inicial. No entanto, observa-se que a partir deNc = 50 o conjunto

de preditores baseados em vizinhanca atinge desempenho maximo (F1 = 1, 0). Esse

desempenho e seguido ate Nc = 200, mostrando estabilidade na predicao.

4.1.2 Algoritmos de Aprendizado de Maquina

O desempenho das tecnicas de AM adotadas e ilustrado na Figura 4.3, que mostra,

a princıpio, baixa estabilidade dos algoritmos consoante as taxas F1 para redes com

numero crescente de nos. Em geral, a estabilidade dessas redes acontece quando o

desempenho obtido e nulo (F1 = 0, 0).

O modelo sem topologia e o unico que nao apresenta essas caracterısticas. A rede

sem topologia apresenta os melhores resultados em comparacao com as demais redes.

As tecnicas C5.0 e SVM mostram resultados bastante similares e foram aquelas com

os melhores resultados preditivos. O naıve Bayes mostra queda no desempenho com

o aumento do numero de nos, mas lenta deterioracao. O k -NN, ao contrario, mostra

uma rapida deterioracao apos Nc = 25, mas aumento da estabilidade e melhora de

resultados a partir de Nc = 50. Nas demais redes, o melhor desempenho e alcancado

em Nc = 25. Em outros momentos de Nc, o desempenho e inferior. De forma geral,

os desempenhos das tecnicas de AM foram melhores para redes pequenas.

41

Page 57: Investigação de Predição de Fluxos em Redes de Computadores

Figura 4.3: Desempenho dos algoritmos de AM para a rede P2P.

4.1.3 Discussao

A primeira observacao a respeito dos resultados apresentados corresponde a se-

lecao dos preditores. Observa-se que nem sempre um determinado preditor sera a

melhor opcao para cada valor de Nc. Por exemplo, o CMC e o melhor preditor na

rede de mundo pequeno entre os preditores de PL quando Nc = 25, mas se encon-

tra entre os piores quando Nc = 200. Essa observacao mostra que ha existencia de

influencias entre as redes mapeadas. Caso os preditores apresentassem resultados se-

melhantes em casos iguais, mostraria-se a nao existencia dessa influencia. Por essas

razoes considerou-se ainda avaliar o desempenho dos preditores por sua estabilidade

com o aumento dos tamanhos das redes e desempenhos maximo e nulo.

42

Page 58: Investigação de Predição de Fluxos em Redes de Computadores

Em uma outra analise ampla nota-se que nem todos os algoritmos tem seu desem-

penho alterado com o incremento deNc. Em certos casos, o desempenho e deteriorado

quando Nc e incrementado apenas uma vez, mas melhorado quando incrementado

novamente. Por exemplo, na rede sem escala, o desempenho do grau do no de destino

e deteriorado em Nc = 100, mas aperfeicoado em Nc = 200.

As redes sem topologia e aleatoria tem resultados semelhantes entre elas, assim

como as redes de mundo pequeno e sem escala. Desta forma, analisam-se dois gru-

pos. Nas redes do primeiro grupo, formadas pelas redes sem topologia e aleatoria,

destaca-se o algoritmo CMC, que nao sofreu influencias do desbalanceamento do con-

junto de dados. Ao contrario, o CMC e afetado negativamente apenas quando ha

o melhor balanceamento do conjunto, que e em Nc = 25. Observando as redes do

segundo grupo, formadas pelas redes de mundo pequeno e sem escala, nota-se que a

topologia das redes evolui e passa a ignorar informacoes que antes eram importan-

tes. Compreende-se isso melhor analisando a rede sem escala, onde os nos de um

determinado valor de Nc deixam de ser hubs quando Nc muda.

Nas redes do segundo grupo observou-se o destaque de um conjunto de preditores

em razao de seu desempenho maximo. Todos os preditores desse conjunto sao ba-

seados em vizinhanca. Deste modo, nota-se que os modelos topologicos desse grupo

fornecem boas informacoes a respeito da estrutura local do no. Por outro lado, nos

casos em que o desempenho nao e maximo, destacam-se os demais. Na rede de

mundo pequeno, o CMC volta a ser o melhor preditor, exceto em Nc = 200.

Com a aplicacao dos algoritmos de AM, os resultados mudaram na maior parte

das redes. A rede sem topologia e a que apresenta os melhores resultados e os menos

semelhantes em relacao as demais redes. Nela, as tecnicas de AM supervisionado

superaram sem dificuldades os algoritmos tradicionais. Nas demais redes, os resul-

tados aproximam-se. Os melhores desempenhos sao obtidos em Nc = 25 em razao

43

Page 59: Investigação de Predição de Fluxos em Redes de Computadores

da boa proporcionalidade entre links positivos e negativos no conjunto de dados. A

queda no desempenho apos esse valor de Nc pode ser solucionada por meio de tec-

nicas de pre-processamento para a correcao do desbalanceamento dos dados, como

mostrado em [Lichtenwalter et al., 2010, Silva-Junior et al., 2013]. Este trabalho, no

entanto, nao utiliza essas tecnicas para verificar o comportamento do mapeamento,

que, como observado inicialmente, ameniza a desproporcao entre exemplos positivos

e negativos.

Os algoritmos que melhor sustentaram a queda no desempenho, ou seja, com

deterioracao mais lenta para redes maiores, foram o naıve Bayes e o k -NN. Na rede

de mundo pequeno, por exemplo, o desempenho de ambos os algoritmos e bastante

superior em relacao aos demais nos intervalos centrais (Nc = {50, 100}). Por outro

lado, o C5.0 e a SVM sao aqueles com melhor desempenho nos casos balanceados,

mostrando que esses algoritmos sao mais sensıveis ao balanceamento de exemplos

para a predicao de fluxos.

4.2 Resultados da Rede de E-mails

Esta secao apresenta os resultados dos algoritmos tradicionais de PL e das tecnicas

de AM adotadas para os experimentos na rede de e-mails.

4.2.1 Algoritmos de Predicao de Links Tradicionais

As Figuras 4.4 e 4.5 apresentam os resultados obtidos a partir dos experimentos na

rede de e-mails. Assim como na rede P2P, uma comparacao inicial entre os modelos

mostra uma aproximacao entre as redes sem topologia e aleatoria e tambem entre as

redes de mundo pequeno e sem escala.

44

Page 60: Investigação de Predição de Fluxos em Redes de Computadores

Na rede sem topologia, apenas o algoritmo CMC destaca-se para a predicao de

fluxos, obtendo seu melhor desempenho em Nc = 50. Nos numeros de nos seguintes,

o CMC ainda e o preditor com o melhor resultado. No entanto, seu desempenho

aproxima-se dos demais em Nc = 25. Na rede aleatoria, o CMC continua como o

melhor algoritmo. Alem disso, ele apresenta melhor estabilidade, com mais de 70%

de acertos em 75% dos valores de Nc.

Figura 4.4: Desempenho dos algoritmos de PL nos modelos sem topologia e aleatoriopara a rede de e-mails.

Na rede de mundo pequeno, o CMC comeca em Nc = 25 com o melhor resultado.

Ele mantem-se deste modo ate Nc = 100, aproximando-se do grau do no de origem,

que cresce a medida que Nc e incrementado. No entanto, o conjunto de preditores

baseados em vizinhanca destacado na rede P2P tambem se destaca para a rede

45

Page 61: Investigação de Predição de Fluxos em Redes de Computadores

Figura 4.5: Desempenho dos algoritmos de PL nos modelos de mundo pequeno e semescala para a rede de e-mails.

de e-mails em Nc = 200. Esse conjunto tambem apresentou desempenho maximo

(F1 = 1, 0). A situacao se repete na rede sem escala, onde esse conjunto de preditores

alcanca maximo desempenho a partir de Nc = 100. O algoritmo CMC e as medidas

de grau nao figuram mais como bons preditores. A medida que Nc e incrementado,

o desempenho desses preditores decresce. Um algoritmo que tambem se destaca em

Nc = 200 e a medida Katz. Embora nao tenha atingido o desempenho maximo, ela

apresenta um resultado superior em comparacao aos demais, que acertaram menos

de 20% dos exemplos.

46

Page 62: Investigação de Predição de Fluxos em Redes de Computadores

4.2.2 Algoritmos de Aprendizado de Maquina

Os resultados usando as tecnicas de AM sao ilustrados na Figura 4.6. Uma

analise geral das redes mostra que os melhores resultados sao obtidos em Nc = 50.

Novamente, o desempenho tende a ser melhor em rede pequenas.

Figura 4.6: Desempenho dos algoritmos de AM para a rede de e-mails.

Observa-se ainda que a rede sem topologia definida tem os melhores desempenhos.

Com excecao da SVM, todas as tecnicas apresentaram bons resultados e regular

estabilidade. O naıve Bayes e o algoritmo com o desempenho mais elevado em 75%

dos valores de Nc. O k -NN tambem se destaca nessa rede por ser a tecnica mais

estavel ao apresentar maior constancia em seu desempenho ao longo da variacao no

numero de nos. A estabilidade do k -NN tambem e observada na rede aleatoria, que

47

Page 63: Investigação de Predição de Fluxos em Redes de Computadores

mostra valores constantes para o algoritmo. Apesar de as demais tecnicas atingirem o

desempenho nulo muito rapidamente, o k -NN mantem-se estavel e com desempenho

nao nulo em todas as variacoes de nos.

O algoritmo SVM apresentou desempenho nulo na maior parte das situacoes

(Nc = {25, 100, 200}), indicando que nao e uma boa tecnica para problemas de pre-

dicao de fluxos em conjuntos muito desbalanceados. Por outro lado, os demais algo-

ritmos mostraram-se menos sensıveis ao desbalanceamento. Em especial, destacou-se

o algoritmo naıve Bayes, que nao apenas obteve o melhor desempenho em 75% das

situacoes como apresentou a menor deterioracao de desempenho entre os algoritmos.

4.2.3 Discussao

A analise dos resultados para os algoritmos de PL pode ser dividida em dois

grupos: o primeiro, relacionado as redes sem topologia e aleatoria; o segundo, rela-

cionado as redes de mundo pequeno e sem escala. Em geral, os melhores preditores

em cada grupo apresentaram boa eficiencia para ambos os modelos do grupo.

Em uma analise especıfica, as redes do primeiro grupo apresentam o CMC como o

melhor dentre os algoritmos de PL. Essa escolha pode ser explicada pela simplicidade

do calculo empregado e pelo desconhecimento parcial sobre o desbalanceamento entre

links positivos e negativos, que nao e ignorado totalmente pelos demais preditores.

Essa explicacao so pode ser observada nas redes apresentadas, uma vez que ela nao

segue nas redes do segundo grupo.

Nas redes do segundo grupo, destacam-se principalmente o conjunto de predito-

res baseado em vizinhanca, que obtem desempenho maximo. Assim como na rede

P2P, compreende-se que os modelos favorecem a predicao em razao da formacao de

conexoes locais. Apesar de nao obterem desempenho maximo, outros algoritmos

48

Page 64: Investigação de Predição de Fluxos em Redes de Computadores

destacam-se pela estabilidade e melhora de resultados a medida que Nc cresce. Na

rede de mundo pequeno, os algoritmos mais simples, como as medidas de grau e os Vi-

zinhos Comuns, apresentam os melhores resultados. Assim, a eficacia de algoritmos

triviais [Zhou et al., 2009, Sarkar et al., 2011] e corroborada neste trabalho.

Em relacao aos algoritmos de AM, observa-se novamente que eles apresentam, em

geral, melhores resultados que os baselines usados tradicionalmente em PL. Contudo,

eles sao bastante afetados pelo desbalanceamento dos conjuntos de dados. Quanto

mais proporcional e o balanceamento, melhores sao os resultados. Um caso interes-

sante a ser analisado e o algoritmo k -NN nas redes de mundo pequeno e sem escala.

Em ambas as redes, os resultados foram obtidos a partir de conjuntos de dados com

quase 90% de links negativos (Nc = {25, 100}), ou seja, bastante desbalanceados.

Esse caso particular pode ser explicado em razao de o k -NN adaptar-se bem a mar-

gens de decisao irregulares [Hastie et al., 2009]. Isso significa que os exemplos dos

conjuntos nao sao facilmente categorizados, que e o caso dos conjuntos de predicao

de fluxos. De modo contrario, essa situacao se inverte na SVM linear adotada, que

so conseguiu discriminar as classes dos conjuntos balanceados.

4.3 Consideracoes Finais

Para alcancar os objetivos deste trabalho, os experimentos verificaram a eficien-

cia preditiva de diversos algoritmos em modelos topologicos usuais da ARC. Esses

modelos foram configurados com base em duas redes reais de aplicacao: uma rede

P2P e uma rede de e-mails. As duas redes de aplicacao forneceram informacoes a

respeito do trafego de dados em determinado momento, permitindo que esses dados

fossem utilizados pelos modelos topologicos como fluxos de redes de computadores.

49

Page 65: Investigação de Predição de Fluxos em Redes de Computadores

Os experimentos foram conduzidos separamente para cada rede de aplicacao, sendo

experimentadas diversas tecnicas tradicionais de PL e AM supervisionado.

Os resultados mostram que as tecnicas de AM sao, em geral, superiores as tecnicas

de PL, especialmente para redes menores. Embora a deterioracao do desempenho seja

mais rapida naquelas tecnicas, os preditores de PL ainda apresentaram desempenho

inferior na maior parte dos casos. Isso indica que, apesar da melhor estabilidade dos

baselines, e preferıvel a adocao das tecnicas de AM por apresentarem os melhores

desempenhos gerais.

Uma observacao a ser feita a respeito dos modelos topologicos e o bom desempe-

nho da maior parte dos preditores na rede sem topologia definida. Explica-se, entao,

que o bom desempenho e caracterizado pela proximidade entre a distribuicao das

informacoes da rede e a distribuicao real na rede de aplicacao utilizada. No entanto,

o modelo sem topologia pode nao representar fielmente uma situacao real, uma vez

que a sua topologia esta condicionada a topologia de uma unica rede superjacente.

Apesar de nao terem apresentado, de maneira geral, os melhores resultados, os mo-

delos de mundo pequeno e sem escala parecem estar mais proximos das situacoes

reais.

Os experimentos ainda visaram a comparacao entre os algoritmos de PL, entre

as tecnicas de AM adotadas e entre essas duas categorias de preditores. Na primeira

comparacao destacam-se dois algoritmos simples: o CMC e as medidas de grau do

no. Deste modo, conclui-se que a predicao de fluxos obtem bons resultados a partir

de tecnicas simples, sejam baseadas no grau, na vizinhanca ou no caminho do no.

Embora essa conclusao possa se opor ao desempenho maximo de algoritmos que nao

sao triviais, nota-se que esses algoritmos apresentaram bons resultados nas redes de

mundo pequeno e sem escala, que nao sao redes parcialmente aleatorias. Deste modo,

os algoritmos triviais representam melhor as caracterısticas da rede de aplicacao e,

50

Page 66: Investigação de Predição de Fluxos em Redes de Computadores

por conseguinte, das informacoes que nela trafegam. Tambem em AM observa-se que

o uso de tecnicas simples permite uma melhor predicao de fluxos. Entre elas, o k-NN

e o naıve Bayes foram os que apontaram os melhores resultados.

Ha casos em que os algoritmos tradicionais de PL sao mais vantajosos que as tecni-

cas de AM. Porem, este trabalho advoga pelo uso das tecnicas de AM supervisionado

para o problema da predicao de fluxos. Entre suas vantagens, estao a possibilidade de

abranger mais informacoes a respeito da rede a ser predita e a utilizacao dos rotulos

dos conjuntos de dados, que funcionam como avaliadores da predicao, e nao como

preditores agnosticos [Lichtenwalter et al., 2010].

Por fim, os experimentos mostraram que nem sempre um determinado preditor

apresentara resultados proximos para diferente tamanhos de uma determinada rede.

Deste modo, conclui-se que a rede fısica subjacente tambem influencia na predicao

de fluxos.

51

Page 67: Investigação de Predição de Fluxos em Redes de Computadores

Capıtulo 5

CONCLUSAO

Este capıtulo discute as conclusoes deste trabalho, que investiga o problema de

predicao de fluxos em redes de computadores, motivando-se em conceitos de SDN.

A solucao adotada para esse problema mapeia duas redes de aplicacao em quatro

modelos topologicos da Analise de Rede Complexas. Esse mapeamento consiste na

associacao de nos entre as duas rede que resulta em uma nova formacao topologica,

onde as arestas seguem ou nao um padrao pre-definido. Essa nova rede e, entao,

utilizada em uma modelagem de problemas de Predicao de Links que abrange duas

diferentes tarefas ao mesmo tempo: predicao de novos links e persistencia de links.

Nessa abordagem conjunta, diversas tecnicas de Predicao de Links sao empregadas

como baselines para a comparacao com tecnicas de Aprendizado de Maquina Super-

visionado. Os desempenhos obtidos de cada uma das tecnicas e calculado por meio

da metrica de desempenho F1, que enfatiza a precisao e revocacao na predicao dos

links formados. Os resultados sao comparados e uma discussao e realizada para duas

redes de aplicacao reais: P2P e de e-mails.

52

Page 68: Investigação de Predição de Fluxos em Redes de Computadores

As conclusoes mais gerais sao apresentadas neste capıtulo. Nas proximas secoes

sao apresentados os principais resultados obtidos, as contribuicoes do trabalho, suas

limitacoes e os trabalhos futuros.

5.1 Principais Resultados

O principal resultado obtido foi a corroboracao da influencia preditiva entre as

redes mapeadas. Os quatro modelos de redes complexas adotados para a rede fı-

sica mostraram que nem sempre um determinado preditor apresentara os mesmos

resultados em diferentes variacoes topologicas. Tanto os resultados preditivos dos

algoritmos tradicionais de Predicao de Links quanto das tecnicas de Aprendizado

de Maquina confirmaram essa influencia. Esse resultado mostra a importancia em

utilizar diferentes tecnicas para um problema de Predicao de Links.

Outros resultados importantes estao relacionados aos objetivos especıficos do tra-

balho. Para alcancar o objetivo principal, que e investigar a predicao de fluxos em

redes de computadores, elaborou-se inicialmente um metodo para mapear a rede de

aplicacao sobre a rede fısica, exemplificando uma situacao real. O metodo de mape-

amento tem como resultado uma uma rede que denota o trafego das informacoes da

rede de aplicacao na rede fısica subjacente. Desta forma, os experimentos conduzidos

levaram a principal conclusao obtida deste trabalho, que e a influencia preditiva dos

modelos topologicos nos resultados.

E tambem resultado deste trabalho a abordagem que une as predicoes das ligacoes

que se formam e das ligacoes que se mantem em uma mesma rede. Usualmente

essas predicoes sao realizadas separadamente. Contudo, essa abordagem conjunta

foi empregada neste trabalho, permitindo a inclusao de uma maior quantidade de

exemplos e, por conseguinte, de mais links a serem preditos.

53

Page 69: Investigação de Predição de Fluxos em Redes de Computadores

Como discutido, nenhum preditor obteve o melhor desempenho geral em todos os

casos. Observou-se, porem, que as tecnicas de Predicao de Links tradicionais se so-

bressaem em redes maiores. Por outro lado, observou-se tambem que os algoritmos

de Aprendizado de Maquina, apesar de serem mais sensıveis ao alto desbalancea-

mento dos conjuntos de dados, predisseram com maior precisao os fluxos da rede

que os baselines. Assim, este trabalho e obrigado a advogar pelo uso das tecnicas

supervisionadas na finalidade de uma melhor solucao para os problemas de predicao

de fluxos.

5.2 Contribuicoes e Limitacoes

A primeira contribuicao deste trabalho e a realizacao de uma revisao de literatura

em Predicao de Links que incluısse tecnicas de Aprendizado de Maquina supervisio-

nado entre as solucoes da area. A revisao identifica as metodologias de modelagem

usuais e os preditores tradicionalmente empregados no problema. O texto deste tra-

balho limita-se a descrever os principais metodos do arcabouco de Predicao de Links

que sustentam a predicao de fluxos em redes de computadores. Uma versao mais

detalhada dessa revisao pode ser lida em [Silva-Junior e Lorena, 2013].

O inter-relacionamento de conceitos de diversas areas tambem e uma contribuicao

importante deste trabalho. Os conceitos de Redes Definidas por Software, que sao

os principais motivadores da pesquisa, conduziram os todos experimentos. Nesses

experimentos foram selecionadas redes de aplicacao para serem modeladas como redes

complexas e, em seguida, empregadas nas abordagens de Predicao de Links. Os

resultados sao obtidos e comparados com aqueles obtidos por tecnicas de Aprendizado

de Maquina, uma area da Inteligencia Artificial. Esse conjunto de areas e diferentes

tecnicas que se relacionam mostra como os conceitos foram aplicados nesta pesquisa

54

Page 70: Investigação de Predição de Fluxos em Redes de Computadores

e podem colaborar para uma ciencia mais interdisciplinar, ampliando as teorias e

metodos que tem essa finalidade.

Uma importante contribuicao e a investigacao da predicao de fluxos realizada

em redes de computadores. Apesar deste trabalho nao apresentar uma aplicacao

concreta, ele contribui para as solucoes de predicao na area, que ainda sao incipientes.

O arcabouco deste trabalho ainda permite estender os experimentos as aplicacoes de

Redes Definidas por Software.

Outra contribuicao e o domınio de aplicacao adotado. Poucos trabalhos utilizam

redes de computadores como redes complexas. Com dificuldades, este trabalho co-

letou duas redes de aplicacao reais para os experimentos. Uma dessas redes (P2P)

foi formatada de maneira topologica e temporal e, junto com a rede de e-mails, se

encontra agora disponibilizada em [Silva-Junior, 2013] para pesquisas futuras.

Por fim, a aplicacao simultanea de duas categorias de predicao de links e uma

contribuicao relacionada a area de Predicao de Links. O metodo de modelagem

deste trabalho e empregado nos experimentos em razao da preferencia em se predizer

a formacao de ligacoes que se formam ou se mantem em redes de computadores. A

flexibilidade do metodo permite que ele seja estendido a outros domınios de aplicacao.

5.3 Trabalhos Futuros

O principal trabalho a ser realizado e a confirmacao pratica deste trabalho. Como

apresentado na secao anterior, este trabalho limitou-se a investigar a predicao de

fluxos por meio de redes complexas, sem analisar o comportamento da predicao em

redes de computadores reais. O primeiro passo a ser dado com este trabalho e uma

simulacao desse comportamento.

55

Page 71: Investigação de Predição de Fluxos em Redes de Computadores

Outro trabalho futuro e a experimentacao da abordagem conjunta em diferentes

conjunto de dados. Este trabalho emprega o metodo de modelagem apenas em

poucas redes e de um unico domınio, que sao as redes de computadores. Alem disso,

o metodo e assumido como melhor pratica, sem, no entanto, ter seu seu desempenho

comparado previamente com uma abordagem disjunta.

A partir desta pesquisa tambem podem ser experimentados outros algoritmos de

Aprendizado de Maquina. Um passo nessa direcao indica o uso de tecnicas semelhan-

tes ao k -NN ou ao naıve Bayes. A simplicidade desses algoritmos mostra um futuro

para a predicao de fluxos a partir de metodos simples. Tambem seria apropriado

realizar um pre-processamento nos dados de aplicacao para diminuir o desbalancea-

mento entre as classes. Esse tipo de pratica poderia levar a melhoras significativas

dos resultados alcancados por essas tecnicas triviais.

56

Page 72: Investigação de Predição de Fluxos em Redes de Computadores

Referencias

[Barabasi e Albert, 1999] Barabasi, A. L. e Albert, R. (1999). Emergence of scaling

in random networks. Science (New York, N.Y.), 286(5439):509–512. Citado em

[8].

[Benchettara et al., 2010a] Benchettara, N., Kanawati, R., e Rouveirol, C. (2010a).

Supervised machine learning applied to link prediction in bipartite social networks.

In Proceedings of the 2010 International Conference on Advances in Social

Networks Analysis and Mining, ASONAM ’10, p. 326–330, Washington, DC, USA.

IEEE Computer Society. Citado em [12].

[Benchettara et al., 2010b] Benchettara, N., Kanawati, R., e Rouveirol, C. (2010b).

A supervised machine learning link prediction approach for academic collaboration

recommendation. In Proceedings of the fourth ACM conference on Recommender

systems, RecSys ’10, p. 253–256, New York, NY, USA. ACM. Citado em [11].

[Davis e Goadrich, 2006] Davis, J. e Goadrich, M. (2006). The relationship between

precision-recall and roc curves. In Proceedings of the 23rd international conference

on Machine learning, ICML ’06, p. 233–240, New York, NY, USA. ACM. Citado

em [36].

57

Page 73: Investigação de Predição de Fluxos em Redes de Computadores

[Erdos e Renyi, 1959] Erdos, P. e Renyi, A. (1959). On random graphs, I. Publica-

tiones Mathematicae (Debrecen), 6:290–297. Citado em [7].

[Faceli et al., 2011] Faceli, K., Lorena, A. C., Gama, J., e de Carvalho, A. C. (2011).

Inteligencia Artificial: Uma Abordagem de Aprendizado de Maquina. LTC, Rio de

Janeiro. Citado em [21, 36].

[Fast et al., 2005] Fast, A., Jensen, D., e Levine, B. N. (2005). Creating social

networks to improve peer-to-peer networking. In Proceedings of the eleventh ACM

SIGKDD international conference on Knowledge discovery in data mining, KDD

’05, p. 568–573, New York, NY, USA. ACM. Citado em [26].

[Fawcett, 2006] Fawcett, T. (2006). An introduction to {ROC} analysis. Pattern

Recognition Letters, 27(8):861 – 874. {ROC} Analysis in Pattern Recognition.

Citado em [36].

[Feamster et al., 2013] Feamster, N., Rexford, J., e Zegura, E. (2013). The road to

sdn. Queue, 11(12):20. Citado em [19].

[Feyessa et al., 2011] Feyessa, T., Bikdash, M., e Lebby, G. (2011). Node-pair feature

extraction for link prediction. In Privacy, security, risk and trust (passat), 2011

ieee third international conference on and 2011 ieee third international conference

on social computing (socialcom), p. 1421 –1424. Citado em [11].

[Fire et al., 2011] Fire, M., Tenenboim, L., Lesser, O., Puzis, R., Rokach, L., e Elo-

vici, Y. (2011). Link prediction in social networks using computationally efficient

topological features. In Privacy, security, risk and trust (passat), 2011 ieee third

international conference on and 2011 ieee third international conference on social

computing (socialcom), p. 73 –80. Citado em [11].

58

Page 74: Investigação de Predição de Fluxos em Redes de Computadores

[Getoor e Diehl, 2005] Getoor, L. e Diehl, C. P. (2005). Link mining: a survey.

SIGKDD Explor. Newsl., 7(2):3–12. Citado em [11].

[Guedes et al., 2012] Guedes, D., Vieira, L., Vieira, M., Rodrigues, H., e Nunes,

R. V. (2012). Redes definidas por software: uma abordagem sistemica para o

desenvolvimento de pesquisas em redes de computadores. Minicursos do Simposio

Brasileiro de Redes de Computadores-SBRC 2012, 30(4):160–210. Citado em [2].

[Hasan et al., 2006] Hasan, M. A., Chaoji, V., Salem, S., e Zaki, M. (2006). Link

prediction using supervised learning. In In Proc. of SDM 06 workshop on Link

Analysis, Counterterrorism and Security. Citado em [11, 12, 22].

[Hastie et al., 2009] Hastie, T., Tibshirani, R., Friedman, J., Hastie, T., Friedman,

J., e Tibshirani, R. (2009). The elements of statistical learning. Number 1. Sprin-

ger. Citado em [49].

[ISO, 2004] ISO, I. (2004). 8601: 2004 data elements and interchange formatsinfor-

mation interchangerepresentation of dates and times. International Organisation

for Standardisation. Citado em [27].

[Klimt e Yang, 2004] Klimt, B. e Yang, Y. (2004). Introducing the Enron corpus. In

First Conference on Email and Anti-Spam (CEAS). Citado em [27].

[Lu e Zhou, 2011] Lu, L. e Zhou, T. (2011). Link prediction in complex networks: A

survey. Physica A: Statistical Mechanics and its Applications, 390(6):1150 – 1170.

Citado em [14, 15, 16, 35].

[Liben-Nowell e Kleinberg, 2007] Liben-Nowell, D. e Kleinberg, J. (2007). The link-

prediction problem for social networks. Journal of the American Society for In-

formation Science and Technology, 58(7):1019–1031. Citado em [3, 11].

59

Page 75: Investigação de Predição de Fluxos em Redes de Computadores

[Lichtenwalter et al., 2010] Lichtenwalter, R. N., Lussier, J. T., e Chawla, N. V.

(2010). New perspectives and methods in link prediction. In Proceedings of the

16th ACM SIGKDD international conference on Knowledge discovery and data

mining, KDD ’10, p. 243–252, New York, NY, USA. ACM. Citado em [15, 44, 51].

[Lichtnwalter e Chawla, 2012] Lichtnwalter, R. e Chawla, N. (2012). Link prediction:

Fair and effective evaluation. In Advances in Social Networks Analysis and Mining

(ASONAM), 2012 IEEE/ACM International Conference on, p. 376–383. Citado

em [35, 36].

[Lu et al., 2010] Lu, Z., Savas, B., Tang, W., e Dhillon, I. S. (2010). Supervised link

prediction using multiple sources. In Proceedings of the 2010 IEEE International

Conference on Data Mining, ICDM ’10, p. 923–928, Washington, DC, USA. IEEE

Computer Society. Citado em [11].

[McConnell, 2008] McConnell, J. J. (2008). Analysis of algorithms. Jones & Bartlett

Learning. Citado em [34].

[Montgomery et al., 2003] Montgomery, D. C., Runger, G. C., e Calado, V. (2003).

Estatıstica aplicada e probabilidade para engenheiros. Livros Tecnicos e Cientıficos.

Citado em [7].

[Newman, 2003] Newman, M. E. J. (2003). The structure and function of complex

networks. SIAM REVIEW, 45:167–256. Citado em [3, 6].

[Oliveira e Gama, 2012] Oliveira, M. e Gama, J. (2012). An overview of social

network analysis. Wiley Interdisciplinary Reviews: Data Mining and Knowledge

Discovery, 2(2):99–115. Citado em [9].

60

Page 76: Investigação de Predição de Fluxos em Redes de Computadores

[ONF, 2012] ONF (2012). Software-defined networking: The new norm for networks.

ONF White Paper. Palo Alto, US: Open Networking Foundation. Citado em [2,

18].

[Quinlan, 1993] Quinlan, J. R. (1993). C4.5: programs for machine learning. Morgan

Kaufmann Publishers Inc., San Francisco, CA, USA. Citado em [22].

[R Core Team, 2013] R Core Team (2013). R: A Language and Environment for

Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria.

Citado em [34].

[Sarkar et al., 2011] Sarkar, P., Chakrabarti, D., e Moore, A. W. (2011). Theoretical

justification of popular link prediction heuristics. In Proceedings of the Twenty-

Second International Joint Conference on Artificial Intelligence - Volume Volume

Three, IJCAI’11, p. 2722–2727. AAAI Press. Citado em [49].

[Scellato et al., 2011] Scellato, S., Noulas, A., e Mascolo, C. (2011). Exploiting place

features in link prediction on location-based social networks. In Proceedings of the

17th ACM SIGKDD international conference on Knowledge discovery and data

mining, KDD ’11, p. 1046–1054. ACM. Citado em [11].

[Sezer et al., 2013] Sezer, S., Scott-Hayward, S., Chouhan, P. K., Fraser, B., Lake,

D., Finnegan, J., Viljoen, N., Miller, M., e Rao, N. (2013). Are we ready for

sdn? implementation challenges for software-defined networks. Communications

Magazine, IEEE, 51(7). Citado em [2, 19].

[Shibata et al., 2012] Shibata, N., Kajikawa, Y., e Sakata, I. (2012). Link prediction

in citation networks. Journal of the American Society for Information Science and

Technology, 63(1):78–85. Citado em [13, 22].

61

Page 77: Investigação de Predição de Fluxos em Redes de Computadores

[Silva-Junior, 2013] Silva-Junior, O. (2013). http://sites.google.com/site/

orlandodasilvajr/data-sets. Citado em [28, 55].

[Silva-Junior e Lorena, 2013] Silva-Junior, O. e Lorena, A. C. (2013). Aprendizado

de maquina supervisionado na predicao de links em redes complexas - uma revi-

sao sistematica. Technical Report 01/2013, Universidade Federal do ABC, Santo

Andre, Brasil. Citado em [15, 36, 54].

[Silva-Junior et al., 2013] Silva-Junior, O., Lorena, A. C., e Kamienski, C. A. (2013).

Predicao de links em redes p2p. In Anais do I Simposio da Pos-graduacao da

Universidade Federal do ABC, Santo Andre, Brasil. Citado em [3, 22, 34, 44].

[Sun et al., 2012] Sun, Y., Han, J., Aggarwal, C. C., e Chawla, N. V. (2012). When

will it happen?: relationship prediction in heterogeneous information networks.

In Proceedings of the fifth ACM international conference on Web search and data

mining, WSDM ’12, p. 663–672, New York, NY, USA. ACM. Citado em [12].

[Vapnik, 1995] Vapnik, V. N. (1995). The Nature of Statistical Learning Theory.

Springer-Verlag New York, Inc., New York, NY, USA. Citado em [22].

[Wang et al., 2011] Wang, D., Pedreschi, D., Song, C., Giannotti, F., e Barabasi,

A.-L. (2011). Human mobility, social ties, and link prediction. In Proceedings

of the 17th ACM SIGKDD international conference on Knowledge discovery and

data mining, KDD ’11, p. 1100–1108, New York, NY, USA. ACM. Citado em [11].

[Watts e Strogatz, 1998] Watts, D. e Strogatz, S. (1998). Collective dynamics of

’small-world’ networks. Nature, p. 440–442. Citado em [7].

[Yang et al., 2004] Yang, L., Dantu, R., Anderson, T., e Gopal, R. (2004). Forwar-

ding and control element separation (forces) framework. Citado em [18].

62

Page 78: Investigação de Predição de Fluxos em Redes de Computadores

[Zhou et al., 2009] Zhou, T., Lu, L., e Zhang, Y.-C. (2009). Predicting missing links

via local information. The European Physical Journal B - Condensed Matter and

Complex Systems, 71(4):623–630. Citado em [49].

63

Page 79: Investigação de Predição de Fluxos em Redes de Computadores

Apendice A

RESULTADOS DOS

EXPERIMENTOS

A seguir sao apresentados os resultados de todos os experimentos realizados na

rede P2P e de e-mails. As tabelas apresentam o desempenho obtido por meio da

medida F1, sendo destacados os melhores desempenhos em cada conjunto de nos,

por topologia.

64

Page 80: Investigação de Predição de Fluxos em Redes de Computadores

Tabela A.1: Desempenho dos algoritmos de PL na rede P2P.

Nos Algoritmo Sem Topologia Aleatoria Mundo Pequeno Sem Escala

25

Gr. Entrada 0.247 0.240 0.193 0.157Gr. Saıda 0.280 0.323 0.187 0.237

CMC 0.177 0.110 0.447 0.153Viz. Comuns 0.120 0.250 0.403 0.217Conex. Pref. 0.160 0.100 0.160 0.123

Jaccard 0.103 0.107 0.170 0.120Adamic/Adar 0.100 0.100 0.223 0.123

RAI 0.100 0.107 0.223 0.123Katz 0.107 0.103 0.100 0.123HPI 0.113 0.107 0.230 0.180HDI 0.110 0.107 0.223 0.127

PropFlow 0.100 0.100 0.100 0.147

50

Gr. Entrada 0.144 0.181 0.131 0.117Gr. Saıda 0.117 0.106 0.149 0.226

CMC 0.621 0.738 0.265 0.192Viz. Comuns 0.106 0.215 0.214 0.149Conex. Pref. 0.107 0.103 0.100 0.103

Jaccard 0.101 0.103 0.122 0.104Adamic/Adar 0.100 0.100 0.131 0.149

RAI 0.100 0.100 0.131 0.149Katz 0.100 0.100 0.100 0.105HPI 0.100 0.109 0.105 0.123HDI 0.103 0.100 0.121 0.111

PropFlow 0.100 0.100 0.100 0.131

100

Gr. Entrada 0.103 0.114 0.148 0.108Gr. Saıda 0.123 0.126 0.114 0.209

CMC 0.282 0.750 0.185 0.218Viz. Comuns 0.149 0.152 0.104 1.000Conex. Pref. 0.101 0.103 0.116 0.112

Jaccard 0.102 0.102 0.102 1.000Adamic/Adar 0.100 0.100 0.104 1.000

RAI 0.100 0.100 0.104 1.000Katz 0.100 0.100 0.104 0.102HPI 0.132 0.100 0.101 1.000HDI 0.102 0.107 0.101 1.000

PropFlow 0.100 0.100 0.100 0.113

200

Gr. Entrada 0.119 0.136 0.304 0.106Gr. Saıda 0.111 0.135 0.119 0.261

CMC 0.159 0.748 0.132 0.150Viz. Comuns 0.294 0.125 1.000 1.000Conex. Pref. 0.101 0.101 0.150 0.148

Jaccard 0.108 0.101 1.000 1.000Adamic/Adar 0.106 0.100 1.000 1.000

RAI 0.106 0.100 1.000 1.000Katz 0.100 0.100 0.102 0.207HPI 0.135 0.101 1.000 1.000HDI 0.106 0.101 1.000 1.000

PropFlow 0.100 0.100 0.100 0.118

65

Page 81: Investigação de Predição de Fluxos em Redes de Computadores

Tabela A.2: Desempenho dos algoritmos de AM na rede P2P.

Nos Algoritmo Sem Topologia Aleatoria Mundo Pequeno Sem Escala

25

C5.0 0.788 0.623 0.665 0.673SVM 0.819 0.713 0.720 0.660

Naıve Bayes 0.759 0.565 0.682 0.546k-NN 0.677 0.560 0.642 0.618

50

C5.0 0.660 0.000 0.026 0.000SVM 0.709 0.000 0.000 0.000

Naıve Bayes 0.695 0.221 0.155 0.044k-NN 0.357 0.193 0.239 0.132

100

C5.0 0.771 0.000 0.000 0.000SVM 0.763 0.000 0.000 0.000

Naıve Bayes 0.670 0.000 0.090 0.120k-NN 0.351 0.069 0.081 0.038

200

C5.0 0.676 0.000 0.000 0.000SVM 0.705 0.000 0.000 0.000

Naıve Bayes 0.592 0.000 0.023 0.022k-NN 0.434 0.027 0.025 0.006

66

Page 82: Investigação de Predição de Fluxos em Redes de Computadores

Tabela A.3: Desempenho dos algoritmos de PL na rede de e-mails.

Nos Algoritmo Sem Topologia Aleatoria Mundo Pequeno Sem Escala

25

Gr. Entrada 0.113 0.240 0.193 0.157Gr. Saıda 0.133 0.323 0.187 0.237

CMC 0.140 0.110 0.447 0.153Viz. Comuns 0.113 0.250 0.403 0.217Conex. Pref. 0.103 0.100 0.160 0.123

Jaccard 0.100 0.107 0.170 0.120Adamic/Adar 0.100 0.100 0.223 0.123

RAI 0.100 0.107 0.223 0.123Katz 0.100 0.103 0.100 0.123HPI 0.100 0.107 0.230 0.180HDI 0.147 0.107 0.233 0.127

PropFlow 0.100 0.100 0.100 0.147

50

Gr. Entrada 0.118 0.200 0.147 0.125Gr. Saıda 0.116 0.112 0.151 0.222

CMC 0.564 0.734 0.254 0.206Viz. Comuns 0.116 0.224 0.216 0.143Conex. Pref. 0.101 0.111 0.108 0.101

Jaccard 0.101 0.109 0.117 0.105Adamic/Adar 0.100 0.101 0.131 0.143

RAI 0.100 0.100 0.131 0.143Katz 0.100 0.100 0.101 0.109HPI 0.110 0.114 0.106 0.117HDI 0.102 0.105 0.149 0.104

PropFlow 0.100 0.101 0.100 0.121

100

Gr. Entrada 0.117 0.118 0.192 0.209Gr. Saıda 0.127 0.116 0.146 0.210

CMC 0.196 0.752 0.198 0.183Viz. Comuns 0.110 0.144 0.103 1.000Conex. Pref. 0.101 0.100 0.110 0.103

Jaccard 0.101 0.101 0.101 1.000Adamic/Adar 0.100 0.100 0.103 1.000

RAI 0.100 0.100 0.103 1.000Katz 0.100 0.100 0.103 0.103HPI 0.100 0.105 0.102 1.000HDI 0.101 0.100 0.103 1.000

PropFlow 0.100 0.100 0.100 0.111

200

Gr. Entrada 0.111 0.118 0.291 0.108Gr. Saıda 0.127 0.116 0.116 0.154

CMC 0.304 0.752 0.115 0.143Viz. Comuns 0.116 0.144 1.000 1.000Conex. Pref. 0.103 0.101 0.127 0.127

Jaccard 0.101 0.101 1.000 1.000Adamic/Adar 0.100 0.100 1.000 1.000

RAI 0.100 0.100 1.000 1.000Katz 0.100 0.100 0.101 0.219HPI 0.101 0.105 1.000 1.000HDI 0.101 0.100 1.000 1.000

PropFlow 0.100 0.100 0.100 0.108

67

Page 83: Investigação de Predição de Fluxos em Redes de Computadores

Tabela A.4: Desempenho dos algoritmos de AM na rede de e-mails.

Nos Algoritmo Sem Topologia Aleatoria Mundo Pequeno Sem Escala

25

C5.0 0.120 0.000 0.074 0.000SVM 0.000 0.000 0.000 0.000

Naıve Bayes 0.223 0.199 0.248 0.205k-NN 0.296 0.103 0.335 0.340

50

C5.0 0.501 0.021 0.141 0.000SVM 0.464 0.000 0.000 0.000

Naıve Bayes 0.568 0.125 0.175 0.403k-NN 0.440 0.271 0.322 0.152

100

C5.0 0.371 0.000 0.000 0.000SVM 0.000 0.000 0.000 0.000

Naıve Bayes 0.454 0.000 0.055 0.092k-NN 0.259 0.161 0.088 0.083

200

C5.0 0.197 0.000 0.000 0.000SVM 0.000 0.000 0.000 0.000

Naıve Bayes 0.391 0.000 0.058 0.036k-NN 0.228 0.141 0.088 0.039

68