Investigação de Predição de Fluxos em Redes de Computadores
-
Upload
orlando-junior -
Category
Technology
-
view
310 -
download
1
description
Transcript of 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
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
A meus irmaos, Jacquelyne e Rodrigo.
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.
Omni enim habenti dabitur, et abundabit;
ei autem, qui non habet, et quod habet,
auferetur ab eo.
—Evangelium secundum
Matthaeum XXV, XXIX
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
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
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
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
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
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
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
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
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
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
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
• 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
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
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
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
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
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
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
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
• 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
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
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
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
• 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
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
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
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
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
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
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
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
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
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
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
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
• 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
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
Figura 3.2: Ilustracao do processo de mapeamento.
31
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
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
• 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
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
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
• 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
[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
[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
[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
[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
[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
[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
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
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
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
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
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