Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...
Avance1
1. “Gestor de acaparamiento de
sitios Web transcodificados para
plataforma Pocket PC”
Presenta:
Ing. Juan Carlos Olivares Rojas
Asesores:
M.C. Juan Gabriel González Serna
Dra. Azucena Montes Rendón
1er Reporte de avance
Título:
3. 3
Introducción
• La información es accedida en cualquier lugar, en
todo momento y en cualquier dispositivo.
• Los dispositivos móviles PDA han dejado de ser
simples agendas electrónicas para convertirse en
verdaderos equipos de cómputo.
• Los dispositivos móviles tienen muchos problemas
y aun no pueden considerarse como reemplazo de
escritorio.
4. 4
Descripción del problema
• Método de entrada de información.
• Despliegue de la información.
• Pocos recursos en comparación con una PC
de escritorio.
• Suministro finito de energía.
• Frecuentes desconexiones.
Problemática general
6. 6
Objetivo general
• Diseñar e implementar un prototipo de
servicio intermediario para plataforma Pocket
PC 2000, que gestione el acaparamiento de
páginas Web transcodificadas cuando se
presenten eventos de desconexión.
Se cambió la palabra agente por servicio.
7. 7
Justificación
• Antes: plataformas tradicionales con
interfaces de red inalámbrica. Ahora:
plataformas no convencionales.
• Los equipos móviles están propensos a
constantes desconexiones y, por otra parte,
la Web es orientada a conexión.
• No existen herramientas que en conjunto
realicen acaparamiento y transcodificación.
8. 8
Modelo general de solución
MIPS
SH3
ARMARM
GAP
SQUID
GAT
Internet
Servidores Web
GAT=Gestor de Acaparamiento y
Transcodificación
GAP=Gestor de Acaparamiento para los
dispositivos Pocket PC
9. 9
Arquitectura propuesta
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Petición Respuesta
Recurso
Revisar
estado
de la
conexión
Fecha
Página
transcodificada
Arquitectura GASWT
Descomprime
Comprime
Envió de nuevos patrones,
actualización de patrones existentes
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Petición Respuesta
Recurso
Revisar
estado
de la
conexión
Fecha
Página
transcodificada
Arquitectura GASWT
Descomprime
Comprime
Envió de nuevos patrones,
actualización de patrones existentes
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Petición Respuesta
Recurso
Revisar
estado
de la
conexión
Fecha
Página
transcodificada
Arquitectura GASWT
Descomprime
Comprime
Envió de nuevos patrones,
actualización de patrones existentes
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Navegador (IPE, Netscape )Navegador (PIE)
GAP
Cliente Pocket PC
Redes Inalámbricas (WiFi, Bluetooth)
¿Conexión?
¿Caché?
T caché
Sí
No
No
Error
Sí
recurso
Analizador
HTTP
GAT
W
Internet
Squid
¿
¿Transcodificada?
?
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizador
caché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
G
D
L
GAL
MT
MA
Observador
Gestor de
Desconexión
Módulos a integrar pertenecientes a Moviware
Petición Respuesta
Recurso
Revisar
estado
de la
conexión
Fecha
Página
transcodificada
Arquitectura GASWT
Descomprime
Comprime
Envió de nuevos patrones,
actualización de patrones existentes
10. 10
Alcances
• Análisis de los recursos a acaparar en la
PPC (prioridad alta).
• Implementación de servicios para la gestión
de la caché local en PPC (prioridad alta).
• Diseño e implementación del intermediario
acaparador en el PPC (prioridad alta).
11. 11
Alcances
• Integración de módulos en la arquitectura
Moviware:
– Transcodificador (prioridad alta).
– Acaparador (prioridad alta).
– Gestor de desconexión (prioridad baja).
12. 12
Limitaciones
• El GAP sólo se implementará para
plataforma PPC 2000.
• Los microprocesadores para los cuales se
generará código ejecutable del GAP son:
SH3, ARM y MIPS.
• El acaparamiento en el GAP estará limitado
a las características propias con que
cuente cada dispositivo PPC.
13. 13
Limitaciones
• No se realizará reintegración de páginas
Web, sólo se hará la sincronización del
contenido de las cachés.
• El GAT se limitará a los servicios
proporcionados por la arquitectura
Moviware.
15. 15
Acaparamiento
• “Proceso de replicación y procesamiento en
desconexión de datos previamente
seleccionados y copiados localmente en el
cliente móvil”*.
Reintegración
Acaparamiento
Desconexión
*Valenzuela Molina David R., “Mecanismo para Predicción de Acaparamiento de Datos en Sistemas
Cliente/Servidor Móviles”, tesis de maestría, cenidet, agosto de 2002.
16. 16
Acaparamiento
• Se basa en la siguiente idea: “el espectáculo
debe continuar”.
• Si el usuario no puede acceder a los datos
(recursos de Web), los datos deben seguir al
usuario (los recursos deben estar
almacenados en el dispositivo móvil).
• “Recarga de datos”.
18. 18
Transcodificación
• El proceso de convertir un formato o código
a otro, con la finalidad de que este nuevo
formato o código se adapte a la plataforma
indicada para su correcta visualización*.
NTSC – PAL
WAV - MP3
C – Pascal
• HTML – Subconjunto de HTML (XHTML-MP)
*Chanchaem Thong, “A Survey on Internet Content Transcoding for Universal Access”, Department of
Computer Science, Kent State University, mayo de 2003.
19. 19
Pocket PC
• “Un dispositivo de mano que te permite
grabar, enviar y recibir e-mails, contactos,
citas, mostrar archivos multimedia, juegos,
intercambiar mensajes de texto con MSN
Messenger, navegar por la Web y más”*.
• Plataforma con hardware bien definido y
extensiones de software tales como el
Pocket PC shell, el administrador de
conexiones, entre otros.
Microsoft.com
20. 20
Pocket PC
3
2
0
Características:
Baja capacidad de procesamiento*.
Memoria limitada*.
Dimensiones de pantalla
restringidas.
Funcionalidad PIM (Personal
Information Manager).
La mayoría posee conexión a
Internet (inalámbrica).
240
Comparados con un equipo de escritorio
22. 22
Moviware*
Intermediario
Patrones
Gestor de Cache
de Acaparamiento
Recurso
Acaparado
Historial
De
Accesos
Minero
Encapsulador de
patrón
Identificador de
Patrón
Cliente Móvil
Inalámbrico
Gestor Local de
Acaparamiento
Gestor de
Acaparamiento
Clasificador de
Patrones
Aplicación
(Netscape, Explorer,
Pocket IE
Transcodificador
de contenidos Web
Identificador
De perfil de dispositivo
Generador de
Patrones
Generador de
árbol Patrón
Analizador de
Página HTML
Generador de página
Web
Transcodificada
Gestor de
Desconexión
Gestor de
Desconexión
HTTPHTTP
FTPFTP
Proxy Cache Squid
Cache
transcodificada
Cache
Gestor de
caches
Intranet
IEEE802.11
Intermediario
Patrones
Gestor de Cache
de Acaparamiento
Recurso
Acaparado
Historial
De
Accesos
Minero
Encapsulador de
patrón
Identificador de
Patrón
Cliente Móvil
Inalámbrico
Gestor Local de
Acaparamiento
Gestor de
Acaparamiento
Clasificador de
Patrones
Aplicación
(Netscape, Explorer,
Pocket IE
Transcodificador
de contenidos Web
Identificador
De perfil de dispositivo
Generador de
Patrones
Generador de
árbol Patrón
Analizador de
Página HTML
Generador de página
Web
Transcodificada
Gestor de
Desconexión
Gestor de
Desconexión
HTTPHTTP
FTPFTP
Gestor de
Desconexión
Gestor de
Desconexión
HTTPHTTP
FTPFTP
Proxy Cache Squid
Cache
transcodificada
Cache
Gestor de
caches
Intranet
IEEE802.11
Desarrollo
Integración
Entrada
*González Serna Juan Gabriel. “Plataforma middleware reflexiva para aplicaciones de cómputo móvil en Internet
(Movirware)”, CENIDET , septiembre de 2001 a agosto de 2003, financiamiento COSNET: 570.01-P
23. 23
Estado del arte
• Los mecanismos de replicación o precarga
están muy orientados a base de datos y
memoria caché.
• Sistemas de almacenamiento distribuido:
Ficus, Coda CMU, Bayou Xerox, IBM
WebExpress.
• Web& (post&go)
24. 24
Estado del arte
• Gestores de descarga:
• RepliGo
• WebCoppier
• World Off-line
• Transcodificador:
• Skweezer
25. 25
Trabajos relacionados
1. “Gestor de Acaparamiento de Patrones de
Sitios Web en Clientes Móviles”, Gustavo
Verduzco Reyes, cenidet, agosto de 2003 [Ver03]
2. “Generador de patrones de navegación de
usuarios aplicando Web log mining”, Gabriel
Hernández Méndez, Tesis de maestría, cenidet,
noviembre de 2005 [Hen05]
3. “Transformador de Contenidos Web para
Asistentes Personales Digitales”, Claudia
Selene Uriarte Cabada, Tesis de maestría,
cenidet, julio de 2004 [Uri04].
26. 26
Trabajos relacionados
4. “Hoarding Content in M-Learning
Context”, Anna Trifonova, Tesis doctoral
en desarrollo, Universidad de Trento, Italia,
2004 [Tri04].
5. Avantgo. http://www.avantgo.com/ [Ava05].
6. Palm Web Clipping.
http://www.palmos.com/dev/tech/webclippin
g/ [PWC05]
27. 27
Cuadro comparativo
Si. Servicio
Aportación.
Si. HTML a subconjunto
de HTML.
Si. Optimizado para
dispositivos móviles PPC.
Aportación.
Prototipo
Si.
Indirectamente
No. Micrositios
personalizados a través de
recortes
No. Caché. Replicación
selectiva en niveles.
[PWC05]
Si.
Indirectamente
No. Páginas propias
llamadas canales.
No. Caché. Replicación de
niveles.
[Ava05]
Si.Si. Personalización del
contenido.
Si. Seguimiento de las
actividades del usuario.
[Tri04]
Si.
Indirectamente
Si.No. Se utiliza una caché.[Uri04]
No.No.No. Generador de patrones.[Hen05]
No.No.Si. Clientes móviles
tradicionales.
[Ver03]
Pocket PCTranscodificaciónAcaparamiento
28. 28
Otros artículos
• The Use of Software Agents as Proxies B. Thai, A. Seneviratne.
School of Electrical Engineering and Telecommunications. University of
New South Wales, Sydney, Australia. Proceedings of the Fifth IEEE
Symposium on Computers & Communications (ISCC'00)
• TranSquid : Transcoding and Caching Proxy for Heterogenous E-
Commerce Environments Anuj Maheshwari, Aashish Sharma, Krithi
Ramamritham. Center for Intelligent Internet Research, Department of
Computer Science and Engineering. Indian Institute of Technology
Bombay. Proceedings of the 12th Int.l Wrkshp on Research Issues in
Data Engineering: Engineering e-Commerce/ e-Business Systems
(RIDE.02)
• Firewall Personal for Pocket PC 2003: Design Implementation. Willy
Susilo, Russell James Ang, Cameron Allen George McDonald, and
Jianyong Huang, University of Wollongong, Australia. Proceedings of
the 19th International Conference on Advanced Information Networking
and Applications (AINA’05)
30. 30
Actividades realizadas
# C o n c e p t o 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
1 E v a lu a c ió n d e h e r r a m ie n t a s
E m b e d d e d V is u a l T o o ls
V is u a l S t u d io . N e t
J a v a 2 M ic r o E d it io n
O t r a s h e r r a m ie n t a s
C o m p a r a t iv a s
2 A n a lis is d e r e c u r s o s a a c a p a r a r
T a m a ñ o
T ip o d e r e c u r s o s
E s t r u c t u r a d e a lm a c e n a m ie n t o
D o c u m e n t a c ió n
3 E s t u d io h e r r a m ie n t a s e le c c io n a d a
4 E s t u d io d e M o v iw a r e
A c a p a r a d o r
C o n t e n e d o r d e P a t r o n e s
T r a n s c o d if ic a d o r
G e s t o r d e d e s c o n e x ió n
D o c u m e n t a c ió n
5 D is e ñ o e im p le m e n t a c ió n d e l G A P
O b s e r v a d o r
G e s t o r d e D e s c o n e x ió n L o c a l
S E P T O C T N O V D I C
100%
100%
100%
100%
70%
35%
Cronograma de actividades primer cuatrimestre
31. 31
Evaluación de herramientas
• eMbedded Visual Tools
– eMbedded Visual C++
– eMbedded Visual Basic
• Visual Studio .Net
– C#
– Visual Basic .NET
• Java 2 Micro Edition (J2ME)
• Otras herramientas de programación
32. 32
Análisis de recursos acaparados
• El almacenamiento de recursos de Web en
un dispositivo PPC es viable ya que existe
capacidad suficiente de almacenamiento en
las tarjetas de almacenamiento.
• El almacenamiento de información se basa
en tecnologías Flash ROM y RAM. Es
posible ejecutar aplicaciones robustas como
bases de datos SQL Server CE (SQL
Mobile) u Oracle 9i lite.
33. 33
Análisis recursos acaparados
• Los recursos a acaparar dependerán de la
selección que haga el usuario. Técnicamente
es posible ejecutar una multitud de
aplicaciones en esta clase de dispositivos
simplemente se necesita tener el programa
adecuado.
• La estructura del sistema de archivos será
idéntica a la del sitio Web eliminando sólo
aquellos recursos que no caen sobre el
patrón.
34. 34
Herramienta seleccionada
• C# es un lenguaje moderno y orientado a
objetos, con una sintaxis muy similar a la de
C++ y Java. Combina la alta productividad
de Visual Basic con el poder y la flexibilidad
de C++.
• La misma aplicación que se ejecuta bajo
Windows podría funcionar en un dispositivo
móvil de tipo PDA.
• C# gestiona automáticamente la memoria.
35. 35
Estudio de Moviware
• Alternativas para el análisis y diseño de la
solución al problema del GAT:
– Desarrollar un middleware o intermediario entre
el mecanismo acaparador y transcodificador.
– Desarrollo de un nuevo sistema copiando clases
y adaptándolas para su correcta integración.
– La última opción consiste en asimilar la
funcionalidad de todas las clases de esta
solución y tratar de implementar una nueva
versión construida desde cero que realice el
mecanismo de transcodificación y
acaparamiento.
48. 48
Publicaciones
• González S., J. G., Montes R., A., Olivares R., J. C, “Comparativa y
evaluación de las herramientas de programación para desarrollar
aplicaciones en dispositivos Pocket PC” 6to. Congreso Internacional de
las Ciencias Computacionales CICC’05, Colima, Colima, México,
septiembre de 2005.
• González S., J. G., Montes R., A., Sosa S., V. J., Olivares R., J. C.,
“Gestor de acaparamiento de sitios Web transcodificados para
plataforma Pocket PC”. 3er. Congreso de Innovación e Investigación y
Desarrollo Tecnológico CIINDET’05, Cuernavaca, Morelos, México,
septiembre de 2005.
• González S., J. G., Montes R., A., Sosa S., V. J., Olivares R., J. C,
“Evaluación de Windows CE y Linux Embedded sobre Plataformas iPaq
Pocket PC Modelos 3600”. 6to. Simposium Iberoamericano de
Computación e Informática SICI’05, Monterrey, Nuevo Léon, México, del
15 al 17 de Noviembre de 2005.
Artículos en congresos internacionales
49. 49
Otras actividades
• Reporte sobre cómputo móvil
• Reporte sobre arquitectura Pocket PC
• Modelo cliente-servidor
• Sockets asíncronos
• AJAX
50. 50
Compromisos por realizar …
# Concepto 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
5 Diseño e implementación del GAP
Gestor de Acaparamiento Local
Pruebas
6 Adaptación del GAP
ARM
MIPS
SH3
7 Diseño e implementación del GAS
Analizador HTTP
Integración del Transcodificador
Integración del Acaparador
Sincronizador de caches
ENE FEB MAR ABR
30%
Cronograma de actividades segundo cuatrimestre