1er reporte de avance -...
TRANSCRIPT
“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:
2
cenidet
Propuesta
Marco teórico
Estado del arte
Resultados
PropuestaSiguiente tema: OK
Martes 6 de diciembre de 2005
Agenda
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
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
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
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
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
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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áginatranscodificada
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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áginatranscodificada
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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áginatranscodificada
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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
WInternet
Squid
¿
¿Transcodificada??
Transcodificador
¿Actual?
Acaparador
T
Caché
Sincronizadorcaché servidor
Sincronizador
caché local
Sí
Sí
No
No
Patrón
GDL
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áginatranscodificada
Arquitectura GASWT
Descomprime
Comprime
Envió de nuevos patrones,
actualización de patrones existentes
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
Alcances
• Integración de módulos en la arquitectura Moviware:
– Transcodificador (prioridad alta).
– Acaparador (prioridad alta).
– Gestor de desconexión (prioridad baja).
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á limitadoa las características propias con que cuente cada dispositivo PPC.
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.
14
cenidet
Propuesta
Marco teórico
Estado del arte
Resultados
Marco TeóricoSiguiente tema: OK
6 de diciembre de 2005
Agenda
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
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”.
17
Acaparamiento
Si/NoExplícitoSiLRUSiNoSi/NoSiSi/NoCaching
NoImplícitoNoPosiciones
consecutivas
SiSiNoSiSi/NoPrecarga
Si/NoImplícitoNoMinería de datos
(Heurística)
NoSiNoNoSiAcaparamie
nto
SiHíbridoSi/NoHeurística /CostosSiSi/NoSiSi/NoSi/NoReplicación
IHGFEDCBA DesconexiónEn líneaTolerante a fallasPredictivo AlgoritmoReducir latenciaSelección de datosReintegraciónOptimización de acceso
Métodos para soportar desconexión
18
Transcodificación
• El proceso de convertir un formato o códigoa 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
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
Pocket PC
320
Características:
Baja capacidad de procesamiento*.
Memoria limitada*.
Dimensiones de pantalla restringidas.
Funcionalidad PIM (Personal Information Manager).
La mayoría posee conexión aInternet (inalámbrica).
240
Comparados con un equipo de escritorio
21
cenidet
Propuesta
Marco teórico
Estado del arte
Resultados
Estado del arteSiguiente tema: OK
6 de diciembre de 2005
Agenda
22
Moviware*
Intermediario
Patrones
Gestor de Cachede Acaparamiento
RecursoAcaparado
HistorialDe
Accesos
Minero Encapsulador de
patrón
Identificador de Patrón
Cliente MóvilInalámbrico
Gestor Local de Acaparamiento
Gestor de Acaparamiento
Clasificador dePatrones
Aplicación(Netscape, Explorer,
Pocket IE
Transcodificadorde contenidos Web
Identificador De perfil de dispositivo
Generador de Patrones
Generador de árbol Patrón
Analizador dePágina HTML
Generador de páginaWeb
Transcodificada
Gestor deDesconexión
Gestor deDesconexión
HTTPHTTP
FTPFTP
Proxy Cache Squid
Cache
transcodificada
Cache
Gestor decaches
Intranet
IEEE 802.11
Intermediario
Patrones
Gestor de Cachede Acaparamiento
RecursoAcaparado
HistorialDe
Accesos
Minero Encapsulador de
patrón
Identificador de Patrón
Cliente MóvilInalámbrico
Gestor Local de Acaparamiento
Gestor de Acaparamiento
Clasificador dePatrones
Aplicación(Netscape, Explorer,
Pocket IE
Transcodificadorde contenidos Web
Identificador De perfil de dispositivo
Generador de Patrones
Generador de árbol Patrón
Analizador dePágina HTML
Generador de páginaWeb
Transcodificada
Gestor deDesconexión
Gestor deDesconexión
HTTPHTTP
FTPFTP
Gestor deDesconexión
Gestor deDesconexión
HTTPHTTP
FTPFTP
Proxy Cache Squid
Cache
transcodificada
Cache
Gestor decaches
Intranet
IEEE 802.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
Estado del arte
• Los mecanismos de replicación o precargaestá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
Estado del arte
• Gestores de descarga:
• RepliGo
• WebCoppier
• World Off-line
• Transcodificador:
• Skweezer
25
Trabajos relacionados1. “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
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/webclipping/ [PWC05]
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
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, KrithiRamamritham. Center for Intelligent Internet Research, Department of Computer Science and Engineering. Indian Institute of TechnologyBombay. 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)
29
cenidet
Propuesta
Marco teórico
Estado del arte
Resultados
ResultadosSiguiente tema: OK
6 de diciembre de 2005
Agenda
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 i s u a l T o o l s
V i s u a l S t u d io . N e t
J a v a 2 M i c r o E d i t i o n
O t r a s h e r r a m i e n t a s
C o m p a r a t i v a s
2 A n a l i s i s 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 i p 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 i e 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 i o n a d a
4 E s t u d io d e M o v i w 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 i f i c 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
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
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
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
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 productividadde Visual Basic con el poder y la flexibilidadde 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
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 clasesy 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 nuevaversión construida desde cero que realice el mecanismo de transcodificación y acaparamiento.
42
Diseño-implementación del GAP<?xml version="1.0" encoding="UTF-8"?>
<GASWT>
<GAT ip="192.168.190.33" puerto="3128" />
<GAP ip="127.0.0.1" puerto="10800" cache="cache" indice="patrones.xml"/>
</GASWT>
<?xml version="1.0" encoding="UTF-8" ?>
<cache>
<peticion sitio="http://www.cenidet.edu.mx/" patron="cenidet.xml" fecha="10/10/2005"/>
<peticion sitio="http://www.itcolima.edu.mx/" patron="itmorelia.xml" fecha="10/10/2005"/>
…
</cache>
<?xml version="1.0" encoding="UTF-8" ?>
<recursos>
<acaparado nombre="/index.html" ubicacion="index.html" />
<acaparado nombre="/css/general.css" ubicacion="general.css" />
…
</recursos>
Especificación de archivos XML
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 iPaqPocket 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
Otras actividades
• Reporte sobre cómputo móvil
• Reporte sobre arquitectura Pocket PC
• Modelo cliente-servidor
• Sockets asíncronos
• AJAX
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
51
¿Preguntas?
Console.Write(“Por su atención”);
for(int i =0 ;i<1000; i++)
Console.Write(“¡Gracias!”);
Snoopy derechos reservados ©