UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias...

372
UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias Matemáticas y Físicas Carrera de Ingeniería en Sistemas Computacionales “VscanNet” Visualización y Escaneo de Red PROYECTO DE GRADO Previo a la Obtención del Título de: INGENIERO EN SISTEMAS COMPUTACIONALES Autor(es): Glenda Del Rocío Tapia Parada Danilo Calle Fierro Betty América Villacres GUAYAQUIL-ECUADOR Año: 2004 - 2005

Transcript of UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias...

Page 1: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

UNIVERSIDAD DE GUAYAQUIL

Facultad de Ciencias Matemáticas y Físicas

Carrera de Ingeniería en Sistemas Computacionales

“VscanNet” Visualización y Escaneo de Red

PROYECTO DE GRADO

Previo a la Obtención del Título de:

INGENIERO EN SISTEMAS COMPUTACIONALES

Autor(es):

Glenda Del Rocío Tapia Parada

Danilo Calle Fierro

Betty América Villacres

GUAYAQUIL-ECUADOR

Año: 2004 - 2005

Page 2: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

II

AGRADECIMIENTO.

Agradezco a Dios por

todas sus bendiciones a

mis padres por su apoyo

y ayuda incondicional,

como también a todas

las personas que de uno

u otro modo colaboraron

en la realización de este

trabajo y especialmente

al Ing. Carlos Carranza

por su invaluable ayuda.

Glenda Tapia Parada

Page 3: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

III

AGRADECIMIENTO.

Agradezco de manera

cordial al Ing. Carlos

Carranza, que con su

sabiduría y experiencia

nos orientó de manera

muy acertada a la

culminación de este

proyecto.

Danilo Calle Fierro

Page 4: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

IV

DEDICATORIA.

Dedico este Trabajo a

Mis Padres, a mi Hija y

Hermanas, quienes

siempre estuvieron

conmigo brindándome

su apoyo de una forma

incondicional.

Glenda Tapia Parada

Page 5: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

V

DEDICATORIA.

Dedico el desarrollo y

culminación de este

proyecto a Dios. A mis

padres y hermanas que

han sido fuentes de

inspiración y me

ayudaron a seguir

adelante.

Danilo Calle Fierro

Page 6: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

VI

TRIBUNAL DE GRADUACIÓN

Ing. Abel Alarcón

Presidente CCG

Ing. Carlos Carranza P. Ing. José Luis Peralta

Profesor / Vocal Profesor / Vocal

Ab. Juan Chavez Atocha

Secretario

Page 7: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

VII

DECLARACIÓN EXPRESA

“La autoría de la tesis de grado corresponde exclusivamente al suscrito(s),

perteneciendo a la Universidad de Guayaquil los derechos que generan la

aplicación de la misma”

(Reglamento de Graduación de la Carrera de Ingeniería en Sistemas

Computacionales, Art. 26)

Page 8: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

RESUMEN

VscanNet (Sistema de Visualización y Escaneo de Red) fue creado para

permitir los usuarios administradores de red poder visualizar el esquema

lógico de las redes que administran; para de esta forma facilitar la tarea de

monitorear la red dado a que nuestra aplicación también permite conocer la

información de cada elemento de la red(NODO-PC’S) como también su

estado operacional.

Esta aplicación facilita el control a través de funciones sencillas que

permiten monitorear una red cuya infraestructura se basa en la arquitectura

TCP/IP.

Page 9: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

IX

INDICE GENERAL

AGRADECIMIENTO II

DEDICATORIA III

TRIBUNAL DE GRADUACIÓN IV

DECLARACIÓN EXPRESA V

RESUMEN VI

INDICE GENERAL VII

CAPITULO 1 1

INTRODUCCIÓN

1. Antecedentes 1

1.2. Problema 3

1.2.1 Causas y Consecuencias Del Problema Identificado 3

1.2.2.- Árbol de Problemas 4

1.3.- Solución del Problema 5

1.4. -Definición del Proyecto 5

Page 10: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

X

1.5.- Determinación de los Objetivos 6

Objetivo Global 6

Objetivos específicos 6

1.5.1.- Árbol de Objetivos 7

1.6.- Alcance del Proyecto 8

1.7. -Beneficios del Proyecto 9

1.8.- Cronograma 9

1.9.- Recursos necesarios para el proyecto 10

1.9.1.- Recursos estimables de hardware 10

1.9.2.- Recursos estimables de software 11

1.9.3. Recurso Humano 13

1.10.- Metodología del Proyecto 13

1.10.1.- Metodología del Análisis 13

1.10.2.- Metodología del Diseño 14

Page 11: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XI

CAPITULO 2 15

ANÁLISIS

2.1.- Levantamiento de Información 15

2.2.- Análisis de Requerimientos 19

2.2.1.- Escaneo de la Red 19

2.2.2.- Visualización de la Red 19

2.2.3. Presentación de la Información 20

2.2.4. Reportes 21

2.2.5. Alertas 21

2.3.-Diccionario de Datos 22

2.4.- Diagrama Entidad Relación (DER) 24

2.4.1.- Especificación de objetos 26

2.5.- Diagrama Flujo de Datos (DFD) 31

2.5.1.- Especificación de procesos 32

Page 12: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XII

VScanNet Administrador 32

VScanNet Descubridor 33

VScanNet Agente 33

VScanNet Servidor 34

CAPITULO 3 36

DISEÑO

3.- Diseño de Datos 36

3.1.A.- Tablas Principales 37

3.1.1.- El grupo Usuarios 37

3.1.2.- El grupo Redes 39

3.1.3.- Configuración Inicial 39

Page 13: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XIII

3.1.4.- Configuración Actual 40

3.1.B.- Tablas Temporales 46

3.1.1.- Configuración de Redes 47

3.1.2.-Configuración de Nodos 47

3.2.- Diseño Arquitectónico 48

3.2.1.- VscanNet Administrador 49

3.2.1.1.-Ingreso al Sistema 50

3.2.1.2.- Envío de Datos al Descubridor 50

3.2.1.3.- Graficar Red 51

3.2.1.3.1.- Mapa Configuración Inicial 53

3.2.1.3.2.- Mapa de Red – Actual 53

3.2.1.3.3.- Mapa de Red Histórico 54

3.2.1.- VscanNet Administrador 49

3.2.2.- VscanNet Servidor 54

Page 14: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XIV

3.2.3.- VscanNet Descubridor 58

3.2.4.- VscanNet Agente 63

3.3.- Diseño de Interfaz 71

3.3.1.- Acceso al Sistema 71

3.3.2.- Inicio de Sesión 72

3.3.3.- Pantalla Principal 73

3.3.4.- Ventanas de mensajes 76

3.3.4.1.- Mensajes de Advertencia 76

3.3.4.2.- Mensajes de opción 77

3.3.4.3.- Mensajes de Error 78

3.3.4.4.- Mensajes de Información 78

3.3.5.- Opciones de Menú 79

3.3.5.1.- Descubrimiento 79

3.3.6.A.- Mapas de Red 80

Page 15: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XV

3.3.6.1.-Configuración Inicial 80

3.3.6.B.-Mapas de red 81

3.3.6.1.-Gráfica de Red 81

3.3.6.2.- Propiedades del Nodo 83

3.3.7.-Herramientas 84

3.3.7.1.-Cmd 84

3.3.7.2.-Ping 85

3.3.7.3.-Reportes 86

3.3.7.3.1.- Visualizar por pantalla 87

3.3.7.3.2.- Impresora 88

3.3.8.- Usuarios 89

3.3.8.1.- Mantenimiento de usuarios 89

3.3.8.2.- Buscar Usuario 90

3.3.8.3.- Cambio de contraseña 91

Page 16: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XVI

3.3.9.- Ayuda 92

3.3.9.1.- Temas de Ayuda 92

3.3.9.2.- Acerca De 93

3.4.- Diseño de Componentes 94

CAPITULO 4 96

DESARROLLO Y PRUEBA DEL SISTEMA

4.1 Desarrollo del Sistema 96

4.1.1. Creación de la base de datos 96

4.2. Seguridades 99

Sistema Operativo 99

Base de Datos 100

Seguridad del Sistema 100

4.3. Pruebas del Sistema 101

Page 17: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XVII

4.3.1.-Modelo de Prueba 101

4.3.2.- Prueba de Interfaz 102

CAPITULO 5 108

IMPLEMENTACIÓN DEL SISTEMA

5.1. Elementos Físicos 108

5.2. Elementos lógicos 109

5.3. Elementos Humanos 110

5.3.1.-Desarrolladores del sistema 110

5.3.2.-Usuarios del sistema 111

CAPITULO 6 109

RECOMENDACIONES Y CONCLUSIONES DE LA TESIS

6.1.-Recomendaciones 112

Page 18: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XVIII

6.1.1.-Hardware 112

6.1.2.- Software 113

6.1.3.- Cableado(Conexiones de Red) 114

6.1.4.- Puesta en Marcha 114

6.1.5.- Seguridades 115

6.2. CONCLUSIONES 116

6.2.1.-Por Glenda Del Rocío Tapia Parada 116

6.2.2.-Por Betty América Villacrés 117

6.2.3.-Por Danilo Calle Fierro 118

ANEXO 119

Referencias Bibliográficas 119

Page 19: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XIX

INDICE DE FIGURAS

CAPITULO 2 15

ANÁLISIS

Figura 2.1: Visualización de la Red 20

Figura 2.2: Diagrama Entidad Relación 25

Figura 2.3: Especificación de Objetos 26

Figura 2.4: Tabla Usuario 27

Figura 2.5: Tabla Información Inicial 27

Figura 2.6: Tabla Información Nodo 28

Figura 2.7: Tabla Información Unidades De Disco 28

Figura 2.8: Tabla Información Procesador 29

Figura 2.9: Tabla Información Paquetes 29

Page 20: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XX

Figura 2.10: Tabla Información Sistemas Operativos 30

Figura 2.11: Tabla Información Interfaces de Red 30

Figura 2.12: Diagrama Flujo de Datos 31

CAPITULO 3 36

DISEÑO

Figura 3.1: Tablas Principales 36

Figura. 3.2: Tablas Temporales 37

Figura 3.3: PIR 66

Figura a3.4: Detalle Paquete PIR 69

Figura 3.5: Presentación del Sistema 71

Figura 3.6: Inicio de Sesión 72

Figura 3.7: Pantalla Principal 75

Figura 3.8: Ventanas de Mensajes – Advertencia 76

Page 21: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXI

Figura 3.9: Ventanas de Mensajes – Opción 77

Figura 3.10: Ventanas de Mensajes – Error 77

Figura 3.11: Ventanas de Mensajes – Información 78

Figura 3.12: Descubrimiento 79

Figura 3.13: Descubrimiento(mensaje) 79

Figura 3.14: Mapas de Red: Configuración Inicial 81

Figura 3.15: Mapas de Red: Gráfica de Red 83

Figura 3.16: Mapas de Red: Propiedades 84

Figura 3.17: Herramientas: Cmd 85

Figura 3.18: Herramientas: Ping 86

Figura 3.19: Herramientas: Reportes – Pantalla 87

Figura 3.20: Herramientas: Reportes: Imprimir 88

Figura 3.21 : Usuarios – Mantenimiento de Usuarios 89

Figura 3.22 : Usuarios – Mantenimiento de Usuarios – Buscar 90

Page 22: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXII

Figura 3.23 : Usuarios – Cambio de Contraseña 91

Figura 3.24: Ayuda / Temas de Ayuda 92

Figura 3.25: Ayuda / Acerca De 93

Page 23: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 1

CAPITULO 1

INTRODUCCIÓN

1.- Antecedentes

Con la creación de las redes de computadoras, el compartir información y el

uso de los servicios que brindan las redes permite una mejora en el

desempeño de las actividades tanto de los usuarios como de las empresas,

pues se coordina esfuerzos a cortas y grandes distancias.

Actualmente en nuestro entorno existen empresas que basan sus negocios en

la velocidad y la calidad de los procesos que se ejecutan en los equipos que

poseen; por ende nace la necesidad de contar con una aplicación que facilite la

visualización gráfica y el control del estado de operación de los equipos con

que cuentan. Asimismo resulta prioritario el poder estar un paso adelante para

poder evitar inconvenientes, pérdidas de tiempo y el poder realizar un manejo

más inteligente de sus recursos de infraestructura.

Page 24: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 2

Motivo por el cual la aplicación que a continuación se describe plantea brindar

una solución que facilite el control y que a través de un mecanismo flexible y

sencillo permita el monitoreo de la red con que cuenta una empresa cuya

infraestructura se encuentre dentro de un entorno de red basado en la

arquitectura TCP/IP.

De esta forma se podrán atacar la ineficiencia e inconvenientes que conllevan

modelos de administración de redes segmentadas y poco proactivos. Donde

los beneficiarios directos serían los grupos de usuarios o administradores y por

ende los Gerentes de IT.

A veces para poder visualizar el estado de un equipo de una red es necesario

estar físicamente en el, para después ejecutar una serie de comandos y/o

aplicaciones propias del sistema operativo que muestren el rendimiento del

mismo.

La información que se obtiene como resultado de la metodología antes descrita

es importante pero no suficiente sobre todo en el ámbito visual. Más aún si lo

que se desea es poder conocer el estado operacional e información de un nodo

de la red u obtener una visualización general de la misma, para de esta forma

optimizar el tiempo y los recursos con los que cuenta una red.

Page 25: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 3

1.2.- Problema

1.2.1 Causas y Consecuencias Del Problema Identificado

El no contar con el acceso a toda la información de la infraestructura lógica

de la red de una manera visual, simple y detallada.

El no tener una interfaz amigable que muestre la información de la

infraestructura de la red.

Estos dos puntos anteriores traen como consecuencia en muchas ocasiones

pérdidas de tiempo en poder realizar un diagnóstico rápido de toda la red.

El que en ocasiones se necesite de la ejecución de comandos y/o aplicaciones

para poder obtener información referente al estado de un nodo; dificulta el

poder controlar los recursos con que cuenta la red así como el poder realizar

un rápida detección y lecturas de problemas.

Page 26: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 4

1.2.2.- Árbol de Problemas

C A U S A

S

E F E C T O

S

Falta de optimización de los activos

existentes

Decremento en la

eficiencia

Pérdida de la inversión

Decremento en la

productividad

PÉRDIDA DE TIEMPO

FALTA DE AUTOMATIZACION

No contar con una interfaz gráfica

amigable

Complicado acceso a la información de

la red

Estar físicamente en el equipo para

ejecutar comandos y / o aplicaciones

Page 27: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 5

1.3.- Solución del Problema

Dadas las causas anteriormente descritas surge la necesidad de crear una

aplicación que facilite la gestión del administrador de la red mediante la

visualización general de toda la infraestructura de la red de manera lógica.

Solución que facilitará el control de los recursos con que cuenta la red, donde

se podrá tener acceso a la información de cada nodo de la red de una manera

más rápida y eficiente.

1.4. -Definición del Proyecto

De esta forma se presenta una solución que permite visualizar la red luego de

efectuar un descubrimiento en un nivel lógico(Direcciones IP) de la misma. A

esta aplicación la denominaremos:

VscanNet (Sistema de Escaneo y Visualización de la Red)

Como funciones principales de este programa tenemos las siguientes:

Escaneo de la red -> Descubrimiento de la Red

Visualización de la red:

Mapa Lógico de la red

Mapa Configuración Inicial Mapa Actual Mapa Histórico

Page 28: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 6

Presentación información de un Nodo

Alertas

Reportes

1.5.- Determinación de los Objetivos

Objetivo Global

Desarrollo de una aplicación con el fin de aportar una solución que pueda

competir en condiciones de ventaja en el mercado, donde el diseño de sus

funciones se basaran en mejorar el CONTROL de la red.

Objetivos específicos

Evitar pérdidas de tiempo

Lograr un manejo más inteligente de los recursos de infraestructura de red.

Page 29: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 7

1.5.1.- Árbol de Objetivos

Visión más integral detallada y sencilla

de la infraestructura de

red

Toma De decisiones más acertadas debido a inf. de los activos de

red

Mayor eficiencia /mejor interacción entre

personal e infraestructura

Mejor acceso y control

a los recursos de red

Incremento en la

productividad

Fácil Acceso a información de la

red sin previa personalización

CONTROL

Page 30: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 8

1.6.- Alcance del Proyecto

1.6.1. El desarrollo de VscanNet está orientado a un entorno netamente

Windows(clientes y administradores).

El diseño de VscanNet se basa en la información que un Cliente Windows

envía al servidor.

1.6.2. VscanNet se implementará dentro de un entorno de red basado solo en

arquitectura TCP/IP.

El sistema se ha desarrollado orientado a las capas 2 Capa de Red y 3 Capa

de Enlace del modelo TCP/IP

1.6.3. VscanNet sólo podrá trabajar en redes que tengan direcciones IP

versión 4(IPV4)

Por ser la versión más común y conocida en la actualidad como también la más

usada en algunas empresas.

1.6.4. VscanNet no especificará la topología que tenga una red al momento de

graficarla; no considerará si es una red Token Ring, Anillo, Estrella, etc.

Para el sistema será indiferente la misma.

El diseño de la opción donde el sistema grafica a la red, se estandarizó a una

sola topología; a la Ethernet considerando que lo más relevante para el

usuario es el conocer como está dividida lógicamente su red(Direcciones IP) y

no ver el enlace físico como tal.

Page 31: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 9

1.7. -Beneficios del Proyecto

Permitir una visión más integral, detallada y sencilla de la infraestructura de

red.

Acceso inmediato a la información de la red sin previa personalización

Mejorar el acceso y control a los recursos de la red

Mayor eficiencia, mejor interacción entre el personal y la infraestructura

Toma de decisiones más acertada, debido a la presentación de la

información de los activos de la red.

1.8.- Cronograma

Ver Anexo

Page 32: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 10

1.9.- Recursos necesarios para el proyecto

1.9.1.- Recursos estimables de hardware

Para la realización del proyecto se cuenta con los equipos:

HP Notebook PC Pavilion n5000

Procesador Intel Pentium III 850 Mhz

128 Mb de RAM

Disco duro: 20 Gb

PC Pentium IV

Procesador Intel Pentium IV 2.4

256 Mb de RAM

Disco Duro: 80 Gb

PC Pentium III

Procesador ADM 1.00 GHZ

376 Mb de RAM

Disco Duro: 80 Gb

Page 33: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 11

PC Pentium IV

Procesador Intel Pentium IV 2.8 Ghz

256 Mb de RAM

Disco Duro: 80 Gb

1.9.2.- Recursos estimables de software

Se ha estimado que el sistema se desarrollará bajo una plataforma de :

Sistema Operativo:

Windows NT

Windows XP Professional

Windows 98 SE

Lenguajes de programación:

Visual Basic 6.0:

Desarrollo de la interfaz gráfica de la aplicación (Administrador

VscanNet)

Desarrollo del Cliente VscanNet (Agente VscanNet)

Java: Desarrollo del Servidor VscanNet

Page 34: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 12

Base de datos:

SQL Server 2000

Extras

Icon Lover: Diseño de iconos

Icon Search: Obtención de iconos

Robohelp5X: Creación de ayuda del sistema

Cristal Report 5.0: Reportes VscanNet

Create Install Trial V2003.3.5 (Demo 30 días): Creación de Instalador del

Agente de la Red.

API’s de Windows

Page 35: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 13

1.9.3. Recurso Humano

El desarrollo del sistema VscanNet está a cargo de las siguientes personas:

Glenda Tapia Parada: Desarrollo de Interfaz VScanNet

Danilo Calle Fierro: Desarrollo del Cliente VscanNet

Betty Villacrés: Desarrollo del Servidos VscanNet

1.10.- Metodología del Proyecto

1.10.1.- Metodología del Análisis

El desarrollo de esta aplicación se ha definido mediante una metodología de

Análisis Clásico, establecido de la siguiente forma:

Levantamiento de información: Se ha realizado un levantamiento de

información investigativo. Como recursos se ha requerido el uso del

Internet casi en su totalidad, como también se a recurrido a textos y

manuales.

Diccionario de Datos (DD): Donde se definen las características de

cada elemento principal del sistema, como cada campo de la base de datos

del sistema.

Page 36: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 14

Diagrama Entidad Relación (DER): Donde se representa las relaciones

entre los objetos de datos.

Diagrama Flujo de Datos (DFD): Para representar como se transfieren

los datos a medida de que se avanza en el sistema.

1.10.2.- Metodología del Diseño

El desarrollo de esta aplicación se ha definido mediante una metodología de

Diseño Clásico conformado por los siguientes módulos:

Diseño Arquitectónico: Definición de la arquitectura de todo el sistema

VscanNet, orientado al flujo de datos del mismo

Diseño de Interfaz: Definición de cada una de las pantallas que

conforman la interfaz del sistema.

Page 37: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 15

CAPITULO 2

ANÁLISIS

2.1.- Levantamiento de Información

Se realizó un levantamiento de información Investigativo. Para la tarea de

investigación y recopilación de información se ha tomado referencia

básicamente de los siguientes medios: Textos e Internet.

Entre los temas en que se basó nuestra investigación se pueden citar:

Protocolos SNMP e ICMP, IP, TCP, UDP, análisis de tráfico de red, monitoreo

de redes, escaneo de puertos y redes, como capturar paquetes IP, entre otros

temas.

Page 38: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 16

Como referencia a continuación se detallan algunas direcciones de donde se

ha obtenido esta información, como también el nombre de los textos:

Textos:

TCP/IP Dr. Sidnie Feit

Osborne McGraw-Hill

Ingeniería del Software – Un Enfoque Práctico

Roger s. Pressman

Links

www.arrakis.es/~tobal/snmp.htm

www.net-snmp.org/tutorial

http://elqui.dcsc.utfsm.cl/

http://es.tldp.org/Articulos-periodisticos/jfs/snmp/snmp.html

http://tiburon.dit.upm.es/devel-doc/isabel/doc/devel/monitor/monitor.html

http://www2.rad.com/networks/1995/snmp/snmp.htm

Page 39: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 17

http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/snmp.htm

http://publib.boulder.ibm.com/tividd/td/ITMBI/SC32-1403-

00/es_ES/HTML/BI52UGmst272.htm

http://www.arrakis.es/~terron/tcpdump.html

http://www.sun-microsystems.org/Tecnicas_de_Deteccion/x300.html

http://webmaster.bankhacker.com/monitorizacion/mrtg.phtml

http://www.adremsoft.com

http://www.coit.es/publicac/publbit/bit102/quees.htm

http://www.linux.org.pe/pipermail/linux-dev

http://www.arrakis.es/~gepetto/redes/rog08p3.html

http://www.arrakis.es/~gepetto/redes/rog08p6.html

informatica.uv.es/iiguia/2000/R/snmp.ppt

es.tldp.org/Articulos-periodisticos/jfs/snmp/snmp.htm

http://www-gist.det.uvigo.es/~jrial

http://www.dll-files.com/dllindex/dll-files.shtml

Page 40: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 18

http://www.solocursosgratis.com/curso_gratis_manual_de_api's_win32_en_visu

al_basic-slccurso590903.htm

http://www.lawebdelprogramador.com/cursos/mostrar.php?id=93&texto=Visual+

Basic

http://programacion.com/foros/32/msg/61924/

http://www.elguruprogramador.com.ar/libreria_de_codigo/vb.asp

http://www.trucostecnicos.com/directorio/categoria.php?id=7&cat=Visual%20Ba

sic

http://www.abcdatos.com/tutoriales/programacion/visualbasic/genericos.html

http://www.elguille.info/vb/vb_resumen.htm

www.abcdatos.com/programas/ programacion/visualbasic.html

www.templobinario.com/codfuente/index.php

www.programacion.net/direcciones/visualbasic

www.lawebdelprogramador.com/codigo/

http://programatium.com/vb/

Page 41: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 19

2.2.- Análisis de Requerimientos

A fin de poder facilitar la tarea de monitorear la red mediante el uso de una

herramienta que permita conocer el esquema lógico de la misma en una forma

visual. A continuación se detallan cada una de las opciones que VscanNet

ofrece para poder cumplir esta tarea:

2.2.1.- Escaneo de la Red

Esta función permitirá descubrir todas las direcciones IP de la red. Para ello se

desarrollará un programa cliente el cual será residente y se instalará en cada

una de las estaciones de trabajo de la misma.

Este programa se ejecutará de tal forma en que los usuarios no lo puedan

alterar.

2.2.2.- Visualización de la Red

Luego de que se han descubierto todas las direcciones IP de la red, VscanNet

ofrece la opción de visualizar en forma gráfica el “Mapa Lógico de la red”; el

cual básicamente mostrará a la estación de trabajo con la dirección IP que le

corresponde.

Page 42: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 20

Figura 2.1: Visualización de la Red

192.168.2.3

192.168.2.1

192.168.2.5

2.2.3. Presentación de la Información

VscanNet tendrá la capacidad de indicar al Usuario Administrador la

información del nodo activo de la red mediante un clic derecho en el mismo.

Esta información contendrá:

Información del sistema

Nombre del Nodo: Nombre del PC

Estado operacional:

Nombre_PC

Disco Duro: Cap. Total Cap. Utilizada

Capacidad de Memoria

Sistema Operativo

Procesador

Entre otros

Page 43: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 21

Host Up (Conectado)

Host Down (No Conectado)

2.2.4. Reportes

La información que se presentará considerará las propiedades de cada nodo

de la red; como también permitirá al usuario el poder contar con todo el

esquema lógico de la red fácilmente.

Así se brindará la posibilidad de realizar estudios de posibles problemas en los

equipos y de esta forma estar un paso delante de una situación problemática.

Estos reportes podrán ser manejados de dos formas:

Se los podrá visualizar por pantalla

Se los podrá imprimir directamente.

2.2.5. Alertas

Una vez detectado un problema en algún dispositivo, se enviará un mensaje al

escritorio del administrador.

Entre los eventos que se considerarán ser notificados tenemos:

Host disponible /no disponible

Capacidad de disco duro crítica

Memoria Insuficiente

Normal Nuevo Alerta

Page 44: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 22

2.3.-Diccionario de Datos

A continuación se detalla algunos de los elementos esenciales de nuestra

aplicación:

Descripción: Un nodo es el nombre que se le da a un punto de conexión en una red. Puede representar a una Pc, un router, una impresora, etc. Para nuestra aplicación un nodo va representar a una PC.

Nombre: NODO

Tipo: Elemento Físico Fuente: La Red

Descripción: Un paquete es la forma en que se transmite la información a través de la red.

Nombre: PAQUETE

Tipo: Elemento de Datos Fuente: Nodo

Page 45: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 23

Descripción: Protocolo de Identificación de Requerimientos

Protocolo diseñado por los desarrolladores de VscanNet para

gestionar la información de los nodos en una red y enviarla al

servidor.

Nombre: PIR

Tipo: Protocolo Fuente: Agente - Administrador

Descripción:

Es el nombre que se le da al programa que está corriendo en un

nodo de la red, de esta forma un agente representa las PC‟s en

las que esté instalado y que forman parte de la red.

Nombre: AGENTE

Tipo: Software Fuente: La Red

Page 46: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 24

2.4.- Diagrama Entidad Relación (DER)

De acuerdo a la metodología de Análisis y diseño utilizada en el desarrollo de

nuestra aplicación, se han creado las siguientes tablas que contendrán toda la

información que nuestro sistema controlará:

Nombre de Tabla Especificación

