“gestor de acaparamiento de sitios web...

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

Upload: others

Post on 11-Mar-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 2: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 3: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 4: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 5: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 6: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

6

Descripción del problema

WebPetición

Respuesta

Desconexión

Page 7: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptació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.

Page 8: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptació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

Page 9: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

9

Arquitectura propuesta

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

GASWT = Gestor de Acaparamiento de Sitios Web Transcodificados

Page 10: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 11: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 12: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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%

Page 13: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 14: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 15: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 16: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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>

Page 17: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 18: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

18

Diseño-implementación del GAP

Diagramas de casos de usos.

Page 19: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

19

Diseño-implementación del GAP

Diagrama de actividades del proceso de acaparamiento en el GAP

Page 20: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

20

Diseño-implementación del GAP

Diagrama de actividades del GDL (Gestor de Desconexiones Locales).

Page 21: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

21

Diseño-implementación del GAP

Page 22: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

22

Pruebas

Visualización de recursos Web en modo desconexión (acaparados y no

acaparados)

Modo

desconexión

Recurso

acaparado

Recurso no

acaparado

Page 23: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 24: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 25: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptació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

Page 26: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 27: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 28: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 29: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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/)

Page 30: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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.

Page 31: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

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

Page 32: “Gestor de Acaparamiento de Sitios Web …dsc.itmorelia.edu.mx/~jcolivares/documents/seminario2.pdf5 Diseño e implementación del GAP Gestor de Acaparamiento Local Pruebas 6 Adaptación

32

¿Preguntas?

[email protected]

• http://mail.cenidet.edu.mx/~jcolivares04c/

“Distribuye y vencerás”.