UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE El´etrica e de Computa¸c˜ao – PPgEEC
A Influˆ
encia da Observabilidade e da Visualiza¸
c˜
ao
Radial no Projeto de Sistemas de Monitoramento
de Redes de Computadores
Jo˜
ao Paulo de Souza Medeiros
Orientador: Prof. Dr. Paulo S´ergio da Motta Pires
Tese de Doutorado apresentada ao Pro-grama de P´os-gradua¸c˜ao em Engenharia El´etrica e de Computa¸c˜ao da UFRN (´area de concentra¸c˜ao: Engenharia de Computa¸c˜ao) como parte dos requisitos para obten¸c˜ao do t´ıtulo de Doutor em Ciˆencias.
Medeiros, Jo˜ao Paulo de Souza.
A Influˆencia da Observabilidade e da Visualiza¸c˜ao Radial no Projeto de Sis-temas de Monitoramento de Redes de Computadores. / Jo˜ao Paulo de Souza Medeiros. – Natal, RN, 2014.
167 f.: il.
Orientador: Prof. Dr. Paulo S´ergio da Motta Pires.
Tese (Doutorado) – Universidade Federal do Rio Grande do Norte. Centro de Tecnologia. Programa de P´os-gradua¸c˜ao em Engenharia El´etrica e de Com-puta¸c˜ao.
1. Monitoramento de redes – Tese. 2. Sistemas complexos – Tese. 3. Obser-vabilidade de sistemas – Tese. 4. Visualiza¸c˜ao de topologias – Tese. 5. An´alise de desempenho e complexidade – Tese. I. Pires, Paulo S´ergio da Motta. II. Universidade Federal do Rio Grande do Norte. III. T´ıtulo.
Ao Prof. Paulo S´ergio da Motta Pires, pelo incentivo e apoio. Seu compromisso com a excelˆencia ajuda-nos a descobrir do qu˜ao somos capazes. Sou grato tamb´em pelos valiosos conselhos e oportunidades, al´em do exemplo de profissionalismo.
Ao Prof. Agostinho de Medeiros Brito J´unior, pelo incentivo e apoio. Sou grato pois ´e de sua responsabilidade minha inser¸c˜ao em pesquisa e no meio cient´ıfico.
Ao Prof. Selan Rodrigues dos Santos, pelas conversas esclarecedoras e por ter me ajudado a refletir sobre os rumos de minha vida profissional.
`
A minha m˜ae, Maria Nerivan de Souza Medeiros, pela ben¸c˜ao, incentivo e por ter me mostrado que m˜ae ´e defini¸c˜ao de determina¸c˜ao e lealdade.
Ao meu pai, Josias Martinho de Medeiros, por me influenciar com os dons da paciˆencia, supera¸c˜ao e discernimento.
Ao meu irm˜ao, Prof. Luiz Paulo de Souza Medeiros, pelas discuss˜oes enriquecedoras e por demonstrar de maneira pr´opria como se tornar um profissional exemplar.
`
A minha companheira, Graciele Saionara Linhares de Lima, por sempre me ajudar a recuperar as for¸cas e refletir sobre meus objetivos. Seu apoio, aten¸c˜ao e compreensividade foram fundamentais e dignos.
Ao meu filho, Pedro Joaquin de Lima Medeiros, sua anuncia¸c˜ao e presen¸ca me proporcio-naram a base emocional, firme como rocha, que precisamos quando enfrentamos grandes desafios, al´em de propiciar a eleva¸c˜ao espiritual necess´aria na finaliza¸c˜ao deste trabalho.
Aos meus amigos, Franscisco da Chagas Araujo de Lima (em mem´oria) e Maria Cass´e Linhares de Lima, por terem me acolhido e ajudado de forma generosa e am´avel.
Aos meus amigos, Prof. Jo˜ao Batista Borges Neto e Prof. Luiz Paulo de Assis Barbosa, pelo apoio, pelas discuss˜oes esclarecedoras e pelos momentos de descontra¸c˜ao.
Ao grupo de desenvolvedores do Umit, especialmente ao Adriano Monteiro Marques e ao Lu´ıs Ant´onio Basti˜ao Silva, pelo enriquecedor envolvimento no meu trabalho.
Ao criador do Nmap, Gordon ‘Fyodor’ Lion, pelos coment´arios, oportunidades e conheci-mento compartilhados.
Este trabalho apresenta um levantamento dos problemas associados `a influˆencia da observabilidade e da visualiza¸c˜ao radial no projeto de sistemas de monitoramento para redes de grande magnitude e complexidade. Al´em disso, se prop˜oe a apresentar solu¸c˜oes para parte desses problemas.
Atrav´es da utiliza¸c˜ao da Teoria de Redes Complexas, s˜ao abordadas duas quest˜oes: (i) a localiza¸c˜ao e a quantidade de n´os necess´arios para garantir uma aquisi¸c˜ao de dados capaz de representar o estado da rede de forma efetiva e (ii) a elabora¸c˜ao de um modelo de visualiza¸c˜ao das informa¸c˜oes da rede capaz de ampliar a capacidade de inferˆencia e de entendimento de suas propriedades.
Esta tese estabelece limites te´oricos para estas quest˜oes e apresenta um estudo sobre a complexidade do monitoramento eficaz, eficiente e escal´avel de redes.
This thesis presents a survey of problems associated to the influence of observability and radial visualization in the design of a monitoring system for huge and complex networks. In addition, there were proposed solutions for part of these problems.
Through the use of Complex Networks Theory, this thesis addresses two questions: (i) the localization and the quantity of nodes needed to ensure the gathering of data sufficient to effectively represent the network state, and (ii) the elaboration of an information visu-alization model capable of amplify the capability of inference and understating of network properties.
This thesis establishes theoretical limits for these questions and presents a study about the complexity of an effective, efficient and scalable network monitoring system.
Sum´
ario
Lista de Algoritmos iii
Lista de Defini¸c˜oes vi
Lista de Figuras viii
Lista de Tabelas ix
Lista de Teoremas xii
Gloss´ario xiii
1 Introdu¸c˜ao 1
1.1 Motiva¸c˜ao . . . 2
1.2 Objetivos . . . 2
1.3 Trabalhos relacionados . . . 2
1.4 Contribui¸c˜oes . . . 5
1.5 Organiza¸c˜ao do trabalho . . . 6
1.6 Publica¸c˜oes relacionadas . . . 7
2 Projeto de monitoramento 9 2.1 Introdu¸c˜ao. . . 10
2.2 Fundamenta¸c˜ao . . . 11
2.2.1 Topologia . . . 13
2.2.2 Observadores . . . 14
2.2.3 Otimiza¸c˜ao . . . 17
2.2.4 Predicados . . . 19
2.2.5 Visualiza¸c˜ao. . . 22
2.3 Objetivos espec´ıficos . . . 22
2.4 Metodologia . . . 23
3 Observabilidade de redes 25 3.1 Introdu¸c˜ao. . . 26
3.1.1 Modelo linear de representa¸c˜ao topol´ogica . . . 26
3.1.2 Modelo estoc´astico de propaga¸c˜ao da informa¸c˜ao . . . 29
3.2 Modelo proposto . . . 31
3.2.1 Observabilidade estrutural. . . 32
3.4 Considera¸c˜oes . . . 61
3.4.1 Quantidade de n´os . . . 61
3.4.2 Localiza¸c˜ao dos n´os . . . 62
4 Visualiza¸c˜ao de redes 63 4.1 Introdu¸c˜ao. . . 64
4.2 Modelo proposto . . . 66
4.2.1 Disposi¸c˜ao radial . . . 67
4.2.2 Otimiza¸c˜ao . . . 68
4.3 An´alise . . . 73
4.3.1 Tempo de execu¸c˜ao esperado . . . 73
4.3.2 Escalabilidade da visualiza¸c˜ao. . . 75
4.4 Experimentos . . . 77
4.4.1 Distribui¸c˜ao do raio da visualiza¸c˜ao . . . 78
4.4.2 Rela¸c˜ao entre o diˆametro e o raio . . . 79
4.4.3 Rela¸c˜ao entre a eficiˆencia e o raio . . . 80
4.5 Considera¸c˜oes . . . 80
5 Conclus˜oes 81 5.1 Resultados. . . 82
5.2 Trabalhos futuros . . . 83
A Caracteriza¸c˜ao de redes complexas 85 A.1 Introdu¸c˜ao. . . 86
A.2 M´etricas . . . 89
A.2.1 Distribui¸c˜ao dos graus . . . 89
A.2.2 Distˆancia m´edia . . . 92
A.2.3 Diˆametro . . . 96
A.2.4 Eficiˆencia . . . 97
A.2.5 Coeficiente de agrupamento . . . 98
B Representa¸c˜ao de redes complexas 101 B.1 Introdu¸c˜ao. . . 102
B.2 Topologias determin´ısticas . . . 102
B.3 Grafos aleat´orios . . . 106
B.4 Mundo pequeno. . . 108
B.5 Livre de escala . . . 110
C Resultados complementares 113 C.1 Caracteriza¸c˜ao de redes determin´ısticas . . . 113
C.2 Observabilidade. . . 121
C.3 Visualiza¸c˜ao . . . 123
Referˆencias Bibliogr´aficas 132
Lista de Algoritmos
3.1 Algoritmo (Busca do conjunto observador estrutural m´ınimo) . . . 36
3.2 Algoritmo (Rendimento) . . . 38
3.3 Algoritmo (Constru¸c˜ao da matriz estoc´astica de transi¸c˜ao). . . 39
3.4 Algoritmo (Busca do conjunto observador funcional m´ınimo) . . . 42
4.1 Algoritmo (C´alculo do espa¸co angular necess´ario) . . . 72
4.2 Algoritmo (C´alculo do raio m´ınimo) . . . 73
A.1 Algoritmo (C´alculo dos graus de entrada e sa´ıda de cada n´o) . . . 90
A.2 Algoritmo (Constru¸c˜ao da fun¸c˜ao de distribui¸c˜ao dos graus) . . . 91
A.3 Algoritmo (Distˆancia em rela¸c˜ao a um n´o) . . . 93
A.4 Algoritmo (Caminho mais curto) . . . 94
A.5 Algoritmo (Distˆancia m´edia) . . . 95
A.6 Algoritmo (Diˆametro) . . . 96
A.7 Algoritmo (Eficiˆencia m´edia) . . . 98
A.8 Algoritmo (Coeficiente de agrupamento) . . . 99
A.9 Algoritmo (Coeficiente de agrupamento da rede) . . . 100
B.1 Algoritmo (Cria¸c˜ao de uma rede aleat´oria). . . 106
B.2 Algoritmo (Cria¸c˜ao de uma rede de mundo pequeno) . . . 108
Lista de Defini¸
c˜
oes
2.1 Defini¸c˜ao (Monitoramento) . . . 10
2.2 Defini¸c˜ao (N´os observadores ou monitores). . . 10
2.3 Defini¸c˜ao (Aquisi¸c˜ao passiva) . . . 11
2.4 Defini¸c˜ao (Aquisi¸c˜ao ativa) . . . 11
2.5 Defini¸c˜ao (Efic´acia). . . 12
2.6 Defini¸c˜ao (Eficiˆencia) . . . 12
2.7 Defini¸c˜ao (Escalabilidade) . . . 12
2.8 Defini¸c˜ao (O conceito de topologia) . . . 13
2.9 Defini¸c˜ao (O problema da identifica¸c˜ao topol´ogica) . . . 14
2.10 Defini¸c˜ao (O problema da escolha dos observadores) . . . 15
2.11 Defini¸c˜ao (Controlabilidade) . . . 16
2.12 Defini¸c˜ao (Observabilidade) . . . 17
2.13 Defini¸c˜ao (O problema da otimiza¸c˜ao e aproxima¸c˜ao) . . . 18
2.14 Defini¸c˜ao (O problema da inferˆencia de predicados) . . . 19
2.15 Defini¸c˜ao (Visualiza¸c˜ao da informa¸c˜ao) . . . 22
2.16 Defini¸c˜ao (O problema da apresenta¸c˜ao da informa¸c˜ao). . . 22
3.1 Defini¸c˜ao (Representa¸c˜ao eficaz) . . . 26
3.1 Premissa (Invariˆancia topol´ogica) . . . 26
3.2 Premissa (Evolu¸c˜ao discreta de estado). . . 27
3.2 Defini¸c˜ao (Sistema linear discreto invariante no tempo). . . 27
3.3 Premissa (Conserva¸c˜ao da informa¸c˜ao) . . . 29
3.4 Premissa (Atingibilidade) . . . 29
3.3 Defini¸c˜ao (Processo marcoviano) . . . 29
3.4 Defini¸c˜ao (Conjunto observador estrutural) . . . 31
3.5 Defini¸c˜ao (Conjunto observador funcional) . . . 31
3.6 Defini¸c˜ao (Observabilidade estrutural) . . . 32
3.7 Defini¸c˜ao (Observabilidade funcional) . . . 37
3.8 Defini¸c˜ao (Rendimento de um n´o). . . 38
3.9 Defini¸c˜ao (Matriz estoc´astica regular) . . . 40
4.1 Defini¸c˜ao (Disposi¸c˜ao radial) . . . 67
4.2 Defini¸c˜ao (Disposi¸c˜ao radial expressiva) . . . 68
4.3 Defini¸c˜ao (Disposi¸c˜ao radial expressiva m´ınima). . . 68
4.4 Defini¸c˜ao (Sobreposi¸c˜ao angular) . . . 69
4.5 Defini¸c˜ao (Sobreposi¸c˜ao parental) . . . 69
A.5 Defini¸c˜ao (Distribui¸c˜ao dos graus da rede) . . . 89
A.6 Defini¸c˜ao (Distˆancia entre dois n´os). . . 92
A.7 Defini¸c˜ao (Distˆancia m´edia) . . . 95
A.8 Defini¸c˜ao (Diˆametro) . . . 96
A.9 Defini¸c˜ao (Eficiˆencia) . . . 97
A.10 Defini¸c˜ao (Eficiˆencia m´edia) . . . 97
A.11 Defini¸c˜ao (Vizinhan¸ca) . . . 98
A.12 Defini¸c˜ao (Coeficiente de agrupamento) . . . 99
A.13 Defini¸c˜ao (Coeficiente de agrupamento da rede) . . . 100
C.1 Defini¸c˜ao (Grafo direcionado em anel) . . . 113
C.2 Defini¸c˜ao (Grafo direcionado em estrela) . . . 113
Lista de Figuras
2.1 Representa¸c˜ao do processo de monitoramento de redes . . . 10
2.2 Representa¸c˜ao das etapas do projeto de um sistema de monitoramento . . . 13
2.3 Ilustra¸c˜ao de uma ´arvoremulticast . . . 15
2.4 Representa¸c˜ao de grafos por matriz de adjacˆencia . . . 16
2.5 Representa¸c˜ao do processo de identifica¸c˜ao de sistemas . . . 20
2.6 Mapa auto-organiz´avel de assinaturas de sistemas operacionais . . . 20
2.7 Descritores do TCP ISN PRNG de diferentes sistemas operacionais . . . 21
2.8 Ilustra¸c˜ao do procedimento metodol´ogico . . . 23
3.1 Representa¸c˜ao em blocos da equa¸c˜ao de espa¸co de estado . . . 27
3.2 Exemplo de mapeamento topol´ogico para equa¸c˜ao de espa¸co de estado . . . 28
3.3 Matrizes de adjacˆencia das topologias determin´ısticas. . . 29
3.4 Matriz de transmiss˜ao para topologias determin´ısticas. . . 31
3.5 Exemplo de emparelhamento m´aximo em grafos n˜ao direcionados . . . 34
3.6 Rendimento dos n´os em uma rede livre de escala . . . 43
3.7 Rela¸c˜ao entre o rendimento e o grau em redes livre de escala . . . 44
3.8 Cardinalidade do conjunto observador estrutural . . . 45
3.9 Distribui¸c˜ao da quantidade de n´os observadores estruturais . . . 46
3.10 Grau esperado relativo dos n´os observadores estruturais . . . 47
3.11 Rela¸c˜ao entre o diˆametro e a observabilidade estrutural . . . 48
3.12 Rela¸c˜ao entre a eficiˆencia e a observabilidade estrutural . . . 49
3.13 Rela¸c˜ao entre o agrupamento e a observabilidade estrutural . . . 50
3.14 Rela¸c˜ao entre a cardinalidade deOoe e a quantidade de rotas . . . 51
3.15 Exemplo de localiza¸c˜ao dos n´os observadores estruturais . . . 52
3.16 Rela¸c˜ao entre o rendimento e a cardinalidade de Oco . . . 53
3.17 Rela¸c˜ao entre o rendimento e a quantidade de tr´afego instantˆaneo. . . 54
3.18 Cardinalidade do conjunto observador funcional. . . 55
3.19 Distribui¸c˜ao da quantidade de n´os observadores funcionais . . . 56
3.20 Grau esperado relativo dos n´os observadores funcionais. . . 56
3.21 Rela¸c˜ao entre o diˆametro e a observabilidade funcional . . . 57
3.22 Rela¸c˜ao entre a eficiˆencia e a observabilidade funcional . . . 58
3.23 Rela¸c˜ao entre o agrupamento e a observabilidade funcional. . . 59
3.24 Rela¸c˜ao entre a cardinalidade deOo c e a quantidade de rotas . . . 59
3.25 Exemplo de localiza¸c˜ao dos n´os observadores funcionais . . . 60
4.1 Composi¸c˜ao de tra¸cados de rota para universidades brasileiras. . . 64
4.2 Ilustra¸c˜ao das regras da visualiza¸c˜ao por disposi¸c˜ao radial . . . 67
4.7 Rela¸c˜ao entre o diˆametro e o raio da visualiza¸c˜ao . . . 79
4.8 Rela¸c˜ao entre a eficiˆencia e o raio da visualiza¸c˜ao . . . 80
A.1 Tipos de representa¸c˜ao de redes complexas . . . 86
A.2 Representa¸c˜ao de redes por meio de lista de adjacˆencia. . . 88
A.3 Caracteriza¸c˜ao e transforma¸c˜ao de grafos . . . 89
B.1 Ilustra¸c˜ao das topologias em anel, em estrela e linear . . . 102
B.2 Distˆancia m´edia das topologias determin´ısticas . . . 104
B.3 Eficiˆencia m´edia das topologias determin´ısticas . . . 105
B.4 Exemplo de rede de mundo pequeno . . . 109
B.5 Exemplo da evolu¸c˜ao de uma rede livre de escala . . . 111
Lista de Tabelas
3.1 Influˆencia das m´etricas na observabilidade . . . 61
4.1 Representa¸c˜ao por meio da utiliza¸c˜ao das propriedades retinais . . . 65
4.2 Efic´acia da representa¸c˜ao de cada propriedade retinal. . . 65
5.1 Desempenho das m´etricas de caracteriza¸c˜ao . . . 81
5.2 Influˆencia das m´etricas na visualiza¸c˜ao . . . 83
Lista de Teoremas
3.1 Teorema (Condi¸c˜ao para observabilidade estrutural) . . . 32
3.1 Lema (Correspondˆencia entre controlabilidade e observabilidade) . . . 33
3.2 Teorema (Conjunto controlador m´ınimo) . . . 35
3.1 Corol´ario (Conjunto observador estrutural m´ınimo) . . . 35
3.3 Teorema (Comportamento do processo marcoviano regular) . . . 40
3.4 Teorema (Estado est´avel do processo marcoviano regular) . . . 40
3.5 Teorema (Potˆencias da matriz de adjacˆencia) . . . 41
3.2 Lema (Regularidade da matriz de transi¸c˜ao). . . 41
3.2 Corol´ario (Influˆencia do diˆametro sobre a matriz regular) . . . 41
3.3 Corol´ario (Conjunto observador funcional m´ınimo) . . . 41
4.1 Lema (Equivalencia entre o raio base e o espa¸co) . . . 68
4.2 Lema (Espa¸co angular necess´ario de um n´o) . . . 69
4.3 Lema (Espa¸co angular necess´ario para evitar sobreposi¸c˜ao angular) . . . 70
4.4 Lema (Raio base m´ınimo necess´ario para evitar sobreposi¸c˜ao angular) . . . 71
4.5 Lema (Raio base m´ınimo necess´ario para evitar sobreposi¸c˜ao parental) . . . 71
4.1 Teorema (Raio base m´ınimo para a disposi¸c˜ao radial expressiva) . . . 72
4.2 Teorema (Tempo de execu¸c˜ao esperado do algoritmo ‘espaco-angular()’) . . 73
4.3 Teorema (Tempo de execu¸c˜ao esperado do algoritmo ‘raio-minimo()’). . . . 74
4.6 Lema (Quantidade m´axima de n´os por ´area). . . 75
4.7 Lema (Quantidade m´axima de n´os distribu´ıdos em an´eis concˆentricos) . . . 75
4.8 Lema (Rela¸c˜ao entre quantidade de n´os em an´eis concˆentricos e a ´area) . . 76
4.9 Lema (Pior caso da escalabilidade em an´eis concˆentricos) . . . 77
4.4 Teorema (Escalabilidade da disposi¸c˜ao radial expressiva m´ınima) . . . 77
C.1 Lema (Distˆancia m´edia na topologia em anel) . . . 114
C.1 Corol´ario (Influˆencia da paridade de|N|em E{Sring}) . . . 114
C.2 Corol´ario (Comportamento assint´otico de E{Sring}). . . 115
C.2 Lema (Distˆancia m´edia na topologia em estrela) . . . 115
C.3 Corol´ario (Comportamento assint´otico de E{Sstar}). . . 115
C.3 Lema (Distˆancia m´edia na topologia em linha) . . . 116
C.4 Corol´ario (Comportamento assint´otico de E{Sline}) . . . 116
C.4 Lema (Eficiˆencia m´edia na topologia em anel) . . . 117
C.5 Corol´ario (Influˆencia da paridade de|N|em E{Fring}) . . . 117
C.6 Corol´ario (Comportamento assint´otico de E{Fring}) . . . 118
C.5 Lema (Eficiˆencia m´edia na topologia em estrela) . . . 119
C.7 Corol´ario (Comportamento assint´otico de E{Fstar}) . . . 119
C.9 Lema (Conjunto observador estrutural m´ınimo da topologia em estrela) . . 121
C.10 Lema (Estado est´avel da topologia em estrela) . . . 122
C.11 Lema (Comportamento assint´otico de f(n, m) = (nm+1−n)/(n−1)). . . . 123
C.12 Lema (Quantidade esperada de n´os em uma ´arvore) . . . 123
Gloss´
ario
Acrˆ
onimos
BFS . . . .Breadth-First Search BGP . . . .Border Gateway Protocol CAIDA . . . .Cooperative Association for Internet Data Analysis CDF . . . .Cumulative Distribution Function DDoS . . . .Distributed Denial of Service DoS . . . .Denial of Service FIFO . . . .First-In First-Out IDS . . . .Intrusion Detection System IoT . . . .Internet of Things IP . . . .Internet Protocol IPv4 . . . .Internet Protocol version 4 IPv6 . . . .Internet Protocol version 6 IPS . . . .Intrusion Prevention System ISN . . . .Initial Sequence Number NAPT . . . .Network Address and Port Translation NAT . . . .Network Address Translation NAT-PT . . . .Network Address Translation – Protocol Translation NP . . . .Nondeterministic Polynomial Time P2P . . . .Peer to Peer PDF . . . .Probability Distribution Function PRNG . . . .Pseudo-Random Number Generator SOM . . . .Self-Organizing Map TCP . . . .Transmission Control Protocol
Simbologia
C.Q.D.. . . Demarcador contra¸c˜ao de ‘como se queria demonstrar’.
. . . Demarca fim de Algoritmos, Defini¸c˜oes, Teoremas, dentre outros.
Representa¸c˜oes
x . . . Letras min´usculas em negrito indicam vetores coluna. ´E poss´ıvel pa-rametrizar o vetor, por exemplo, x(t) =
x1(t) · · · xn(t) ⊺
X . . . Letras mai´usculas em negrito indicam matrizes. Assim como ´e poss´ıvel parametrizar vetores, o mesmo ´e poss´ıvel com matrizes, por exemplo, uma matriz variante no tempo pode ser representa por X(t).
X . . . Letras mai´usculas caligr´aficas representam vari´aveis aleat´orias.
˙
x(t) . . . Indica a derivada da fun¸c˜ao x(·) em rela¸c˜ao ao tempo t. Tamb´em se aplica a funcionais em vetores e matrizes.
n! . . . Operador fatorial, definido recursivamente comon! =n(n−1)! e com caso base 0! = 1. De forma iterativa tamb´em pode ser descrito como
n! =
n−2 Y
i=0
(n−i),
paran≥2.
n k
. . . Coeficiente binomial de ndadok, onde 0≤k≤n, definido como
n k
= n!
k!(n−k)!,
que pode ser computado de forma eficiente utilizando
n k
=
k Y
i=1
n−(k−i)
i ,
que possui complexidade Θ(k).
δ(t), δij . . . A fun¸c˜ao delta de Kronecker, definida como
δij ,
1 sei=j
0 caso contr´ario ,
utilizada como contrapartida discreta da fun¸c˜ao delta de Dirac. Por conveniˆencia, ´e poss´ıvel usar a seguinte representa¸c˜ao
δ(t),
1 se t= 0
0 caso contr´ario .
Dessa forma temos de forma equivalente que o valor δ(i−j) ´e 1 se
Hn . . . Indica a soma dos nprimeiros termos da s´erie harmˆonica,
represen-tada por
Hn= n X
i=1
1
i,
que diverge no limite quando n → ∞. Por´em, possui a seguinte propriedade assint´otica
lim
n→∞Hn−log(n) =γ,
ondeγ ≈0.57721 representa a constante de Euler-Mascheroni. Por-tanto, ´e poss´ıvel usar a seguinte igualdade assint´otica
Hn≃log(n) +γ,
onde o logaritmo natural ´e o da base natural e.
{x:p(x)} . . . . Descri¸c˜ao do conjunto representado pelos elementos x que tˆem a propriedade, ou predicado, p(x). Adicionalmente, o predicado p(x) pode ser descrito utilizando os operadores da l´ogica proposicional.
(∀x)(p(x)) . . . Quantifica¸c˜ao universal em rela¸c˜ao aos elementosxque tˆem a propri-edade, ou predicado, p(x). A pertinˆencia dos elementos representa-dos porxtamb´em pode ser descrita de forma explicita, por exemplo, (∀x ∈ N)(p(x)). Que expressa que todos os elementos do conjunto dos n´umeros naturais possuem o predicado p. Adicionalmente, o predicado p(x) pode ser descrito utilizando os operadores da l´ogica proposicional.
(∃x)(p(x)) . . . Quantifica¸c˜ao existencial em rela¸c˜ao aos elementosx que tˆem a pro-priedade, ou predicado, p(x). A pertinˆencia dos elementos represen-tados porxtamb´em pode ser descrita de forma explicita, por exem-plo, (∃x∈N)(p(x)). Que expressa que existe pelo menos um n´umero natural que possui o predicadop. Adicionalmente, o predicado p(x) pode ser descrito utilizando os operadores da l´ogica proposicional.
Nota¸c˜ao assint´otica
O(·) . . . Quando ´e expresso que f(n) ∈ O(g(n))[i], dize-se que existe uma constante k, tal que a fun¸c˜ao f(n), para todo valor de n > n0, ´e
sempre limitada superiormente porkg(n).
Ω(·) . . . Quando ´e expresso quef(n)∈Ω(g(n)), dize-se que existe uma cons-tantek, tal que a fun¸c˜ao f(n), para todo valor de n > n0, ´e sempre
limitada inferiormente porkg(n).
[i]Utiliza-se o s´ımbolo de pertinˆencia∈pois interpreta-se que o operador O(·) representa o conjunto das
fun¸c˜oes que s˜ao limitadas superiormente pelo seu argumento, no caso a fun¸c˜aog(·). O mesmo princ´ıpio
Θ(·) . . . Quando ´e expresso quef(n)∈Θ(g(n)), dize-se que existe uma cons-tantek1, tal que a fun¸c˜ao f(n), para todo valor den > n0, ´e sempre
limitada inferiormente pork1g(n), e tamb´em existe uma outra
cons-tantek2, tal que a fun¸c˜ao f(n), para todo valor den > n0, ´e sempre
limitada superiormente por k2g(n). De forma equivalente, define-se
quef(n)∈Θ(g(n)) se e somente se
lim
n→∞ f(n)
g(n) =c,
parag(n) diferente de zero ou, pelo menos, sempre maior de que zero a partir de algum ponto e para 0< c <∞.
Igualdades matem´aticas
≈ . . . Valor aproximado.
≃ . . . Igualdade assint´otica, isto ´e, sef(n)≃g(n) ent˜ao
lim
n→∞ f(n)
g(n) = 1,
parag(·) infinitamente diferente de zero.
∝ . . . Proporcionalidade, isto ´e, se f(n) ∝ g(n), ent˜ao existe uma cons-tantektal quef(n) =kg(n). De forma generalista, pode considerar tamb´em a igualdade assint´otica.
, . . . Igualdade por defini¸c˜ao, por exemplo,
dx(t)
dt , h
dx1(t) dt · · ·
dxn(t) dt
i⊺
,
ondex(t) ´e um vetor coluna.
≡ . . . Equivalˆencia, por exemplo, x ≡ y significa que x ´e definido como sendo logicamente igual `a y.
Nota¸c˜ao estat´ıstica
∼ . . . Indicador de distribui¸c˜ao de probabilidade, por exemploX ∼N(µ, σ) indica que a vari´avel aleat´oria X segue uma distribui¸c˜ao de probabi-lidade normal com m´ediaµ e desvio padr˜ao σ.
Xζ . . . Resultado ou realiza¸c˜ao ζ da vari´avel aleat´oriaX.
P(Xζ |p) . . . Probabilidade da vari´avel aleat´oria X assumir a realiza¸c˜ao ζ dado
que o predicado p´e verdadeiro.
E{X } . . . Valor esperado da vari´avel aleat´oria X. No caso discreto ´e definido como
E{X }= X
{ζ∈℧}
XζP(Xζ),
onde℧´e o conjunto de poss´ıveis realiza¸c˜oes da vari´avel aleat´oria.
E{X |p} . . . Valor esperado da vari´avel aleat´oria X dado que o predicado p ´e verdadeiro. No caso discreto ´e definido como
E{X }= X
{ζ∈℧}
XζP(Xζ|p),
onde℧´e o conjunto de poss´ıveis realiza¸c˜oes da vari´avel aleat´oria.
Operadores matem´aticos
| · | . . . Se for aplicado a um escalar, indica o seu valor absoluto. Caso seja aplicado a um conjunto, indica sua cardinalidade.
⌊·⌋ . . . O maior valor inteiro menor ou igual ao escalar.
⌈·⌉ . . . O menor valor inteiro maior ou igual ao escalar.
ρ(·) . . . Posto de uma matriz, por exemplo dada uma matriz identidadeIn×n, ρ(I) =n.
X⊺ . . . Opera¸c˜ao de transposi¸c˜ao da matriz X, isto ´e, troca dos elementos
xij pelos elementosxji. Tamb´em pode ser aplicada a vetores, no qual
transforma vetores coluna em vetores linha, e vice-versa.
X−Y . . . Subtra¸c˜ao de elementos de conjuntos. Utilizando a nota¸c˜ao de con-juntos pode ser definido por
X−Y ,{z: (z∈X)∧(z /∈Y)},
que representa o conjunto resultante da retirada dos elementos em
X que tamb´em est˜ao em Y.
X×Y . . . Produto cartesiano entre dois conjuntosXeY. Utilizando a nota¸c˜ao de conjuntos pode ser definido por
X×Y ,{(x, y) : (x∈X)∧(y∈Y)},
Operadores l´ogicos
¬ . . . Operador un´ario de nega¸c˜ao.
∨ . . . Operador bin´ario de disjun¸c˜ao, definido como ‘ou inclusivo’.
∧ . . . Operador bin´ario de conjun¸c˜ao, definido com valor l´ogico ‘e’.
⇒ . . . Operador bin´ario de implica¸c˜ao, por exemplo, (a ⇒ b), onde a ´e denominado antecedente e b consequente. ´Unico operador bin´ario n˜ao comutativo.
Cap´ıtulo 1
Introdu¸
c˜
ao
“If knowledge can create problems, it is not through ignorance that we can solve them.”
Isaac Asimov
Desde sua cria¸c˜ao at´e sua populariza¸c˜ao, a Internet tem sido usada para os mais diversos fins. A influˆencia que a Internet exerce no in´ıcio do s´eculo XXI, faz com que institui¸c˜oes militares, cient´ıficas, pol´ıticas ou comerciais despertem um grande interesse no conhecimento de sua estrutura [Deibert et al. 2008, Deibert et al. 2010, Lordet 2012]. Esse interesse deve-se, dentre outras coisas, ao fato da Internet tornar poss´ıvel, enquanto meio de comunica¸c˜ao, a liberdade de express˜ao e a pluralidade ideol´ogica em escala global [Arsu 2011, Goodman 2011].
Este trabalho apresenta um levantamento dos problemas associados `a influˆencia da ob-servabilidade e da visualiza¸c˜ao radial no projeto de sistemas de monitoramento para redes de grande magnitude, como a Internet, e estabelece limites te´oricos para esses problemas. Al´em disso, esta tese se prop˜oe a apresentar solu¸c˜oes para parte desses problemas. ´E dada ˆenfase na localiza¸c˜ao e na quantidade de n´os necess´arios para garantir uma aquisi¸c˜ao de dados capaz de representar o estado da rede de forma efetiva e na elabora¸c˜ao de um modelo de visualiza¸c˜ao das informa¸c˜oes da rede com o objetivo de ampliar a capacidade de inferˆencia e de entendimento de suas propriedades.
1.1
Motiva¸
c˜
ao
Al´em de existirem tentativas de desenvolver mecanismos de controle para a Internet, h´a tamb´em esfor¸cos para garantir sua integridade e a descentraliza¸c˜ao estrutural de tais mecanismos de controle. Em ambos os casos, para se desenvolver qualquer tipo de sis-tema computacional voltado para algum desses prop´ositos, ´e necess´ario um entendimento efetivo sobre os aspectos que caracterizam redes como a Internet. Esse cen´ario ´e ainda mais cr´ıtico quando consideramos novas tendˆencias tecnol´ogicas como ´e o caso da IoT (do inglˆes, Internet of Things). Isso porque, nesse novo contexto, inserido no modelo de computa¸c˜ao ub´ıqua, ´e considerada a conex˜ao direta de dispositivos, principalmente os de prop´osito pessoal, `a Internet. Torna-se evidente que o estudo das propriedades estrutu-rais e das funcionalidades dessas redes pode estabelecer limites te´oricos relacionados `a confidencialidade e outras quest˜oes de seguran¸ca.
O estudo dos limites te´oricos para cria¸c˜ao de um sistema de monitoramento global da Internet parece caminhar na dire¸c˜ao do controle do fluxo da informa¸c˜ao. Entretanto, esse estudo tamb´em ´e capaz de revelar em que condi¸c˜oes os requisitos, necess´arios para possibilitar esse monitoramento restritivo, podem deixar de serem atendidos. Dessa forma, deixando em segundo plano o prop´osito final do monitoramento, este trabalho tem como motiva¸c˜ao o entendimento dos fatores associados `a influˆencia da observabilidade e da visualiza¸c˜ao radial na cria¸c˜ao de um sistema de monitoramento para redes de grande escala e complexidade.
1.2
Objetivos
A cria¸c˜ao de sistemas de monitoramento para redes de grande magnitude, deve atender, al´em da efetividade, a requisitos de eficiˆencia e escalabilidade. No desenvolvimento deste trabalho, s˜ao apontados diversos problemas cr´ıticos na concep¸c˜ao desses tipos de sistemas. Dentre eles est˜ao: (i) a necessidade de cria¸c˜ao de algoritmos eficientes para estimar a quantidade m´ınima e a localiza¸c˜ao dos n´os da rede que ter˜ao de coletar dados para o monitoramento e (ii) a necessidade de algoritmos eficientes para a cria¸c˜ao de modelos escal´aveis de apresenta¸c˜ao das informa¸c˜oes extra´ıdas no processo de monitoramento. Dessa forma, em rela¸c˜ao aos desafios te´oricos associados ao monitoramento de redes de grande escala, este trabalho se concentra em avan¸car teoricamente nessas duas quest˜oes.
1.3
Trabalhos relacionados
Nesta Se¸c˜ao, ´e feita uma revis˜ao bibliogr´afica dos principais trabalhos relacionados ao atual estado da arte no que se refere `a inferˆencia do estado interno da rede e da visualiza¸c˜ao dos predicados da rede com base em sua representa¸c˜ao topol´ogica. As referˆencias s˜ao apresentadas em ordem cronol´ogica.
Inferˆencia do estado interno da rede
desempenho de pontos individuais da rede a partir de medi¸c˜oes unicastassociadas a cada uma de suas poss´ıveis rotas. C´aceres et al. (1999) mostram que o uso de medi¸c˜oes fim-a-fim multicast possibilita a inferˆencia de caracter´ısticas internas da rede. Apesar de se tratar de um m´etodo de monitoramento ativo, que gera tr´afego excedente na rede, a utiliza¸c˜ao de mensagens multicast reduz esse impacto. A quantidade de tr´afego necess´aria para se obter estimativas do estado interno da rede n˜ao ´e apresentada em [C´aceres et al. 1999]. Essa informa¸c˜ao pode ser obtida a partir do estudo da escalabilidade desse modelo.
Ji & Elwalid (2002), a partir da considera¸c˜ao de que os n´os observadores est˜ao locali-zados principalmente nas bordas da rede, apresentam as condi¸c˜oes em que a quantidade de medi¸c˜oes necess´arias no modelo de C´aceres et al. (1999) ´e escal´avel. Especificamente, eles verificaram que a quantidade de medi¸c˜oes cresce linearmente em rela¸c˜ao ao tamanho da rede, ou seja, ´e da ordem de O(n)[i], quando n˜ao h´a perda de pacotes na transmiss˜ao e, portanto, ´e escal´avel. Quando considera-se a possibilidade de perda de pacotes, a quanti-dade de medi¸c˜oes cresce de forma mais r´apida comparada ao crescimento da pr´opria rede, o que caracteriza a n˜ao escalabilidade do sistema. Por´em, a premissa de que todos os n´os da borda da rede s˜ao n´os observadores ´e bastante restritiva quantitativamente. Considerando o crescimento hier´arquico na quantidade de n´os, pode-se chegar a uma quantidade de n´os observadores de aproximadamente metade da quantidade total de n´os. ´E conveniente que seja poss´ıvel minimizar essa quantidade.
No contexto de monitoramento de sobrecargas em uma rede, por exemplo, latˆencia, congestionamento e falhas, Chen et al. (2007) desenvolveram um modelo capaz de mini-mizar a quantidade de n´os observadores para redes de grande escala. Ao contr´ario do que ´e proposto por Ji & Elwalid (2002), os autores consideram que os enlaces ´e que ser˜ao mo-nitorados no lugar dos n´os. At´e ent˜ao, sistemas eficazes com esse prop´osito requeriam que a quantidade de enlaces observados fosse da ordem de O(n2). A partir do procedimento de minimiza¸c˜ao desenvolvido, Chen et al. (2007) demonstraram que essa quantidade pode ser reduzida para O(nlogn). Apesar de diminuir de forma significativa a quantidade de enlaces monitorados, a quantidade de observadores pode chegar a ser maior que a pr´opria quantidade de n´os da rede.
Gopalan & Ramasubramanian (2012) estabelecem condi¸c˜oes necess´arias e suficientes para que seja poss´ıvel utilizar apenas um observador para estimar de forma eficaz in-forma¸c˜oes sobre m´etricas de enlace aditivas como, por exemplo, latˆencia e distˆancia. Para computar a quantidade m´ınima e a localiza¸c˜ao dos observadores quando essas condi¸c˜oes n˜ao se fazem presentes, os autores apresentam um algoritmo de tempo polinomial, espe-cificamente, da ordem de O(n2). Por´em, n˜ao h´a indica¸c˜ao da quantidade e da localiza¸c˜ao esperada dos n´os observadores.
Visualiza¸c˜ao de predicados com base na topologia
O entendimento da estrutura de uma rede ´e um problema permanentemente abordado na visualiza¸c˜ao da informa¸c˜ao. Sua aplicabilidade em redes de comunica¸c˜ao tem como interesse, por exemplo, apresentar de forma adequada o grau de conectividade em uma rede e a distˆancia entre seus n´os. Esse problema ´e abordado por Yee et al. (2001) com base em uma aplica¸c˜ao interativa para explora¸c˜ao de grafos sendo a visualiza¸c˜ao de sua estrutura topologia disposta de forma radial. Os autores verificaram que a forma interativa como a aplica¸c˜ao foi desenvolvida, onde ´e permitida a habilidade de mudar o foco da visualiza¸c˜ao,
entusiasma os usu´arios a fim de descobrir propriedades relacionadas `a localiza¸c˜ao dos n´os da rede. Apesar de exitoso, esse trabalho deixa como desenvolvimento futuro a quest˜ao de escalabilidade quando a rede possui uma grande quantidade de n´os. Sugest˜oes de pior caso de escalabilidade s˜ao encontrada na literatura [Battista et al. 1998], mas o melhor caso e o comportamento esperado dessa escalabilidade n˜ao s˜ao conhecidos.
A visualiza¸c˜ao por disposi¸c˜ao radial tem como finalidade inicial a apresenta¸c˜ao de estrutura hier´arquicas, ou seja, ´arvores. Isso pode ser considerado uma desvantagem asso-ciada `a sua utiliza¸c˜ao. Por´em, como apresentado por Kim et al. (2004), redes complexas s˜ao fortemente caracterizadas por seu n´ucleo de comunica¸c˜ao (communication kernel, ou backbonepara redes de computadores) que tem uma forte correla¸c˜ao com a topologia ori-ginal. Esse n´ucleo de comunica¸c˜ao ´e criado com base em uma m´etrica de centralidade [Newman 2003] e no estudo das ´arvores de cobertura [Kruskal 1956]. De fato, a utiliza¸c˜ao de m´etricas baseadas em centralidade ´e uma abordagem j´a utilizada no projeto de algorit-mos de roteamento [Oliveira et al. 2010, Raalgorit-mos et al. 2012]. Portanto, em vez de se tornar uma desvantagem, a caracter´ıstica centrada na visualiza¸c˜ao de estruturas hier´arquicas da visualiza¸c˜ao por disposi¸c˜ao radial a torna ainda mais adequada. Adicionalmente, Kim et al. (2005) verificam tamb´em que, para redes livre de escala, a distribui¸c˜ao dos graus da ´
arvore que representa o n´ucleo de comunica¸c˜ao tamb´em ´e livre de escala.
Em rela¸c˜ao `a qualidade da visualiza¸c˜ao, tem-se que a minimiza¸c˜ao de cruzamentos entre arestas ´e um dos principais crit´erios para legibilidade. Em seu trabalho, Bachmaier (2007) demonstra que a visualiza¸c˜ao radial ´e mais flex´ıvel para rotear arestas quando comparada a visualiza¸c˜ao tradicional. De fato, Bachmaier (2007) verificou experimentalmente que a utiliza¸c˜ao da disposi¸c˜ao radial possibilita em m´edia uma redu¸c˜ao de 30% na quantidade de cruzamentos entre arestas quando comparada `a sua contrapartida cartesiana. Isso ´e poss´ıvel a partir do uso de um algoritmo da ordem de O(en2). Ainda segundo Bachmaier
(2007), a representa¸c˜ao de grafos por disposi¸c˜ao radial ´e bem adaptada `a visualiza¸c˜ao de propriedades centrais, o que tamb´em ´e verificado por Ham & Wattenberg (2008).
Medeiros & Santos (2008) apresentam o uso da visualiza¸c˜ao proposta por Yee et al. (2001) para representa¸c˜ao de predicados associados `a seguran¸ca em redes de computadores. Com o objetivo de apresentar solu¸c˜oes para as quest˜oes de escalabilidade, os autores utilizam t´ecnicas de agrupamento dos n´os, prioriza¸c˜ao do foco da visualiza¸c˜ao e ajuste do raio. O controle desses parˆametros ´e feito pelo pr´oprio analista, de forma que ´e necess´ario o desenvolvimento de t´ecnicas de ajuste preliminar desses parˆametros. Essas t´ecnicas, no entanto, podem ter como base o estudo da escalabilidade da visualiza¸c˜ao.
Solu¸c˜oes propostas
Como n˜ao h´a um estudo sobre a observabilidade da rede considerando o monitora-mento passivo, em que o processo de monitoramonitora-mento n˜ao gera tr´afego excedente, tem-se a defini¸c˜ao da primeira proposta desse trabalho: desenvolver um modelo eficaz e algorit-mos eficientes que permitam o projeto de observabilidade passiva de redes em rela¸c˜ao `a localiza¸c˜ao ´otima dos n´os observadores.
Como tamb´em n˜ao h´a um estudo sobre a escalabilidade da visualiza¸c˜ao por disposi¸c˜ao radial, prop˜oe-se desenvolver um modelo otimizado para visualiza¸c˜ao de redes de larga escala que permita a utiliza¸c˜ao de algoritmos eficientes e de uma quantidade de recursos computacionais escal´avel, sem comprometer sua efic´acia.
1.4
Contribui¸
c˜
oes
Os desenvolvimentos te´oricos, a an´alise de desempenho das solu¸c˜oes propostas e as implica¸c˜oes dos resultados observados no projeto de sistemas de monitoramento de redes, para as duas quest˜oes apresentadas na Se¸c˜ao1.2, comp˜oem a maior parte das contribui¸c˜oes deste trabalho. Al´em disso, com base na revis˜ao bibliogr´afica apresentada na Se¸c˜ao1.3, ´e poss´ıvel destacar os seguintes fatos: (i) n˜ao h´a um estudo sobre a quantidade m´ınima e a localiza¸c˜ao dos n´os observadores em rela¸c˜ao ao monitoramento passivo da rede e (ii) n˜ao h´a um estudo sobre a escalabilidade esperada da visualiza¸c˜ao por disposi¸c˜ao radial. Portanto, as contribui¸c˜oes s˜ao discriminadas a seguir na ordem em que s˜ao apresentadas. Com base na descri¸c˜ao de redes atrav´es da Teoria de Sistemas Complexos e das equa¸c˜oes de espa¸co de estado, foi elaborado um algoritmo capaz de definir a quantidade m´ınima de n´os observadores (aqueles que atuar˜ao como sensores na rede) para monitorar uma dada topologia. Esse problema ´e abordado de duas formas: (i) a localiza¸c˜ao e a quan-tidade m´ınima de n´os observadores necess´arios para se estimar o estado de todos os n´os da rede de forma passiva e (ii) a localiza¸c˜ao e a quantidade m´ınima de n´os observadores necess´arios para se capturar uma determinada propor¸c˜ao do tr´afego de informa¸c˜ao na rede em um dado instante. Esses dois subconjuntos de n´os observadores da rede, denominados n´os observadores estruturais e n´os observadores funcionais, est˜ao associados diretamente `a topologia da rede, considerando a forma como os estados de n´os adjacentes interagem e as entidades que regem o tr´afego das informa¸c˜oes, por exemplo, os algoritmos de roteamento. Utilizando os algoritmos desenvolvidos para o estudo de observabilidade de redes, fo-ram realizados experimentos a fim de relacionar propriedades de redes livre de escala (por exemplo, grau dos n´os observadores e quantidade de n´os em rela¸c˜ao ao diˆametro da rede) com a quantidade e a localiza¸c˜ao dos n´os observadores. Al´em disso, s˜ao explora-das tamb´em as propriedades de observa¸c˜ao de redes com topologias determin´ısticas (em anel, em estrela e linear), que tamb´em ´e uma contribui¸c˜ao deste trabalho. ´E importante destacar que o conjunto de n´os observadores estruturais possui caracter´ısticas distintas daquelas encontradas no conjunto de n´os observadores funcionais. Por exemplo, enquanto os n´os observadores funcionais tendem a se concentrar na parte central da rede, os n´os observadores estruturais se concentram nas bordas.
for-mal do modelo de visualiza¸c˜ao. Tanto o modelo formal, quanto o processo de otimiza¸c˜ao, tamb´em s˜ao contribui¸c˜oes deste trabalho. ´E provada a escalabilidade do modelo de visua-liza¸c˜ao demonstrando formalmente que ela atinge o limite te´orico inferior no melhor caso. Da mesma forma ´e demonstrado o tempo de execu¸c˜ao linear do algoritmo proposto.
1.5
Organiza¸
c˜
ao do trabalho
Al´em desta Introdu¸c˜ao, o trabalho est´a organizado em mais quatro Cap´ıtulos e trˆes Apˆendices, cujos conte´udos s˜ao individualmente discriminados a seguir.
No Cap´ıtulo 2, trata-se dos fundamentos associados ao projeto de sistemas de mo-nitoramento de redes de computadores. Nele ´e definido o contexto de aplica¸c˜ao assim como todas as defini¸c˜oes fundamentais relacionadas `a bibliografia e aos desenvolvimentos te´oricos deste trabalho. Ainda nesse Cap´ıtulo, s˜ao descritos, de forma mais elaborada, os problemas relacionados `a cria¸c˜ao de um sistema de monitoramento de redes de grande escala. Finalmente, com base em uma defini¸c˜ao estendida dos objetivos espec´ıficos, ´e descrita a metodologia utilizada no desenvolvimento do trabalho.
As contribui¸c˜oes do trabalho no que se refere `a quantidade m´ınima e localiza¸c˜ao dos n´os observadores, s˜ao apresentadas no Cap´ıtulo3. Inicialmente, ´e apresentado o modelo de representa¸c˜ao de redes, que tem como objetivo dar suporte aos algoritmos de identifica¸c˜ao do subconjunto dos n´os observadores. Em seguida, s˜ao apresentados os algoritmos para identifica¸c˜ao do conjunto observador estrutural m´ınimo e do conjunto observador funcional m´ınimo. Utilizando os algoritmos desenvolvidos, s˜ao apresentados experimentos a fim de relacionar propriedades de redes livre de escala com a quantidade e localiza¸c˜ao dos n´os observadores. Finalmente, s˜ao realizados experimentos tendo como exemplo dados de levantamentos topol´ogicos da Internet.
A apresenta¸c˜ao dos dados em um sistema de monitoramento ´e fundamental para o entendimento dos predicados da rede a ser monitorada. Dessa forma, o modelo de visu-aliza¸c˜ao dessas informa¸c˜oes deve propiciar uma representa¸c˜ao das informa¸c˜oes que seja adequada `a escala da quantidade dos dados. No Cap´ıtulo 4, ´e definido um modelo eficaz de representa¸c˜ao de topologias utilizando a visualiza¸c˜ao por meio da disposi¸c˜ao radial. Esse modelo ´e otimizado a fim de minimizar a quantidade de espa¸co necess´ario para vi-sualiza¸c˜ao de topologias sem que haja preju´ızo das propriedades visuais das entidades de representa¸c˜ao da informa¸c˜ao. Um algoritmo de tempo linear ´e desenvolvido com base na solu¸c˜ao do problema de otimiza¸c˜ao. Finalmente, tanto o tempo de execu¸c˜ao do algoritmo quanto a escalabilidade do modelo s˜ao demostradas.
Por fim, no Cap´ıtulo 5, s˜ao sumarizados e discutidos os resultados do trabalho e, com base no estudo realizado em cada Cap´ıtulo, s˜ao ainda apresentados poss´ıveis direci-onamentos para novas pesquisas. Resultados indiretos e algumas defini¸c˜oes utilizadas no trabalho est˜ao organizadas nos Apˆendices. Especificamente, o modelo de caracteriza¸c˜ao de topologias utilizado neste trabalho para estudar as propriedades do monitoramento de redes, ´e apresentado no Apˆendice A. Inicialmente, s˜ao definidas os conceitos b´asicos e as propriedades de grafos e de seus elementos fundamentais. Em seguida, s˜ao apresentadas m´etricas de caracteriza¸c˜ao de redes complexas.
Apˆendice s˜ao utilizados na modelagem e an´alise das solu¸c˜oes propostas neste trabalho. Finalmente, no Apˆendice C, s˜ao apresentadas demonstra¸c˜oes complementares utilizadas em cada um dos Cap´ıtulos. Basicamente, esse Apˆendice cont´em uma s´erie de resultados utilizados no desenvolvimento te´orico apresentado neste trabalho.
1.6
Publica¸
c˜
oes relacionadas
Durante o desenvolvimento desta tese, foram publicados cap´ıtulos de livros, artigos em conferˆencias e em peri´odicos. As publica¸c˜oes relacionados `a esta tese s˜ao listadas a seguir.
Cap´ıtulos de livros
1. Medeiros, J.P.S.; Borges Neto, J.B.; Brito J´unior, A.M.; Pires, P.S.M. Learning Remote Computer Fingerprinting, Computational Intelligence in Digital Foren-sics, Springer, Studies in Computational Intelligence, ISSN 1860-949X, 2014 (aceito para publica¸c˜ao).
2. Medeiros, J.P.S.; Borges Neto, J.B.; Queiroz, G.S.D.; Pires, P.S.M. Intelligent Remote Operating System Detection, Case Studies in Intelligent Computing: Achievements and Trends, ISBN 978-1-4822-0703-3, CRC Press, Taylor and Francis, 2014.
Conferˆencias
1. Medeiros, J.P.S.; Brito J´unior, A.M.; Pires, P.S.M. A New Method for Recog-nizing Operating Systems of Automation Devices, 14th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA), 2009. Pro-ceedings of ETFA 2009, ISSN 1946-0759, pages 1-4, ISBN 978-1-4244-2727-7, 2009. 2. Medeiros, J.P.S.; Brito J´unior, A.M.; Pires, P.S.M.A Data Mining Based
Analy-sis of Nmap Operating System Fingerprint Database, 2nd International Workshop on Computational Intelligence in Security for Information Systems (CI-SIS), 2009. Computational Intelligence in Security for Information Systems, ISBN 978-3-642-04090-0, Springer, Advances in Soft Computing, ISSN 1867-5662, volume 63, pages 1-8, 2009.
3. Medeiros, J.P.S.; Brito J´unior, A.M.; Pires, P.S.M. An Effective TCP/IP Fin-gerprinting Technique Based on Strange Attractors Classification, 2nd International Workshop on Autonomous and Spontaneous Security (SETOP), 2009. Data Privacy Management and Autonomous Spontaneous Security, ISBN 978-3-642-11206-5, Springer, Lecture Notes in Computer Science (LNCS), ISSN 0302-9743, volume 5939, pages 208-221, 2010.
4. Medeiros, J.P.S.; Brito J´unior, A.M.; Pires, P.S.M. A Qualitative Survey of Ac-tive TCP/IP Fingerprinting Tools and Techniques for Operating Systems Identification, 4th International Workshop on Computational Intelligence in Secu-rity for Information Systems (CISIS), 2011. Computational Intelligence in SecuSecu-rity for Information Systems, ISBN 978-3-642-21322-9, Springer, Lecture Notes in Com-puter Science (LNCS), ISSN 0302-9743, volume 6694, pages 68-75, 2011.
Com-plex Systems for the Next Decade: A Conference in Honor of Eugene Stanley and Liacir Lucena, Book of Abstracts, page 37, 2011.
Peri´odicos
1. Medeiros, J.P.S.; Santos, S.R.; Brito J´unior, A.M.; Pires, P.S.M. Advances in Network Topology Security Visualisation, International Journal of System of Systems Engineering (IJSSE), ISSN 1748-0671, Inderscience, volume 1, number 4, pages 387-400, 2009.
2. Medeiros, J.P.S.; Brito J´unior, A.M.; Pires, P.S.M.Using Intelligent Techniques to Extend the Applicability of Operating System Fingerprint Databases, Journal of Information Assurance and Security (JIAS), ISSN 1554-1010, volume 5, issue 4, pages 554-560, 2010.
Cap´ıtulo 2
Projeto de monitoramento
“We can only see a short distance ahead, but we can see plenty there that needs to be done.”
Alan Mathison Turing
O entendimento dos fundamentos associados ao projeto de sistemas de monitoramento de redes de computadores ´e condi¸c˜ao necess´aria para o desenvolvimento te´orico a que se prop˜oe este trabalho. Este Cap´ıtulo tem por objetivo apresentar o contexto no qual enquadra-se o monitoramento de redes. Al´em disso, s˜ao apresentadas algumas defini¸c˜oes que ser˜ao utilizadas ao longo da tese.
2.1
Introdu¸
c˜
ao
O monitoramento em redes pode ser definido como o processo de realizar medi¸c˜oes de suas propriedades a fim de inferir alguma informa¸c˜ao de interesse a partir dessas medi¸c˜oes [Dilman & Raz 2002]. Essas informa¸c˜oes, denominadas predicados, podem ser repassados para outros sistemas que tˆem como responsabilidade atuar na rede a fim de mantˆe-la em um estado desej´avel. Dessa forma, n˜ao necessariamente as informa¸c˜oes sin-tetizadas s˜ao apresentadas ou assistidas por algum indiv´ıduo que desempenhe o papel de analista da informa¸c˜ao. Apesar de opcional, a visualiza¸c˜ao de dados de monitoramento pode auxiliar no processo de tomada de decis˜ao assistida, como por exemplo, atrav´es da minera¸c˜ao visual de dados. Por esse motivo, estendemos a defini¸c˜ao de monitoramento adicionando ao processo mais uma incumbˆencia, a da apresenta¸c˜ao de informa¸c˜oes por meio da visualiza¸c˜ao cient´ıfica [Card et al. 1999]. O processo de monitoramento, com a apresenta¸c˜ao visual de informa¸c˜oes, ´e definido a seguir e apresentado na Figura2.1.
Defini¸c˜ao 2.1 (Monitoramento). O processo de monitoramento ´e definido como a com-posi¸c˜ao de 3 etapas distintas: (i) aquisi¸c˜ao de dados extra´ıdos da rede, (ii) processamento dos dados a fim de inferir predicados da rede e (iii) apresenta¸c˜ao dos predicados com base
em um modelo visual adequado.
aquisição de dados 1
processamento 2
apresentação da informação 3
extração de dados da rede
informação dados
modelo de apresentação da informação rede
modelo
Figura 2.1: Representa¸c˜ao do processo de monitoramento de redes de computadores divido em trˆes etapas: (1) aquisi¸c˜ao de dados extra´ıdos da rede, (2) processamento dos dados a fim de extrair informa¸c˜oes relevantes ao entendimento do funcionamento de algum aspecto da rede em quest˜ao e (3) apresenta¸c˜ao da informa¸c˜ao com base em um modelo.
No processo de monitoramento, nem todos os n´os possuem a capacidade de extrair e repassar dados da rede para outros n´os. Isso pode acontecer por limita¸c˜oes computacionais do n´o ou por quest˜oes de acesso restrito ao n´o ou ao pr´oprio dado. Dessa forma, a seguinte defini¸c˜ao tem como objetivo discriminar os n´os que s˜ao usados para essa finalidade.
Defini¸c˜ao 2.2 (N´os observadores ou monitores). Dentre o conjunto de n´os da rede, o subconjunto de n´os que ´e designado para a etapa de aquisi¸c˜ao de dados ´e denominado
conjunto de n´os observadores.
Com o objetivo de estabelecer conceitos relevantes para o entendimento deste trabalho, faz-se necess´ario um esclarecimento mais detalhado sobre a etapa de aquisi¸c˜ao de dados. A forma como esses dados s˜ao capturados diferem quanto `a atividade ou passividade do n´o observador. Nesse sentido, s˜ao duas as formas como o n´o observador pode capturar esses dados da rede, definidas a seguir.
Defini¸c˜ao 2.3 (Aquisi¸c˜ao passiva). A aquisi¸c˜ao de dados ´e dita passiva quando o n´o observador coleta apenas dados locais ou que trafegam diretamente por ele.
Defini¸c˜ao 2.4 (Aquisi¸c˜ao ativa). A aquisi¸c˜ao de dados ´e denominada ativa quando o n´o observador utiliza-se de comunica¸c˜ao com outros n´os da rede a fim de gerar dados
relevantes para o processo de monitoramento.
A forma natural de captura dos dados ´e por meio de m´etodos passivos, em que n˜ao h´a necessidade de gerar tr´afego excedente na rede (ou overhead). Outra caracter´ıstica da aquisi¸c˜ao passiva de dados, ´e que o processo de aquisi¸c˜ao pouco altera o estado da rede. Dessa forma, a influˆencia do processo de monitoramento na medi¸c˜ao ´e minimizada. Por esse motivo, os m´etodos passivos devem ser utilizados preferencialmente. Exemplos de dados que s˜ao obtidos com a utiliza¸c˜ao de m´etodos passivos s˜ao: (i) tabelas de rotas e (ii) quantidade de dados trafegados por unidade de tempo.
Infelizmente, nem sempre informa¸c˜oes relevantes para o entendimento da rede podem ser extra´ıdas dos dados que s˜ao gerados espontaneamente. Um exemplo ´e quando o n´o que possui esse dado n˜ao pode ser um n´o observador. Nesses casos, a utiliza¸c˜ao de m´etodos ativos se faz necess´aria. Exemplos de dados que s˜ao obtidos com a utiliza¸c˜ao de m´etodos ativos s˜ao: (i) rotas (via traceroute), (ii) identifica¸c˜ao de servi¸cos em m´aquinas remotas (via port scan), e (iii) identifica¸c˜ao de dispositivos, como firewall, proxies, e sistemas operacionais (via operating system detection).
Na etapa de processamento, independente do m´etodo de aquisi¸c˜ao, os dados advin-dos da primeira etapa s˜ao utilizados para compor predicados sobre a rede. Temos como exemplo: (i) a reconstru¸c˜ao da topologia a partir do tra¸cado de rotas ou de tabelas de rotas, (ii) a classifica¸c˜ao do sistema operacional de dispositivos remotos a partir da an´alise de pacotes e (iii) a descoberta de servi¸cos e de sua vers˜ao a partir da an´alise de pacotes. Uma vez extra´ıdos, os predicados da rede podem servir de informa¸c˜ao de entrada para outros sistemas ou, simplesmente, podem ser apresentados em um modelo visual da rede. Exemplos de sistemas em que esses predicados podem servir de entrada s˜ao os sistemas de detec¸c˜ao de intrus˜ao (IDS, do inglˆes, Intrusion Detection System) e os sistemas de preven¸c˜ao contra intrus˜ao (IPS, do inglˆes,Intrusion Prevention System).
Dado o contexto de monitoramento de redes apresentado nesta Se¸c˜ao, ser˜ao definidos na pr´oxima Se¸c˜ao os problemas associados `a cria¸c˜ao de um sistema de monitoramento. Es-pecificamente, ser˜ao esclarecidos em quais pontos o desenvolvimento cient´ıfico ´e suficiente e em quais pontos deve-se avan¸car para tornar poss´ıvel a cria¸c˜ao de sistemas eficientes.
2.2
Fundamenta¸
c˜
ao
Um dos grandes desafios do monitoramento de uma rede como a Internet est´a rela-cionado `a escalabilidade, dada a quantidade de elementos que comp˜oem essa rede. Por exemplo, em uma rede como a Internet, cuja camada de rede ´e baseada no protocolo IP (Internet Protocol), o n´umero de n´os pode ser da ordem de 232, se considerarmos o campo
o campo de endere¸camento IPv6 (IP vers˜ao 6) [Deering & Hinden 1998]. Se considerarmos a utiliza¸c˜ao de redes privadas criadas, por exemplo, com a utiliza¸c˜ao de NAT (Network Address Translation) [Egevang & Francis 1994, Srisuresh & Egevang 2001] ou NAT-PT (Protocol Translation) [Tsirtsis & Srisuresh 2000], esse n´umero pode ser significativamente maior. Por esse motivo, o projeto de uma estrutura de monitoramento de uma rede desse porte deve ser embasado em estudos que considerem a otimiza¸c˜ao de cada uma das etapas do processo descrito na Figura2.1.
O projeto de um sistema de monitoramento, como o descrito na Defini¸c˜ao 2.1, deve ser eficaz, eficiente e escal´avel. Com o objetivo de evitar ambiguidades, neste trabalho, definimos os termos ‘eficaz’, ‘eficiente’ e ‘escal´avel’ para qualificar um sistema ou modelo.
Defini¸c˜ao 2.5 (Efic´acia). Entende-se por sistema (ou modelo) eficaz aquele que produz um resultado consistente em rela¸c˜ao `a sua entrada. De tal forma que se a entrada do sistema ´e consistente, a sa´ıda tamb´em deve ser consistente.
Em um sistema de monitoramento eficaz os predicados apresentados refletem de forma fiel o estado real da rede. Por exemplo, a topologia da rede apresentada pelo sistema expressa as conex˜oes entre os n´os de forma consistente, ou seja, a topologia apresentada n˜ao difere substancialmente da topologia real. Isso ´e poss´ıvel desde que os dados capturados e a inferˆencia de predicados sejam corretos, adequados e suficientes.
Defini¸c˜ao 2.6 (Eficiˆencia). Entende-se por sistema (ou modelo) eficiente aquele que minimiza a quantidade de tempo necess´ario para produzir resultados. Quando esse tempo atinge o limite te´orico m´ınimo, diz-se que a eficiˆencia ´e de melhor caso.
O tempo total necess´ario para realizar o monitoramento, desde a etapa de aquisi¸c˜ao dos dados at´e a apresenta¸c˜ao da informa¸c˜ao, ´e um parˆametro que caracteriza, em termos gerais, a eficiˆencia do sistema. Se esse tempo cresce de forma muito mais r´apida em rela¸c˜ao ao crescimento da pr´opria rede, ent˜ao o sistema n˜ao pode ser dito eficiente. Por exemplo, se o tempo necess´ario para capturar os dados adequados e suficientes para descrever a topologia de uma rede de n n´os ´e da ordem de 2n, a simples aquisi¸c˜ao desses dados impossibilita todo o processo de monitoramento para valores de n maiores que apenas algumas dezenas. Essa configura¸c˜ao hipot´etica caracteriza uma incompatibilidade entre a efic´acia e a eficiˆencia do sistema. Isso porque, no exemplo citado, para ser eficaz ´e necess´ario que haja um tempo de espera da ordem exponencial, o que torna o sistema ineficiente. ´E, ent˜ao, necess´ario um estudo para que haja um balanceamento entre essas duas qualidades do sistema.
Quando esse tipo de incompatibilidade surge, ´e comum o modelo recair em um pro-blema de otimiza¸c˜ao combinat´oria. Nessa classe de problemas, ´e natural a constata¸c˜ao da classifica¸c˜ao do problema como NP-´arduo (Nondeterministic Polynomial Time) [Cormen et al. 2009]. Problemas que pertencem a essa classe n˜ao s˜ao pass´ıveis de resolu¸c˜ao exata mesmo para instˆancias de tamanho razo´avel. Uma solu¸c˜ao para contornar esse impasse computacional se d´a por meio da utiliza¸c˜ao de algoritmos aproximativos. A utiliza¸c˜ao de algoritmos aproximativos objetiva a resolu¸c˜ao do problemas de forma aproximadamente ´otima. M´etodos de busca estoc´astica, como ´e o caso dos algoritmos gen´eticos [Goldberg 1989], s˜ao candidatos para resolu¸c˜ao desses problemas.
Al´em de capturar e processar os dados de forma eficaz e eficiente, ´e necess´ario arma-zenar as informa¸c˜oes antes de serem processadas. Por exemplo, sabendo que os dados utilizados para criar a topologia podem ser baseados na coleta de tabelas de rotas de al-gum protocolo de roteamento, se essas tabelas de roteamento crescem de forma linear em rela¸c˜ao ao n´umero de n´os da rede, a quantidade de espa¸co de armazenamento necess´ario pode extrapolar a capacidade do sistema. Isso porque a quantidade de espa¸co para arma-zenar as rotas ser´a quadr´atica em rela¸c˜ao ao n´umero de n´os. Portanto, para ser pratic´avel, o sistema, al´em de eficaz e eficiente, deve ser escal´avel. A Figura 2.2 ilustra as rela¸c˜oes entre as etapas do projeto de um sistema de monitoramento.
identificação de topologia 1
definição de observadores 2
otimização e aproximação 3
construção de predicados 4
elaboração da visualização 5
analista de informação
interação exploração
extrapolação
dados a
b
c d
e
f
g
h
Figura 2.2: Representa¸c˜ao das etapas do projeto de um sistema de monitoramento. As rela¸c˜oes entre as etapas do projeto s˜ao identificadas pelos r´otulos comentados a seguir: (a) descoberta da topologia da rede, (b) defini¸c˜ao dos n´os observadores a partir da topologia, (c) otimiza¸c˜ao de pro-cedimentos influenciados pela topologia, (d) modelo de gerenciamento dos dados adquiridos pelos observadores, (e) otimiza¸c˜ao de procedimentos influenciados pela localiza¸c˜ao dos n´os observado-res, (f) preprocessamento dos dados para inferˆencia de predicados, (g) an´alise dos dados a fim de estabelecer estruturas visuais adequadas para visualiza¸c˜ao da informa¸c˜ao e (h) apresenta¸c˜ao da informa¸c˜ao para o analista cuja intera¸c˜ao ajuda a extrapolar informa¸c˜oes acerca da topologia e explorar os dados por meio da interpreta¸c˜ao dos predicados.
Como apresentado pela Figura2.2, n˜ao h´a explicitamente uma etapa inicial no desen-volvimento de um sistema de monitoramento, j´a que h´a uma interdependˆencia entre as etapas. Nesse sentido, ´e importante ressaltar que a metodologia do projeto de um sistema de monitoramento deve considerar um desenvolvimento paralelo de etapas dependentes entre si. A seguir, ser˜ao levantadas alguma quest˜oes fundamentais que relacionam os desafios associados ao projeto desse sistema.
2.2.1 Topologia
A identifica¸c˜ao de topologia ´e um dos problemas mais desafiadores do projeto de um sistema de monitoramento. Mesmo a defini¸c˜ao do significado real do termo ´e algo que pode causar desentendimentos. Para evitar esse transtorno, define-se o que se deve entender pela utiliza¸c˜ao do termo topologia neste trabalho.
Defini¸c˜ao 2.8 (O conceito de topologia). Entende-se por topologia de uma rede, qual-quer descri¸c˜ao da interconex˜ao de seus n´os em um dado instante de tempo. No caso da topologia de redes de computadores, consideram-se n´os dispositivos com capacidades computacionais e de comunica¸c˜ao e suas conex˜oes como canais f´ısicos ou l´ogicos de
De acordo com essa Defini¸c˜ao, pode-se falar de dois tipos diferentes de topologia da Internet: (i) a da camada de enlace (n´ıvel 2) e (ii) a da camada de rede (n´ıvel 3). A identi-fica¸c˜ao da topologia de uma rede descentralizada como a Internet, baseada em um conjunto de protocolos n˜ao projetados para permitir tal identifica¸c˜ao, exige a utiliza¸c˜ao de t´ecnicas que n˜ao tˆem como garantir confiabilidade. Por exemplo, Albert et al. (2000) cometeram o engano de confiar em dados dessa natureza. Os problemas relacionados `a identifica¸c˜ao da topologia est˜ao intrinsecamente associados `a interpreta¸c˜ao de propriedades baseadas na m´a utiliza¸c˜ao dos dados [Alderson & Doyle 2010, Roughan et al. 2011]. Os trabalhos que evidenciam as raz˜oes desse problema atribuem a confus˜ao a dois fatos: (i) utiliza¸c˜ao de modelos diferentes que fazem suposi¸c˜oes tamb´em diferentes e (ii) diferen¸cas metodol´ogicas que resultam em resultados distintos [Doyle et al. 2005, Willinger et al. 2009]. De forma geral, os dados utilizados s˜ao gerados por ferramentas que tra¸cam rotas (traceroute) entre n´os e realizam uma composi¸c˜ao dessas rotas, ou s˜ao coletados atrav´es de informa¸c˜oes ori-ginadas de protocolos de roteamento, como o BGP (Border Gateway Protocol) [Rekhter et al. 2006]. Por´em, nem o tra¸cado de rotas [Zhang et al. 2011] nem o protocolo BGP fo-ram projetados para realizar o levantamento topol´ogico de uma rede [Roughan et al. 2011]. Portanto, com a utiliza¸c˜ao desses dados, tem-se o comprometimento da efic´acia do sistema. Para solucionar esse impasse, novas t´ecnicas de reconhecimento topol´ogico e modelos da Internet s˜ao desenvolvidos. Um novo conjunto de ferramentas de estudo, denominadas como tomografia da Internet [Coates et al. 2002], s˜ao uma alternativa (ou complemento) aos m´etodos de tra¸cado de rotas e baseados em tabelas de roteamento. Essas novas t´ecnicas apresentam, em rela¸c˜ao `a descoberta da topologia da Internet, uma forma eficaz de des-cobrir a topologia e prometem tamb´em ser razoavelmente eficientes e escal´aveis [Erikson et al. 2012]. Contudo, para se validar essas t´ecnicas ´e necess´aria uma avalia¸c˜ao dos seus resultados e essa avalia¸c˜ao deve ter como base um ambiente de testes significativamente parecido com a Internet. T´ecnicas e modelos que n˜ao possuam uma valida¸c˜ao adequada est˜ao sujeitos aos mesmos problemas identificados no trabalho de Albert et al. (2000). Por´em, o requisito de um ambiente de controle dessa magnitude demanda uma grande quantidade de recursos. Dessa forma, pesquisas nessa ´area necessitam de financiamento adequado e da colabora¸c˜ao de diversos sistemas autˆonomos que comp˜oem a Internet. Fi-nalmente, com base no que foi apresentado nesta Subse¸c˜ao, tem-se a defini¸c˜ao do primeiro problema associado ao projeto do sistema de monitoramento.
Defini¸c˜ao 2.9 (O problema da identifica¸c˜ao topol´ogica). Modelar de forma eficaz e identificar de forma eficiente a topologia da rede, principalmente, quando essa eficiˆencia depende de conhecimento pr´evio de propriedades da pr´opria topologia.
2.2.2 Observadores
No modelo de monitoramento centrado na rede (network centric monitoring) os estados da rede s˜ao monitorados. Exemplos de informa¸c˜ao que podem compor esses estados s˜ao: (i) a quantidade de pacotes perdidos, (ii) atrasos em cada n´o da rede e (iii) capacidade de transmiss˜ao de canais e de n´os [Ji & Elwalid 2002]. Naturalmente, se cada n´o da rede for um n´o observador, ent˜ao n˜ao h´a dificuldade na aquisi¸c˜ao dessas informa¸c˜oes, logo teremos uma aquisi¸c˜ao passiva eficaz. Por´em, considerar que cada n´o de uma rede como a Internet ir´a enviar de forma espontˆanea essas informa¸c˜oes n˜ao seria poss´ıvel, tampouco eficiente. Felizmente, por causa da correla¸c˜ao espacial de dados como atraso e perda de pacotes, ´e poss´ıvel estimar, a partir da observa¸c˜ao de um subconjunto de n´os da rede, as mesmas informa¸c˜oes nos demais n´os [Cao et al. 2000]. Ji & Elwalid (2002) desenvolveram um modelo baseado em uma ´arvoremulticast onde os n´os observadores est˜ao localizados nos n´os finais e possivelmente em n´os internos da ´arvore, como representado na Figura 2.3.
nós nais nós internos
Figura 2.3: Ilustra¸c˜ao de uma ´arvoremulticastondevrrepresenta o n´o raiz e dev1at´evkh (sendo ha altura eko fator de ramifica¸c˜ao da ´arvore) s˜ao representados os n´os finais.
Como resultado, Ji & Elwalid (2002), conclu´ıram que essa localiza¸c˜ao espec´ıfica dos n´os observadores, faz com que a quantidade de medidas necess´arias (mensagens que passam do n´o raiz vr at´e os n´os observadores) seja escal´avel quando n˜ao h´a perdas de pacotes
significativas. Esse resultado, al´em de importante do ponto de vista da efic´acia e da escalabilidade, mostra que a quantidade de n´os observadores ´e aproximadamente igual `
a kh, que representa uma fra¸c˜ao da quantidade total de n´os[i]. Todavia, a Internet n˜ao pode ser representada significativamente por meio de uma ´arvore, pois a redundˆancia de conex˜oes ´e uma caracter´ıstica de sua robustez. Al´em disso, considerar que todos os n´os folhas s˜ao monitores n˜ao ´e vi´avel. Nesse sentido, ´e razo´avel utilizar um modelo de estudo mais adequado para escolha dos n´os observadores. Portanto, tem-se a defini¸c˜ao do segundo problema associado ao projeto do sistema de monitoramento.
Defini¸c˜ao 2.10(O problema da escolha dos observadores). Dado que a topologia da rede ´e conhecida, escolher de forma ´otima, dentre os n´os acess´ıveis, aqueles que desempenhar˜ao
o papel de observadores.
Um poss´ıvel caminho para responder a essa quest˜ao tem como base o trabalho de Liu et al. (2011), que utiliza a representa¸c˜ao de espa¸co de estado (state space representation) para estudar a controlabilidade de redes complexas modeladas como sistemas lineares dinˆamicos [Kalman 1963]. A seguir, ´e feita uma descri¸c˜ao introdut´oria dessa teoria.
[i]Considerando que o n´umero de n´os n = Ph
i=0k
i, a quantidade de n´os finais ´e de kh, que se trata
apenas do ´ultimo termo do somat´orio. Especificamente, a quantidade de n´os finais pode ser descrita como
uma fun¸c˜aof(n, k) = (n(k−1) + 1)/k. Por exemplo, parak= 2, essa quantidade ´e de aproximadamente