USUARIO

Almacenamiento de la información de los usuarios que

tendrán acceso al sistema VscanNet. Por ejemplo:

Nombres, conntraseña, turnos, etc.

NODO Información de cada nodo de la red. Por ejemplo:

Dirección IP, Máscara, Dirección de Red, etc.

INF_INICIAL

Almacenará la información obtenida al realizar el

descubrimiento de toda la red.

PROC_EJEC Información de cada proceso que se esté ejecutando en

un nodo. Por ejemplo: Word, Excel, etc.

INF_PROCESS Almacenará el nombre del procesador y el porcentaje

ocupado

INTERFACES_RED Información referente al tipo de tarjeta de red y su

dirección física.

INF_UNIDADES_HD

Información referente al o los discos duros. Almacenará

el volumen del disco, la serie, el tamaño total y el tamaño

ocupado.

INF_MEMORIA

Almacenará la información de la memoria del pc,

Memoria física total y disponible; memoria virtual total y

disponible, memoria cargada.

INF_SO Información del Sistema operativo de cada PC, como el

nombre del SO, la versión y el usuario del SO.

Page 47: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 25

Figura 2.2: Diagrama Entidad Relación

USUARIO

INF_INICIAL

INTERFACES_RED

INF_PROCESS

INF_UNIDADES_HD

INF_MEMORIA

NODO

PROC_EJEC

INF_SO

Page 48: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 26

2.4.1.- Especificación de objetos

Figura 2.3: Especificación de Objetos

Page 49: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 27

Figura 2.4: Tabla Usuario

Figura 2.5: Tabla Información Inicial

Page 50: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 28

Figura 2.6: Tabla Información Nodo

Figura 2.7: Tabla Información Unidades De Disco Duro

Page 51: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 29

Figura 2.8: Tabla Información Procesador

Figura 2.9: Tabla Información Paquetes

Page 52: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 30

Figura 2.10: Tabla Información Sistemas Operativos

Figura 2.11: Tabla Información Interfaces de Red

Page 53: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 31

2.5.- Diagrama Flujo de Datos (DFD)

Figura 2.12: Diagrama Flujo de Datos

Page 54: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 32

2.5.1.- Especificación de procesos

VScanNet Administrador

Objetivo:

Permite al usuario visualizar la red en un esquema lógico. Este módulo es el

encargado de realizar la gráfica(Mapas de red).

Descripción:

La visualización de la red se basa en la información que se encuentra

almacenada en la base de datos. Esta tarea esta a cargo de los módulos

descubridor y servidor del sistema.

VScanNet Descubridor

Objetivo:

Descubrir todas las direcciones IP de una red, para así formar el esquema

lógico de la misma.

Descripción:

Para poder iniciar el descubrimiento el usuario a través del VScanNet

administrador envía a este módulo las direcciones de red que desea descubrir

con sus máscaras respectivas.

Page 55: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 33

Luego por medio de un broadcast que realiza a la red empezará a descubrir

todas las direcciones IP de la misma. Una vez terminado este proceso, como

segundo paso grabará la información en la base de datos

VScanNet Agente

Objetivo:

Enviar la información del nodo de la red(PC)al servidor.

Descripción:

El Agente enviará toda la información de la PC donde esté instalado al servidor

a través del paquete “PIR” cada minuto.

El Agente estará instalado en cada una de las máquinas de la res y se activará

cada vez que se enciendan estas y estarán ejecutándose hasta que se

apaguen.

Page 56: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 34

VScanNet Servidor

Objetivo:

Administrar la información que recibe de cada uno de los agentes de la red y

almacenarla en la base de datos.

Descripción:

El servidor realiza los siguientes procesos antes de almacenar la información a

la base de datos:

Analizar la dirección IP recibida para poder definir la dirección de red a la que

pertenecen. Para ello obtiene la dirección IP y la máscara que han sido

enviadas mediante el paquete PIR desde el AGENTE; luego mediante una

operación lógica determinará a que red pertenece.

Una vez obtenida la dirección de red, procederá a organizar todas las

direcciones IP recibidas de acuerdo a la red a la que pertenecen. De esta

forma se tendrá el siguiente esquema:

Dirección de Red Direcciones IP Máscara

Después de tener todas las direcciones IP organizadas de acuerdo a la red a la

que pertenecen, el siguiente paso es el de almacenar toda esta información a

la base de datos.

Page 57: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 35

La información que se almacenará a parte del esquema especificado

anteriormente, será todas las características definidas en el paquete RIN.

Page 58: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 36

CAPITULO 3

DISEÑO

3.- Diseño de Datos

La base de datos que usa la aplicación VScanNet se basa en 10 tablas

principales y 9 tablas temporales usadas para los reportes. Las 19 tablas son

las siguientes:

INF_INICIAL

INF_MEMORIA

INF_PROCESS

INF_SO

INF_UNIDADES_HD

INTERFACES_RED

NODO

PAQUETES

PROC_EJEC

USUARIO

Fig. 3.1: Tablas Principales

Page 59: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 37

3.1.A.- Tablas Principales

Las tablas principales se pueden agrupar en dos grupos: el grupo usuarios y

el grupo redes.

3.1.1.- El grupo Usuarios

El grupo usuarios corresponde a la tabla USUARIO. Esta guarda los datos

principales de un usuario que necesite ingresar al sistema. Los campos de

esta tabla son:

Usuario.- Contiene el identificador del usuario, también llamado

nombre de usuario

TMP_INF_INICIAL

TMP_INF_MEMORIA

TMP_INF_PROCESS

TMP_INF_SO

TMP_INF_UNIDADES_HD

TMP_INTERFACES_RED

TMP_NODO

TMP_PAQUETES

TMP_PROC_EJ

Fig. 3.2: Tablas Temporales

Page 60: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 38

Cedula.- Guarda el número de cédula del usuario

Contraseña.- Ésta almacena la clave o contraseña del usuario. Cabe

recalcar que esta información se almacena encriptada

Ini_Turno y Fin_Turno.- Contienen el rango de horas en las cuales el

usuario puede ingresar a la aplicación

Nombres.- Guarda los nombres del usuario

Apellidos.- Guarda los apellidos del usuario

Telefono.- Almacena el número telefónico del usuario

Status.- Muestra si el usuario es Administrador (estado „S‟) o no

(estado „N‟)

La clave de esta tabla es el campo Usuario, ya que el mismo debe ser único

en la aplicación.

Page 61: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 39

3.1.2.- El grupo Redes

El grupo Redes, a su vez se divide en dos esquemas principales. El esquema

de configuración inicial, que corresponde a la tabla INF_INICIAL y el

esquema de configuración actual.

3.1.3.- Configuración Inicial

Muestra información de las subredes y sus nodos. Esta información se

encuentra solamente en la tabla INF_INICIAL. Los campos de esta tabla son

los siguientes:

Dir_Ip.- Almacena la dirección IP de los nodos de una subred

Dir_Red.- Guarda la dirección IP de la subred específica

Mascara.- Almacena la máscara de subred de cada nodo

Id_Histo.- Este campo es un contador del número de veces que se

realiza el descubrimiento de la red por parte del administrador

La clave de esta tabla son los campos Dir_Ip e Id_Histo ya que la

combinación de éstos no debe repetirse nunca.

Page 62: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 40

3.1.4.- Configuración Actual

Muestra información de los nodos dada una fecha específica. Las tablas de

esta configuración se basan en el esquema entidad relación. La entidad

principal es la tabla NODO, la cual contiene la información principal del nodo

que va a ser única por cada uno de éstos. Las entidades “hijas”, están

relacionadas a la entidad principal mediante el campo Id_Nodo, y contienen

la información que puede o no ser múltiple por cada nodo. Estas entidades

corresponden a las tablas: INF_MEMORIA, INF_PROCESS, INF_SO,

INF_UNIDADES_HD, INTERFACES_RED, PAQUETES, PROC_EJEC.

Los campos de la tabla NODO son:

Id_Nodo.- Un campo autoincremental que guarda la identificación de

un nodo en una fecha y hora específica

Dir_Ip.- Almacena la dirección IP del nodo

Dir_Red.- Guarda la dirección de red respectiva

Mascara.- Máscara de red del nodo

Nombre.- Almacena el nombre del nodo

Clase.- La clase de la red que contiene al nodo

Page 63: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 41

Gateway.- Contiene la dirección IP del Gateway de la red

Estado.- Un campo que muestra si la PC tiene una especie de alerta o

no

Id_Histo.- El contador del número de veces que se realiza el

descubrimiento de la red por parte del administrador. También

presente en la tabla de configuración inicial

Fecha y Hora.- Almacena la fecha y hora en que se guardó la

información de ese nodo en la tabla

El campo clave de esta tabla es, por supuesto, el Id_Nodo.

Page 64: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 42

La tabla INF_MEMORIA, almacena información de la memoria de la PC.

Los campos de esta tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Mem_Fis_Tot.- Contiene el tamaño total de la memoria física

Mem_Fis_Disp.- Contiene el tamaño disponible de la memoria física

Mem_Vir_Tot.- Contiene el tamaño total de la memoria virtual

Mem_Vir_Disp.- Contiene el tamaño disponible de la memoria virtual

Mem_Cargada.- Contiene el tamaño de la memoria cargada

La tabla INF_PROCESS almacena información del o los procesadores del

PC. Los campos de la tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Nombre.- Guara el nombre del procesador

Page 65: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 43

Porcentaje_Ocupado.- Almacena el porcentaje de uso del

procesador

La tabla INF_SO almacena información de los sistemas operativos de

cada máquina. Los campos de la tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Nombre.- Nombres de los sistemas operativos con que cuenta la

máquina

Version.- Almacena la versión del sistema operativo

Usuario.- Nombre del usuario que esta ingresado en el sistema

operativo respectivo

Page 66: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 44

La tabla INF_UNIDADES_HD almacena información acerca de los discos

duros de cada nodo. Los campos de la tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Volumen.- Almacena la unidad lógica del disco

Serie.- Almacena la serie del disco

Tamano_Total.- Contiene el tamaño total de la capacidad del disco

Tamano_Disponible.- Contiene el tamaño disponible del disco

La tabla INTERFACES_RED contiene información de las tarjetas o

interfaces de red que contiene cada PC. Los campos de esta tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Descripción.- Guarda la descripción de la interfase

Direccion_Fisica.- Almacena la dirección física de la tarjeta

Paq_Recibidos.- Guarda el número de paquetes recibidos

Page 67: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 45

Paq_Perdidos.- Guarda el número de paquetes perdidos

Nombre_Enlace.- Almacena el nombre del enlace de red

Velocidad_Enlace.- Contiene la velocidad del enlace

Paq_Enviados.- Guarda el número de paquetes enviados

La tabla PAQUETES contiene información de los paquetes enviados y

recibidos por el nodo. Los campos de la tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Nombre.- Almacena el nombre del paquete

Cant_Recibidos.- Guarda el número de paquetes recibidos

Cant_Enviados.- Guarda el número de paquetes enviados

Page 68: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 46

La tabla PROC_EJEC almacena información de los procesos que se

están ejecutando en esa máquina en ese momento. Los campos de la

tabla son:

Id_Nodo.- Identificador del nodo y relación con la tabla de los nodos

Id_Proceso.- Almacena el identificador del proceso

Nombre_Proceso.- Contiene el nombre del proceso

3.1.B.- Tablas Temporales

Las tablas temporales sirven de almacenamiento temporal de los datos que

se desea verificar vía reportes. Tienen una configuración similar a las tablas

maestras. También se pueden agrupar en dos esquemas principales: La

configuración de Redes y la de los Nodos.

Page 69: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 47

3.1.1.- Configuración de Redes

Sirve para obtener los reportes de los nodos por cada red ingresada. Trabaja

con la tabla TMP_INF_INICIAL

3.1.2.-Configuración de Nodos

Sirve para obtener los reportes de los nodos de una fecha específica. Trabaja

con las tablas: TMP_INF_MEMORIA, TMP_INF_PROCESS, TMP_INF_SO,

TMP_INF_UNIDADES_HD, TMP_INTERFACES_RED, TMP_NODO,

TMP_PAQUETES y TMP_PROC_EJEC.

Page 70: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 48

3.2.- Diseño Arquitectónico

VscanNet

Descubridor Servidor Administrador

Recibe Dirección

de red Y Mascara

Procesa Dir de Red Y Máscara

Obtiene todas las Ip posibles de la red

Realiza el descubrimiento de red a través de un broadcast y guarda en la tabla inicial las direcciones que han

respondido

Ingreso al

Sistema

Grafica la red mediante

información de la BD

Recibe información del

Agente

Procesa información enviada por cada agente y la almacena en la BD

Obtiene información

del nodo

Envío de información al servidor cada cierto tiempo

Envío de datos al descubridor

Generación e impresión de reportes de

nodos y de red

Control y procesamiento de

los usuarios de acceso al

sistema

Provee herramientas

para facilitar el diagnóstico de

la red

Agente

Page 71: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 49

3.2.1.- VscanNet Administrador

A continuación se detallan las funciones principales de este módulo:

3.2.1.1.-Ingreso al Sistema

N

S S

N

Ingreso de datos

Usuario

Contraseña

Consultar BD

Carga de

aplicación

principal

Intento de ingreso = 4

Información válida

Cerrar Sistema

Page 72: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 50

Objetivo:

Permite la autentificación del usuario para que pueda ingresar al sistema

3.2.1.2.- Envío de Datos al Descubridor

Ingreso de IP por el usuario

Ingreso de IP por el usuario

Cálculo automático de Máscara

Envío de datos al

descubridor

S

IP Correcta

N

Page 73: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 51

Objetivo:

Obtener la IP ingresada por el usuario administrador, calcular la máscara

de acuerdo a la clase de red ingresada y enviar esta información a

descubridor.

3.2.1.3.- Graficar Red

Objetivo:

Graficar es esquema lógico de la red tomando la información de la Base

de Datos. Existen 3 tipos de mapas:. El Mapa de Configuración Inicial, el

Mapa Actual Y el Mapa Histórico.

Page 74: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 52

N

S

N

Opción Mapa de

red

Configuración Inicial

Verificar y obtener datos

de la tabla inicial

Dibujar Mapa de

Red Conf. Inicial

VscanNet

Gráfico actual

Fecha y Hora actual

Procesamient de

información

Fecha y Hora

Ingresa por Usuario

S

Dibujar Mapa de

Red

Page 75: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 53

3.2.1.3.1.- Mapa Configuración Inicial

Es la gráfica de la red que ha sido descubierta; es decir, es el Mapa de

todas las direcciones IP encontradas por el descubridor. La información que

se requiere para graficar es tomada de la tabla inicial.

3.2.1.3.2.- Mapa de Red – Actual

Es la gráfica de la red donde se tomará automáticamente la fecha y hora

actual del sistema para obtener la información de la base de datos; la misma

que se encuentra en la tabla maestra nodo y sus hijas.

3.2.1.3.3.- Mapa de Red Histórico

La red se grafica basados en los parámetros de fecha y hora definidos por el

usuario.

Page 76: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 54

3.2.2.- VscanNet Servidor

Si

No

Esperar Paquete (PIR)

Cliente

Fraccionar Datos principales

Paquete (PIR)

Si

NO

Escuchar Por Puerto

3333

C

DatagramSocket

Activar

Ha llegado Paquete

(PIR)

Cabecera =

RIN

A

Page 77: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 55

N

S

N

Si

A

Organiza la Información

Paquete (PIR)

En la B.D

Existe datos en la tabla

Inicial

B

BD

Fecha_Ultima_Almacenada = Fecha Actual

AND Hora_Ultma_Almac < 10 minutos

Actualizar Datos Insertar Datos

Finalizar análisis del paquete

(PIR)

B

C

Page 78: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 56

En la Clase ServidorVScanNet carga el DatagramSocket donde se

activa para realizar las transmisiones de paquetes siendo escuchado por el

PUERTO 3333.

Una vez accionado el Servidor de VScanNet está listo para recibir

paquetes con la estructura predefinida.

Cuando llega el paquete PIR se obtiene la cadena de información para ser

analizada. Este análisis consiste en dividir en las fracciones principales

que serán: La Cabecera y Datos Informativos.

Para guardar los datos informativos en la Base de Datos debe preguntarse

primero si ya existió un descubrimiento en la Red con las Direcciones Ip

correspondientes.

De no existir descubrimiento de la Red no podrá guardar datos en la Base

de Datos.

Y en caso de verificar la existencia de los datos del descubrimiento en la

tabla inicial de la base de Datos. Paso siguiente procederá al tratamiento de

la información; es decir dividirse estos datos en las diversos tipos de

variables que le contendrán antes de ser grabadas.

Page 79: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 57

El procedimiento se maneja por Inserción y Actualización, lo que implica

que se cumpla una condición. La condición establece que se compara la

última FECHA y HORA almacenada en la Base con FECHA y HORA del

SISTEMA.

La restricción de la comparación establece que si Hora del sistema es

menor a 10 minutos pasará a la actualización de los datos de esa Dirección

Ip en la B.D. Si el caso es contrario se procederá a La Inserción de los datos

en la B.D.

Una vez finalizado este recorrido retornamos a la espera de otros paquetes

PIR que tendrá la misma estructura y el mismo procedimiento.

Cabe mencionar que en la Base de Datos queda registrada la información

que es generada por el Agente ubicado en Cada una de las Pc´s que son

monitoreadas.

Page 80: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 58

3.2.3.- VscanNet Descubridor

Page 81: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 59

La aplicación Descubridor de la Red la ejecuta el Administrador de la Red

mediante el uso del comando COMMAND, luego de ejecutarla envía a través

de una conexión UDP con dirección Ip 127.0.0.1, el paquete PIR con una de

estas dos cabeceras:

Cabecera DNR

Si recibe un paquete con esta cabecera procederá a desempaquetar los

datos enviados en el cuerpo del paquete, y las almacena en variables

globales, para luego verificar que tipo de clase de red es (A, B o C) y

después calcula la cantidad de bits de la máscara, para redimensionar un

arreglo direcciones Ip con ese tamaño, después de esta acción calcula cada

una de las direcciones Ip a las cuales les hará ping y la almacena en el

arreglo de direcciones Ip.

Para finalmente realizar ping a cada una de las direcciones Ip almacenada, si

el ping a la dirección Ip fue exitoso, verifica si el tipo de descubrimiento es:

“Anterior” o “Nuevo”.

Si es de tipo “Nuevo” procederá a abrir una conexión con la Base de Datos y

almacenar la Información de ese nodo, caso contrario verifica que no se

encuentre la dirección Ip en la Base de datos para poder guardarla.

Page 82: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 60

Una vez terminado el proceso de efectuar ping, la aplicación termina de

ejecutarse.

FORMATO DEL PAQUETE PIR CON CABECERA DNR

DNR ¶ [Dir_Red] | [Másc] | [Clase_Red] | [IdHisto]

[Tipo_Descubrimiento] | [Cantidad_bits_Máscara]

Donde:

Símbolos Descripción

DNR

Indica que se debe de ejecutar el descubrimiento

de los nodos, valiéndose de la información

proporcionada en el cuerpo del paquete.

¶ Separador de la cabecera con el cuerpo del

paquete.

| Separador de la información del cuerpo del

paquete.

Dir_Red Direcciones Ip ya sea publicas o privadas

Masc Máscara de la dirección de red

Clase_Red Clase dirección de Red (A, B o C)

Page 83: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 61

Símbolos Descripción

IdHisto Valor que indica el número de descubrimiento que

pertenece la ejecución de la aplicación actual.

Tipo_Descubrimiento

Pude tomar estos dos valores:

* “NUE”: Indica que pertenece a un nuevo

descubrimiento

* “ANT”: Indica que es parte de un descubrimiento

anterior.

Cantidad_bits_Máscara Cantidad de bits que tiene la máscara de la red.

CED

Si recibe un paquete con esta cabecera procederá a terminar la ejecución de

la aplicación.

FORMATO DEL PAQUETE PIR CON CABECERA CED

CED ¶ [Datos de relleno]

Page 84: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 62

Donde:

Símbolos Descripción

CED Indica que se debe de cancelar la ejecución de la

aplicación actual.

¶ Separador de la cabecera con el cuerpo del

paquete.

Page 85: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 63

3.2.4.- VscanNet Agente

Page 86: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 64

Esta aplicación se ejecuta al iniciarse el Sistema Operativo Windows, una

vez ejecutado, captura el porcentaje de uso del procesador, cuyo valor lo va

almacenando en un variable para calcular el porcentaje promedio de uso con

el próximo valor a obtener por el lapso de un minuto.

Al completarse de ejecución procede a obtener información de la dirección Ip,

máscara, dirección de gateway, nombre de usuario, nombre del equipo, clase

de red, nombre, versión y usuario del S.O., nombre y porcentaje ocupado del

procesador, nombre de unidades disponibles, su capacidad ocupada y libre

de los discos duros instalados, además del porcentaje de memoria cargada,

memoria física total y disponible, información de las interfaces como es la

descripción, tipo de enlace, velocidad de enlace, paquetes enviados y

perdidos, continuando con información de los procesos que se están

ejecutando en ese momento, y por ultimo la cantidad de paquetes enviados,

recibidos y perdidos de tipo Ip, Tcp, Udp, y Ethernet.

Una vez obtenida toda esta información, la empaqueta siguiendo el formato

de empaquetamiento del protocolo creado llamado PIR, para finalmente

enviar esa información haciendo uso de una conexión UDP con dirección

destino broadcast y puerto destino 3333.

Page 87: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 65

Cabe indicar que cuando se obtiene el porcentaje de memoria cargada,

procesador utilizado, y capacidad de las unidades de disco duro; primero

verifica si el uso del recurso es mayor al 90 % de su capacidad total.

Si es así procede a enviar un paquete PIR con cabecera AAN y la

descripción de la alerta generada, hacia el puerto 2500 de la aplicación del

Administrador de la Red.

PIR (Protocolo de identificación de Requerimientos)

Protocolo sencillo de fácil comprensión.

Liviano.

Permite gestionar información del sistema de los nodos en una red.

La información que se almacenará a parte del esquema especificado

anteriormente, será todas las características definidas en el paquete RIN.

Tiene 4 tipos de mensajes, formado por un cuerpo y una cabecera o

identificador, en donde la cabecera identifica el tipo de mensaje.

Page 88: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 66

FORMATO:

Figura 3.3: PIR

Page 89: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 67

Descripción de los identificadores:

Identificador del

mensaje Descripción

CED Indica que se debe cancelar la ejecución de la

aplicación descubridor de la red.

AAN Indica que se ha producido una alerta.

DNR Indica que se desea realizar el descubrimiento de la red

que trae como información en el cuerpo del paquete.

RIN

Devuelve la información referente a dirección Ip,

mascara, fecha, hora y además las características del

sistema operativo, del procesador, del disco duro, de la

memoria, de los tipos de interfaces, de los procesos

que se ejecutan y de los paquetes recibidos y perdidos.

Formato de la información de cada uno de los mensajes del Protocolo

PIR que viaja en la red:

Page 90: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 68

Formato del paquete PIR con identificador RIN:

Cabecera Cuerpo

Dirección IP Mascara Nomb. Nodo

Gateway Clase Red

Fecha

Hora Est. Nod

o

Sistema Operativo Versión Usuario Nodo

Nombre procesador % Ocup. Procesador

Unidad Numero de serie

Tamaño total Tamaño

libre

Porcentaje de memoria cargada

Memoria fisica total

Memoria fisica disponible

Memoria virtual total

Mem. VirtualDisp

Descp. Interface

Dir. Física

Paq. Recib

Paq. Perdidos

Paq. Enviad

Tipo de enlace

Velocidad enlace

Identificador del proceso Nombre del proceso

Ip Paquetes enviados Paquetes recibidos

Tcp Paquetes enviados Paquetes recibidos

UDP Paquetes enviados Paquetes recibidos

Ethernet Paquetes enviados Paquetes recibidos

RIN

Page 91: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 69

Detalle:

Formato del paquete PIR con identificador DNR:

Cabecera Cuerpo

DNR

Dirección

Red

Máscara

Clase

Red

IdHisto

Tipo

Descubrimiento

Cantidad

bits

Máscara

RIN ¶ [Dir_Ip] | [Másc] | [Nom_Nodo] | [Gway] | [Clase_Red] | [fecha] | [Hora] | [Estado_nodo] &

[Nom_SO] | [Ver_SO] | [Usu_Nodo] &

[Nom_Proc] | [Porc_ocup] &

[Nom_uni 1] @ [Num_serie 1] @ [Esp_total 1] @ [Esp_libre 1] | [……………] | [Nom_uni

N] @ [Num_serie N] @ [Esp_total N] @ [Esp_libre N] &

[Mem_carg] | [Mem_fis_total] | [Mem_fis_disp] | [Mem_virt_total] | [Mem_virt_disp] &

[Desc_inter 1] @ [Dir_fis 1] @ [Paq_recib 1] @ [Paq_Perd 1] @ [Paq_Env 1] @

[Tipo_Enlace 1] @ [Vel_Enlace 1] | [……………] | [Desc_inter N] @ [Dir_fis N] @ [Paq_recib

N] @ [Paq_Perd N] @ [Paq_Env N] @ [Tipo_Enlace N] @ [Vel_Enlace N]

&

[Iden_proc 1] @ [Nom_proc 1] | [……………] | [Iden_proc N] @ [Nom_proc N] &

IP @ [Cant_Paq_IP_recib] @ [Cant_Paq_IP _env] | TCP @ [Cant_Paq_TC_recib] @

[Cant_Paq_TCP_env] | UDP @ [Cant_Paq_UDP_recib] @ [Cant_Paq_UDP_env] | ETHERNET

[Cant_Paq_ ETHERNET_recib] @ [Cant_Paq_ETHERNET _env]

Figura 3.4: Detalle Paquete PIR

Page 92: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 70

Detalle:

DNR ¶ [Dir_Red] | [Másc] | [Clase_Red] | [IdHisto] |

[Tipo_Descubrimiento] | [Cantidad_bits_Máscara]

Formato del paquete PIR con identificador AAN:

Cabecera Cuerpo

AAN

Nombre Nodo

Dirección Ip

Descripcion

Detalle:

DNR ¶ [Nombre_Nodo] | [Dirección_Ip] | [Descripción]

Page 93: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 71

3.3.- Diseño de Interfaz

A continuación se detallará la interfaz del sistema VscanNet:

3.3.1.- Acceso al Sistema

Objetivo:

Mostrar al usuario la información general del Sistema

Descripción:

Este splash de Visual Basic es lo primero que verá el usuario al momento

Fig. 3.5: Presentación del Sistema

Page 94: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 72

de ejecutar el Sistema.

Aquí se indica el nombre del Sistema, su versión, la fecha y en que está

basado.

3.3.2.- Inicio de Sesión

Objetivo:

Permitir o denegar el acceso a un usuario al sistema VscanNet.

Descripción:

Para poder tener acceso al sistema deberá ingresar el nombre del usuario

y su contraseña.

Fig. 3.6: Inicio de Sesión

Page 95: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 73

Además de mostrar por defecto tanto el nombre del equipo, como la fecha y

la hora de ingreso. El usuario deberá ingresar su nombre de usuario y la

contraseña que le ha sido asignada.

3.3.3.- Pantalla Principal

Objetivo:

Permitir al usuario utilizar todas las opciones que ofrece VscanNet.

Descripción:

Esta pantalla costa de:

