Seminario de Sistemas Distribui
“Gestor de Acaparamiento de
Sitios Web Transcodificados
para Plataforma Pocket PC”
Tesista: Ing. Juan Carlos Olivares Rojas.
Director: M.C. Juan Gabriel González Serna.
Codirector: Dra. Azucena Montes Rendón.
Cuernavaca, Morelos, México, marzo de 2006.
2
Agenda
Introducción
Actividades pasadas
Trabajo actual
Trabajo futuro
En esta sección se presentan los aspectos básicos de este trabajo de tesis.
3
Introduction
• The present work tries "to put the Web into the users’ pockets". In order to achieve this affirmation is required an enormous effort due to a great variety of factors that are in an inherent way in the mobile devices, this is the case of the frequents disconnections, the restrictions in the mechanisms of displayingand introduction of the information, the storage restrictions, among others.
4
Introduction
• This work presents an alternative to solve the Web sites visualization problem in mobile devices when disconnection events appear; for this reason, an intermediary service is used to keep in a cache the content from Web sites that was transformed and adaptedto the Pocket PC platform.
5
Objetivo general
• Diseñar e implementar un prototipo de servicio intermediario para plataforma PocketPC 2000, que gestione el acaparamiento de páginas Web transcodificadas cuando se presenten eventos de desconexión.
6
Descripción del problema
WebPetición
Respuesta
Desconexión
7
Metodología 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
Modelo general de solución.
8
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
Leyenda OK
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
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
GASWT = Gestor de Acaparamiento de Sitios Web Transcodificados
10
Arquitectura propuesta
GAP
MA
MT
Navegador
Squid Web
GAT
Dispositivo móvil
Pocket PC
Petición - Respuesta
HTTP
Si el recurso no
está en la caché
Petición - Respuesta
HTTP
Petición - Respuesta
HTTP
Petición - Respuesta
HTTP
Paso de mensajes entre los diferentes componentes del GASWT
11
Agenda
Introducción
Actividades pasadas
Trabajo actual
Trabajo futuro
En esta sección se muestran las actividades realizadas y reportadas en la
presentación anterior (período septiembre-octubre de 2005).
12
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%
100%
18%
Avance OK
En el primer reporte de avance cuatrimestral los revisores dieron el visto
bueno de 36%
13
Agenda
Introducción
Actividades pasadas
Trabajo actual
Trabajo futuro
En la siguiente sección se muestra el trabajo que se está realizando en
estos momentos (período noviembre'05-marzo'06).
14
Trabajo actual
# 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
*100% 60%
Avance OK
100%
20%
Actualmente falta realizar integración de módulos
15
Arquitectura de la caché
config.xml
GAP
patrones.xml
.
.
.
Sitio n
Sitio 2
Sitio 1
Diagrama de acceso a un recurso de la caché.
Tipos de recursos a acaparar
16
Arquitectura de la caché<?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>
17
Diseño-implementación del GAP<?xml version="1.0" encoding="UTF-8"?>
<GASWT>
<GAT ip="192.168.190.33" puerto="2700"
transformador="0" ipMA="192.168.190.33"
puertoMA="1800" formato=“WML”/>
<GAP ip="127.0.0.1" puerto="10800" cache="\"
indice="patrones.xml" conexion="1" />
<ALMACENAMIENTO espacio="64248"
longitud="4096" maximo="101"
tipos="*.jpg|*.gif|*.css|*.pdf" />
</GASWT>
Esquema de los archivos XML usados en el GAP.
18
Diseño-implementación del GAP
Diagramas de casos de usos.
19
Diseño-implementación del GAP
Diagrama de actividades del proceso de acaparamiento en el GAP
20
Diseño-implementación del GAP
Diagrama de actividades del GDL (Gestor de Desconexiones Locales).
21
Diseño-implementación del GAP
22
Pruebas
Visualización de recursos Web en modo desconexión (acaparados y no
acaparados)
Modo
desconexión
Recurso
acaparado
Recurso no
acaparado
23
Pruebas
Visualización de recursos Web en línea (Patrón de acaparamiento)
Modo conexión Recurso obtenido
en línea
Obtención de sitio
acaparado
24
Pruebas
Visualización de recursos Web en transcodificados y acaparado.
Recurso
transcodificado y
acaparado
Recurso
transcodificado
en línea
Visualización de
errores de
transcodificación
25
Resultados
• 4 Publicaciones en congresos:
– CICC’05 Colima
– CIINDET’05 Cuernavaca
– SICI’05 Monterrey
– JIISIC’06 Puebla
• Aceptado
– CIECE’06 Cd. Obregón
– Revista IEEE Looking Forward*
Revista estudiantil del IEEE Computer Society
26
Resultados• Aceptación del IANA* del puerto 10800 para
nuestro desarrollo:
# 10289-10799 Unassigned
gap 10800/tcp Gestor de Acaparamiento para PocketPCs
gap 10800/udp Gestor de Acaparamiento para Pocket PCs
# Juan Carlos Olivares Rojas <[email protected]> March 2006
# 10801-10804 Unassigned
http://www.iana.org/assignments/port-numbers
27
Otras actividades• Pruebas de nuestro desarrollo en un
Motorola MPX 220 con Windows Mobile2003. Así mismo, se comprobó la utilización de J2ME.
• Evaluación de .NET CF 2 (Visual Studio 2005, Windows Mobile 5, emuladores, etc.)
• Arreglo de la función obtenerRecursoLineadel Observador.
28
Otras actividades• Creación de mini servidor Web en modo
consola y posteriormente gráfico.
• Se rediseñó la interfaz del GAP (modo gráfico).
• Revisión de nueva literatura (tecnologías pull& push, HTTPMU, HTTPU, GENA, Arquitectura MVC, J2ME Polish, Model 2 Java).
29
Otras actividades
• Prueba de otros navegadores para PocketPC.
• Revisión de validadores (MSV), transformadores (Xalan-j), hojas de estilo (XSLT, CSS) para documentos XML.
• Bitácora en línea. (http://mail.cenidet.edu.mx/~jcolivares04c/)
30
Agenda
Introducción
Actividades pasadas
Trabajo actual
Trabajo futuro
En esta sección se presentan las actividades que se estarán realizando en
breve.
31
Trabajo por realizar…
Examen de grado
Revisiones
XXCapítulos
Pruebas
XXRedacción de tesis9
Depuración
Integración GAP y GAS
Pruebas8
Pruebas
Gestor de desconexión
Diseño e implementación del GAS7
4321432143214321Concepto#
AGOJULJUNMAY
Actividades por realizar en el cuatrimestre mayo-agosto de 2006
32
¿Preguntas?
• http://mail.cenidet.edu.mx/~jcolivares04c/
“Distribuye y vencerás”.
Top Related