Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

29
cenidet Arquitectura de una caché para almacenar sitios Web en dispositivos móviles Pocket PC M.C. Juan Gabriel González Serna Dra. Azucena Montes Rendón Dr. Víctor Jesús Sosa Sosa Ing. Juan Carlos Olivares Rojas Puebla, Puebla, México, a 3 de febrero de 2006

Transcript of Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Page 1: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

cenidet

Arquitectura de una caché para

almacenar sitios Web en

dispositivos móviles Pocket PCM.C. Juan Gabriel González Serna

Dra. Azucena Montes Rendón

Dr. Víctor Jesús Sosa Sosa

Ing. Juan Carlos Olivares Rojas

Puebla, Puebla, México, a 3 de febrero de 2006

Page 2: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Agenda

Resumen

Introducción

Almacenamiento de datos en dispositivos Pocket PC

Arquitectura de la caché propuesta

Conclusiones y trabajos futuros

Tipos de recursos a acaparar

Se presenta de manera muy general el contenido de este trabajo.

Page 3: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Resumen

• Este trabajo presenta una alternativa para solucionar el problema de la visualización de sitios Web en dispositivos móviles cuando se presenten eventos de desconexión; para ello, se utiliza un servicio intermediario que guarda en una caché el contenido de sitios Web que han sido transformados y adaptados a la plataforma Pocket PC.

“Poner la Web en el bolsillo de los usuarios”

Page 4: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Agenda

Resumen

Introducción

Almacenamiento de datos en dispositivos Pocket PC

Arquitectura de la caché propuesta

Conclusiones y trabajos futuros

Tipos de recursos a acaparar

Se muestra la problemática general que abarca este trabajo de investigación

Page 5: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Introducción

• Debido a la gran cantidad de información y la importancia de ésta en la vida moderna, se ha hecho necesario disponer de los datos en cualquier momento y en todo lugar. Esto se ha logrado gracias a la aparición y popularización de los dispositivos móviles, tal es el caso de los dispositivos PDAs como los Pocket PC (PPC) y más recientemente los teléfonos inteligentes.

Page 6: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Agenda

Resumen

Introducción

Almacenamiento de datos en dispositivos Pocket PC

Arquitectura de la caché propuesta

Conclusiones y trabajos futuros

Tipos de recursos a acaparar

En esta sección se habla sobre los aspectos básicos en como es almacenada

la información en un dispositivo Pocket PC.

Page 7: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Almacenamiento de datos

• Esquema de almacenamiento primario y secundario.

• No existe una diferencia tan marcada entreRAM y ROM.

• La memoria ROM es persistente. Generalmente contiene el sistema operativo.

Page 8: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Almacenamiento de datos

• La memoria RAM almacena datos así como programas.

• La RAM se divide en tres partes: – Object Store

– Registry

– Heap

• El almacenamiento es semipersistente.

Page 9: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Almacenamiento de datos

• En lo referente a la estructura de los archivos utilizados en PPC, éstos son totalmente compatibles (en estructura) con Windows para plataformas PCs.

• Se utiliza el sistema de archivos FAT, por lo que se carece de un esquema confiable de seguridad.

Page 10: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Agenda

Resumen

Introducción

Almacenamiento de datos en dispositivos Pocket PC

Arquitectura de la caché propuesta

Conclusiones y trabajos futuros

Tipos de recursos a acaparar

Se muestran los tipos de recursos más usados y que son necesarios acaparar

en el dispositivo móvil.

Page 11: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Tipos de recursos a acaparar

*.ppv*.pptPowerPoint

*.pxl*.xlsExcel

*.psw*.docWord

*.2bp*.bmpMapa de bits

*.cdb*.mdbAccess

PPCPCAplicación

Tipos de archivos más utilizados en dispositivos Pocket PC.

Page 12: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Tipos de recursos a acaparar

Image/pngImage/vnd.wap.png

Imagen.PNGPNG

Image/vnd.wap.wbmpImagen.WBMPWBMP

Image/jpgImagen.JPG/.JPEGJPEG

Image/gifImagen.GIFGIF

Application/xhtml+xmlText/xml

Texto.XHTML/HTMLXHTML

Text/htmlTexto.IHTML/.CHTMLcHTML

Text/htmlTexto.HTM/.HTMLHTML

Text/vnd.wap.wmlscriptTexto.WMLSWMLScript

Text/vnd.wap.wmlText/xml

Texto.WMLWML

FORMATOS MIMETIPOS DE CONTENIDO

EXTENSIÓN DEL ARCHIVO

FORMATO

Recursos más empleados en dispositivos móviles (I).

Page 13: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Tipos de recursos a acaparar

Text/x-vcalendarOtrosContacto de Calendario

Text/x-vcardOtors.VCFContacto de Agenda

Text/cssOtros.CSSCascading Style Sheets

Application/cabAplicación.CABArchivo de instalación de Windows

Audio/vnd.rn-realaudioAudio.RAReal Audio

Audio/x-ms-wmaAudio.WMAWindows Media Audio

Audio/midiAudio.MIDIMIDI