Barra de Título: Contiene el nombre del Sistema y el nombre del usuario

Barra de menú: Contiene las opciones que ofrece el sistema:

Archivo

Cerrar Sesión

Salir

Descubrimiento

Iniciar

Page 96: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 74

Mapas de Red

Configuración Inicial

Gráfico de Red

Herramientas

Cmd

Ping

Reportes

Usuarios

Mantenimiento de Usuario

Cambio de Contraseña

Ayuda

Temas de Ayuda

Acerca De...

Barra de Herramientas: esta contiene accesos directos a las opciones

principales de la barra de menú

Page 97: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 75

Barra de Estado: esta contiene la siguiente información: Nombre de la

aplicación (VscanNet), Nombres y Apellidos del Usuario, Fecha, Hora,

Estado de la tecla Bloq. Mayúscula, Estado de la tecla Bloq. Numérico.

Fig. 3.7: Pantalla Principal

Barra de Título

Barra de Menú

Barra de Estado

Barra de Herramientas

Page 98: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 76

3.3.4.- Ventanas de mensajes

Objetivo

Interactuar con el usuario del sistema

Descripción

En el sistema se utilizan estas ventanas para mostrar mensajes de tipo:

3.3.4.1.- Mensajes de Advertencia

Advertir al usuario acerca de las acciones que está realizando.

Fig. 3.8: Ventanas de Mensajes - Advertencia

Page 99: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 77

3.3.4.2.- Mensajes de opción

Para permitir al usuario de escoger la acción a realizar.

3.3.4.3.- Mensajes de Error

Para indicar al usuario que se ha generado un error.

Fig. 3.9: Ventanas de Mensajes - Opción

Fig. 3.10: Ventanas de Mensajes - Error

Page 100: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 78

3.3.4.4.- Mensajes de Información

Para informar al usuario los resultados que se han generado por una acción

realizada.

Fig. 3.11: Ventanas de Mensajes - Información

Page 101: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 79

3.3.5.- Opciones de Menú

3.3.5.1.- Descubrimiento

Inicio el descubrimiento

Fig. 3.12: Descubrimiento

Fig. 3.13: Descubrimiento(mensaje)

Page 102: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 80

3.3.6.A.- Mapas de Red

3.3.6.1.-Configuración Inicial

Esta es la ventana donde se mostrará al usuario el mapa de la red en su

configuración inicial; es decir, el usuario podrá visualizar todas la redes que

han sido descubiertas mediante la opción “Descubrimiento”.

Así mismo se tiene una ventana de título y una barra de herramientas.

Barra de título: Nombre de la opción del menú principal escogida.

Barra de herramientas: Se tiene dos opciones:

Procesos

Guardar

Salir

Page 103: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 81

3.3.6.B.-Mapas de red

3.3.6.1.-Gráfica de Red

Aquí el usuario visualizará la red dependiendo de la opción que escoja. Este

podrá ver el mapa de la red actual o el histórico. Por defecto se tiene

activado el botón en opción “Actual.” En el caso del mapa histórico tendrá

que ingresar como parámetros la fecha y la hora.

Fig. 3.14: Mapas de Red: Configuración Inicial

Page 104: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 82

Así mismo se tiene una ventana de título y una barra de herramientas.

Barra de título: Nombre de la opción del menú principal escogida.

Barra de herramientas: Se tiene tres opciones:

Procesos

Guardar

Herramientas

Ver leyenda

Salir

Page 105: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 83

3.3.6.2.- Propiedades del Nodo

Esta ventana es la que visualizará el usuario cuando de clic en el botón

derecho del Mouse sobre una Pc del mapa de red. El formato se mantiene

para cada una de las 7 propiedades, se muestra una imagen representativa y

la información correspondiente.

Fig. 3.15: Mapas de Red: Gráfica de Red

Botones de Opción Parámetros: Fecha / Hora

Page 106: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 84

3.3.7.-Herramientas

3.3.7.1.-Cmd

Aquí se está invocando a la ventana de DOS del sistema operativo.

Fig. 3.16: Mapas de Red: Propiedades

Page 107: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 85

3.3.7.2.-Ping

Permite al usuario hacer ping a cualquier dirección de la red.

Fig. 3.17: Herramientas: Cmd

Page 108: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 86

3.3.7.3.-Reportes

Permite al usuario elaborar reportes ya sea por nodo o por red; con la opción

de Visualización por pantalla o imprimirlos.

Fig. 3.18: Herramientas: Ping

Page 109: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 87

3.3.7.3.1.- Visualizar por pantalla

Fig. 3.19: Herramientas: Reportes - Pantalla

Page 110: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 88

3.3.7.3.2.- Impresora

El usuario podrá configurar la impresora que empleará para imprimir los

reportes.

Fig. 3.20: Herramientas: Reportes: Imprimir

Page 111: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 89

3.3.8.- Usuarios

3.3.8.1.- Mantenimiento de usuarios

Aquí el usuario podrá crear, actualizar, buscar y eliminar usuarios del

sistema. Esta ventana aparecerá igual para todas la opciones excepto para la

de búsqueda de usuario.

Fig. 3.21 : Usuarios – Mantenimiento de Usuarios

Page 112: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 90

3.3.8.2.- Buscar Usuario

Fig. 3.22 : Usuarios – Mantenimiento de Usuarios - Buscar

Page 113: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 91

3.3.8.3.- Cambio de contraseña

Aquí el usuario podrá modificar su contraseña.

Fig 3.23 : Usuarios – Cambio de Contraseña

Page 114: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 92

3.3.9.- AYUDA

3.3.9.1.- Temas de Ayuda

Esta opción muestra en pantalla la ayuda del sistema. Lo que mostrará será

una página del Internet Explorer.

Fig. 3.24: Ayuda / Temas de Ayuda

Page 115: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 93

3.3.9.2.- Acerca De

Esta opción muestra en pantalla la versión del sistema y su funcionabilidad.

Fig. 3.25: Ayuda / Acerca De

Page 116: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 94

3.4.- Diseño de Componentes

La base de datos contiene dos componentes o procedimientos almacenados:

SP_DISTRIBUCION

SP_IMPNODO

SP_DISTRIBUCION

Sirve para verificar el estado de un nodo específico en una fecha y hora

señalada

Funcionamiento: Dependiendo si es por red o un solo nodo, obtiene todas

las IP que se van a procesar. Luego agrupa las IP y actualiza el estado de

cada una según la siguiente tabla:

Si se encuentra en ambas tablas (inicial y nodo) y el estado es cero,

entonces corresponde a una PC OK

Si se encuentra en ambas tablas y el estado es uno, entonces

corresponde a una PC con Alerta.

Page 117: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 95

Si se encuentra solo en la tabla nodo y el estado es cero, entonces es

una PC nueva

Si se encuentra solo en la tabla nodo y el estado es uno, entonces es

una PC con alerta

Si se encuentra solo en la tabla inicial entonces es una PC no OK

SP_IMPNODO

Llena las temporales de los reportes dependiendo de que tipo de reporte se

necesite

Funcionamiento: Dependiendo si el reporte pedido es por red o por nodo, el

procedimiento primero borra toda la información de las temporales, luego

guarda en las mismas la información respectiva, tomando como base las

tabas maestras

Page 118: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 96

CAPITULO 4

DESARROLLO Y PRUEBA DEL SISTEMA

4.1 Desarrollo del Sistema

4.1.1. Creación de la base de datos

Se eligió Microsoft SQL 2000 como base de datos del proyecto por los siguientes motivos:

Page 119: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 97

Principalmente porque SQL SERVER es muy compatible y ofrece la

facilidad de conexión con la herramienta de desarrollo del proyecto: Visual

Basic 6.0

SQL Server 2000 ofrece un motor de base de datos moderno, muy

escalable y confiable para el almacenamiento de datos. Este motor de base

de datos almacena los datos en tablas

SQL es una base de datos robusta y escalable; es decir, que admite

intervalos de acceso de usuarios al mismo tiempo.

Es muy portable, la base de datos puede estar en cualquier servidor de la

red, e incluso, manejarse remotamente.

Es muy conocida y facil de usar; de esta forma abarata los costos ya que

existen muchos desarrolladores y diseñadores de base de datos que la

conocen.

Es muy segura, ofrece dos tipos de autentificación de usuario:

Autentificación de Windows y Autentificación de SQL Server.

Trabaja muy bien con Microsoft Windows XP y 2000, estos sistemas

operativos son la gran mayoría en el mercado mundial.

Page 120: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 98

Su instalación es relativamente sencilla. Además los requisitos del

sistema, tanto hardware como software, son bastante básicos

Ofrece una alta compatibilidad con versiones anteriores de SQL (7.0 y 6.5)

El motor de la base de datos relacional es muy confiable y capaz de

funcionar durante largos períodos sin que exista inactividad.

Valores de la Base de Datos

Tamaño:

La base de datos inicial, esto es la base de datos vacía con el único dato del

usuario admin, tiene un tamaño aproximado de 1.5 MB para el archivo de

datos (extensión .mdf) y 1.5 MB para el archivo de registro de transacciones

o log (extensión .ldf)

El espacio en disco para el buen desarrollo y rendimiento de la base de datos

es un espacio mínimo de 1 GB y recomendado 4 GB.

El crecimiento de la base se debe en su mayoría al archivo de logs

(extensión .ldf).

Page 121: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 99

Hay que considerar que dependiendo de la gran cantidad de borrados,

inserciones y actualizaciones que se realicen, el tamaño del archivo de

registros aumentará considerablemente.

La base de datos, tiene un crecimiento automático, tanto del archivo de datos

como del archivo de log de transacciones; con un porcentaje de crecimiento

del 10% y sin limite en cuanto al tamaño de los archivos.

Se estima que el crecimiento del tamaño de la base no supera, en lo que

respecta al archivo de datos, los 2 MB semanal y en cuanto al archivo de

logs, los 4 MB semanal (verificar).

4.2. Seguridades

Sistema Operativo

La seguridad del sistema operativo se basa en estos puntos

La contraseña del usuario de red

Service packs

Page 122: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 100

Base de Datos

La seguridad de la base de datos se basa en estos puntos

La contraseña del usuario sa

La mayor parte de las tablas tienen claves primarias y foráneas, lo

que asegura datos coherentes

Seguridad del Sistema

Las seguridades del sistema se basan en estos puntos

El ingreso al sistema se hace mediante un usuario y una

contraseña suministrada por el administrador del sistema

Cada usuario solo puede ingresar al sistema en un rango de hora

predeterminado por el administrador del sistema

La contraseña en la base de datos se guarda encriptada

La contraseña del usuario viaja por la red encriptada

Page 123: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 101

4.3. Pruebas del Sistema

4.3.1.-Modelo de Prueba

Con la finalidad de comprobar que cada función del sistema es

completamente operativa, se escogió como modelo de prueba: “La Prueba

De La Caja Negra”.

El objetivo principal de este modelo de prueba se centra en los requisitos

funcionales de VscanNet.

La prueba de la Caja Negra nos ayudará a encontrar errores categorizados

de la siguiente forma:

Funciones incorrectas o ausentes

Errores de interfaz

Errores de Rendimiento

Errores de inicialización y de terminación

Page 124: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 102

De esta forma se han podido realizar la validaciones de los requisitos

funcionales sin fijarse en las funciones internas del programa, centrándose

solo en el ámbito de información del sistema.

4.3.2.- Prueba de Interfaz

Tomando como referencia los puntos tratados en el texto de Ingenieria de

Software de Roger S. Pressman; a continuación se detalla un cuestionario,

el mismo que nos sirvió para poder llevar a cabo las pruebas de interfaces

gráficas de usuario.

“Capitulo 16: Métodos de prueba del software, prueba de

interfaces gráficas de usuario (pág. 319)”

Para ventanas

¿Las ventanas se abren basadas en órdenes generadas por el teclado o

en un menú?

Se abren solamente desde el menú de la aplicación principal

Page 125: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 103

¿Se puede ajustar e tamaño, mover y desplegar las ventanas del

sistema?

Solo mover y desplegar. No se puede cambiar el tamaño de las ventanas

¿Las funciones de las ventanas están operativas?

Si, todas las funciones están operativas, excepto las opciones

“Descubrimiento de Red” y “Mantenimiento de Usuarios” si ingresa con un

usuario que no es administrador

Al desplegarse varias ventanas del sistema, ¿está representado

correctamente el nombre de cada una?

Así es. Los nombres son bastante descriptivos

¿La ventana activa está correctamente resaltada?

Sí, en la barra de tareas del sistema operativo se visualiza claramente

¿Existe una actualización adecuada de todas las ventanas al momento

de utilizar multitarea?(si se da el caso)

Así es

Page 126: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 104

Dentro de la ventana, ¿El contenido de la información es accesible sin

problemas por el ratón, las teclas funcionales, flechas direccionales y el

teclado?

La información es accesible desde cualquiera de los puntos anteriormente

señalados

¿Existe una regeneración adecuada cuando se sobrescribe y se vuelve

abrir una ventana?

Así es

¿La ventana se cierra adecuadamente?

Si, incluso no se puede cerrar la aplicación principal sin antes haber cerrado

las ventanas “secundarias”

Page 127: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 105

Menús emergentes y operantes con el ratón

¿Se muestra la barra de menú apropiada con el contexto apropiado?

Así es, se muestran las opciones más importantes

¿Las operaciones de despliegue funcionan correctamente?

Sí. Su funcionamiento es correcto

¿Están listadas correctamente todas las funciones del menú y

subfunciones emergentes?

Sí. La lista es bastante completa

¿Se puede tener acceso con el ratón a todas las funciones del menú?

Sí. A todas las funciones, excepto las opciones “Descubrimiento de Red” y

“Mantenimiento de Usuarios” si ingresa con un usuario que no es

administrador

Page 128: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 106

¿La ejecución de todas las funciones del menú se realizan como se

esperaba?

Así es, funcionan correctamente

¿Los nombres de las funciones del menú están claros?

Sí. Los nombres de las funciones son bastante descriptivos

¿Cambian adecuadamente el cursor, el indicador de

procesamiento(Ejemplo: un reloj) y puntero al invocar diferentes

operaciones?

Cambian adecuadamente, dependiendo del proceso que se necesite. No

todas las ventanas tienen esta función

¿Si se cuenta con un ratón con varios botones, estos son reconocidos

apropiadamente en el contexto?

Así es. El botón izquierdo y derecho. El botón central no se ha probado pero

debería funcionar sin problemas.

Page 129: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 107

Entrada de datos

¿Se repiten y son introducidos adecuadamente los datos alfanuméricos

en el sistema?

Son introducidos de forma correcta

¿Los datos no válidos son reconocidos adecuadamente?

Así es. El programa detecta los datos incorrectos e inválidos antes de realizar

cualquier proceso con éstos

¿Los mensajes de entrada de datos son inteligibles?

Page 130: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 108

CAPITULO 5

IMPLEMENTACIÓN DEL SISTEMA

5.1. Elementos Físicos

A continuación se detalla cada uno de los recursos físicos que se necesitaron

para el desarrollo y pruebas de nuestra aplicación:

HP Notebook PC Pavilion n5000

Procesador Intel Pentium III 850 Mhz

128 Mb de RAM

Disco duro: 20 Gb

Page 131: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 109

PC Pentium IV

Procesador Intel Pentium IV 2.4

256 Mb de RAM

Disco Duro: 80 Gb

5.2. Elementos lógicos

Sistema Operativo:

Windows NT

Windows XP Professional

Lenguajes de programación:

Visual Basic 6.0

Desarrollo de la interfaz gráfica de la aplicación (Administrador VscanNet)

Desarrollo del Cliente VscanNet (Agente VscanNet)

Desarrollo del Descubridor VscanNet

Java

Desarrollo del Servidor VscanNet

Page 132: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 110

Base de datos:

SQL Server 2000

Reportes

Cristal Reports 5.0

Diseño y creación de íconos

IconLover versión 2.15

Icon Searcher versión 2.02

Creación de la Ayuda

RoboHelpX5

5.3. Elementos Humanos

5.3.1.-Desarrolladores del sistema:

Glenda Tapia Parada:

Desarrollo de Interfaz VscanNet(Administrador)

Page 133: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 111

Danilo Calle Fierro:

Desarrollo del Cliente VscanNet(Agente)

Desarrollo del Descubridor VscanNet

Betty Villacrés:

Desarrollo del Servidor VscanNet

5.3.2.-Usuarios del sistema

Administradores de la red

Usuarios con un nivel medio de conocimientos en

administrar redes.

Page 134: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 112

CAPITULO 6

RECOMENDACIONES Y CONCLUSIONES DE LA

TESIS

6.1.-Recomendaciones

6.1.1.-Hardware

Como recomendación de hardware se puede indicar de que la empresa y/o

negocio que adquiera nuestro producto considere los requerimientos

mínimos del sistema detallados en el manual de usuario del mismo.

Page 135: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 113

Estos requerimientos dependerán de cómo el administrador del sistema vaya

a distribuir los módulos del mismo.

6.1.2.- Software

Como recomendación de software se puede indicar de que la empresa y/o

negocio que adquiera nuestro producto considere los requerimientos

mínimos del sistema detallados en el manual de usuario del mismo.

Estos requerimientos dependerán de cómo el administrador del sistema vaya

a distribuir los módulos del mismo.

Dependiendo de cada uno de estos módulos se debe considerar las

actualizaciones de cada uno de los softwares requeridos para el correcto

funcionamiento del sistema.

Este es el caso del Módulo Agente, donde se debe considerar la

actualización de las herramientas Winsock y Ppaquet.

Otro punto importante son los servipacks de sistemas operativos que tengan

disponibles, tratar en lo posible mantener el mínimo requerido.

Page 136: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 114

6.1.3.- Cableado(Conexiones de Red)

Es recomendable que el administrador de la red considere el correcto

funcionamiento y diseño del cableado estructurado de la empresa y/o

negocio que ha adquirido el producto. Ya que el correcto funcionamiento del

mismo va a depender de que la red este bien implementada y funcionando

correctamente.

En algunas ocasiones las funciones del sistema, sobre todo la del

descubrimiento de la red dependerá de la velocidad de enlace que tenga la

misma.

6.1.4.- Puesta en Marcha

El usuario administrador debe considerar los siguientes puntos antes de

iniciar el funcionamiento del sistema.

1. Es recomendable que para el descubrimiento de la red, sobre todo si

se lo va a realizar por primera vez (descubrimiento inicial); todas las

PC´s que pertenezcan a las redes que se desean descubrir estén

encendidas.

Page 137: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 115

2. Es recomendable que la primera tarea a ejecutarse mediante el

sistema sea la del descubrimiento de red, y posteriormente se

empiencen a activar los agentes instalados en cada unas de las PC´s

6.1.5.- Seguridades

Se recomienda de que el usuario administrador considere:

1. Realizar un cambio de contraseña trimestralmente, para evitar que la

información se filtre y puedan descubrirla y emplearla de manera

inapropiada.

2. El Administrador del sistema deberá considerar realmente a quien se

deberá asignar una clave de ingreso al sistema en caso de que se

necesite de un reemplazo.

3. El Administrador deberá considerar a quien restringe en cuanto a las

funciones del sistema.

Page 138: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 116

6.2. CONCLUSIONES

A continuación cada uno de los desarrolladores del sistema presentará sus

conclusiones:

6.2.1.-Por Glenda Del Rocío Tapia Parada

Uno de los objetivos principales al momento de desarrollar nuestra aplicación

se centró en crear un sistema que permita facilitar el control de la red

mediante herramientas y funciones sencillas que permitan al usuario

administrador de una res poder realizar un monitoreo de la misma de una

forma más eficiente y rápida.

De esta forma se atacará la ineficiencia e inconvenientes que podrían

generarse dado a que no se cuenta con una herramienta que permita

visualizar tanto el estado operacional como la información general de un

nodo(PC) de la red y/o redes que se administran.

Dados estos antecedentes surge VscanNet como una solución a estos

problemas, ya que este sistema permite visualizar la red en un esquema

lógico y sencillo, donde además de mostrar la información relevante de cada

nodo(PC) que posee una empresa y/o negocio.

Page 139: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 117

6.2.2.-Por Betty América Villacrés

Page 140: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 118

6.2.3.-Por Danilo Calle Fierro

El Sistema VscanNet, es una muy buena herramienta de ayuda para los

Administradores de redes basadas en Plataforma Windows y Protocolo

TCP/IP. Entre sus ventajas principales estan:

interfaz gráfica amigable

brindar la facilidad de descubrir los nodos de la red

Estar al tanto de la disponibilidad/no disponibilidad de los nodos en

tiempo real

Conocer el porcentaje de utilización de los principales recursos del

nodo como son Memoria, procesador y disco duro. Asi tambien, nos

permite obtener reportes en tiempo real e histórico.

Ademas de todos estos beneficios, informa al administrador en tiempo real,

cuando se produce un alto uso de cualquiera de los recursos principales

como son memoria, procesador o disco duro.

Page 141: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 119

REFERENCIAS BIBLIOGRÁFICAS

1. Dr. Sydney Feit, TCP/IP : Arquitectura, protocolos e implementación y

seguridad. Osborne McGraw-Hill 1998.

2. Roger S. Pressman, Ingeniería del Software un Enfoque Práctico,

Cuarta Edición. Osborne McGraw-Hill 1997.

3. Capitulo 16: Métodos de Prueba del Software

Roger S. Pressman, Ingeniería del Software un Enfoque Práctico,

Cuarta Edición. Osborne McGraw-Hill 1997.

Page 142: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

UNIVERSIDAD DE GUAYAQUIL

Facultad de Ciencias Matemáticas y Físicas

Carrera de Ingeniería en Sistemas Computacionales

“VscanNet” Visualización y Escaneo de la Red

PROYECTO DE GRADO

Previo a la Obtención del Título de:

INGENIERO EN SISTEMAS COMPUTACIONALES

Autor(es):

Glenda Del Rocío Tapia Parada

Danilo Calle Fierro

Betty América Villacres

GUAYAQUIL-ECUADOR

Año: 2004 - 2005

Page 143: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

II

AGRADECIMIENTO.

Agradezco a Dios por

todas sus bendiciones a

mis padres por su apoyo

y ayuda incondicional,

como también a todas

las personas que de uno

u otro modo colaboraron

en la realización de este

trabajo y especialmente

al Ing. Carlos Carranza

por su invaluable ayuda.

Glenda Tapia Parada

Page 144: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

III

AGRADECIMIENTO.

Agradezco de manera

cordial al Ing. Carlos

Carranza, que con su

sabiduría y experiencia

nos orientó de manera

muy acertada a la

culminación de este

proyecto.

Danilo Calle Fierro

Page 145: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

IV

DEDICATORIA.

Dedico este Trabajo a

Mis Padres, a mi Hija y

Hermanas, quienes

siempre estuvieron

conmigo brindándome

su apoyo de una forma

incondicional.

Glenda Tapia Parada

Page 146: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

V

DEDICATORIA.

Dedico el desarrollo y

culminación de este

proyecto a Dios. A mis

padres y hermanas que

han sido fuentes de

inspiración y me

ayudaron a seguir

adelante.

Danilo Calle Fierro

Page 147: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

VI

TRIBUNAL DE GRADUACIÓN

Ing. Abel Alarcón

Presidente CCG

Ing. Carlos Carranza P. Ing. José Luis Peralta

Profesor / Vocal Profesor / Vocal

Ab. Juan Chavez Atocha

Secretario

Page 148: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

VII

DECLARACIÓN EXPRESA

“La autoría de la tesis de grado corresponde exclusivamente al suscrito(s),

perteneciendo a la Universidad de Guayaquil los derechos que generan la

aplicación de la misma”

(Reglamento de Graduación de la Carrera de Ingeniería en Sistemas

Computacionales, Art. 26)

Page 149: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

RESUMEN

VscanNet (Sistema de Visualización y Escaneo de Red) fue creado para

permitir los usuarios administradores de red poder visualizar el esquema

lógico de las redes que administran; para de esta forma facilitar la tarea de

monitorear la red dado a que nuestra aplicación también permite conocer la

información de cada elemento de la red(NODO-PC’S) como también su

estado operacional.

Esta aplicación facilita el control a través de funciones sencillas que

permiten monitorear una red cuya infraestructura se basa en la arquitectura

TCP/IP.

Page 150: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

IX

INDICE GENERAL

AGRADECIMIENTO II

DEDICATORIA III

TRIBUNAL DE GRADUACIÓN IV

DECLARACIÓN EXPRESA V

RESUMEN VI

INDICE GENERAL VII

CAPITULO 1 1

MANUAL DE INSTALACIÓN

Contenido CD de Instalación 3

1.- Instalación de VscanNet Administrador 3

Page 151: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

X

1.1 Iniciar 3

1.1.2.-Copiar los archivos de instalación 5

1.1.3.-Escoger VscanNet como opción de programa a instalar 6

1.1.4.-Instalando VscanNet 7

1.1.5.-Instalación terminada 8

1.1.6.- Cancelación de Instalación 9

1.1.7.- Directorio de Instalación 10

1.2.- Instalación de VscanNet Agente 11

2.- PASOS ADICIONALES A LA APLICACIÓN 14

2.1.- Base de Datos: 14

2.2.- Conexión a la Base de Datos: 15

2.3.- Reportes 24

2.4.- Ayuda 24

2.5.- Manifest 25

Page 152: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XI

CAPITULO 2 26 MANUAL DE USUARIO

2.1.- INTRODUCCIÓN 28

VscanNet Agente 31

VscanNet Administrador 31

VscanNet Servidor 31

VscanNet Descubridor 32

2.2.-FUNCIONES PRINCIPALES 33

ACCESO AL SISTEMA 33

INICIO DE SESIÓN 34

PANTALLA PRINCIPAL 40

PANTALLA PRINCIPAL 44

Page 153: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XII

1. Archivo 44

1.1.- Cerrar Sesión 44

1.2.- Salir 45

2. Descubrimiento 46

2.1.- Descubrimiento de Subredes 49

3. Mapas de Red 52

3.1. Configuración Inicial 52

3.2. Gráfico de Red 54

Propiedades Generales 58

Sistema Operativo 59

Procesador 60

Discos Duros 61

Memoria 62

Page 154: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XIII

Red 64

Procesos 65

4. Herramientas 67

4.1. Cmd 68

4.2. Ping 69

4.3. Reportes 70

4.3.1. Reportes por Nodo 71

4.3.2. Reportes por Red 73

5. Usuarios 76

5.1. Mantenimiento de Usuarios 76

5.1.1. Búsqueda de Usuario 79

5.1.2 Crear Usuario 84

Page 155: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XIV

5.1.3 Actualizar Usuario 85

5.1.4 Eliminar Usuario 87

5.1.5 Guardar modificaciones 87

5.2. Cambio de Contraseña 87

6. Ayuda 91

6.1. Temas de Ayuda 92

6.2. Acerca De 93

2.3.-REQUERIMIENTOS DEL SISTEMA 94

Servidor VscanNet 96

Administrador VscanNet 98

Agente VscanNet 100

Descubridor VscanNet 102

Page 156: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XV

VScanNet Administrador 32

VScanNet Descubridor 33

VScanNet Agente 33

VScanNet Servidor 34

CAPITULO 3 104

MANUAL TÉCNICO

3.1.- Diagramas 105

3.1.1.-Árbol de problemas 106

3.1.2.-Árbol de Objetivos 107

3.1.3.- Diagrama Flujo de Datos 108

Page 157: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XVI

3.1.4.- Diagrama Entidad Relación 109

3.1.5.- Arquitectura de VscanNet 111

3.1.6.- Arquitectura VscanNet Administrador 112

3.1.6.1.- Ingreso al Sistema 112

3.1.6.2.- Envío de Datos al Descubridor 113

3.1.6.3.- Graficar Red 114

3.1.6.7.- Arquitectura VscanNet Servidor 115

3.1.6.8.- Arquitectura VscanNet Descubridor 117

3.1.6.9.- ARQUITECTURA VSCANNET AGENTE 118

3.2.- Creación del Script 119

Script de creación de la base de datos 119

Script de creación de los procedimientos 132

3.3.- Código Funciones principales del sistema 140

VSCANNET ADMINISTRADOR 140

Page 158: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XVII

GRAFICAR RED 140

DESCUBRIMIENTO DE REDES 148

VSCANNET SERVIDOR 156

VSCANNET AGENTE 165

Formulario Agente 165

Modulo Disco_Duro 169

VSCANNET DESCUBRIDOR 173

ANEXOS 184

Diccionario de Datos 184

Diagrama de Flujo de Datos 204

Page 159: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XVIII

INDICE DE FIGURAS

CAPITULO 1 1

MANUAL DE INSTALACIÓN

Figura 1.1: Instalación VscanNet 4

Figura 1.2: Instalación VscanNet(Arch. De Instalación) 5

Figura 1.3: Instalación VscanNet(Escoger opción de programa) 6

Figura 1.4: Instalación VscanNet 7

Figura 1.5: Instalación VscanNet(Finalizando Instalación) 8

Figura 1.6: Instalación VscanNet(Cancelar Instalación) 9

Figura 1.7: Instalación VscanNet – Ubicación VscanNet 10

Figura 1.8: Instalación VscanNet Agente 11

Figura 1.9: Instalación Agente VscanNet 12

Page 160: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XIX

Figura 1.10 : Instalación Agente VscanNet 13

Figura 1.8: Conexión Base de Datos 15

Figura 1.9: Conexión Base de Datos 16

Figura 1.10: Conexión Base de Datos (1) 17

Figura 1.11 Conexión Base de Datos(2) 18

Figura 1.12: Conexión Base de Datos(3) 19

Figura 1.13: Conexión Base de Datos(4) 20

Figura 1.14: Conexión Base de Datos(5) 21

Figura 1.15: Conexión Base de Datos(6) 22

Figura 1.16: Conexión Base de Datos (7) 23

CAPITULO 2 26

MANUAL DE USUARIO

Figura 2.1: Presentación del Sistema 33

Figura 2.2: Inicio de Sesión 34

Figura 2.3: Inicio de Sesión 35

Page 161: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XX

Figura 2.4: Inicio de Sesión 36

Figura 2.5: Inicio de Sesión 37

Figura 2.6: Inicio de Sesión 38

Figura 2.7: Inicio de Sesión 39

Figura 2.9: Pantalla Principal 43

Figura 2.10: Opción Archivo- Cerrar Sesión 44

Figura 2.11: Opción Archivo- Salir 45

Figura 2.12: Opción Archivo- Salir 46

Figura 2.13: Opción Descubrimiento 48

Figura 2.14: Descubrimiento de subredes 49

Figura 2.15: Opción Descubrimiento(mensaje) 50

Figura 2.16: Opción Descubrimiento – Terminar 51

Figura 2.17: Opción Mapas de Red – Configuración Inicial 52

Figura 2.18: Opción Mapas de Red – Configuración Inicial-Guardar 53

Page 162: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXI

Figura 2.19: Opción Mapas de Red – Grafico de Red /Actual 54

Figura 2.20: Opción Mapas de Red – Grafico de Red /Actual 55

Figura 2.21: Opción Mapas de Red – Grafico de Red 56

Figura 2.22: Opción Mapas de Red – Grafico de Red/ Propiedades 57

Figura 2.23: Opción Mapas de Red – Grafico de Red/ Propiedades/

Generales 59

Figura 2.24: Opción Mapas de Red – Grafico de Red/ Propiedades

/S.O 60

Figura 2.25: Opción Mapas de Red – Grafico de Red/ Propiedades/

Procesador 61

Figura 2.26: Opción Mapas de Red – Grafico de Red/ Propiedades

/ HD 62

Figura 2.27: Opción Mapas de Red – Grafico de Red/ Propiedades/

Memoria 63

Page 163: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXII

Figura 2.28: Opción Mapas de Red – Grafico de Red/

Propiedades/ Tarjetas 64

Fig. 2.29: Opción Mapas de Red – Grafico de Red/

Propiedades/ Procesos 65

Figura 2.30: Opción Mapas de Red – Grafico de Red/

Propiedades 67

Figura 2.31: Opción Herramientas – Cmd 68

Figura 2.31: Opción Herramientas – Ping 69

Figura 2.32: Opción Herramientas – Reportes 70

Figura 2.33: Opción Herramientas – Reportes Por Nodo 72

Figura 2.34 : Opción Herramientas – Reportes Por Nodo 72

Figura 2.35: Opción Herramientas – Reportes Por Red 73

Figura 2.36 : Opción Herramientas – Reportes Por Red 74

Figura 2.37 : Opción Herramientas – Reportes – Imprimir 75

Page 164: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXIII

Figura 2.39 : Usuarios – Mantenimiento de Usuarios / Buscar 80

Figura 2.40 : Usuarios – Mantenimiento de Usuarios / Buscar 82

Figura 2.41 : Usuarios – Mantenimiento de Usuarios / Buscar 82

Figura 2.42 : Usuarios – Mantenimiento de Usuarios / Buscar 83

Figura 2.43 : Usuarios – Mantenimiento de Usuarios / Nuevo Usuario 84

Figura 2.44 : Usuarios – Mantenimiento de Usuarios / Actualizar 85

Figura 2.45 : Usuarios – Mantenimiento de Usuarios / Actualizar 86

FIGURA 2.46 : USUARIOS – MANTENIMIENTO DE USUARIOS / ACTUALIZAR 86

Figura 2.47 : Usuarios – Cambio de Contraseña 88

Figura 2.48: Usuarios – Cambio de Contraseña 89

Page 165: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXIV

Figura 2.49 : Usuarios – Cambio de Contraseña 89

Figura 2.50: Usuarios – Cambio de Contraseña 90

Figura 2.51 : Usuarios – Cambio de Contraseña 91

Figura 2.52 : Ayuda VscanNet 92

Figura 2.52 : Ayuda – Acerca De 93

CAPITULO 3 104

MANUAL TÉCNICO

Figura 3.1: Diagrama Flujo de Datos 108

Figura 3.2: Diagrama Entidad Relación 109

Figura 3.3: Especificación de Objetos 110

Page 166: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXV

Figura 3.4: Creación de la Base de Datos 119

Figura 3.5: Creación opciones por defecto de la Base de datos 120

Figura 3.6: Eliminación de las relaciones si existen 121

Figura 3.7: Eliminación de tablas si existen 122

Figura 3.8: Eliminación de tablas si existen 123

Figura 3.9: Eliminación de tablas si existen 124

Figura 3.10: Creación de tablas 125

Figura 3.11: Creación de tablas 126

Figura 3.12: Creación de tablas 127

Figura 3.13: Creación de tablas temporales 128

Figura 3.14: Creación de tablas temporales 129

Figura. 3.15: Creación de relaciones 130

Figura 3.16: Creación de relaciones 131

Page 167: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXVI

Figura 3.17: Creación Procedimiento Almacenado

SP_ImpNodo 132

Figura 3.18: Creación Procedimiento Almacenado

SP_ImpNodo 133

Figura 3.19: Creación Procedimiento Almacenado

SP_ImpNodo 134

Figura 3.20: Creación Procedimiento Almacenado

SP_Distribución 135

Figura 3.21: Creación Procedimiento Almacenado

SP_Distribución 136

Figura 3.22: Creación Procedimiento Almacenado

SP_Distribución 137

Page 168: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXVII

Figura 3.23: Creación Procedimiento Almacenado

SP_Distribución 138

Figura. 3.24: Creación Procedimiento Almacenado

SP_Distribución 139

Figura 3.25: Graficar Red/ Conexión BD y Validaciones 140

Figura 3.26: Graficar Red/ Conexión BD y Validaciones 141

Figura 3.27: Graficar Red/ Conexión BD y Validaciones 142

Figura. 3.28: Graficar Red/ Conexión BD y Validaciones 143

Figura 3.29: Graficar Red / Dibujar Objetos 144

Figura 3.30: Graficar Red / Dibujar Red 145

Figura 3.31: Graficar Red / Dibujar Arbol 146

Figura 3.32: Graficar Red / Dibujar Arbol 147

Figura 3.33: Descubrir Red 148

Figura 3.34: Descubrir Red 149

Page 169: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXVIII

Figura. 3.35: Descubrir Red 150

Figura. 3.36: Descubrir Red 151

Fig. 3.37: Descubrir Red 152

Fig. 3.38: Descubrir Red 153

Figura 3.39: Descubrir Red 154

Figura 3.40: Descubrir Red 155

Figura .3.41: Clase Principal / Cargar

Servidor VScanNet 156

Figura 3.42: Método de la Clase UDPServ /

Recibe Paquete 158

Figura 3.43: Método de la Clase UDPServ/

Reconoce la Cabecera 159

Figura 3.44: Método de la Clase UDPServ/

Separa inf. Principal Paquete 160

Page 170: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXIX

Figura 3.45: Método de la Clase UDPServ// Separa

inf. Principal Paquete 161

Figura 3.46: Método de la Clase UDPServ/

almacenamiento temporal 162

Figura 3.47: Clase Base/ Crea Conexión 163

Figura 3.48: Formulario agente165 164

Figura 3.49: Formulario agente 165

Figura 3.50: Formulario agente 166

Figura 3.51: Formulario agente 167

Figura 3.52: Modulo_Disco_Duro 168

Figura 3.53: Modulo_Disco_Duro 169

Figura 3.54: Modulo_Estado_Memoria 170

Figura 3.55: Modulo_Estado_Memoria 171

Figura 3.56: Formulario Descubridor_Red 172

Page 171: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXX

Figura 3.57: Formulario Descubridor_Red 173

Figura 3.58: Formulario Descubridor_Red 174

Figura 3.59: Formulario Descubridor_Red 176

Figura 3.60: Formulario Descubridor_Red 177

Figura 3.61: Formulario Descubridor_Red 178

Figura 3.62: Formulario Descubridor_Red 179

Figura 3.63: Formulario Descubridor_Red 180

Figura 3.64: Formulario Descubridor_Red 181

Figura 3.65: Formulario Descubridor_Red 182

Page 172: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

XXXI

ANEXO 183

Diccionario de Datos

Page 173: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 1

CAPITULO 1

MANUAL DE INSTALACIÓN

Page 174: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 2

VscanNet

Version 1.0

Page 175: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 3

CONTENIDO CD DE INSTALACIÓN

Instaladores del: Administrador, Descubridor y Agente

Archivo ejecutable del Servidor VscanNet

Carpetas: Reportes y Help

Carpeta Procedimientos(Indispensable ejecutar, requerimiento base

de datos)

Archivo . manifest

1- Instalación de VscanNet Administrador

Para la instalación de la aplicación se siguen los pasos que a continuación se

describen.

1.1.- INICIAR

Doble clic al archivo setup.exe que se encuentra en el CD de Instalación

Carpeta Administrador_Descubridor.

Page 176: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 4

Primer paso

Fig. 1.1: Instalación VscanNet

Page 177: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 5

1.1.2.-Copiar los archivos de instalación

Fig. 1.2: Instalación VscanNet(Arch. De Instalación)

Page 178: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 6

1.1.3.-Escoger VscanNet como opción de programa a instalar

Fig. 1.3: Instalación VscanNet(Escoger opción de programa)

Page 179: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 7

1.1.4.-Instalando VscanNet

Fig. 1.4: Instalación VscanNet

Page 180: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 8

1.1.5.-Instalación terminada

Fig. 1.5: Instalación VscanNet(Finalizando Instalación)

Page 181: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 9

1.1.6.- CANCELACIÓN DE iNSTALACIÓN

En caso de cancelar la instalación el instalador automáticamente quitará los

archivos que hayan sido instalados hasta ese entonces

Fig. 1.6: Instalación VscanNet(Cancelar Instalación)

Page 182: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 10

1.1.7.-Directorio de Instalación

El programa se instalara por defecto en el directorio "C:\Archivos de

programa\VScanNet\VScanNet.exe"; pero éste puede ser cambiado en el

momento de la instalación.

El acceso directo se creará en Inicio -> Programas -> VScanNet ->

VScanNet.

Fig. 1.7: Instalación VscanNet – Ubicación VscanNet

Page 183: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 11

1.2.- Instalación de VscanNet Agente

Para la instalación de la aplicación se siguen los pasos que a continuación se

describen.

1. Doble clic al archivo setup.exe que se encuentra en el CD de

Instalación Carpeta Agente.

2. Nos aparecerá una pantalla como se muestra en la figura 1.8, en la

cual nos indica que comenzaremos con la instalación de la aplicación,

para lo cual damos clic en el botón siguiente.

Fig.1.8: Instalación VscanNet Agente

Page 184: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 12

3. A continuación nos aparece la ventana indicándonos el directorio

donde se instalara la aplicación como se muestra en la figura 1.9 la

cual no se puede cambiar.

Fig.1.9: Instalación Agente VscanNet

Page 185: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 13

4. Finalmente aparece la pantalla que indica que la instalación de la

aplicación se ha efectuado con éxito y nos advierte que el sistema se

va a reiniciar para que los cambios sean válidos.

Fig. 1.10 : Instalación Agente VscanNet

Page 186: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 14

2.- PASOS ADICIONALES A LA APLICACIÓN

2.1.- Base de Datos:

Instalación de la Base de Datos SQL 2000, siguiendo los pasos del instalador

del mismo

1. Instalación del Service Pack SQL 2000 (recomendable)

2. Se crea el directorio “C:\VScanNet\DataBase”, en el que se

almacenarán los dos archivos de la base de datos VScanNet:

VScanNet_Data.MDF (datos) y VScanNet_Log.LDF (log de

transacciones)

3. Se ejecutan los scripts de creación de la base que se encuentran en el

directorio “\Procedimientos”, en este orden obligatorio:

a. 1_CreaVScanNet.sql

b. 2_SP_ImpNodo.sql

c. 3_SP_Distribucion.sql

d. 4_PrimerUsuario.sql

Page 187: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 15

2.2.- Conexión a la Base de Datos:

1. Ir al menú Inicio -> Configuración -> Panel de Control -> Herramientas

Administrativas -> Orígenes de datos ODBC.

2. Se crea la entrada DNS de usuario. Para esto se hace clic en el botón

“Agregar…”

Fig. 1.8: Conexión Base de Datos

Page 188: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 16

3. Se elige el origen de datos SQL y se hace clic en “Finalizar”

Fig. 1.9: Conexión Base de Datos

Page 189: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 17

4. En el nombre y descripción de origen de datos de escribe VScanNet,

en servidor se elige el servidor donde se encuentra instalada la base

de datos y se da clic en siguiente.

Fig. 1.10: Conexión Base de Datos

Page 190: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 18

5. Se elige para la autenticidad del Id de inicio de sesión mediante la

autenticación de SQL Server. Y el usuario de conexión debe ser sa

con la contraseña en blanco (Al igual que en la instalación). Se da clic

en Siguiente

Fig. 1.11 Conexión Base de Datos

Page 191: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 19

6. Se establece a VScanNet como la base de datos predeterminada y se

da clic en Siguiente

Fig. 1.12: Conexión Base de Datos

Page 192: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 20

7. En la siguiente ventana, se da clic directamente en Finalizar

Fig. 1.13: Conexión Base de Datos

Page 193: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 21

8. Se prueba el origen de datos dando clic en el botón “Probar origen de

datos…”. Aceptar en la ventana que se muestra.

Fig. 1.14: Conexión Base de Datos

Page 194: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 22

Pruebas Efectuadas:

Fig. 1.15: Conexión Base de Datos

Page 195: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 23

9. Luego “Aceptar” en la ventana de creación del origen de datos

Fig. 1.16: Conexión Base de Datos

Page 196: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 24

2.3.- Reportes

1. Para los reportes, es necesario instalar Cristal Reports Versión 5.0 o

susperior.

2. Crear la carpeta “\Reportes\” en el mismo directorio donde se

encuentre el ejecutable de la aplicación (generalmente es "C:\Archivos

de programa\VScanNet\)

3. Copiar los reportes desde el directorio “\Reportes\” al creado en el

paso 2.

2.4.- Ayuda

1. Se crea la carpeta “\Help\” en el mismo directorio donde se encuentre

el ejecutable de la aplicación (generalmente es "C:\Archivos de

programa\VScanNet\)

2. Se copia el contenido del directorio “\Help\” al creado en el paso 1

Page 197: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 25

2.5.- Manifest

Este archivo permite a la aplicación tomar la apariencia del SO en que se

esté ejecutando(XP).

Para ello es necesario copiarlo desde el CD de instalación al mismo

directorio y carpeta donde esté el ejecutable del programa.

El nombre de este archivo será el mismo del ejecutable pero al final se le

añade .manifest.

VscanNet.exe.manifest

Page 198: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 26

CAPITULO 2

MANUAL DE USUARIO

Page 199: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 27

VscanNet

Version 1.0

Page 200: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 28

2.1.-INTRODUCCIÓN

Actualmente en nuestro entorno existen empresas que basan sus negocios

en la velocidad y la calidad de los procesos que se ejecutan en los equipos

que poseen; por ende nace la necesidad de contar con una aplicación que

facilite la visualización gráfica y el control del estado de operación de los

equipos con que cuentan.

Motivo por el cual la aplicación que se describe en las secciones siguientes

plantea brindar una solución que facilite el control y que a través de un

mecanismo flexible y sencillo permita el monitoreo de la red con que cuenta

una empresa cuya infraestructura se encuentre dentro de un entorno de red

basado en la arquitectura TCP/IP.

De esta forma se podrán atacar la ineficiencia e inconvenientes que

conllevan modelos de administración de redes segmentadas y poco

proactivos. Donde los beneficiarios directos serían los grupos de usuarios o

administradores y por ende los Gerentes de IT.

Page 201: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 29

A veces para poder visualizar el estado de un equipo de una red es

necesario estar físicamente en el, para después ejecutar una serie de

comandos y/o aplicaciones propias del sistema operativo que muestren el

rendimiento del mismo.

La información que se obtiene como resultado de la metodología antes

descrita es importante pero no suficiente y sobre todo en el ámbito visual.

Más aún si lo que se desea es poder conocer el estado operacional e

información general de un host de la red u obtener una visualización general

de la misma para así optimizar el control del los recursos con que cuenta una

red.

De esta forma se presenta una solución que permite visualizar la red luego

de efectuar un descubrimiento en un nivel lógico(Direcciones IP) de la

misma.

A esta aplicación la denominaremos:

VscanNet (Sistema de Escaneo y Visualización de la Red)

Page 202: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 30

Este sistema consta de 4 Módulos o programas:

VsCanNet Administrador

VscanNet Agente

VscanNet Servidor

VscanNet Descubridor

Page 203: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 31

VscanNet Agente

Este módulo es el encargado de enviar la información del nodo de red(PC) al

servidor.

El Agente se instalará en cada una de las computadoras de la red y se

activará cada vez que se enciendan y estará ejecutándose hasta que se la

apague.

VscanNet Administrador

Este módulo es la interfaz de usuario del sistema, tiene como función

principal el poder visualizar la red(graficarla), tarea que realiza basándose en

la información que esté almacenada en la base de datos.

VscanNet Servidor

Este módulo tiene como función principal recibir la información proporcionada

por el agente para luego almacenarla en la base de datos.

Page 204: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 32

VscanNet Descubridor

Este módulo tiene como función principal realizar el descubrimiento de la red

y almacenar los resultados obtenidos en la base de datos.

Como funciones principales de VscanNet tenemos las siguientes:

Escaneo de la red -> Descubrimiento de la Red

Visualización de la red:

Mapa Lógico de la red

Presentación de la información

Alertas

Reportes

En las secciones siguientes se detallan cada una de las opciones que tiene

VscanNet.

Page 205: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 33

2.2.-FUNCIONES PRINCIPALES

ACCESO AL SISTEMA

Lo primero que aparecerá al ejecutar el sistema será una pantalla de

presentación en la cual se mostrará el nombre de la aplicación.

Fig. 2.1: Presentación del Sistema

Page 206: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 34

INICIO DE SESIÓN

Luego de la pantalla de presentación del sistema aparecerá la pantalla de

Inicio de Sesión.

Objetivo:

Permitir o denegar el acceso a un usuario al sistema VscanNet.

Fig. 2.2: Inicio de Sesión

Page 207: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 35

Descripción:

Para poder tener acceso al sistema deberá ingresar el nombre del usuario

y su contraseña.

A un usuario se le negará el acceso en los siguientes casos:

El nombre del usuario no sea el correcto, debido a que esté mal

escrito o este no exista.

Fig. 2.3: Inicio de Sesión

Page 208: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 36

La contraseña ingresada no sea la correcta, debido a que el usuario

no la recuerde o este mal escrita(si está en mayúsculas y la clave está

en minúscula o viceversa).

Fig. 2.4: Inicio de Sesión

Page 209: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 37

Para evitar errores al escribir la contraseña el sistema alerta al usuario si el

teclado de mayúsculas está activado.

Fig. 2.5: Inicio de Sesión

Page 210: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 38

Esta pantalla además de permitir ingresar tanto el nombre del usuario como

su contraseña. Indicará tanto el nombre del PC como la fecha y la hora de

inicio de sesión(Información Inicio de Sesión).

Fig. 2.6: Inicio de Sesión

Page 211: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 39

VscanNet controla el ingreso de los usuarios de forma que al cuarto intento

fallido de ingreso, el programa se cierra.

Fig. 2.7: Inicio de Sesión

Page 212: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 40

PANTALLA PRINCIPAL

Cuando Usted ha podido ingresar al sistema aparecerá la Pantalla principal

de VscanNet.

Objetivo:

Permitir al usuario utilizar todas las opciones que ofrece VscanNet.

Descripción:

Esta pantalla costa de:

Barra de Título: Contiene el nombre del Sistema y el nombre del

usuario

Barra de Menú: Contiene las siguientes opciones:

Archivo

Cerrar Sesión

Salir

Page 213: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 41

Descubrimiento

Iniciar

Mapas de Red

Configuración Inicial

Gráfico de Red

Herramientas

Cmd

Ping

Reportes

Usuarios

Mantenimiento de Usuario

Cambio de Contraseña

Ayuda

Temas de Ayuda

Acerca De...

Page 214: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 42

Barra de Herramientas: esta contiene accesos directo a las opciones

principales de la barra de menú:

Descubrimiento de Red

Gráfico de Red

D.O.S. (Cmd)

Reportes

Usuarios del Sistema

Ayuda

Cerrar Sesión

Salir de la aplicación

Barra de Estado: esta contiene la siguiente información:

Nombre de la aplicación (VscanNet)

Nombres y Apellidos del Usuario

Nombre del Servidor de la Base de Datos

Page 215: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 43

Fecha

Hora

Estado de la tecla Bloq. Mayúscula

Estado de la tecla Bloq. Numérico

Fig. 2.9: Pantalla Principal

Page 216: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 44

PANTALLA PRINCIPAL

1. Archivo

1.1.- Cerrar Sesión

Permite a un usuario salir del sistema e ingresar nuevamente con otro

usuario.

Fig. 2.10: Opción Archivo- Cerrar Sesión

Page 217: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 45

1.2.- Salir

Permite a un usuario salir de la aplicación.

Cabe mencionar que tanto para cerrar la sesión como para salir del sistema,

es necesario que todas las ventanas de la aplicación estén cerradas, caso

contrario se mostrará el siguiente mensaje.

Fig. 2.11: Opción Archivo- Salir

Page 218: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 46

2. Descubrimiento

Objetivo:

Permitir descubrir la red en forma lógica; es decir descubrir todas las

direcciones IP de la misma.

Descripción:

Al ejecutar esta opción aparecerá una pantalla donde se ingresará la

dirección de red que se desea descubrir.

Fig. 2.12: Opción Archivo- Salir

Page 219: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 47

El sistema permite descubrir varias redes en un mismo descubrimiento; para

esto el usuario administrador deberá dar clic en un check box que aparece en

esta opción, donde se indicará que la siguiente red a descubrir pertenece al

mismo descubrimiento.

Esta funcionabilidad permite al administrador escoger que redes van a ser

decubiertas; es decir, si para el descubrimiento inicial(Primer

descubrimiento) el usuario ingresó tres redes de diferentes dominios a

descubrir y habilitó el check box para el sistema todas van a pertenecer a

este descubrimiento.

Dado que si se dá el caso de que un lapso de 2 semanas o menos hubo

algun cambio en el diseño de una de las redes decubiertas, este podrá

ingresar solo la red que tiene los cambios para que los mismos se guarden

en el sistema sin la necesidad de que este descubrimiento represente el

segundo que hiciera el administrador.

Page 220: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 48

Al momento de ingresar la dirección de red el sistema automáticamente le

asignará la máscara de la misma de acuerdo a su clase.

Fig. 2.13: Opción Descubrimiento

Page 221: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 49

2.1.- Descubrimiento de Subredes

Otra funcionabidad de VsccanNet es el descubrimiento de subredes. Para

esto el sistema permite al usuario administrador ingresar la máscara de la

subred que desea descubrir

Fig. 2.14: Descubrimiento de subredes

Page 222: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 50

Posteriormente para iniciar el descubriendo de la red y/o subredes solo se

tendrá que dar clic en el botón Aceptar.

Fig. 2.15: Opción Descubrimiento(mensaje)

Page 223: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 51

Una vez finalizado este proceso el sistema le indicará mediante un mensaje

que ha concluido el mismo.

Requerimiento de usuario:

Para poder iniciar el descubrimiento de la red es recomendable que estén

encendidas todas las Pc’s que conforman la misma.

Fig. 2.16: Opción Descubrimiento - Terminar

Page 224: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 52

3. Mapas de Red

Objetivo:

Visualizar el esquema lógico de la red en dos formas: Configuración Inicial

y Gráfico de Red.

Descripción:

3.1. Configuración Inicial

Permite visualizar el esquema lógico de la red encontrada mediante la opción

“Descubrimiento” del sistema.

Fig.2.17: Opción Mapas de Red – Configuración Inicial

Page 225: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 53

Al ingresar a la opción, esta mostrará automáticamente el esquema de la red

y permite al usuario de guardar el gráfico como un archivo con formato bmp,

jpg o gif.

Fig. 2.18: Opción Mapas de Red – Configuración Inicial-Guardar

Page 226: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 54

3.2. Gráfico de Red

Permite visualizar el esquema lógico de la red en una fecha y hora

determinadas. Existen dos tipos de gráfico de red: Histórico y Actual.

Para el gráfico Histórico el usuario debe ingresar la fecha y hora que desee

visualizar la red. Para el gráfico actual se tomará automáticamente la fecha

y hora actual del sistema.

El gráfico de la red se muestra simulando la interfaz del Explorador de

Windows. Del lado izquierdo, tenemos el árbol jerárquico de la red. Como

nodo raíz se muestra la red, este nombre puede ser editado por el usuario.