Audio/mp3Audio/x-mp3

Audio.MP3MP3

Video/vnd.rn-realvideoVideo.RVReal video

Video/x-ms-wmvVideo.WMVWindows Media Video

Video/mpegVideo/mpeg4generic

Video.MPG/.MPEGMPEG

FORMATOS MIMETIPOS DE CONTENIDO

EXTENSIÓN DEL ARCHIVO

FORMATO

Recursos más empleados en dispositivos móviles (y II).

Page 14: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Tipos de recursos a acaparar• Como se puede apreciar, los tipos MIME de

los dispositivos móviles son muy similares a los de plataformas convencionales.

• Es por esta razón, que el filtro, para saber que tipos de archivos se deben almacenar en la caché caerá sobre el usuario, pudiendo éste determinar que recursos se guardan en base a las aplicaciones que él dispone.

Page 15: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Agenda

Resumen

Introducción

Almacenamiento de datos en dispositivos Pocket PC

Arquitectura de la caché propuesta

Conclusiones y trabajos futuros

Tipos de recursos a acaparar

En esta sección se muestra la arquitectura propuesta para el sistema de caché

de recursos acaparados en dispositivos móviles Pocket PC

Page 16: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

• El navegador más utilizado en dispositivos PPC corresponde al Pocket Internet Explorer, el cual está disponible de facto en todos los dispositivos PPC. Realizar la cachédirectamente sobe la estructura de la cachétraería como consecuencia que cualquier usuario que utilizase un navegador diferenteal PIE no pudiera utilizar nuestro prototipo.

Page 17: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

• Estructura basada en índices

– Archivo binario

– Carpetas pseudoaletorias

– Similar al Proxy-cache Squid

Page 18: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

config.xml

GAP

patrones.xml

.

.

.

Sitio n

Sitio 2

Sitio 1

Diagrama de acceso a un recurso de la caché.

Page 19: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

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.itmorelia.edu.mx/" patron="itmorelia.xml" fecha="10/10/2005"/>

</cache>

• Para la implementación de la lista, se contemplaron varias opciones, como es el caso de utilizar un archivo binario, una base de datos o un archivo XML.

Archivo contenedor de patrones.

Page 20: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché• En lo referente a la estructura de archivos

que debe poseer el sistema caché se tomócomo base el sistema de archivos Joliet (ISO 9660).

• En base a lo anterior, se tomó la decisión de no limitar el tamaño de la profundidad del sitio Web debido a que no existe un estándar en la elaboración de un sitio Web, lo que con lleva a que puedan existir sitios que se encuentren muy anidados.

Page 21: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

<?xml version="1.0" encoding="UTF-8" ?>

<recursos>

<acaparado nombre="/index.html" ubicacion="index.html" />

<acaparado nombre="/css/general.css" ubicacion="general.css" />

<acaparado nombre="/img/mecatronica.gif" ubicacion="mecatronica.jpg" />

</recursos>

Ejemplo de un archivo patrón de un sitio Web.

Page 22: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

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

Arquitectura de Moviware

Page 23: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

Navegador (IPE, Netscape )Navegador (PIE)

GAP

Cliente Pocket PC

Redes Inalámbricas (WiFi, Bluetooth)

¿Conexión?

¿Caché?

T caché

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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é

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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é

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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é

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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é

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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é

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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é

No

No

Error

recurso

Analizador

HTTP

GAT

WInternet

Squid

¿

¿Transcodificada??

Transcodificador

¿Actual?

Acaparador

T

Caché

Sincronizadorcaché servidor

Sincronizador

caché local

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

Arquitectura del Gestor de Acaparamiento de Sitios Web Transcodificados para

plataforma Pocket PC.

Page 24: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Arquitectura de la caché

Diagrama de actividades del Gestor de Acaparamiento para Pocket PCs

Page 25: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Agenda

Resumen

Introducción

Almacenamiento de datos en dispositivos Pocket PC

Arquitectura de la caché propuesta

Conclusiones y trabajos futuros

Tipos de recursos a acaparar

Se muestran los puntos más relevantes encontrados durante esta investigación

y se dan pautas para siguientes trabajos

Page 26: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Conclusiones• El usuario determinará el límite de espacio

de la caché por lo que deberá contar con una tarjeta de almacenamiento secundario.

• El usuario será el que discrimine que recursos Web se acapararán en base a las aplicaciones con las que cuente.

• El sistema de caché será construido desde cero y no dependerá de ningún tipo de navegador.

Page 27: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Conclusiones• El sistema de caché es indexado,

desarrollado a través de XML.

• 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.

• Los parámetros de configuración del sistema caché serán establecidos a través de una interfaz gráfica.

Page 28: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

Conclusiones

Page 29: Arquitectura de una Caché para Almacenar Sitios Web en Dispositivos Móviles Pocket PC

¿Preguntas?

Por su atención…

¡gracias!

{gabriel, amr, vjsosa y jcolivares04c}@cenidet.edu.mx

http://www.cenidet.edu.mx/~wm-serna/

http://mx.geocities.com/oliviagras/

“Distribuye y vencerás …”