Fig. 2.19: Opción Mapas de Red – Grafico de Red /Actual

Page 227: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 55

El segundo nivel de jerarquía corresponde a las subredes, y el tercer nivel a

los equipos pertenecientes a su respectiva subred. Estos dos niveles no

pueden ser editados.

Fig. 2.20: Opción Mapas de Red – Grafico de Red /Actual

Page 228: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 56

Al hacer clic en cualquier nodo del árbol, en el lado derecho de la aplicación

se mostrará automáticamente el grafico que corresponde al nodo elegido de

acuerdo al siguiente esquema:

Al hacer clic en el nodo raíz, se graficará el contenido completo de la

red

Al hacer clic en la subred, se graficarán los equipos de esa subred

Al hacer clic en el nodo hijo, se graficará el equipo respectivo

Fig. 2.21: Opción Mapas de Red – Grafico de Red

Page 229: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 57

Al hacer clic derecho sobre un nodo de la red, es sistema muestra un menú

contextual que mostrará las propiedades del nodo elegido. Al elegir ésta

opción, se abrirá la ventana de propiedades

Fig. 2.22: Opción Mapas de Red – Grafico de Red/ Propiedades

Page 230: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 58

La ventana de propiedades, muestra una lista de las principales

características del equipo señalado, como son:

Propiedades Generales

Nombre del Nodo

Estado

Dirección IP

Dirección de Red

Máscara de Red

Gateway

Clase

Page 231: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 59

Sistema Operativo

Nombre

Versión del S.O.

Fig. 2.23: Opción Mapas de Red – Grafico de Red/ Propiedades/ Generales

Page 232: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 60

Procesador

Nombre

Porcentaje de Uso

Un grafico de barra del porcentaje de uso del procesador

Fig. 2.24: Opción Mapas de Red – Grafico de Red/ Propiedades/S.O

Page 233: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 61

Discos Duros

Unidad

Serie

Serie

Tamaño Total

Fig. 2.25: Opción Mapas de Red – Grafico de Red/ Propiedades/ Procesador

Page 234: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 62

Tamaño Disponible

Un grafico de pastel del espacio libre del disco versus el espacio

disponible

Memoria

Memoria Física Total

Memoria Física Disponible

Fig. 2.26: Opción Mapas de Red – Grafico de Red/ Propiedades/ HD

Page 235: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 63

Memoria Virtual Total

Memoria Virtual Disponible

Memoria Cargada

Un grafico de pastel de la memoria física libre versus memoria física

disponible

Fig. 2.27: Opción Mapas de Red – Grafico de Red/ Propiedades/ Memoria

Page 236: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 64

Red

Tipo de Tarjeta de Red

Dirección Física

Paquetes Recibidos

Paquetes Perdidos

Paquetes Enviados

Nombre del Enlace

Velocidad del Enlace

Fig. 2.28: Opción Mapas de Red – Grafico de Red/ Propiedades/ Tarjetas

Page 237: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 65

Procesos

Id del Proceso

Nombre del Proceso

Fig. 2.29: Opción Mapas de Red – Grafico de Red/ Propiedades/ Procesos

Page 238: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 66

VscanNet también permite visualizar el estado de un nodo mediante el uso

de un código de colores:

Verde – Normal – el nodo responde normalmente al monitoreo y

está funcionando correctamente.

Amarillo – Advertencia – indica un estado de alerta. Puede

darse cuando los nodos monitoreados presentan problemas en capacidad de

memoria, procesador o discos duros

Gris– Apagado – el nodo esta apagado y no responde al

monitoreo, o no tiene instalado el agente.

Azul– Nuevo – nodo agregado a la red y responde normalmente al

monitoreo.

Page 239: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 67

4. Herramientas

Objetivo:

Permite tener a la mano tres herramientas muy usadas para el monitoreo

y visualización del estado de la red. Herramientas tales como:

Fig. 2.30: Opción Mapas de Red – Grafico de Red

Fig. 2.30: Opción Mapas de Red – Grafico de Red/ Propiedades

Page 240: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 68

Cmd (DOS)

Ping

Reportes

Descripción:

4.1. Cmd

Esta opción abre la ventana de comandos (DOS) de Windows.

Fig. 2.31: Opción Herramientas - Cmd

Page 241: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 69

4.2. Ping

Permite realizar el comando ping a una dirección de red especificada por el

usuario. Ésta debe ser una dirección IP correcta

Al hacer clic en el botón ping, la ventana mostrara los resultados del

comando en las cajas de texto de la parte inferior

Fig. 2.31: Opción Herramientas - Ping

Page 242: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 70

4.3. Reportes

Permite visualizar, guardar e imprimir reportes de subredes y nodos, por lo

tanto, existen dos tipos de informes:

Por Nodo

Por Red

A su vez los reportes permiten dos tipos de acción:

Visualización por pantalla

Mandar a Impresora

Fig. 2.32: Opción Herramientas - Reportes

Page 243: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 71

4.3.1. Reportes por Nodo

Esta opción nos permite obtener un reporte de las principales propiedades

del nodo:

Propiedades Generales (Nodo)

Memoria

Procesadores

Sistemas Operativos

Discos Duros

Interfaces de Red

Paquetes

Procesos ejecutándose

El usuario debe ingresar la dirección IP correcta, la fecha y hora y el tipo de

reporte.

Page 244: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 72

Fig. 2.33: Opción Herramientas – Reportes Por Nodo

Fig. 2.34 : Opción Herramientas – Reportes Por Nodo

Page 245: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 73

4.3.2. Reportes por Red

Esta opción nos permite obtener un reporte de todas las direcciones IP que

se encuentran en una dirección de red especificada.

Para esta opción, el usuario debe ingresar solamente la dirección de red

correcta.

Fig. 2.35: Opción Herramientas – Reportes Por Red

Page 246: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 74

Fig. 2.36 : Opción Herramientas – Reportes Por Red

Page 247: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 75

Además de poder visualizar por pantalla el reporte, VscanNet permite

imprimir los reportes.

Fig. 2.37 : Opción Herramientas – Reportes - Imprimir

Page 248: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 76

5. Usuarios

Objetivo:

Permite hacer un mantenimiento de los usuarios que accesan al sistema

Descripción:

5.1. Mantenimiento de Usuarios

Esta opción permite realizar las siguientes acciones:

Nuevo usuario(crearlo)

Buscar usuarios

Eliminar usuarios

Guardar cambios

Actualización de usuarios

Page 249: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 77

Cada usuario tiene los siguientes datos:

Usuario

Contraseña

Hora de Ingreso

Hora de Salida

Número de Cédula

Nombres

Apellidos

Teléfono

Tipo de usuario

La hora de ingreso y salida del sistema se refiere que momento del día el

usuario puede ingresar al sistema. El tipo de usuario (Administrador o

Restringido) permite diferenciar a los mismos. El usuario restringido no tiene

acceso al Mantenimiento de Usuarios

Los datos que No pueden ser modificados son:

El usuario

La cédula

La contraseña

Page 250: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 79

5.1.1. Búsqueda de Usuario

Por medio de esta opción, el usuario puede buscar usuarios para darles el

respectivo mantenimiento.

Fig. 2.38 : Usuarios – Mantenimiento de Usuarios

Page 251: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 80

Puede buscar de dos formas. Si la opción “Todos los Usuarios” se encuentra

activada, al hacer clic en el botón Buscar, se presentará en la parte inferior

de la ventana, una lista de todos los usuarios con sus características mas

requeridas:

Cédula

Usuario

Nombre

Apellido

Fig. 2.39 : Usuarios – Mantenimiento de Usuarios / Buscar

Page 252: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 81

Si la opción “Todos los Usuarios” no se encuentra activada, se puede hacer

la búsqueda de acuerdo a cuatro criterios de búsqueda:

Por cédula

Por usuario

Por nombre

Por apellido

Y de acuerdo a cuatro tipos de búsqueda:

Igual

Comience con

Contenga

No contenga

El criterio de búsqueda se lo hace conjuntamente con la clave de búsqueda,

que se ingresa en la caja de texto “Búsqueda”, por ejemplo, para buscar

todos los usuarios cuyos nombre comiencen con la letra “G”, se escoge

“Nombre” en Criterio de Búsqueda, “Comience con” en Tipo de Búsqueda y

la letra g (no importa si es mayúscula o minúscula) en la caja de texto

Búsqueda.

Page 253: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 82

Fig. 2.40 : Usuarios – Mantenimiento de Usuarios / Buscar

Fig. 2.41 : Usuarios – Mantenimiento de Usuarios / Buscar

Page 254: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 83

Fig. 2.42 : Usuarios – Mantenimiento de Usuarios / Buscar

Page 255: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 84

5.1.2 Crear Usuario

Esta opción permite la creación de un nuevo usuario para que tenga acceso

al sistema. Está creación se basará de acuerdo a los parámetros

anteriormente descritos.

Fig. 2.43 : Usuarios – Mantenimiento de Usuarios / Nuevo Usuario

Page 256: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 85

5.1.3 Actualizar Usuario

Esta opción permite modificar la información de un usuario si el caso lo

amerita. Para poder actualizar un usuario previamente debe buscarlo por

medio de la opción “Buscar” del sistema.

Fig. 2.44 : Usuarios – Mantenimiento de Usuarios / Actualizar

Page 257: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 86

Fig. 2.45 : Usuarios – Mantenimiento de Usuarios / Actualizar

Fig. 2.46 : Usuarios – Mantenimiento de Usuarios / Actualizar

Page 258: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 87

5.1.4 Eliminar Usuario

Esta opción permite eliminar los usuarios que ya no tendrán acceso al

sistema.

5.1.5 Guardar modificaciones

Esta opción permite guardar todos los cambios que se hayan realizado.

5.2. Cambio de Contraseña

Esta opción permite actualizar la contraseña del usuario. Esta opción permite

solamente cambiar su propia contraseña

Page 259: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 88

Fig. 2.47 : Usuarios – Cambio de Contraseña

Page 260: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 89

Para hacer el cambio, se debe ingresar primeramente la actual contraseña,

luego la nueva y su confirmación. Así mismo el sistema solicita al usuario una

confirmación de la acción a realizar.

Fig. 2.48: Usuarios – Cambio de Contraseña

Fig. 2.49 : Usuarios – Cambio de Contraseña

Page 261: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 90

La contraseña no se actualizará por las siguientes causas:

La contraseña actual no corresponde al usuario actual

La contraseña actual es igual a la nueva contraseña

La contraseña nueva y su confirmación no las mismas

La contraseña nueva tiene menos de 4 caracteres

Fig. 2.50: Usuarios – Cambio de Contraseña

Page 262: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 91

6. Ayuda

Objetivo:

Permite visualizar la ayuda del sistema y un cuadro de dialogo acerca de.

Descripción:

Fig. 2.51 : Usuarios – Cambio de Contraseña

Page 263: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 92

6.1. Temas de Ayuda

Esta opción muestra en pantalla la ayuda del sistema. También es posible

visualizarla pulsando la tecla F1.

Fig. 2.52 : Ayuda VscanNet

Page 264: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 93

6.2. Acerca De

Esta opción muestra en un cuadro de dialogo con los realizadores del

sistema y la opción de Información del Sistema (Windows).

Fig. 2.52 : Ayuda – Acerca De

Page 265: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 94

2.3.-REQUERIMIENTOS DEL SISTEMA

En el caso de que VscanNet se vaya instalar en una sola máquina se

requiere de:

Requisitos de Sistema

Mínimos

Requisitos de Sistema

Recomendados

Procesador

Intel Pentium o compatible 1 GHz

Intel Pentium 3.0 GHz o superior

Memoria

512 MB de RAM 1 GB de RAM

Hard Disk:

30 GB 80 GB

Display:

Super VGA(1024 x 768) High Color

Super VGA(1280x 1024 pixels) color 24 bits

Sistema Operativo:

Windows 2000

Windows Xp

Windows 2000 Server

Windows 2003 Server

Page 266: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 95

Plataforma de Monitoreo y Protocolos

Windows NT/2000/XP

TCP/IP

Requerimientos de Software

Microsoft SQL 2000 Server

Crystal Reports 5.0 ó superior

JDK – Máquina Virtual de Java

Internet Explorer 5.5 ó superior

WinPcap 3.1 o superior

PpacketX 3.0 o superior

Page 267: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 96

En el caso de se disponga con Pc’s distribuidas para cada módulo de

VscanNet, se requiere de:

Servidor VscanNet

Requisitos de Sistema

Mínimos

Requisitos de Sistema

Recomendados

Procesador

Intel Pentium o compatible 1 GHz

Intel Pentium 3.0 GHz o superior

Memoria

256 MB de RAM 512 MB de RAM

Hard Disk:

10 GB 20 GB

Sistema Operativo:

Windows 2000

Windows Xp

Windows 2000 Server

Windows 2003 Server

Page 268: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 97

Plataforma de Monitoreo y Protocolos

Windows NT/2000/XP

TCP/IP

Requerimiento de Software

JDK – Máquina Virtual de Java

Page 269: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 98

Administrador VscanNet

Requisitos de Sistema

Mínimos

Requisitos de Sistema

Recomendados

Procesador

Intel Pentium o compatible 1 GHz

Intel Pentium 3.0 GHz o superior

Memoria

512 MB de RAM 1 GB de RAM

Hard Disk:

20 GB 40GB

Display:

Super VGA(1024 x 768) High Color

Super VGA(1280x 1024 pixels) color 24 bits

Sistema Operativo:

Windows 2000

Windows Xp

Windows 2000 Server

Windows 2003 Server

Page 270: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 99

Plataforma de Monitoreo y Protocolos

Windows NT/2000/XP

TCP/IP

Requerimiento de Software

Crystal Reports 5.0 ó superior

Internet Explorer 5.5 ó superior

Page 271: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 100

Agente VscanNet

Requisitos de Sistema

Mínimos

Requisitos de Sistema

Recomendados

Procesador

Intel Pentium o compatible 1 GHz

Intel Pentium 3.0 GHz o superior

Memoria

128 MB de RAM 256 MB de RAM

Hard Disk:

10 GB 20 GB

Sistema Operativo:

Windows 98

Windows XP

Windows NT o superior

Page 272: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 101

Plataforma de Monitoreo y Protocolos

Windows 98/NT/2000/XP

TCP/IP

Requerimiento de Software

WinPcap 3.1 o superior

PpacketX 3.0 o superior

Page 273: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 102

Descubridor VscanNet

Requisitos de Sistema

Mínimos

Requisitos de Sistema

Recomendados

Procesador

Intel Pentium o compatible 1 GHz

Intel Pentium 3.0 GHz o superior

Memoria

128 MB de RAM 256 MB de RAM

Hard Disk:

10 GB 20 GB

Sistema Operativo:

Windows 98

Windows XP

Windows NT o superior

Page 274: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 103

Plataforma de Monitoreo y Protocolos

Windows 98/NT/2000/XP

TCP/IP

Page 275: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 104

CAPITULO 3

MANUAL TÉCNICO

Page 276: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 105

3.1.- Diagramas

A continuación se detalla cada uno de los diagramas que conforman el

desarrollo del sistema.

Page 277: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 106

3.1.1.-Árbol de problemas

C A U S A

S

E F E C T O S

Falta de optimización de los activos

existentes

Decremento en la

eficiencia

Pérdida de la

inversión

Decremento en la

productividad

PÉRDIDA DE TIEMPO

FALTA DE AUTOMATIZACION

No contar con una interfaz gráfica

amigable

Complicado acceso a la

información de la red

Estar físicamente en el equipo para

ejecutar comandos y / o aplicaciones

Page 278: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 107

3.1.2.-Árbol de Objetivos

Visión más integral detallada

y sencilla de la infraestructura de

red

Toma De decisiones más acertadas debido

a inf. de los activos de red

Mayor eficiencia /mejor interacción entre personal

e infraestructura

Mejor acceso y control a los recursos

de red

Incremento en la

productividad

Fácil Acceso a información de la

red sin previa personalización

CONTROL

Page 279: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 108

3.1.3.- Diagrama Flujo de Datos

Figura 3.1: Diagrama Flujo de Datos

Page 280: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 109

Figura 3.2: Diagrama Entidad Relación

USUARIO

INF_INICIAL

INTERFACES_RED

INF_PROCESS INF_UNIDADES_HD INF_MEMORIA

NODO

PROC_EJEC

INF_SO

3.1.4.- Diagrama Entidad Relación

Page 281: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 110

Figura 3.3: Especificación de Objetos

Page 282: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 111

3.1.5.- Arquitectura de VscanNet

VscanNet

Descubridor Servidor Administrador

Recibe Dirección

de red Y Mascara

Procesa Dir de Red Y Máscara

Obtiene todas las Ip

posibles de la red

Realiza el descubrimiento de red a través de un broadcast y guarda en la tabla inicial las direcciones que han

respondido

Ingreso al

Sistema

Grafica la red mediante

información de la BD

Recibe información del

Agente

Procesa información enviada por cada

agente y la almacena en la BD

Obtiene información

del nodo

Envío de información al servidor cada cierto tiempo

Envío de datos al descubridor

Generación e impresión de reportes de

nodos y de red

Control y procesamiento de los usuarios

de acceso al sistema

Provee herramientas

para facilitar el diagnóstico de

la red

Agente

Page 283: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 112

3.1.6.- Arquitectura VscanNet Administrador

3.1.6.1.- Ingreso al Sistema

N

S S

N

Ingreso de datos

Usuario Contraseña

Consultar BD

Carga de

aplicación

principal

Intento de ingreso = 4

Información válida

Cerrar Sistema

Page 284: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 113

3.1.6.2.- Envío de Datos al Descubridor

Ingreso de IP por el usuario

Ingreso de IP por el usuario

Cálculo automático de Máscara

Envío de datos al

descubridor

S

IP Correcta

N

Page 285: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 114

3.1.6.3.- Graficar Red

N

S

N

Opción Mapa de

red

Configuración Inicial

Verificar y obtener datos

de la tabla inicial

Dibujar Mapa de Red Conf.

Inicial

VscanNet

Gráfico actual

Fecha y Hora actual

Procesamient de

información

Fecha y Hora

Ingresada por Usuario

S

Dibujar Mapa de

Red

Page 286: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 115

3.1.6.7.- Arquitectura VscanNet Servidor

Si

No

Esperar Paquete (PIR)

Cliente

Fraccionar Datos principales

Paquete (PIR)

Si

NO

Escuchar Por Puerto

3333

C

DatagramSocket

Activar

Ha llegado Paquete

(PIR)

Cabecera =

RIN

A

Page 287: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 116

N

S

N

Si

A

Organiza la Información

Paquete (PIR)

En la B.D

Existe datos en la tabla

Inicial

B

BD

Fecha_Ultima_Almacenada = Fecha Actual

AND Hora_Ultma_Almac < 10 minutos

Actualizar Datos Insertar Datos

Finalizar análisis del paquete

(PIR)

B

C

Page 288: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 117

3.1.6.8.- Arquitectura VscanNet Descubridor

Page 289: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 118

3.1.6.9.- Arquitectura VscanNet Agente

Page 290: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 119

3.2.- Creación del Script

Script de creación de la base de datos, las tablas y sus relaciones

Se crea la base de datos en el directorio C:\VScanNet\DataBase:

IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'VScanNet')

DROP DATABASE [VScanNet]

GO

CREATE DATABASE [VScanNet] ON (NAME = N'VScanNet_Data', FILENAME = N'C:\VScanNet\DataBase\VScanNet_Data.MDF' , SIZE = 2, FILEGROWTH = 10%) LOG ON (NAME = N'VScanNet_Log', FILENAME = N'C:\VScanNet\DataBase\VScanNet_Log.LDF' , SIZE = 10, FILEGROWTH = 10%)

COLLATE Modern_Spanish_CI_AS

GO

Figura 3.4: Creación de la Base de Datos

Page 291: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 120

Se crean las opciones por defecto de la base:

exec sp_dboption N'VScanNet', N'autoclose', N'false' GO exec sp_dboption N'VScanNet', N'bulkcopy', N'false' GO exec sp_dboption N'VScanNet', N'trunc. log', N'false' GO exec sp_dboption N'VScanNet', N'torn page detection', N'true' GO exec sp_dboption N'VScanNet', N'read only', N'false' GO exec sp_dboption N'VScanNet', N'dbo use', N'false' GO exec sp_dboption N'VScanNet', N'single', N'false' GO exec sp_dboption N'VScanNet', N'autoshrink', N'false' GO exec sp_dboption N'VScanNet', N'ANSI null default', N'false' GO exec sp_dboption N'VScanNet', N'recursive triggers', N'false' GO exec sp_dboption N'VScanNet', N'ANSI nulls', N'false' GO exec sp_dboption N'VScanNet', N'concat null yields null', N'false' GO exec sp_dboption N'VScanNet', N'cursor close on commit', N'false' GO exec sp_dboption N'VScanNet', N'default to local cursor', N'false' GO exec sp_dboption N'VScanNet', N'quoted identifier', N'false' GO exec sp_dboption N'VScanNet', N'ANSI warnings', N'false' GO exec sp_dboption N'VScanNet', N'auto create statistics', N'true' GO exec sp_dboption N'VScanNet', N'auto update statistics', N'true' GO use [VScanNet] GO

Figura 3.5: Creación opciones por defecto de la Base de datos

Page 292: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 121

Se eliminan las relaciones (claves foráneas) si éstas existen:

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_INF_MEMORIA_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[INF_MEMORIA] DROP CONSTRAINT FK_INF_MEMORIA_NODO GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_INF_PROCESS_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[INF_PROCESS] DROP CONSTRAINT FK_INF_PROCESS_NODO GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_INF_SO_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[INF_SO] DROP CONSTRAINT FK_INF_SO_NODO GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_INF_UNIDADES_HD_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[INF_UNIDADES_HD] DROP CONSTRAINT FK_INF_UNIDADES_HD_NODO GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_INTERFACES_RED_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[INTERFACES_RED] DROP CONSTRAINT FK_INTERFACES_RED_NODO GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_PAQUETES_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[PAQUETES] DROP CONSTRAINT FK_PAQUETES_NODO GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_PROC_EJEC_NODO]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[PROC_EJEC] DROP CONSTRAINT FK_PROC_EJEC_NODO GO

Figura 3.6: Eliminación de las relaciones si existen

Page 293: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 122

Se eliminan las tablas si éstas existen:

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[ALERTAS]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[ALERTAS] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[INF_INICIAL]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INF_INICIAL] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[INF_MEMORIA]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INF_MEMORIA] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[INF_PROCESS]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INF_PROCESS] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[INF_SO]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INF_SO] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[INF_UNIDADES_HD]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INF_UNIDADES_HD] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[INTERFACES_RED]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INTERFACES_RED] GO Figura 3.7: Eliminación de tablas si existen

Page 294: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 123

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[NODO]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[NODO] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[PAQUETES]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[PAQUETES] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[PROC_EJEC]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[PROC_EJEC] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_INF_INICIAL]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_INF_INICIAL] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_INF_MEMORIA]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_INF_MEMORIA] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_INF_PROCESS]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_INF_PROCESS] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_INF_SO]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_INF_SO] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_INF_UNIDADES_HD]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_INF_UNIDADES_HD] GO Figura 3.8: Eliminación de tablas si existen

Page 295: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 124

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_INTERFACES_RED]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_INTERFACES_RED] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_NODO]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_NODO] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_PAQUETES]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_PAQUETES] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TMP_PROC_EJEC]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TMP_PROC_EJEC] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[USUARIO]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[USUARIO] GO

Figura 3.9: Eliminación de tablas si existen

Page 296: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 125

Se crean las tablas:

CREATE TABLE [dbo].[ALERTAS] ( [Dir_Ip] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Usuario_Nodo] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Fecha] [datetime] NOT NULL , [Codigo] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL , [Hora] [datetime] NOT NULL , [Descripcion] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[INF_INICIAL] ( [Dir_Ip] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Dir_Red] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mascara] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Id_Histo] [int] NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[INF_MEMORIA] ( [Id_Nodo] [int] NOT NULL , [Mem_Fis_Tot] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Fis_Disp] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Vir_Tot] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Vir_Disp] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Cargada] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[INF_PROCESS] ( [Id_Nodo] [int] NOT NULL , [Nombre] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Porcentaje_Ocupado] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

Figura 3.10: Creación de tablas

Page 297: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 126

CREATE TABLE [dbo].[INF_SO] ( [Id_Nodo] [int] NOT NULL , [Nombre] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Version] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Usuario] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[INF_UNIDADES_HD] ( [Id_Nodo] [int] NOT NULL , [Volumen] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Serie] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Tamano_Total] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Tamano_Disponible] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[INTERFACES_RED] ( [Id_Nodo] [int] NOT NULL , [Descripcion] [varchar] (100) COLLATE Modern_Spanish_CI_AS NOT NULL , [Direccion_Fisica] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Paq_Recibidos] [int] NOT NULL , [Paq_Perdidos] [int] NOT NULL , [Nombre_Enlace] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Velocidad_Enlace] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Paq_Enviados] [int] NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[NODO] ( [Id_Nodo] [int] IDENTITY (1, 1) NOT NULL , [Dir_Ip] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Dir_Red] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mascara] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Nombre] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Clase] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL , [Gateway] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Estado] [int] NOT NULL , [Id_Histo] [int] NOT NULL , [Fecha] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Hora] [varchar] (8) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

Figura 3.11: Creación de tablas

Page 298: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 127

CREATE TABLE [dbo].[PAQUETES] ( [Id_Nodo] [int] NOT NULL , [Nombre] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Cant_Recibidos] [int] NOT NULL , [Cant_Enviados] [int] NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[PROC_EJEC] ( [Id_Nodo] [int] NOT NULL , [Id_Proceso] [int] NOT NULL , [Nombre_Proceso] [varchar] (25) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[TMP_INF_INICIAL] ( [Dir_Red] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Dir_Ip] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Clase] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mascara] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[TMP_INF_MEMORIA] ( [Id_TMP_NODO] [int] NOT NULL , [Mem_Fis_Tot] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Fis_Disp] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Vir_Tot] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Vir_Disp] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mem_Cargada] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

Figura 3.12: Creación de tablas

Page 299: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 128

CREATE TABLE [dbo].[TMP_INF_PROCESS] ( [Id_TMP_NODO] [int] NOT NULL , [Nombre] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Porcentaje_Ocupado] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO ar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[TMP_INF_SO] ( [Id_TMP_NODO] [int] NOT NULL , [Nombre] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Version] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Usuario] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[TMP_INF_UNIDADES_HD] ( [Id_TMP_NODO] [int] NOT NULL , [Volumen] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Serie] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Tamano_Total] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Tamano_Disponible] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[TMP_INTERFACES_RED] ( [Id_TMP_NODO] [int] NOT NULL , [Descripcion] [varchar] (100) COLLATE Modern_Spanish_CI_AS NOT NULL , [Direccion_Fisica] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Paq_Recibidos] [int] NOT NULL , [Paq_Perdidos] [int] NOT NULL , [Nombre_Enlace] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Velocidad_Enlace] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Paq_Enviados] [int] NOT NULL ) ON [PRIMARY] GO Figura 3.13: Creación de tablas temporales

Page 300: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 129

CREATE TABLE [dbo].[TMP_NODO] ( [Id_TMP_NODO] [int] NOT NULL , [Dir_Ip] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Dir_Red] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Mascara] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Nombre] [varchar] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [Clase] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL , [Gateway] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Estado] [int] NOT NULL , [Id_Histo] [int] NOT NULL , [Fecha] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Hora] [varchar] (8) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[TMP_PAQUETES] ( [Id_TMP_NODO] [int] NOT NULL , [Nombre] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Cant_Recibidos] [int] NOT NULL , [Cant_Enviados] [int] NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[TMP_PROC_EJEC] ( [Id_TMP_NODO] [int] NOT NULL , [Id_Proceso] [int] NOT NULL , [Nombre_Proceso] [varchar] (25) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[USUARIO] ( [Usuario] [varchar] (15) COLLATE Modern_Spanish_CI_AS NOT NULL , [Cedula] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Contrasena] [varchar] (40) COLLATE Modern_Spanish_CI_AS NOT NULL , [Ini_Turno] [datetime] NOT NULL , [Fin_Turno] [datetime] NOT NULL , [Nombres] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Apellidos] [varchar] (20) COLLATE Modern_Spanish_CI_AS NOT NULL , [Telefono] [varchar] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [Status] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

Figura 3.14: Creación de tablas temperales

Page 301: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 130

Se crean las relaciones (claves foráneas):

ALTER TABLE [dbo].[INF_INICIAL] WITH NOCHECK ADD CONSTRAINT [PK_INF_INICIAL] PRIMARY KEY CLUSTERED ( [Dir_Ip], [Id_Histo] ) ON [PRIMARY] GO ALTER TABLE [dbo].[NODO] WITH NOCHECK ADD CONSTRAINT [PK_NODO] PRIMARY KEY CLUSTERED ( [Id_Nodo] ) ON [PRIMARY] GO ALTER TABLE [dbo].[USUARIO] WITH NOCHECK ADD CONSTRAINT [PK_USUARIO] PRIMARY KEY CLUSTERED ( [Usuario] ) ON [PRIMARY] GO ALTER TABLE [dbo].[INF_MEMORIA] ADD CONSTRAINT [FK_INF_MEMORIA_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO ALTER TABLE [dbo].[INF_PROCESS] ADD CONSTRAINT [FK_INF_PROCESS_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO

Figura. 3.15: Creación de relaciones

Page 302: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 131

ALTER TABLE [dbo].[INF_SO] ADD CONSTRAINT [FK_INF_SO_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO ALTER TABLE [dbo].[INF_UNIDADES_HD] ADD CONSTRAINT [FK_INF_UNIDADES_HD_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO ALTER TABLE [dbo].[INTERFACES_RED] ADD CONSTRAINT [FK_INTERFACES_RED_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO ALTER TABLE [dbo].[PAQUETES] ADD CONSTRAINT [FK_PAQUETES_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO ALTER TABLE [dbo].[PROC_EJEC] ADD CONSTRAINT [FK_PROC_EJEC_NODO] FOREIGN KEY ( [Id_Nodo] ) REFERENCES [dbo].[NODO] ( [Id_Nodo] ) GO

Figura 3.16: Creación de relaciones

Page 303: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 132

Script de creación de los procedimientos

Procedimiento almacenado SP_ImpNodo:

CREATE PROCEDURE dbo.SP_IMPNODO ( @Id_Nodo AS INT, @Tipo AS CHAR(3), @Id_Histo AS INT, @Dir_Red AS CHAR(15), @Clase AS CHAR(1) ) AS SET NOCOUNT ON IF LTRIM(RTRIM(@Tipo)) = 'NOD' BEGIN -- BORRA LA INFORMACION BASURA DE LAS TEMPORALES TRUNCATE TABLE TMP_NODO TRUNCATE TABLE TMP_INF_MEMORIA TRUNCATE TABLE TMP_INF_PROCESS TRUNCATE TABLE TMP_INF_SO TRUNCATE TABLE TMP_INF_UNIDADES_HD TRUNCATE TABLE TMP_INTERFACES_RED TRUNCATE TABLE TMP_PAQUETES TRUNCATE TABLE TMP_PROC_EJEC -- GUARDA EN TABLAS TEMPORALES RESPECTIVAS INSERT INTO TMP_NODO (Id_TMP_NODO, Dir_Ip, Dir_Red, Mascara, Nombre, Clase, Gateway, Estado, Id_Histo, Fecha, Hora ) SELECT Id_Nodo, Dir_Ip, Dir_Red, Mascara, Nombre, Clase, Gateway, Estado, Id_Histo, Fecha, Hora FROM dbo.NODO (NOLOCK) WHERE Id_Nodo = @Id_Nodo

Figura 3.17: Creación Procedimiento Almacenado SP_ImpNodo

Page 304: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 133

INSERT INTO TMP_INF_MEMORIA (Id_TMP_NODO, Mem_Fis_Tot, Mem_Fis_Disp, Mem_Vir_Tot, Mem_Vir_Disp, Mem_Cargada ) SELECT Id_Nodo, Mem_Fis_Tot, Mem_Fis_Disp, Mem_Vir_Tot, Mem_Vir_Disp, Mem_Cargada FROM INF_MEMORIA (NOLOCK) WHERE Id_Nodo = @Id_Nodo INSERT INTO TMP_INF_PROCESS (Id_TMP_NODO, Nombre, Porcentaje_Ocupado ) SELECT Id_Nodo, Nombre, Porcentaje_Ocupado FROM INF_PROCESS (NOLOCK) WHERE Id_Nodo = @Id_Nodo INSERT INTO TMP_INF_SO (Id_TMP_NODO, Nombre, Version, Usuario ) SELECT Id_Nodo, Nombre, Version, Usuario FROM INF_SO (NOLOCK) WHERE Id_Nodo = @Id_Nodo INSERT INTO TMP_INF_UNIDADES_HD (Id_TMP_NODO, Volumen, Serie, Tamano_Total, Tamano_Disponible ) SELECT Id_Nodo, Volumen, Serie, Tamano_Total, Tamano_Disponible FROM INF_UNIDADES_HD (NOLOCK) WHERE Id_Nodo = @Id_Nodo INSERT INTO TMP_INTERFACES_RED (Id_TMP_NODO, Descripcion, Direccion_Fisica, Paq_Recibidos, Paq_Perdidos, Nombre_Enlace, Velocidad_Enlace, Paq_Enviados ) SELECT Id_Nodo, Descripcion, Direccion_Fisica, Paq_Recibidos, Paq_Perdidos, Nombre_Enlace, Velocidad_Enlace, Paq_Enviados FROM INTERFACES_RED (NOLOCK) WHERE Id_Nodo = @Id_Nodo

Figura 3.18: Creación Procedimiento Almacenado SP_ImpNodo

Page 305: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 134

INSERT INTO TMP_PAQUETES (Id_TMP_NODO, Nombre, Cant_Recibidos, Cant_Enviados ) SELECT Id_Nodo, Nombre, Cant_Recibidos, Cant_Enviados FROM PAQUETES (NOLOCK) WHERE Id_Nodo = @Id_Nodo INSERT INTO TMP_PROC_EJEC (Id_TMP_NODO, Id_Proceso, Nombre_Proceso ) SELECT Id_Nodo, Id_Proceso, Nombre_Proceso FROM PROC_EJEC (NOLOCK) WHERE Id_Nodo = @Id_Nodo END ELSE BEGIN -- BORRA LA INFORMACION BASURA DE LA TEMPORAL TRUNCATE TABLE TMP_INF_INICIAL -- GUARDA EN LA TABLA TEMPORAL RESPECTIVA INSERT INTO TMP_INF_INICIAL (Dir_Red, Dir_Ip, Mascara, Clase) SELECT Dir_Red, Dir_Ip, Mascara, @Clase FROM INF_INICIAL (NOLOCK) WHERE INF_INICIAL.Dir_Red = @Dir_Red AND INF_INICIAL.Id_Histo = @Id_Histo END SET NOCOUNT OFF

Figura 3.19: Creación Procedimiento Almacenado SP_ImpNodo

Page 306: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 135

Procedimiento almacenado SP_Distribucion:

CREATE PROCEDURE dbo.SP_DISTRIBUCION ( @Id_Histo AS INT, @Dir_Red AS VARCHAR(15), @Dir_IP AS VARCHAR(15), @Fecha AS VARCHAR(10), -- DD/MM/YYYY @Hora_Ini AS VARCHAR(8), -- HH:MM:SS @Hora_Fin AS VARCHAR(8) -- HH:MM:SS ) AS DECLARE @INTI INT, @ESTADO INT, @NUMERO INT SET NOCOUNT ON CREATE TABLE #NODOTEMP ( Dir_Ip VARCHAR(15), Estado INT ) CREATE TABLE #TEMP1 ( Dir_Ip VARCHAR(15), Tipo VARCHAR(3) ) CREATE TABLE #TEMP2 ( IdTemp INT IDENTITY, Dir_Ip VARCHAR(15), Estado INT, Numero INT, Tipo VARCHAR(3) ) -- PARA SUBREDES IF LTRIM(RTRIM(@Dir_IP)) = '' BEGIN

Fig. 3.20: Creación Procedimiento Almacenado SP_Distribución

Page 307: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 136

-- GUARDA EN #NODOTEMP SOLOS LAS IPS QUE SE VAN A PROCESAR (DE LA TABLA NODO) INSERT INTO #NODOTEMP SELECT Dir_Ip, Estado FROM dbo.NODO (NOLOCK) WHERE Id_Histo = @Id_Histo AND Dir_Red = @Dir_Red AND Fecha = @Fecha AND CONVERT(DATETIME, Hora, 100) BETWEEN CONVERT(DATETIME, @Hora_Ini, 100) AND CONVERT(DATETIME, @Hora_Fin, 100) -- OBTIENE TODAS LAS IP TANTO DE NODO COMO DE INICIAL Y LAS GUARDA EN LA TEMPORAL 1 INSERT INTO #TEMP1 SELECT Dir_Ip, 'NOD' AS 'Tipo' FROM #NODOTEMP (NOLOCK) UNION SELECT Dir_Ip, 'INI' AS 'Tipo' FROM dbo.INF_INICIAL (NOLOCK) WHERE Id_Histo = @Id_Histo AND Dir_Red = @Dir_Red END ELSE BEGIN -- PARA NODOS -- GUARDA EN #NODOTEMP SOLOS LAS IPS QUE SE VAN A PROCESAR (DE LA TABLA NODO) INSERT INTO #NODOTEMP SELECT Dir_Ip, Estado FROM dbo.NODO (NOLOCK) WHERE Id_Histo = @Id_Histo AND Dir_Red = @Dir_Red AND Dir_Ip = @Dir_IP AND Fecha = @Fecha AND CONVERT(DATETIME, Hora, 100) BETWEEN CONVERT(DATETIME, @Hora_Ini, 100) AND CONVERT(DATETIME, @Hora_Fin, 100)

Figura 3.21: Creación Procedimiento Almacenado SP_Distribución

Page 308: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 137

-- OBTIENE TODAS LAS IP TANTO DE NODO COMO DE INICIAL Y LAS GUARDA EN LA TEMPORAL 1 INSERT INTO #TEMP1 SELECT Dir_Ip, 'NOD' AS 'Tipo' FROM #NODOTEMP (NOLOCK) UNION SELECT Dir_Ip, 'INI' AS 'Tipo' FROM dbo.INF_INICIAL (NOLOCK) WHERE Id_Histo = @Id_Histo AND Dir_Red = @Dir_Red AND Dir_Ip = @Dir_IP END

-- HACE UN AGRUPAMIENTO POR TODAS LAS IP Y LAS GUARDA EN LA TEMPORAL 2 INSERT INTO #TEMP2 (Dir_Ip, Numero) SELECT Dir_Ip, COUNT(*) FROM #TEMP1 (NOLOCK) GROUP BY Dir_Ip UPDATE #TEMP2 SET Estado = #NODOTEMP.Estado FROM #TEMP2 (NOLOCK), #NODOTEMP (NOLOCK) WHERE #TEMP2.Dir_Ip = #NODOTEMP.Dir_Ip UPDATE #TEMP2 SET Estado = 2 WHERE Estado IS NULL -- OBTIENE EL MAXIMO ID SELECT @INTI = MAX(IdTemp) FROM #TEMP2 (NOLOCK) WHILE @INTI > 0 BEGIN SELECT @ESTADO = Estado, @NUMERO = Numero FROM #TEMP2 (NOLOCK) WHERE IdTemp = @INTI

Figura 3.22: Creación Procedimiento Almacenado SP_Distribución

Page 309: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 138

-- SI ESTA EN AMBAS TABLAS Y ESTADO = 0 -> Tipo = 'OK' (VERDE) IF (@NUMERO = 2) AND (@ESTADO = 0) BEGIN UPDATE #TEMP2 SET Tipo = 'OK' WHERE IdTemp = @INTI END -- SI ESTA EN AMBAS TABLAS Y ESTADO = 1 -> Tipo = 'ALE' (AMARILLA) IF (@NUMERO = 2) AND (@ESTADO = 1) BEGIN UPDATE #TEMP2 SET Tipo = 'ALE' WHERE IdTemp = @INTI END -- SI ESTA SOLO EN TABLA NODO Y ESTADO = 0 -> Tipo = 'NEW' (AZUL) IF (@NUMERO = 1) AND (@ESTADO = 0) BEGIN UPDATE #TEMP2 SET Tipo = 'NEW' WHERE IdTemp = @INTI END -- SI ESTA SOLO EN TABLA NODO Y ESTADO = 1 -> Tipo = 'ALE' (AMARILLA) IF (@NUMERO = 1) AND (@ESTADO = 1) BEGIN UPDATE #TEMP2 SET Tipo = 'ALE' WHERE IdTemp = @INTI END Figura 3.23: Creación Procedimiento Almacenado SP_Distribución

Page 310: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 139

-- SI ESTA SOLO EN TABLA INF_INICIAL -> Tipo = 'BAD' (GRIS) IF (@NUMERO = 1) AND (@ESTADO = 2) BEGIN UPDATE #TEMP2 SET Tipo = 'BAD' WHERE IdTemp = @INTI END SET @INTI = @INTI - 1 END -- DEVUELVE LA TABLA PARA SU PROCESAMIENTO SELECT Dir_Ip, Estado, Numero, Tipo FROM #TEMP2 (NOLOCK) ORDER BY Dir_Ip SET NOCOUNT OFF

Figura. 3.24: Creación Procedimiento Almacenado SP_Distribución

Page 311: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 140

3.3- Código Funciones principales del sistema

VSCANNET ADMINISTRADOR

GRAFICAR RED

Private Sub DibujarHisto() Dim rsDibujo As New ADODB.Recordset Dim rsAux As New ADODB.Recordset Dim rsConn As New ADODB.Connection Dim strIPTmp As Variant Dim strTemp As String Dim strIPAux As String Dim intJ As Integer Dim intI As Integer Dim strHoraIni As String Dim strHoraFin As String Dim Matriz(100, 100) As Variant Dim strTiempo As String On Error GoTo LError: 'Se abre la conexion rsConn.ConnectionString = gstrCadenaConn rsConn.Open If strTipo = "TODOS" Then gstrSQL = "SELECT DISTINCT(INF_INICIAL.Dir_Red)" gstrSQL = gstrSQL & " FROM dbo.INF_INICIAL (NOLOCK)" gstrSQL = gstrSQL & " WHERE INF_INICIAL.Id_Histo = " & strHisto Else gstrSQL = "SELECT 1" End If If rsAux.State = adStateOpen Then rsAux.Close rsAux.Open gstrSQL, rsConn, adOpenForwardOnly, adLockReadOnly, adCmdText If rsAux.EOF Then MsgBox "Error. No existen nodos que se encuentren en la configuración inicial", vbCritical, gstrNApli GoTo LSalir End If

Figura 3.25: Graficar Red/ Conexión BD y Validaciones

Page 312: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 141

Select Case strTipo Case "TODOS" gstrSQL = gstrSQL & " @Dir_Red = '" & Trim$(CStr(rsAux(0).value)) & "'," gstrSQL = gstrSQL & " @Dir_IP = ''," Case "SUBRED" gstrSQL = gstrSQL & " @Dir_Red = '" & Trim$(strIP) & "'," gstrSQL = gstrSQL & " @Dir_IP = ''," Case "NODO" gstrSQL = gstrSQL & " @Dir_Red = '" & Trim$(TVPic.Nodes(TVPic.SelectedItem.Index).Parent) & "'," gstrSQL = gstrSQL & " @Dir_IP = '" & Trim$(strIP) & "'," End Select If optAct.value = True Then gstrSQL = gstrSQL & " @Fecha = '" & Format(Date, "DD/MM/YYYY") & "'," Else gstrSQL = gstrSQL & " @Fecha = '" & Format(Trim$(mskFecha.Text), "DD/MM/YYYY") & "'," End If gstrSQL = gstrSQL & " @Hora_Ini = '" & Trim$(strHoraIni) & "'," gstrSQL = gstrSQL & " @Hora_Fin = '" & Trim$(strHoraFin) & "' " If rsDibujo.State = adStateOpen Then rsDibujo.Close rsDibujo.Open gstrSQL, rsConn, adOpenForwardOnly, adLockReadOnly, adCmdText If rsDibujo.EOF Then MsgBox "No hay datos que mostrar", vbInformation, gstrNApli GoTo LSalir End If Do While Not rsDibujo.EOF strIPTmp = Split(Trim$(rsDibujo("Dir_Ip")), ".") If Trim$(strIP) = "TODAS" Then strTemp = Trim$(rsDibujo("Dir_Ip")) Else strTemp = "." & Trim$(strIPTmp(3)) End If Select Case UCase(Trim$(rsDibujo("Tipo"))) Case "OK" 'PCOK intPCOK = intPCOK + 1 If (intI Mod 2) = 1 Then Call DibujaObjetos(imgPCOK(intPCOK), lblIPOK(intObjs), ShapeV(intObjs), intI, intJ, strTemp, False, Trim$(rsDibujo("Dir_Ip")))

Figura 3.26: Graficar Red/ Conexión BD y Validaciones

Page 313: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 142

Else Call DibujaObjetos(imgPCOK(intPCOK), lblIPOK(intObjs), ShapeV(intObjs), intI, intJ + 1, strTemp, True, Trim$(rsDibujo("Dir_Ip"))) End If Case "BAD" 'PCBAD intPCBAD = intPCBAD + 1 If (intI Mod 2) = 1 Then Call DibujaObjetos(imgPCBAD(intPCBAD), lblIPBad(intPCBAD), ShapeV(intObjs), intI, intJ, strTemp, False, Trim$(rsDibujo("Dir_Ip"))) Else Call DibujaObjetos(imgPCBAD(intPCBAD), lblIPBad(intPCBAD), ShapeV(intObjs), intI, intJ + 1, strTemp, True, Trim$(rsDibujo("Dir_Ip"))) End If Case "NEW" 'PCNEW intPCNEW = intPCNEW + 1 If (intI Mod 2) = 1 Then Call DibujaObjetos(imgPCNEW(intPCNEW), lblIPNew(intPCNEW), ShapeV(intObjs), intI, intJ, strTemp, False, Trim$(rsDibujo("Dir_Ip"))) Else Call DibujaObjetos(imgPCNEW(intPCNEW), lblIPNew(intPCNEW), ShapeV(intObjs), intI, intJ + 1, strTemp, True, Trim$(rsDibujo("Dir_Ip"))) End If Case "ALE" 'PCALE intPCALE = intPCALE + 1 If (intI Mod 2) = 1 Then Call DibujaObjetos(imgPCALE(intPCALE), lblIPAle(intPCALE), ShapeV(intObjs), intI, intJ, strTemp, False, Trim$(rsDibujo("Dir_Ip"))) Else Call DibujaObjetos(imgPCALE(intPCALE), lblIPAle(intPCALE), ShapeV(intObjs), intI, intJ + 1, strTemp, True, Trim$(rsDibujo("Dir_Ip"))) End If End Select intI = intI + 1 intObjs = intObjs + 1 rsDibujo.MoveNext Loop Call dibujaRed(intCont, intI - 1) intJ = intJ + 2 intI = 1 intCont = intCont + 1 rsAux.MoveNext Loop

Figura 3.27: Graficar Red/ Conexión BD y Validaciones

Page 314: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 143

Entre los procesos que realiza esta función se tiene:

Abre la conexión con la base de datos

Realiza las validaciones verificando la existencia de datos

Realiza las validaciones de fecha y hora

Llama a las funciones: Dibuja objeto y Dibuja red

LSalir: If rsDibujo.State = adStateOpen Then rsDibujo.Close Set rsDibujo = Nothing If rsConn.State = adStateOpen Then rsConn.Close Set rsConn = Nothing If rsAux.State = adStateOpen Then rsAux.Close Set rsAux = Nothing Exit Sub Resume LError: MsgBox Err.Description, vbCritical, gstrNApli If rsDibujo.State = adStateOpen Then rsDibujo.Close Set rsDibujo = Nothing If rsConn.State = adStateOpen Then rsConn.Close Set rsConn = Nothing If rsAux.State = adStateOpen Then rsAux.Close Set rsAux = Nothing End Sub

Figura. 3.28: Graficar Red/ Conexión BD y Validaciones

Page 315: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 144

Esta función ubica y carga cada uno de los objetos(PC’S) que van a formar

parte de la gráfica de red. Los mismos que serán ubicados sobre y debajo de

la linea horizontal que representa a una red.

Private Sub DibujaObjetos(ObjImg As Image, objLbl As Label, objShape As Shape, i As Integer, j As Integer, strNombre As String, bolPar As Boolean, strIP As String) Load ObjImg ObjImg.Left = 300 + ((i - 1) * 800) ObjImg.Top = 300 + ((j - 1) * 1200) ObjImg.Visible = True Load objLbl objLbl.Left = 100 + ((i - 1) * 800) objLbl.Top = 100 + ((j - 1) * 1200) objLbl.Visible = True objLbl.Caption = strNombre objLbl.Tag = strIP Load objShape If bolPar Then 'Par (Abajo) objShape.Left = 500 + ((i - 1) * 800) objShape.Top = -150 + ((j - 1) * 1200) Else 'Impar (Arriba) objShape.Left = 500 + ((i - 1) * 800) objShape.Top = 810 + ((j - 1) * 1200) End If objShape.Visible = True End Sub

Figura 3.29: Graficar Red / Dibujar Objetos

Page 316: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 145

Esta función grafica lo que van a ser las líneas que van a representar a una

red, es decir; que por cada red se dibujará una linea horizontal(Topología

Ethernet- formato definido).

Private Sub dibujaRed(Cont As Integer, i As Integer) Load Line1(Cont) Line1(Cont).Visible = True If Cont = 1 Then Line1(Cont).Y1 = 1000 Line1(Cont).Y2 = 1000 Else Line1(Cont).Y1 = 2400 + Line1(Cont - 1).Y1 Line1(Cont).Y2 = 2400 + Line1(Cont - 1).Y2 End If Line1(Cont).X1 = 230 Line1(Cont).X2 = i * 800 Load Shape1(Cont) Shape1(Cont).Visible = True Shape1(Cont).Left = Line1(Cont).X1 - 30 Shape1(Cont).Top = Line1(Cont).Y1 - 100 Load Shape2(Cont) Shape2(Cont).Visible = True Shape2(Cont).Left = Line1(Cont).X2 Shape2(Cont).Top = Line1(Cont).Y2 - 100 End Sub

Figura 3.30: Graficar Red / Dibujar Red

Page 317: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 146

Private Sub DibujaTree() Dim rsRed As New ADODB.Recordset Dim rsNodo As New ADODB.Recordset Dim rsConn As New ADODB.Connection Dim intI As Integer Dim intJ As Integer Dim nodX As Node On Error GoTo LError: 'Se abre la conexion rsConn.ConnectionString = gstrCadenaConn rsConn.Open 'Se obtiene el Id Historico (Ultimo hecho) strHisto = ObtieneUltimoIDHisto() 'Se obtienen las Subredes gstrSQL = "SELECT DISTINCT Dir_Red" gstrSQL = gstrSQL & " FROM dbo.INF_INICIAL(NOLOCK)" gstrSQL = gstrSQL & " WHERE INF_INICIAL.Id_Histo = " & strHisto If rsRed.State = adStateOpen Then rsRed.Close rsRed.Open gstrSQL, rsConn, adOpenForwardOnly, adLockReadOnly, adCmdText If rsRed.EOF Then MsgBox "Error. La configuración inicial tiene errores", vbCritical, gstrNApli GoTo LSalir End If 'Se llena el nodo raiz Set nodX = TVPic.Nodes.Add(, , "A", "RAIZ", 1) intI = 1 intJ = 1 'Lazo de llenado de las subredes Do While Not rsRed.EOF 'Se llena los nodos Sub-Red Set nodX = TVPic.Nodes.Add("A", tvwChild, "B" & CStr(intI), Trim$(rsRed(0)), 2)

Figura 3.31: Graficar Red / Dibujar Arbol

Page 318: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 147

Figura 3.32: Graficar Red / Dibujar Arbol

'Se obtienen las Subredes gstrSQL = "SELECT DISTINCT(Dir_Ip) FROM NODO (NOLOCK)" gstrSQL = gstrSQL & " WHERE Id_Histo = " & strHisto gstrSQL = gstrSQL & " AND Dir_Red = '" & Trim$(rsRed(0)) & "'" gstrSQL = gstrSQL & " UNION" gstrSQL = gstrSQL & " SELECT DISTINCT(Dir_Ip) FROM INF_INICIAL (NOLOCK)" gstrSQL = gstrSQL & " WHERE Id_Histo = " & strHisto gstrSQL = gstrSQL & " AND Dir_Red = '" & Trim$(rsRed(0)) & "'"

If rsNodo.State = adStateOpen Then rsNodo.Close rsNodo.Open gstrSQL, rsConn, adOpenForwardOnly, adLockReadOnly, adCmdText If rsNodo.EOF Then MsgBox "Error fatal. Comuniquese con el provedor del sistema", vbCritical, gstrNApli GoTo LSalir End If intJ = 1 'Lazo de llenado de los nodos Do While Not rsNodo.EOF Set nodX = TVPic.Nodes.Add("B" & CStr(intI), tvwChild, "C" & CStr(intI) & CStr(intJ), Trim$(rsNodo(0)), 3) intJ = intJ + 1 rsNodo.MoveNext Loop intI = intI + 1 rsRed.MoveNext Loop nodX.EnsureVisible Call ContraerTree LSalir: If rsRed.State = adStateOpen Then rsRed.Close Set rsRed = Nothing If rsNodo.State = adStateOpen Then rsNodo.Close Set rsNodo = Nothing If rsConn.State = adStateOpen Then rsConn.Close Set rsConn = Nothing Exit Sub

Page 319: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 148

Esta función crea el árbol donde se muestran las direcciones de red y

direcciones ip descubiertas, existen tres niveles; la raíz donde se podrá

ingresar el nombre de la empresa, un hijo donde se representará a cada

dirección de red descubierta y un subhijo que representará a las direcciones

ip de las redes decubiertas.

DESCUBRIMIENTO DE REDES

Option Explicit Private Sub cmdEnviar_Click() Dim strIP As String Dim strMask As String Dim strClase As String Dim strIDHisto As String Dim strDesc As String Dim strDatos As String On Error GoTo LError If VerificaDatos = False Then Exit Sub strIP = Trim$(txtIP(0)) & "." & Trim$(txtIP(1)) & "." & Trim$(txtIP(2)) & "." & Trim$(txtIP(3)) 'IP strMask = Trim$(txtMask(0)) & "." & Trim$(txtMask(1)) & "." & Trim$(txtMask(2)) & "." & Trim$(txtMask(3)) 'Mascara strClase = Trim$(Clase) 'Clase If chkDesc.value = 1 Then 'Pertenece al anterior descubrimiento (el mismo Id_Histo) strIDHisto = Trim$(ObtieneUltimoIDHisto) strDesc = "ANT"

Figura 3.33: Descubrir Red

Page 320: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 149

Else 'Nuevo descubrimiento (el Id_Histo + 1) strIDHisto = Trim$(CStr(CInt(ObtieneUltimoIDHisto) + 1)) strDesc = "NUE" End If 'Datos a enviar strDatos = "DNR¶" & strIP & "|" & strMask & "|" & strClase & "|" & strIDHisto & "|" & strDesc & "|" EnviaDatos Trim$(strDatos) frmWait.Show vbModal If frmWait.bolCancelado = True Then MsgBox "El proceso se ha cancelado", vbExclamation, gstrNApli EnviaDatos "Cadena_De_Cancelacion" Else MsgBox "El proceso se ha realizado exitosamente", vbInformation, gstrNApli End If Unload Me Exit Sub LError: MsgBox "ERROR: " & Err.Description, vbCritical, gstrNApli Unload Me End Sub 'Enviar los datos (datos_a_Enviar) a un host remoto Private Sub EnviaDatos(datos_a_Enviar As String, Optional HostRemoto As String = "255.255.255.255") 'si no se especifica, entonces es 255.255.255.255) wsConn.Protocol = sckUDPProtocol wsConn.RemoteHost = HostRemoto wsConn.RemotePort = 5000 wsConn.Bind 2500 wsConn.SendData datos_a_Enviar End Sub

Figura 3.34: Descubrir Red

Page 321: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 150

Private Sub cmdSalir_Click() Unload Me End Sub Private Sub Form_Load() intApliOpen = intApliOpen + 1 'frmMask.Enabled = False HabilitaMask False, False, False, False End Sub Private Sub Form_Unload(Cancel As Integer) intApliOpen = intApliOpen - 1 End Sub Private Sub txtIP_Change(Index As Integer) txtMask(0).Text = "" txtMask(1).Text = "" txtMask(2).Text = "" txtMask(3).Text = "" HabilitaMask False, False, False, False End Sub Private Sub txtIP_GotFocus(Index As Integer) Selecciona txtIP(Index) End Sub Private Sub txtIP_KeyPress(Index As Integer, KeyAscii As Integer) Select Case KeyAscii Case 13, 46 'Enter, punto(".") If Trim$(txtIP(Index).Text) <> "" Then KeyAscii = 0 SendKeys "{TAB}" End If Case 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 8 'Numeros (0 - 9), Back space Case Else 'Cualquier otro KeyAscii = 0 End Select End Sub

Figura. 3.35: Descubrir Red

Page 322: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 151

Private Sub txtIP_LostFocus(Index As Integer) If Trim$(txtIP(Index).Text) <> "" Then If VerificaDatosIP(Index) = False Then Exit Sub If Index = 3 Then Call ObtenerMask End If If Trim$(txtIP(0).Text) <> "" And Trim$(txtIP(1).Text) <> "" And Trim$(txtIP(2).Text) <> "" And Trim$(txtIP(3).Text) <> "" Then Select Case UCase(Trim$(Clase)) Case "A" HabilitaMask False, True, True, True Case "B" HabilitaMask False, False, True, True Case "C" HabilitaMask False, False, False, True End Select End If End Sub 'Verificar datos correctos Private Function VerificaDatosIP(Indice As Integer) As Boolean Dim strTemp As Integer VerificaDatosIP = False If Trim$(txtIP(Indice).Text) = "" Then MsgBox "Debe ingresar una IP", vbExclamation, gstrNApli Selecciona txtIP(Indice) Exit Function End If If Not IsNumeric(Trim$(txtIP(Indice).Text)) Then MsgBox "Debe ingresar una IP válida", vbExclamation, gstrNApli Selecciona txtIP(Indice) Exit Function End If If CInt(Trim$(txtIP(Indice).Text)) > 255 Then MsgBox "Debe ingresar una IP válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtIP(Indice) Exit Function End If

Figura. 3.36: Descubrir Red

Page 323: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 152

MsgBox "Debe ingresar una IP válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtIP(1) Exit Function End If

strTemp = CInt(Trim$(txtIP(Indice).Text)) txtIP(Indice).Text = CStr(strTemp) VerificaDatosIP = True End Function Private Function VerificaDatos() As Boolean VerificaDatos = False If Trim$(txtIP(0).Text) = "" Then MsgBox "Debe ingresar una IP", vbExclamation, gstrNApli Selecciona txtIP(0) Exit Function End If If Trim$(txtIP(1).Text) = "" Then MsgBox "Debe ingresar una IP", vbExclamation, gstrNApli Selecciona txtIP(1) Exit Function End If If Trim$(txtIP(2).Text) = "" Then MsgBox "Debe ingresar una IP", vbExclamation, gstrNApli Selecciona txtIP(2) Exit Function End If If Trim$(txtIP(3).Text) = "" Then MsgBox "Debe ingresar una IP", vbExclamation, gstrNApli Selecciona txtIP(3) Exit Function End If If CInt(Trim$(txtIP(0).Text)) > 255 Then MsgBox "Debe ingresar una IP válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtIP(0) Exit Function End If

Fig. 3.37: Descubrir Red

Page 324: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 153

If CInt(Trim$(txtIP(2).Text)) > 255 Then MsgBox "Debe ingresar una IP válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtIP(2) Exit Function End If If CInt(Trim$(txtIP(3).Text)) > 255 Then MsgBox "Debe ingresar una IP válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtIP(3) Exit Function End If If Trim$(txtMask(1).Text) = "" Then MsgBox "Debe ingresar una Máscara", vbExclamation, gstrNApli Selecciona txtMask(1) Exit Function End If If Trim$(txtMask(2).Text) = "" Then MsgBox "Debe ingresar una Máscara", vbExclamation, gstrNApli Selecciona txtMask(2) Exit Function End If If Trim$(txtMask(3).Text) = "" Then MsgBox "Debe ingresar una Máscara", vbExclamation, gstrNApli Selecciona txtMask(3) Exit Function End If If CInt(Trim$(txtMask(1).Text)) > 255 Then MsgBox "Debe ingresar una Máscara válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtMask(1) Exit Function End If If CInt(Trim$(txtMask(2).Text)) > 255 Then MsgBox "Debe ingresar una Máscara válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtMask(2) Exit Function End If

Figura 3.38: Descubrir Red

Page 325: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 154

If CInt(Trim$(txtMask(3).Text)) > 255 Then MsgBox "Debe ingresar una Máscara válida (Entre 0 - 255)", vbExclamation, gstrNApli Selecciona txtMask(3) Exit Function End If VerificaDatos = True End Function 'Obtiener la mascara Private Sub ObtenerMask() DefaultMask txtIP(0) & "." & txtIP(1) & "." & txtIP(2) & "." & txtIP(3) If IP4 = "255" Then MsgBox "Error. Dirección IP incorrecta. Por favor ingresela nuevamente", vbExclamation, gstrNApli txtMask(0) = "" txtMask(1) = "" txtMask(2) = "" txtMask(3) = "" txtIP(0).SetFocus Exit Sub End If txtMask(0) = IP1 txtMask(1) = IP2 txtMask(2) = IP3 txtMask(3) = IP4 End Sub Private Sub HabilitaMask(Valor0 As Boolean, Valor1 As Boolean, Valor2 As Boolean, Valor3 As Boolean) 'Habilita o deshabilita un texto con mascara txtMask(0).Enabled = Valor0 txtMask(1).Enabled = Valor1 txtMask(2).Enabled = Valor2 txtMask(3).Enabled = Valor3 End Sub

Figura 3.39: Descubrir Red

Page 326: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 155

Todas estas funciones permiten realizar el descubrimiento de red. Para esto

e envía en un paquete al modulo descubridor de red la dirección, la máscara

y la clase de la red que se desea descubrir. Además se validan que las

direcciones ingresadas sean correctas, se calcula la máscara de acuerdo a la

dirección ingresada, verificando la clase de red a la que pertenecen; asi

mismo se permite que el usuario ingrese una máscara diferente a la que por

defecto se asigna para que se realice el descubrimiento de subredes.

Private Sub txtMask_GotFocus(Index As Integer) Selecciona txtMask(Index) End Sub Private Sub txtMask_KeyPress(Index As Integer, KeyAscii As Integer) Select Case KeyAscii Case 13, 46 'Enter, punto(".") If Trim$(txtMask(Index).Text) <> "" Then KeyAscii = 0 SendKeys "{TAB}" End If Case 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 8 'Numeros (0 - 9), Back space Case Else 'Cualquier otro KeyAscii = 0 End Select End Sub

Figura 3.40: Descubrir Red

Page 327: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 156

VSCANNET SERVIDOR

public class ServidorVScanNet { DatagramSocket recibirSocket; DatagramPacket recibirPaquete; UDPServ hiloServidor; static final int Puerto=3333; static final long tiempo=50; public ServidorVScanNet() { try{ recibirSocket=new DatagramSocket(Puerto); System.out.println("Escuchando por puerto :" +Puerto); }catch(SocketException se){ System.out.println("Error al crear Socket en el constructor"); } } //===================================================== public void EsperarPaquetes() { try{ while(true){ try{ byte array[]=new byte[2048]; recibirPaquete =new DatagramPacket(array, array.length); System.out.println("Esperando paquete"); recibirSocket.receive(recibirPaquete); String cadena = new String (recibirPaquete.getData()); hiloServidor=new UDPServ(cadena); hiloServidor.start(); }catch(Exception e){ System.out.println("Error al recibir paquete"+ e); } finally{ }//finally 1 }// fin del while }finally{ recibirSocket.close(); }//finally2 } //========================================================= public static void main( String[] args ) throws Exception{ ServidorVScanNet sv=new ServidorVScanNet(); sv.EsperarPaquetes(); } }

Figura .3.41: Clase Principal / Cargar Servidor VScanNet

Page 328: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 157

Esta clase es la principal que carga el Servidor VScanNet el cual prepara el

DatagramSocket para recibir el paquete que enviará el Cliente VScanNet

que será escuchado por el PUERTO 3333.

Posee un método EsperarPaquetes() el cual se mantiene activo acogiendo

los paquetes de llegada.

En este método efectúa la llamada a otra clase muy importante

UDPServ(cadena) donde se le manda por parámetro la cadena de

información llegada.

Page 329: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 158

La Clase UDPServ(cadena) contiene en el varios métodos que efectúan

acciones importante como el reconocimiento de la Cabecera del paquete que

llega.

Método run() se activa cada vez que llega un paquete y este hace la

llamada a otro llamado LeerCab(cadena).

public synchronized void run() {

String cadena=recibirPaquete;

System.out.println ("Dato q llega del cliente: " + cadena );

try {

sleep(sleeptime);

System.out.println ("UDP estoy paso a leer cabecera" +

cadena );

LeerCab(cadena);

System.out.println ("Sali de leer cabecera" );

} catch (InterruptedException e) {

}

}

Figura 3.42: Método de la Clase UDPServ / Recibe Paquete

Page 330: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 159

En el método LeerCab(String info ) efectúa la división entre la Cabecera y

Datos para proceder con la comparación de la Cabecera RIN

public void LeerCab(String info ) throws InterruptedException{

String cabeza=null;

String cola= null;

String cad2=null;

System.out.println("esta es info LeerCab " + info);

//++++++++capturo paquete y analizo cabecera cola de datos++++++++

StringTokenizer probarTokens=new StringTokenizer(info,"¶");

int cont=probarTokens.countTokens();

System.out.println("numero tokens de espacio trebol : " + cont);

cabeza =probarTokens.nextToken();

System.out.println("dentro Leer Cab := " + cabeza);

while (probarTokens.hasMoreTokens())// me retorna un boolean si hay

mas delimitadores

{

cola=probarTokens.nextToken();

cad2=cola;

}//fin while1 obtener " "

// ++++++++++++ Pregunto q paquete es ++++++++++++++++++++

if (cabeza.equals("RIN"))

{

System.out.println("dentro RIN cabeza esta es la cola := " +

cad2);

if (!cabeza.equalsIgnoreCase(" ")){

try {

SepararCeldas(cad2);

} catch (SQLException e) {

e.printStackTrace();

}//fin del if

}

}

} //fin LeerCab

Figura 3.43: Método de la Clase UDPServ/ Reconoce la Cabecera

Page 331: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 160

En el método SepararCeldas( ) Se efectúa la primera organización de inf.

Que estará delimitado por el carácter especial &

public void SepararCeldas(String cad2) throws SQLException{

System.out.println(" Entro a partir celdas con Amperson & :=" + cad2);

StringTokenizer colita=new StringTokenizer(cad2,"&");

int cont2=colita.countTokens();

int j=0;

String[] celdas=new String[cont2];

while(colita.hasMoreTokens())

{

celdas[j]=colita.nextToken();

System.out.println("tokens cola:= "+ j + " " + celdas[j]);

j++;

}//while colita

celdas[cont2-1]="";

DESCUBRIR_SUBCAD(celdas,cont2);

}//fin de SepararCeldas

Fig.ura 3.44: Método de la Clase UDPServ/ Separa inf. Principal Paquete

Page 332: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 161

Este método permite la extracción mas a fondo la información .para llevar a

cabo se usa el carácter especial | (pipe).

public void DESCUBRIR_SUBCAD(String[] cad, int cont2) throws SQLException {//extraersubcad

(String cad){

System.out.println("entro a Descubrir REd " );

System.out.println("ver cont2 " +cont2 );

int a;

String ip;

String mask;

for(int j=0; j<cont2;j++ )

{

a=0;

StringTokenizer subTokens=new StringTokenizer(cad[j],"|");

int nDatos=subTokens.countTokens();

String[] subcad=new String[nDatos];

int pospaq=nDatos+1;

// me retorna un boolean si hay mas delimitadores y siguen el ciclo del while

while (subTokens.hasMoreTokens())

{

String datos=subTokens.nextToken();

subcad[a]=datos;

if ( ((j==3) || (j==5) || (j==6)|| (j==7))&&(BloquearSave==0))

{

System.out.println("tabla posicion := "+ j );

DESCUBRIR_SUBCADSPCIAL(datos,j,pospaq,nDatos);

}

a++;

} //fin del while | pipe

System.out.println("SALGO DE CADA WHILE := "+ j );

if (j==0){

ip=subcad[0];

test=ip;

mask=subcad[1];

subred=AnalizaSUBRED(ip,mask);

System.out.println("ENTRO A CREAR CONSTRUCUTOR NODO" );

Nodo unNodo=new Nodo();

barrerArregloN(subcad,unNodo);

}//fin del if

else {

if ( ((j==1) || (j==2) || (j==4))&&(BloquearSave==0))

{

Fig. 3.45: Método de la Clase UDPServ// Separa inf. Principal Paquete

Page 333: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 162

Continuando con el método anterior .Una vez obtenida la mínima información

hará llamadas a cada estructura creada de acuerdo al orden de información

dada para almacenarlas temporalmente hasta que guarde en la base.

System.out.println("SALGO DE CADA WHILE := "+ j );

if (j==0){

ip=subcad[0];

test=ip;

mask=subcad[1];

subred=AnalizaSUBRED(ip,mask);

System.out.println("ENTRO A CREAR CONSTRUCUTOR NODO" );

Nodo unNodo=new Nodo();

barrerArregloN(subcad,unNodo);

}//fin del if

else {

if ( ((j==1) || (j==2) || (j==4))&&(BloquearSave==0))

{

System.out.println("Presentar en la posicion j :=" +j );

switch(j)

{

case 1:

INF_SO unNodoSO=new INF_SO();

barrerArregloINFSO(subcad,unNodoSO);

break;

case 2:

INF_PROCESS unNodoPROC=new INF_PROCESS();

barrerArregloINFPROC(subcad,unNodoPROC);

System.out.println("Este es el nombre :=" +subcad[0] );

break;

case 4:

INF_MEMORIA unNodoMEMO=new INF_MEMORIA();

barrerArregloMEMO(subcad,unNodoMEMO);

break;

}//FIN DEL SWITCH

}

}// fin del else

}//fin d el for

}//fin Descubrir RED

Fig. 3.46: Método de la Clase UDPServ/ almacenamiento temporal

Page 334: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 163

Clase Base() permite crear la conexión con la Base de Datos. Dando la ruta predefinida. Esta clase será llamada por las diferentes estructuras temporales.

package clases;

import java.sql.Connection;

public class Base {

private static Connection coneccion;

public static Connection getConeccion(){

if (coneccion == null){

try{

Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();

coneccion=

java.sql.DriverManager.getConnection(

"jdbc:jtds:sqlserver://192.168.2.8:1433/VScanNet", "sa",

"");

coneccion.setAutoCommit(false);

}catch (Throwable e){

System.out.println(e);

}

}

return coneccion;

}

}

Fig. 3.47: Clase Base/ Crea Conexión

Page 335: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 164

Aquì existen mas detalle de acuerdo al orden de desempaquetamiento

existentes.

Las Clases y métodos nombrados efectúan acciones relevantes, pero cabe

mencionar que todos dependen entre sí.

Page 336: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 165

VSCANNET AGENTE

Función que se utiliza para obtener la interface de la red, dirección física, paquetes recibidos, paquetes perdidos, tipo de enlace y velocidad de enlace de las interfaces del nodo. Public Function info_interface() As String Dim interf As String Dim v_link As String Dim t_link As String Dim i As Integer For i = 1 To pcktX.Adapters.Count If agente.pcktX.Adapters(i).IsGood Then Captura velocidad en Mb v_link = Format(pcktX.Adapters(i).LinkSpeed / 1000000, "##0.00") Captura el tipo de enlace Select Case pcktX.Adapters(i).LinkType Case 0 t_link = "Tipo de enlace desconocido" Case 1 t_link = "Ethernet (802.3)" Case 2 t_link = "Token Ring (802.5)" Case 3 t_link = "FDDI" Case 4 t_link = "WAN" Case 5 t_link = "LocalTalk" Case 6 t_link = "DIX" Case 7 t_link = "ARCNET (raw)" Case 8 t_link = "ARCNET (878.2)" Case 9 t_link = "ATM" Case 10 t_link = "Varios tipos de medios wireless" End Select If i = 1 Then interf = pcktX.Adapters(i).Description & "@" & _ pcktX.Adapters(i).HWAddress & "@" & _ pcktX.Adapters(i).PacketsRecv & "@" & _ pcktX.Adapters(i).PacketsLost & "@" & _ c_enviados & "@" & _ t_link & "@" & _ v_link

Fig. 3.48: Formulario agente

Page 337: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 166

Else interf = interf & "|" & pcktX.Adapters(i).Description & "@" & _ pcktX.Adapters(i).HWAddress & "@" & _ pcktX.Adapters(i).PacketsRecv & "@" & _ pcktX.Adapters(i).PacketsLost & "@" & _ "0" & "@" & _ t_link & "@" & _ v_link End If End If Next info_interface = interf End Function Función que permite obtener la dirección Ip, Máscara, nombre de Nodo, gateway y clase de red. Public Function obtener_ip_masc() As String obtener_ip_masc = pcktX.Adapter.NetIP & "|" & pcktX.Adapter.NetMask & "|" & nombre_nodo & "|" & obtener_gateway & "|" & obtener_clase_nodo(pcktX.Adapter.NetIP) End Function Función que recibe como parámetro una cadena de caracteres que representa a la dirección IP del nodo y devuelve el tipo de clase al cual pertenece la dirección Ip recibida. Public Function obtener_clase_nodo(strip As String) As String Dim tempip As Integer Dim clase() As String clase() = Split(strip, ".") tempip = CInt(clase(0)) Select Case tempip Case 0 To 127 obtener_clase_nodo = "A" Case 128 To 191 obtener_clase_nodo = "B" Case 192 To 223 obtener_clase_nodo = "C" Case 224 To 239 obtener_clase_nodo = "D" Case 240 To 255 obtener_clase_nodo = "E" End Select End Function

Función del componente Packet que obtiene cada uno de los paquetes recibidos y enviados a través de la red.

Además los clasifica según su tipo en Tcp, Ip, Udp o Ethernet.

Private Sub pcktX_OnPacket(ByVal pPacket As PacketXLibCtl.IPktXPacket) If pPacket.SourceIpAddress = pcktX.Adapter.NetIP Then c_enviados = c_enviados + 1 Select Case pPacket.Protocol Case 1 ce_ether = ce_ether + 1 Case 2 ce_ip = ce_ip + 1 Case 3 ce_udp = ce_udp + 1 Case 4 ce_tcp = ce_tcp + 1 End Select Else Select Case pPacket.Protocol Case 1 cr_ether = cr_ether + 1 Case 2

cr_ip = cr_ip + 1 Case 3

cr_udp = cr_udp + 1 Case 4 cr_tcp = cr_tcp + 1 End Select End If End Sub

Fig. 3.49: Formulario agente

Page 338: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 167

Select Case pPacket.Protocol Case 1 ce_ether = ce_ether + 1 Case 2 ce_ip = ce_ip + 1 Case 3 ce_udp = ce_udp + 1 Case 4 ce_tcp = ce_tcp + 1 End Select Else Select Case pPacket.Protocol Case 1 cr_ether = cr_ether + 1 Case 2 cr_ip = cr_ip + 1 Case 3 cr_udp = cr_udp + 1 Case 4 cr_tcp = cr_tcp + 1 End Select End If End Sub Función del componente Timer que se ejecuta cada segundo y en la cual obtenemos el porcentaje de memoria ocupada, ademas de encargarse de armar el paquete PIR con la cabecera RIN y lo envía como dirección broadcast por el puerto 3000 para lo cual se sirve de una conexión UDP. Private Sub tmrRefresh_Timer() On Error GoTo RutinaErrores Dim Ret As Double 'query the CPU usage Ret = QueryObject.Query If Ret = -1 Then tmrRefresh.Enabled = False MsgBox "Error mientras obtenia el tiempo de uso del CPU" End If uso_cpu = CDbl(Format$((uso_cpu + Ret) / 2, "##0.00")) band = band + 1 If (uso_cpu >= 90) Then ws_udp_cs.RemoteHost = "255.255.255.255" ws_udp_cs.RemotePort = 2500 alerta = "AAN" & "¶" & nombre_nodo & "|" & pcktX.Adapter.NetIP & "|" & "Alto porcentaje de uso de procesador" ws_udp_cs.SendData alerta estado = 1 Else estado = 0 End If If (band > 58) Then Call ModificarIconoEnLaBarra(2) _masc() & "|" & obtener_fecha() & "|" & obtener_hora() & "|" & CStr(estado) & "&" & _ info_s_o & "&" & _ informacion_cpu & "|" & uso_cpu & "&" & _ info_disco_duro & "&" & _ info_memoria & "&" & _ info_interface & "&" & _ info_procesos & "&" & _ "IP" & "@" & cr_ip & "@" & ce_ip & "|" & "TCP" & "@" & cr_tcp & "@" & ce_tcp & "|" & "UDP" & "@" & cr_udp & "@" & ce_udp & "|" & "ETHERNET" & "@" & cr_ether & "@" & ce_ether & "&" ws_udp_cs.RemoteHost = "255.255.255.255" ws_udp_cs.RemotePort = 3333 ws_udp_cs.SendData cad Call encerar_variables Call ModificarIconoEnLaBarra(1) End If Exit Sub

Fig. 3.50: Formulario agente

Page 339: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 168

End If If band = 60 Then pcktX.Stop cad = "RIN" & "¶" & obtener_ip_masc() & "|" & obtener_fecha() & "|" & obtener_hora() & "|" & CStr(estado) & "&" & _ info_s_o & "&" & _ informacion_cpu & "|" & uso_cpu & "&" & _ info_disco_duro & "&" & _ info_memoria & "&" & _ info_interface & "&" & _ info_procesos & "&" & _ "IP" & "@" & cr_ip & "@" & ce_ip & "|" & "TCP" & "@" & cr_tcp & "@" & ce_tcp & "|" & "UDP" & "@" & cr_udp & "@" & ce_udp & "|" & "ETHERNET" & "@" & cr_ether & "@" & ce_ether & "&" ws_udp_cs.RemoteHost = "255.255.255.255" ws_udp_cs.RemotePort = 3333 ws_udp_cs.SendData cad Call encerar_variables Call ModificarIconoEnLaBarra(1) End If Exit Sub RutinaErrores: MsgBox "Error No. : " & Err.Number & Chr$(10) & Chr$(13) & "Descripción: " & Err.Description, vbExclamation, "Error de Ejecución" tmrRefresh_Timer End End Sub

Fig. 3.51: Formulario agente

Page 340: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 169

Modulo Disco_Duro

Función de la API’s de windows con la cual se obtiene el espacio total y espacio libre de una Unidad de disco

Declare Function GetDiskFreeSpace Lib "kernel32" Alias "GetDiskFreeSpaceA" (ByVal lpRootPathName As String, lpSectorsPerCluster As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters As Long) As Long Función de la API’s con la cual se obtiene el número de serie de un disco Private Declare Function GetVolumeInformation& Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal pVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) Función de la API’s con la cual se obtiene el tipo de drive Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long Función que obtiene el tamaño ocupado y tamaño libre de una unidad de disco duro. Public Function espacio_disco_duro(unidad As String) As String Dim e1 As Long Dim e2 As Long Dim e3 As Long Dim e4 As Long Dim el As String Dim et As String Dim ealarma As Double Dim eocupado As Double Se envía los sectores por cluster, bytes por sector, cluster libres y cluster totales GetDiskFreeSpace unidad, e1, e2, e3, e4

Devuelve el espacio total y el espacio libre de una unidad de disco duro

et = Format$((e1 * e2 * (e4 / 1073741824)), "#,###.##") el = Format$((e1 * e2 * (e3 / 1073741824)), "#,###.##") ealerta = CDbl(et) * 0.9 eocupado = CDbl(et) - CDbl(el) If (eocupado >= ealerta) Then agente.ws_udp_cs.RemoteHost = "255.255.255.255" agente.ws_udp_cs.RemotePort = 2500 agente.alerta = "AAN" & "¶" & "|" & nombre_nodo & "|" & agente.pcktX.Adapter.NetIP & "|" & "La unidad " & Mid$(unidad, 1, 1) & " de disco duro tiene poca capacidad de Almacenamiento" agente.ws_udp_cs.SendData agente.alerta

Debug.Print "Alerta: " & agente.alerta estado = 1 Else estado = 0 End If If (et = ",") Or (el = ",") Then el = "0"

Fig. 3.52: Modulo_Disco_Duro

Page 341: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 170

estado = 0 End If If (et = ",") Or (el = ",") Then el = "0" et = "0" End If espacio_disco_duro = et & "@" & el End Function Función que recibe como parámetro la unidad de disco duro y obtiene el número de serie de dicha unidad Public Function numero_serie(unidad As String) As String Dim cad1 As String * 255 Dim cad2 As String * 255 Dim numSerie As Long 'Dim longitud As Long 'Dim flag As Long Call GetVolumeInformation(unidad, cad1, 255, numSerie, 0, 0, cad2, 255) numero_serie = numSerie End Function Función que devuelve la unidad, nñumero de serie, tamaño ocupado y tamaño libre de cada unidad del disco duro. Public Function info_disco_duro() As String Dim cadena As String Dim Dtype As Long Dim uni As String Dim i As Integer For i = 67 To 90 uni = Chr$(i) Dtype = GetDriveType(uni + ":\") If Dtype = 3 Then If i > 67 Then cadena = cadena & "|" End If cadena = cadena & uni & "@" & numero_serie(uni & ":\") & "@" & espacio_disco_duro(uni & ":\") End If Next i info_disco_duro = cadena End Function

Fig. 3.53: Modulo_Disco_Duro

Page 342: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 171

Definición de estructura que va a guardar información de memoria como es: porcentaje en uso de M. física total y libre, M. virtual total y libre.

Private Type MEMORYSTATUS dwLength As Long ' tamaño de memoria(MEMORYSTATUS) dwMemoryLoad As Long ' porcentaje de memoria en uso dwTotalPhys As Long ' bytes de memoria fisica dwAvailPhys As Long ' bytes libres de memoria fisica dwTotalPageFile As Long ' bytes de pagina de archivo dwAvailPageFile As Long ' bytes libres de pagina de archivo dwTotalVirtual As Long ' bytes de memoria virtual dwAvailVirtual As Long ' bytes libres de memoria virtual End Type

Función de la API’s con la cual se obtiene información acerca de estado actual de la memoria del sistema.

Private Declare Sub GlobalMemoryStatus Lib "kernel32" (lpBuffer As MEMORYSTATUS) Public estado As Integer

Función que devuelve información acerca de estado actual de la memoria del sistema.

Public Function info_memoria() As String Dim MS As MEMORYSTATUS Dim cad As String MS.dwLength = Len(MS) Call GlobalMemoryStatus(MS) With MS cad = Format(.dwMemoryLoad, "##0.00") & "|" & _ Format(.dwTotalPhys / 1024, "#,##") & "|" & _ Format(.dwAvailPhys / 1024, "#,##") & "|" & _ Format(.dwTotalVirtual / 1024, "#,##") & "|" & _ Format(.dwAvailVirtual / 1024, "#,##") If (CDbl(Format$(.dwMemoryLoad, "##0.00")) > 90) Then agente.ws_udp_cs.RemoteHost = "255.255.255.255" agente.ws_udp_cs.RemotePort = 2500 agente.ws_udp_cs.SendData agente.alerta agente.alerta = "AAN" & "¶" & nombre_nodo & "|" & agente.pcktX.Adapter.NetIP & "|" & "Poca capacidad de Memoria Disponible" estado = 1 Else estado = 0 End If

End With info_memoria = cad End Function

Fig. 3.54: Modulo_Estado_Memoria

Page 343: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 172

If CloseHandle(hSnapShot) = False Then Call Err_Dll(Err.LastDllError, "CloseHandle failed", sLocation, "Process32_Enum") Exit Function Else ReDim Process(lProcess) Process(lProcess) = PROCESSENTRY32 End If Do If Process32Next(hSnapShot, PROCESSENTRY32) = False Then Exit Do Else lProcess = lProcess + 1 ReDim Preserve Process(lProcess) Process(lProcess) = PROCESSENTRY32 End If Loop If CloseHandle(hSnapShot) = False Then Call Err_Dll(Err.LastDllError, "CloseHandle failed", sLocation, "Process32_Enum") '(Err.LastDllError, sLocation & "\Process32_Enum", "CloseHandle") Process32_Enum = lProcess Exit Function VB_Error: Err_Vb Err.Number, Err.Description, sLocation, "Process32_Enum" Resume Next End Function Función que obtiene un listado de los procesos activos Public Function List_ActiveProcess() As String Dim lCount As Long Dim pFile As String Dim cad As String lCount = Process32_Enum(Process()) Dim i As Long For i = 0 To lCount Dim str As String If i = 0 Then cad = CStr(Process(i).th32ProcessID) & "@" & Left(CStr(Process(i).szExeFile), 20) Else cad = cad & "|" & CStr(Process(i).th32ProcessID) & "@" & Left(CStr(Process(i).szExeFile), 20) End If Next i List_ActiveProcess = cad End Function

Fig. 3.55: Modulo_Estado_Memoria

Page 344: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 173

VSCANNET DESCUBRIDOR

Definición de estructura de datos que permite almacenar información de la imagen del icono a ser visualizado en la barra del reloj de windows Private Type NOTIFYICONDATA cbSize As Long hwnd As Long uId As Long uFlags As Long uCallBackMessage As Long hIcon As Long szTip As String * 64 End Type Declaración de variables globales que se utilizaran en el sistema Private TheForm As NOTIFYICONDATA Private Red As String Private Broad As String Private Mascara As String Private Clase As String Private idHisto As Long Private tipodesc As String Private bytes_mascara As Integer Private cad_conex As String Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" _ (ByVal dwMessage As Long, pTheForm As NOTIFYICONDATA) As Boolean Sub QuitaIconoDeLaBarra() Quita el icono de la barra del reloj Shell_NotifyIcon &H2, TheForm End Sub Procedimiento que coloca el icono de la aplicación en la barra del reloj Sub PonIconoEnLaBarra(i As Integer) Establece las propiedades de NOTIFYICONDATA Pic1.Picture = IL1.ListImages(i).ExtractIcon TheForm.cbSize = Len(TheForm) TheForm.hwnd = Pic1.hwnd TheForm.uId = 1& TheForm.hIcon = Pic1.Picture TheForm.uFlags = &H2 Or &H4 Or &H1 TheForm.uCallBackMessage = &H200 TheForm.szTip = "Descubridor de la Red" & Chr$(0) Muestra el icono en la barra del reloj Shell_NotifyIcon &H0, TheForm End Sub Procedimiento que modifica el icono de la barra del reloj para que de un aspecto de parpadeo cada vez que se realiza un ping a una dirección Ip. Sub ModificarIconoEnLaBarra(i As Integer) Establece las propiedades de NOTIFYICONDATA Pic1.Picture = IL1.ListImages(i).ExtractIcon TheForm.cbSize = Len(TheForm) TheForm.hwnd = Pic1.hwnd

Fig. 3.56: Formulario Descubridor_Red

Page 345: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 174

Pic1.Picture = IL1.ListImages(i).ExtractIcon TheForm.cbSize = Len(TheForm) TheForm.hwnd = Pic1.hwnd TheForm.uId = 1& TheForm.hIcon = Pic1.Picture TheForm.uFlags = &H2 Or &H4 Or &H1 TheForm.uCallBackMessage = &H200 TheForm.szTip = "Descubridor de la Red" & Chr$(0) Muestra el icono en la barra del reloj Shell_NotifyIcon &H1, TheForm End Sub Procedimiento que recibe como parámetros la dirección Ip, máscara, la clase de red, y el número del historial de descubrimiento, dentro de la función se encarga de averiguar que tipo de clase es, reserva las el tamaño del arreglo donde guardar las Ip, llena el arreglo con las Ip a las cuales efectuara un ping para finalmente invocar al método Timer del objeto Timerping. Private Sub enviar_ping() Dim X As Integer Dim Y As Integer Dim z As Integer Dim inter As Integer Dim dirIp As String Dim arreglo() As String Dim arreglo2() As String Select Case UCase(Trim$(Clase)) Case "A" Resetea el valor de indexit para usarlo otra vez indexit = 0 arreglo = Split(Red, ".") arreglo2 = Split(Mascara, ".") If (bytes_mascara = 8) Then Broad = arreglo(0) & ".255.255.255" Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hara ping ReDim Ips(16777214) Guarda en un arreglo las IP's a las cuales se les hará ping For X = 0 To 255 For Y = 0 To 255 For z = 0 To 255 dirIp = arreglo(0) & "." & CStr(X) & "." & CStr(Y) & "." & CStr(z) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next z Next Y Next X totalips = indexit - 1 Resetea el valor de indexit a 0 para usarlo en el timer indexit = 0 Ejecutar el timer

Fig. 3.57: Formulario Descubridor_Red

Page 346: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 175

totalips = indexit - 1 Resetea el valor de indexit a 0 para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True No espera por el primer intervalo Timerping_Timer Else Select Case bytes_mascara Case 9 To 16 posini = CInt(arreglo(2)) Select Case CInt(arreglo2(2)) Case 128 posfin = posini + 127 Redimensiona el tamaño del arreglo en la cual se guardaran las IP's a las cuales se les hará ping ReDim Ips(8388606) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 For z = 0 To 255 dirIp = arreglo(0) & "." & CStr(X) & "." & CStr(Y) & "." & CStr(z) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next z Next Y Next X totalips = indexit - 1 'Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 192 posfin = posini + 63 Redimensiona el tamaño del arreglo en la cual se guardaran las IP's a las cuales se les hará ping ReDim Ips(4194302) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer

Fig. 3.58: Formulario Descubridor_Red

Page 347: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 176

Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 224 posfin = posini + 31 Redimensiona el tamaño del arreglo en la cual se gurdaran las IP's a las cuales se les hara ping ReDim Ips(2097150) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 'Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 240 posfin = posini + 15 Redimensiona el tamaño del arreglo en la cual se gurdaran las IP's a las cuales se les hara ping ReDim Ips(1048574) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 'Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 248 posfin = posini + 7

Fig. 3.59: Formulario Descubridor_Red

Page 348: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 177

Timerping.Enabled = True Timerping_Timer Case 248 posfin = posini + 7 Redimensiona el tamaño del arreglo en la cual se guardaran las IP's a las cuales se les hará ping ReDim Ips(524286) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 252 posfin = posini + 3 Redimensiona el tamaño del arreglo en la cual se guardaran las IP's a las cuales se les hará ping ReDim Ips(262142) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 254 posfin = posini + 1 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(131070) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." &

Fig. 3.60: Formulario Descubridor_Red

Page 349: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 178

ReDim Ips(131070) Broad = arreglo(0) & "." & CStr(posfin) & ".255.255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 'Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 255 Redimensiona el tamaño del arreglo en la cual se guardará las IP's a las cuales se les hará ping ReDim Ips(65533) Broad = arreglo(0) & "." & arreglo(1) & ".255.255" For X = 0 To 255 For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 'Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer End Select Case 17 To 24 posini = CInt(arreglo(2)) Select Case CInt(arreglo2(2)) Case 128 posfin = posini + 127 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(32766) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer

Timerping.Enabled = True Timerping_Timer Case 192 posfin = posini + 63 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(16382)

Fig. 3.61: Formulario Descubridor_Red

Page 350: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 179

For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 192 posfin = posini + 63 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(16382) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 224 posfin = posini + 31 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(8190) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 240 posfin = posini + 15 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping

ReDim Ips(4094) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255

Fig. 3.62: Formulario Descubridor_Red

Page 351: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 180

Select Case CInt(arreglo2(2)) Case 128 posfin = posini + 127 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(32766) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 192 posfin = posini + 63 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(16382) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 224 posfin = posini + 31 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(8190) Broad = arreglo(0) & "." & arreglo(1) & "." & CStr(posfin) & ".255" For X = posini To posfin For Y = 0 To 255 dirIp = arreglo(0) & "." & arreglo(1) & "." & CStr(X) & "." & CStr(Y) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next Y Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer Case 240 posfin = posini + 15 Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las

Fig. 3.63: Formulario Descubridor_Red

Page 352: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 181

inter = 14 Case 248 posfin = posini + 7 inter = 6 Case 252 posfin = posini + 3 inter = 2 Case Else Exit Sub End Select Broad = arreglo(0) & "." & arreglo(1) & "." & arreglo(2) & "." & CStr(posfin) Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(inter) Guarda en un arreglo las IP's a las cuales se les hara ping For X = posini To posfin dirIp = arreglo(0) & "." & arreglo(1) & "." & arreglo(2) & "." & CStr(X) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next X totalips = indexit - 1 Resetea el valor de indexit para usarlo en el timer indexit = 0 Ejecutar el timer Timerping.Enabled = True Timerping_Timer End Select End If Case "C" Resetea el valor de indexit para usarlo otra vez indexit = 0 arreglo = Split(Red, ".") arreglo2 = Split(Mascara, ".") If (bytes_mascara = 24) Then Broad = arreglo(0) & "." & arreglo(1) & "." & arreglo(2) & ".255" posini = 0 posfin = 255 inter = 254 Else posini = CInt(arreglo(3)) Select Case CInt(arreglo2(3)) Case 128 posfin = posini + 127 inter = 126 Case 192 posfin = posini + 63 inter = 62 Case 224 posfin = posini + 31 inter = 30 Case 240 posfin = posini + 15 inter = 14 Case 248 posfin = posini + 7

inter = 6 Case 252 posfin = posini + 3 inter = 2 Case Else Exit Sub End End Select Broad = arreglo(0) & "." & arreglo(1) & "." & arreglo(2) & "." & CStr(posfin)

Fig. 3.64: Formulario Descubridor_Red

Page 353: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 182

posfin = posini + 63 inter = 62 Case 224 posfin = posini + 31 inter = 30 Case 240 posfin = posini + 15 inter = 14 Case 248 posfin = posini + 7 inter = 6 Case 252 posfin = posini + 3 inter = 2 Case Else Exit Sub End End Select Broad = arreglo(0) & "." & arreglo(1) & "." & arreglo(2) & "." & CStr(posfin) End If Redimensiona el tamaño del arreglo en la cual se guardarán las IP's a las cuales se les hará ping ReDim Ips(inter) Guarda en un arreglo las IP's a las cuales se les hara ping For X = posini To posfin dirIp = arreglo(0) & "." & arreglo(1) & "." & arreglo(2) & "." & CStr(X) If (dirIp <> Red) And (dirIp <> Broad) Then Ips(indexit) = dirIp indexit = indexit + 1 End If Next X totalips = indexit - 1 'Resetea el valor de indexit para usarlo en el timer indexit = 0 'Ejecutar el timer Timerping.Enabled = True Timerping_Timer End Select End Sub

Fig. 3.65: Formulario Descubridor_Red

Page 354: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 183

3.4.- Diccionario de Datos VER ANEXO

Page 355: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.199

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificador del nodo y relación

con la tabla de los nodos4 Numeros Se permite solo numeros

2 Texto Volumen La unidad lógica del disco 15 Caracteres Se permiten todos los caracteres

3 Texto Serie La serie del disco 10 Caracteres Se permiten todos los caracteres

4 Texto Tamano_TotalTamaño total de la capacidad del

disco50 Caracteres Se permite solo numeros

5 Texto Tamano_Disponible Tamaño disponible del disco 50 Caracteres Se permite solo numeros

TMP_INF_UNIDADES_HD

Temporal de Reportes. Información de los DISCOS D operativos de cada máquina

DICCIONARIO DE DATOS

Page 356: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.200

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_Nodo

Identificador del nodo y relación con la

tabla de los nodos 4 Numeros Se permite solo numeros

2 Texto Descripcion Descripción de la interfase 100 Caracteres Se permiten todos los caracteres

3 Texto Direccion_Fisica Dirección física de la tarjeta 15 Caracteres Se permiten todos los caracteres

4 Entero Paq_Recibidos Número de paquetes recibidos 4 Caracteres Se permite solo numeros

5 Entero Paq_Perdidos Número de paquetes perdidos 4 Caracteres Se permite solo numeros

6 Texto Nombre_Enlace Nombre del enlace de red 20 Caracteres Se permiten todos los caracteres

7 Texto Velocidad_EnlaceVelocidad del enlace 20 Caracteres Se permite solo numeros

8 Entero Paq_Enviados Número de paquetes enviados 4 Caracteres Se permite solo numeros

TMP_INF_INTERFACES_RED

Temporal de Reportes. Información de las tarjetas o interfaces de red que contiene cada PC

DICCIONARIO DE DATOS

Page 357: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.201

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificación de un nodo en una fecha

y hora específica4 Numeros Se permite solo numeros

2 Texto Dir_Ip Dirección IP del nodo 15 CaracteresSe permite solo numeros y el

punto

3 Texto Dir_Red Dirección de red 15 CaracteresSe permite solo numeros y el

punto

4 Texto Mascara Máscara de red 15 CaracteresSe permite solo numeros y el

punto

5 Texto Nombre Nombre del nodo 50 Caracteres Se permiten todos los caracteres

6 Texto Clase Clase de la red que contiene al nodo 1 CaracteresSe permiten solo los caracteres

'A', 'B' o 'C'

7 Texto Gateway Dirección IP del Gateway de la red 15 CaracteresSe permite solo numeros y el

punto

8 Entero EstadoMuestra si la PC tiene una especie de

alerta o no4 Numeros

Se permite solo los numeros 0 o

1

9 Entero Id_HistoNúmero de veces que se realiza el

descubrimiento de la red por parte del 4 Numeros Se permite solo numeros

10 Texto FechaFecha en que se guardó la información

del nodo10 Caracteres

Se permite solo numeros y el

carcter '/'

11 Texto HoraHora en que se guardó la información

del nodo8 Caracteres

Se permite solo numeros y el

carcter ':'

TMP_INF_NODO

Temporal de Reportes. Información principal de la PC que va a ser única por cada una de éstas

DICCIONARIO DE DATOS

Page 358: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.202

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_Nodo

Identificador del nodo y relación con

la tabla de los nodos4 Numeros

Se permite solo numeros

2 Texto Nombre Nombre del paquete20 Caracteres

Se permiten todos los caracteres

3 Entero Cant_Recibidos Número de paquetes recibidos4 Numeros

Se permite solo numeros

4 Entero Cant_Enviados Número de paquetes enviados 4 NumerosSe permite solo numeros

TMP_INF_PAQUETES

Temporal de Reportes. Información de los paquetes enviados y recibidos por el nodo

DICCIONARIO DE DATOS

Page 359: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.203

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_Nodo

Identificador del nodo y

relación con la tabla de los 4 Numeros Se permite solo numeros

2 Entero Id_Proceso Identificador del proceso 4 Numeros Se permite solo numeros

3 Texto Nombre_Proceso Iombre del proceso 25 Caracter Se permiten todos los caracteres

TMP_PROC_EJEC

Temporal de Reportes. Información de los procesos que se están ejecutando en una máquina

DICCIONARIO DE DATOS

Page 360: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.194

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Texto UsuarioIdentificador del usuario, también

llamado nombre de usuario 15 Caracter Se permiten todos los caracteres

2 Texto Cedula Número de cédula del usuario10 Caracter Se permite solo numeros

3 Texto Contrasena Clave o contraseña del usuario40 Caracter Se permiten todos los caracteres

4 Date Ini_TurnoInicio del rango de horas en las

cuales el usuario puede ingresar a la 8 Numeros Se permite solo numeros

5 Date Fin_TurnoFin del rango de horas en las cuales

el usuario puede ingresar a la 8 Numeros Se permite solo numeros

6 Texto Nombres Nombres del usuario20 Caracter Se permiten todos los caracteres

7 Texto Apellidos Apellidos del usuario20 Caracter Se permiten todos los caracteres

8 Texto Telefono Número telefónico del usuario10 Caracter Se permiten todos los caracteres

9 Texto StatusIndica si el usuario es administrador

o no 1 Caracter Se permiten los caracteres 'S' o 'N'

10 Texto FechaFecha en que se guardó la

información del nodo10 Caracteres Se permite solo numeros y el carcter '/'

11 Texto HoraHora en que se guardó la

información del nodo8 Caracteres Se permite solo numeros y el carcter ':'

USUARIO

Datos principales de los usuarios del sistema

DICCIONARIO DE DATOS

Page 361: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.195

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Texto Dir_Ip

Dirección IP de los nodos de una

subred15 Caracteres Se permite solo numeros y el punto

2 Texto Dir_Red Dirección IP de la subred 15 Caracteres Se permite solo numeros y el punto

3 Texto Mascara Máscara de subred 15 Caracteres Se permite solo numeros y el punto

4 Texto Clase

Clase de la red que contiene al

nodo 1 Caracteres Se permiten solo los caracteres 'A', 'B' o 'C'

TMP_INF_INICIAL

Temporal de Reportes. Guarda información Inicial

DICCIONARIO DE DATOS

Page 362: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.196

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificador del nodo y relación con

la tabla de los nodos4 Numeros Se permite solo numeros

2 Texto Mem_Fis_Tot Tamaño total de la memoria física 50 Caracteres Se permite solo numeros

3 Texto Mem_Fis_DispTamaño disponible de la memoria

física50 Caracteres Se permite solo numeros

4 Texto Mem_Vir_Tot Total de la memoria virtual 50 Caracteres Se permite solo numeros

5 Texto Mem_Vir_DispTamaño disponible de la memoria

virtual50 Caracteres Se permite solo numeros

6 Texto Mem_Cargada Tamaño de la memoria cargada 50 Caracteres Se permite solo numeros

TMP_INF_MEMORIA

Temporal de Reportes. Almacena información de la memoria de la PC

DICCIONARIO DE DATOS

Page 363: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.197

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificador del nodo y relación

con la tabla de los nodos4 Numeros Se permite solo numeros

2 Texto Nombre Nombre del procesador 50 CaracteresSe permiten todos los

caracteres

3 Texto Porcentaje_Ocupado Porcentaje de uso del procesador 50 Caracteres Se permite solo numeros

TMP_INF_PROCESS

Temporal de Reportes. Guarda Información del o los procesadores del PC

DICCIONARIO DE DATOS

Page 364: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.198

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_Nodo

Identificador del nodo y relación con

la tabla de los nodos 4 Numeros Se permite solo numeros

2 Texto Nombre

Sistemas operativos con que cuenta

la máquina 20 Caracteres

Se permiten todos los

caracteres

3 Texto Version Versión del sistema operativo 10 Caracteres

Se permiten todos los

caracteres

4 Texto Usuario

Usuario que esta ingresado en el

sistema operativo respectivo 15 Caracteres

Se permiten todos los

caracteres

TMP_INF_SO

Temporal de Reportes. Información de los sistemas operativos de cada máquina

DICCIONARIO DE DATOS

Page 365: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.190

SISTEMA:

NOMBRES LOGICO:

DESCRIPCION:

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_NodoIdentificador del nodo y

relación con la tabla de los 4 Numeros Se permite solo numeros

2 Texto Descripcion Descripción de la interfase 100 Caracteres Se permiten todos los caracteres

3 Texto Direccion_Fisica Dirección física de la tarjeta 15 Caracteres Se permiten todos los caracteres

4 Entero Paq_RecibidosNúmero de paquetes

recibidos4 Caracteres Se permite solo numeros

5 Entero Paq_PerdidosNúmero de paquetes

perdidos4 Caracteres Se permite solo numeros

6 Texto Nombre_Enlace Nombre del enlace de red 20 Caracteres Se permiten todos los caracteres

7 Texto Velocidad_Enlace Velocidad del enlace 20 Caracteres Se permite solo numeros

8 Entero Paq_EnviadosNúmero de paquetes

enviados4 Caracteres Se permite solo numeros

DICCIONARIO DE DATOS

VScanNet

INTERFACES_RED

Información de las tarjetas o interfaces de red que contiene cada PC

Page 366: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.201

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificación de un nodo en una fecha

y hora específica4 Numeros Se permite solo numeros

2 Texto Dir_Ip Dirección IP del nodo 15 CaracteresSe permite solo numeros y el

punto

3 Texto Dir_Red Dirección de red 15 CaracteresSe permite solo numeros y el

punto

4 Texto Mascara Máscara de red 15 CaracteresSe permite solo numeros y el

punto

5 Texto Nombre Nombre del nodo 50 Caracteres Se permiten todos los caracteres

6 Texto Clase Clase de la red que contiene al nodo 1 CaracteresSe permiten solo los caracteres

'A', 'B' o 'C'

7 Texto Gateway Dirección IP del Gateway de la red 15 CaracteresSe permite solo numeros y el

punto

8 Entero EstadoMuestra si la PC tiene una especie de

alerta o no4 Numeros

Se permite solo los numeros 0 o

1

9 Entero Id_HistoNúmero de veces que se realiza el

descubrimiento de la red por parte del 4 Numeros Se permite solo numeros

10 Texto FechaFecha en que se guardó la información

del nodo10 Caracteres

Se permite solo numeros y el

carcter '/'

11 Texto HoraHora en que se guardó la información

del nodo8 Caracteres

Se permite solo numeros y el

carcter ':'

TMP_INF_NODO

Temporal de Reportes. Información principal de la PC que va a ser única por cada una de éstas

DICCIONARIO DE DATOS

Page 367: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.195

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Texto Dir_Ip

Dirección IP de los nodos de una

subred15 Caracteres Se permite solo numeros y el punto

2 Texto Dir_Red Dirección IP de la subred 15 Caracteres Se permite solo numeros y el punto

3 Texto Mascara Máscara de subred 15 Caracteres Se permite solo numeros y el punto

4 Texto Clase

Clase de la red que contiene al

nodo 1 Caracteres Se permiten solo los caracteres 'A', 'B' o 'C'

TMP_INF_INICIAL

Temporal de Reportes. Guarda información Inicial

DICCIONARIO DE DATOS

Page 368: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.196

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificador del nodo y relación con

la tabla de los nodos4 Numeros Se permite solo numeros

2 Texto Mem_Fis_Tot Tamaño total de la memoria física 50 Caracteres Se permite solo numeros

3 Texto Mem_Fis_DispTamaño disponible de la memoria

física50 Caracteres Se permite solo numeros

4 Texto Mem_Vir_Tot Total de la memoria virtual 50 Caracteres Se permite solo numeros

5 Texto Mem_Vir_DispTamaño disponible de la memoria

virtual50 Caracteres Se permite solo numeros

6 Texto Mem_Cargada Tamaño de la memoria cargada 50 Caracteres Se permite solo numeros

TMP_INF_MEMORIA

Temporal de Reportes. Almacena información de la memoria de la PC

DICCIONARIO DE DATOS

Page 369: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.198

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_Nodo

Identificador del nodo y relación con

la tabla de los nodos 4 Numeros Se permite solo numeros

2 Texto Nombre

Sistemas operativos con que cuenta

la máquina 20 Caracteres

Se permiten todos los

caracteres

3 Texto Version Versión del sistema operativo 10 Caracteres

Se permiten todos los

caracteres

4 Texto Usuario

Usuario que esta ingresado en el

sistema operativo respectivo 15 Caracteres

Se permiten todos los

caracteres

TMP_INF_SO

Temporal de Reportes. Información de los sistemas operativos de cada máquina

DICCIONARIO DE DATOS

Page 370: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Anexo Tomo N° II

Cápitulo 3

Manual Técnico

Pág.197

SISTEMA: VscanNet

NOMBRE LOGICO:

DESCRIPCION

NUM TIPO CAMPO DESCRIPCIONFORMATO

TAMAÑO

VALORES

VALIDOSREGLAS DE VALIDACION

1 Entero Id_Tmp_NodoIdentificador del nodo y relación

con la tabla de los nodos4 Numeros Se permite solo numeros

2 Texto Nombre Nombre del procesador 50 CaracteresSe permiten todos los

caracteres

3 Texto Porcentaje_Ocupado Porcentaje de uso del procesador 50 Caracteres Se permite solo numeros

TMP_INF_PROCESS

Temporal de Reportes. Guarda Información del o los procesadores del PC

DICCIONARIO DE DATOS

Page 371: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición
Page 372: UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias ...repositorio.ug.edu.ec/bitstream/redug/6862/1/Tesis...1.2.2.- Árbol de Problemas 4 1.3.- Solución del Problema 5 1.4. -Definición

Pág. 204