41
1 INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERÍA Y TECNOLOGÍAS AVANZADAS U P I I T A “Esquema de Asignación de Prioridades en una Estación de Información” TRABAJO TERMINAL QUE PARA OBTENER EL TITULO DE: “INGENIERO EN TELEMÁTICA” PRESENTA Gutiérrez Romero María de Lourdes ASESORES Rivero Ángeles Mario Eduardo Polanco Montelongo Francisco Antonio Velázquez Sereno Sergio Antonio Diciembre 2005

INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

1

INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERÍA Y

TECNOLOGÍAS AVANZADAS

U P I I T A

“Esquema de Asignación de Prioridades en una Estación de Información”

TRABAJO TERMINAL QUE PARA OBTENER EL TITULO DE:

“INGENIERO EN TELEMÁTICA”

PRESENTA

Gutiérrez Romero María de Lourdes

ASESORES

Rivero Ángeles Mario Eduardo Polanco Montelongo Francisco Antonio

Velázquez Sereno Sergio Antonio

Diciembre 2005

Page 2: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

2

INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERÍA Y

TECNOLOGÍAS AVANZADAS

U P I I T A

“Esquema de Asignación de Prioridades en una Estación de Información”

TRABAJO TERMINAL QUE PARA OBTENER EL TITULO DE:

“INGENIERO EN TELEMÁTICA”

PRESENTA

Gutiérrez Romero María de Lourdes

PRESIDENTE

___________________________ Téllez Alcaraz Fernando

SECRETARIO

___________________________ De la Cruz Sosa Carlos

VOCALES

___________________________ Rivero Ángeles Mario Eduardo

__________________________________

Polanco Montelongo Francisco Antonio

_____________________________ Velázquez Sereno Sergio Antonio

Diciembre 2005

Page 3: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

3

Gracias mamá, papá y a todos ustedes hermanos, que han estado a mi lado en todo momento, por su apoyo, comprensión y sobre todo su amor.

Gracias Mario por la idea de este proyecto, por tu apoyo, por tu confianza y por tus enseñanzas.

Gracias Gabriel por tus palabras de aliento y compañía.

Y finalmente, gracias a ti Arturo, por brindarme tú apoyo y cariño todo este tiempo.

Page 4: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

4

1. Índice General 1. Índice General .................................................................................................................... 4 2. Índice de Figuras ................................................................................................................ 5 3. Índice de Tablas.................................................................................................................. 6 4. Resumen ............................................................................................................................. 7 5. Planteamiento Del Problema .............................................................................................. 8

5.1. Esquema de asignación de prioridades........................................................................ 8 5.1.1. Introducción.......................................................................................................... 8 5.1.2 Estación de información ........................................................................................ 9

5.1.2.1 Antecedentes................................................................................................... 9 5.1.2.2 Definición ..................................................................................................... 10

5.1.3 Predicción de la movilidad de un usuario en sistemas celulares basados en un historial. ........................................................................................................................ 13 5.1.4 Métodos de ordenamiento ................................................................................... 17

5.1.4.1. Ordenación por fusión (MergeSort) ............................................................ 18 6. Desarrollo ......................................................................................................................... 20

6.1 Solución Propuesta ..................................................................................................... 20 6.2 Diseño......................................................................................................................... 20

6.2.1 Estructura de tramas e intercambio de ellas entre Estación de Información y Móviles. ........................................................................................................................ 21 6.2.2 Base de Datos “Móviles” .................................................................................... 23

6.2.2.1 Definición de campos de la base de datos .................................................... 24 6.2.3 Diagrama de flujo del programa en la Estación de Información......................... 25 6.2.4. Diagrama de flujo del programa en la Estación móvil ....................................... 30 6.2.5. Diagrama a bloques ............................................................................................ 31

7. Pruebas al Sistema............................................................................................................ 33 7.1. Comportamiento del algoritmo frente a uno y varios móviles .................................. 33 7.2. Tiempo de descarga ................................................................................................... 35

8. Conclusiones..................................................................................................................... 39 9. Bibliografía....................................................................................................................... 40

Page 5: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

5

2. Índice de Figuras Figura 5.1. Área de cobertura de un sistema celular (Celda) y área de cobertura de una

Estación de Información............................................................................................... 11 Figura 5.2. Diferentes tasas de transmisión para cada zona ................................................. 12 Figura 5.3. Escenarios de un Sistema de Estaciones de Información................................... 12 Figura 5.4. Esquema representativo de un Sistema de Estaciones de Información.............. 13 Figura 5.5 Dos trayectorias diferentes para usuarios que se mueven a la misma velocidad.

El móvil en la figura de arriba pasa un tiempo menor que el segundo......................... 14 Figura 5.6. Predicción de los movimientos del usuario........................................................ 16 Figura.5.7 .PEP’s y rutas definidos de acuerdo al los lugares en donde un usuario pasa más

tiempo (Perfiles de usuario)......................................................................................... 16 Figura 5.8. Resumen de los Algoritmos de Ordenación....................................................... 18 Figura 5.9. Forma el la cuál ordena mergesort. .................................................................... 19 Figura 6.1. Trama 1 de la EI................................................................................................. 21 Figura 6.2. Trama 1 del Móvil.............................................................................................. 21 Figura 6.3.Trama 2 donde la EI envía al móvil la confirmación de registro........................ 21 Figura 6.4. Trama 3 donde la EI envía al móvil el mensaje o archivo. ................................ 22 Figura 6.5. Intercambio de tramas Estación de Información-móvil. .................................... 22 Figura 6.6.Diagrama Entidad-Relación de la base de datos “Móviles”. .............................. 23 Figura 6.7.Tablas de la base de datos “Móviles” ................................................................. 23 Figura 6.8. Diagrama de flujo de la Estación de Información.............................................. 25 Figura 6.9. Obteniendo el UMBRAL de 15 móviles registrados. ........................................ 26 Figura 6.10. Ejemplo de como se ordenan los móviles considerando los tres criterios. ...... 27 Figura 6.11. Diagrama de clases del programa correspondiente al Esquema de asignación

de prioridades. .............................................................................................................. 29 Figura 6.12. Diagrama a bloques del móvil.......................................................................... 30 Figura 6.13. Diagrama a bloques del sistema....................................................................... 31 Figura 6.14. Diagrama de conexiones de la estación móvil. ................................................ 32 Figura 6.13.Programa de la EI en ejecución. EI vs. un móvil .............................................. 33 Figura 6.14. Programa de la EI en ejecución. EI Vs varios móviles .................................... 34 Figura 6.15. Orden en el cual se van atendiendo los móviles. De 20 móviles sólo se

pudieron atender 10. ..................................................................................................... 38

Page 6: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

6

3. Índice de Tablas Tabla 1.Componentes de cada elemento en la cola. ............................................................. 28 Tabla 2. Tiempo de procesamiento en la transmisión de tramas.......................................... 35 Tabla 3. Tiempo de procesamiento en la recepción de tramas............................................. 35 Tabla 4. Tiempo de procesamiento cuando se incluyen 20 usuarios. .................................. 36 Tabla 5. Orden en el cuál se atienden 20 usuarios en una cola FIFO. Cada usuario con un

archivo de dos fragmentos............................................................................................ 37 Tabla 6. Orden en el cuál se atienden 20 usuarios en una cola FIFO. Cada usuario con un

archivo de cien fragmentos........................................................................................... 37 Tabla 7. Orden en el cuál se atienden 20 usuarios empleando el esquema de asignación de

prioridades. Cada usuario con un archivo de cien fragmentos. .................................... 37

Page 7: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

7

4. Resumen Una Estación de información es una red inalámbrica que ofrece servicios a alta velocidad y bajo costo. La cobertura abarcada por las estaciones de Información es de es de aproximadamente 100m de diámetro; por lo que es posible atender a una cantidad pequeña de usuarios en comparación con un sistema celular. Aunado a eso, estos pequeños nodos que imparten información, clasifican a sus usuarios de acuerdo a su movilidad: estático, peatonal y vehicular. Este proyecto ofrece una alternativa más para dar una prioridad a los usuarios en una Estación de Información; asignando prioridades a cada usuario que entra en dicha zona. Esto se realiza considerando tres criterios: principalmente el tiempo promedio que pasa en la zona de cobertura, el tipo de información que se desea impartirle a un usuario y el cargo de un usuario; es decir si es maestro, alumno o administrativo. Palabras Clave: Estación de Información, Zona de cobertura, Tiempo de Estancia Promedio, Asignación de recursos. Abstract An Infostation is a wireless network that offers high speed services at low cost. The area covered by the infostations is approximately 100m; hence it is possible take care of a small amount of users in comparison with a cellular system. Combined to that, these small nodes share information, classify its users according to their mobility: sit-through, walk through or drive-through. This project offers one more alternative to give priority to the users in an Infostation: assigning priorities to each user who enters in its zone. This is made considering three criteria: mainly the average time that the user stays in the area covered by the infostation, the type of information that is desired to share to the user and the type of user: teacher, student or administrative. Keywords Infostation, covered area, average stay time, resources assignation, priorities assignation.

Page 8: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

8

5. Planteamiento Del Problema Para hacer más eficiente el atender a cada usuario entrante a la zona de cobertura de una Estación de información en la UPIITA, en este trabajo se propone asignar prioridades de acuerdo a tres criterios: El tiempo promedio en el cual permanece dentro del área de cobertura, el tipo de información que sea necesaria para cierto usuario y el perfil de usuario. El criterio que se determina primero es el tiempo de estancia, ya que a un tiempo de estancia grande, el móvil soportaría retardos en la descarga de un archivo; en cambio con un tiempo de estancia pequeño, habría que descargar inmediatamente el archivo. Una vez obtenidos los tres criterios se determina una prioridad a ese usuario, y es agregado a una cola, en la que espera para ser atendido. 5.1. Esquema de asignación de prioridades 5.1.1. Introducción La primera generación (1G) de la telefonía celular fue diseñada estrictamente para servicios de voz y fue analógica, por lo que el número de usuarios era restringido. Poco después aparece la segunda generación (2G) usando tecnología digital y los protocolos empleados soportan velocidades más altas aunque limitados en transmisión de datos; sin embargo se podía ofrecer servicios auxiliares, como fax y SMS (Short Message Service). La necesidad de los usuarios hacia una integración de servicios, hace que surjan nuevas generaciones en los sistemas celulares, como lo fue la tercera generación (3G); que se caracteriza por tener servicios de voz y datos con acceso inalámbrico a Internet. Los protocolos empleados en los sistemas 3G soportan altas velocidades de transferencia de datos ya están enfocados a aplicaciones más allá de la voz como audio, video, videoconferencia y acceso rápido a Internet. El único inconveniente que se presenta en la telefonía celular de la 3G es el alto costo de los servicios, ya que la infraestructura de los sistemas celulares fue diseñada para servicios de voz, por lo que la descarga de un archivo de datos es equivalente a realizar cuantiosas conversaciones simultáneamente. El principal inconveniente para una integración entre los servicios de voz y datos es el tipo de transferencia de información; ya que los servicios de voz requieren una transferencia de datos de manera simétrica, lo que quiere decir que la transferencia de datos debe ser la misma en la transmisión y en la recepción. A diferencia de los servicios de datos que no se encuentran restringidos de acuerdo en la tasa de transferencia, ya que puede ser asimétrica; así pues los datos pueden ser transmitidos con retardo considerable a diferencia de los servicios de voz. Cabe mencionar que hoy en día los usuarios tienen a usar con mayor frecuencia la mensajería electrónica desplazando un poco el empleo de llamadas telefónicas; que aunque la mensajería no es en tiempo real, el retardo de cada mensaje es pequeño y más económico. Para ofrecer servicios de datos de manera económica, podría emplearse otro tipo de redes inalámbricas conocidas como Sistema de Estaciones de Información (SEI). Este sistema revolucionario fue propuesto por investigadores de WINLAB (Wireless Information Networks

Page 9: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

9

Laboratory) considerado como un sistema inalámbrico de cuarta generación (4G) el cual provee un servicio discontinuo de datos a alta velocidad, bajo costo y transmisión a baja potencia. Un SEI esta formado de varias Estaciones de Información (EI), que consisten de transceptores de radio transmitiendo a baja potencia sobre áreas discontinuas con radios de cobertura limitados. Las EI’s, se encuentran lo suficientemente alejadas una de otra, por lo que la Relación Señal a Interferencia (SIR) es alta y por tanto el reuso de frecuencia puede alcanzar un factor igual a uno. Suelen colocarse en lugares estratégicos en los cuales cruza una gran cantidad de usuarios; por ejemplo, podrían estar ubicadas a lo largo de carreteras, en entradas de centros comerciales, en la sala de espera de un aeropuerto, etc. Una EI esta ideada para proporcionar servicios de datos para aplicaciones en donde se necesita transferir archivos de datos a bajo costo, esto se logra por el área de cobertura reducida y la opción del uso de bandas libres. Una estación de información tiene básicamente tres escenarios de movilidad: con nula o muy baja movilidad (estático —sit-through—), de baja movilidad (peatonal —walk-through—) y de alta movilidad (vehicular —drive-through). Lo que implica que es posible transmitir a una tasa de datos fija en caso de que los usuarios estén en un lugar fijo, a una tasa de datos de valor medio en caso de que los usuarios sean peatonales y una tasa de codificación más alta en caso de usuarios cuyo transporte sea un vehículo. 5.1.2 Estación de información 5.1.2.1 Antecedentes Los sistemas celulares surgen con la primera generación (1G) que operaba bajo un formato analógico que permitía el intercambio de información a través de una tecnología de Acceso Múltiple por División de Frecuencias (FDMA, por sus siglas en inglés). La falta de nitidez en la transmisión de señal y las interferencias registradas en la 1G motivaron la migración de la segunda generación (2G) de sistemas móviles. Por lo general, la operación de los aparatos de 1G demandaban mucha potencia y necesitaban de pilas muy grandes que generaban demasiado calor; el intercambio de información es bajo la tecnología TDMA (Acceso Múltiple por División de Tiempo). En esta primera generación se dificultó el crecimiento de la oferta del servicio, porque la transmisión de señales por onda ocupaba un espacio considerable en el espectro de frecuencias y no se podían crear más frecuencias de las existentes. Por lo que el paso a la 2G consistió en lograr una transmisión digital de señales, mayor seguridad en la red y la ampliación de la cobertura del Roaming; un servicio adicional que verdaderamente hizo muy eficiente y atractivo el uso de los sistemas móviles de 2G. Así, en la segunda generación, al ser una transmisión digital, se logra el objetivo de ofrecer el servicio a un mayor número de usuarios, y al requerirse menos energía y potencia los teléfonos móviles se vuelven más pequeños y cómodos. Una siguiente generación, conocida como la 2.5G, basada en tecnología para la transmisión de señales digitales y altas tasas de bit de alrededor de 2Mbps, incluyó un protocolo similar al usado en Internet, lo que concretó un importante paso para Internet móvil. De esta forma, surgieron diversos protocolos de telecomunicación para la transmisión de datos, tanto para la telefonía móvil como en Internet inalámbrico, éstos son el Wireless Access Protocol, WAP por sus siglas en inglés y Bluetooth; los cuales están considerados como protocolos para redes inalámbricas. La tercera generación (3G) optimiza la transmisión digital de señales con el perfeccionamiento de la tecnología Code Division Multiple Access (CDMA), que también es usada en la segunda. Actualmente las tecnologías WCDM y la CDMA2000 permiten incrementar la velocidad de transmisión.

Page 10: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

10

Con estas tecnologías, los servicios personales de comunicación introducen la telefonía celular multimedia, además de que se puede hacer videoconferencia, almacenamiento y transmisión de imágenes. Las principales características de la tercera generación fue una amplia gama de servicios: voz, vídeo y datos, a altas tasas de transmisión de al menos 144kbps y 384kbps para usuarios de alta movilidad, en una zona de cobertura amplia, y de 2Mbps para usuarios de baja movilidad, en un área de cobertura local [7]; además de una alta flexibilidad para introducir nuevos servicios y una conectividad ubicua. A pesar de que un sistema celular fue diseñado para servicios de voz; también puede ofrecer servicios de datos a altas velocidades; sin embargo la infraestructura requerida para cada servicio no es la misma, lo que propicia que el costo de los servicios de datos en sistemas celulares sea costoso. La principal diferencia entre los servicios de voz y datos es la carga útil: para los servicios de voz la carga útil es la tasa de bit y para los servicios de datos la calidad de los bits. Esto radica en que los servicios de voz se transmiten en intervalos constantes y mantienen la tasa de bits a la cual se establece la comunicación; en cambio los servicios de datos generalmente no se requieren todo el tiempo, puesto que los accesos son frecuentes o predecibles lo que brinda la posibilidad de tolerar retardos. La segunda diferencia es la cobertura, en donde las redes inalámbricas orientadas a voz requieren de cobertura ubicua (en cualquier momento, en cualquier lugar; any-time, any-where). Sin embargo, este no es un requerimiento estricto para redes inalámbricas de datos [5]; ya que un gran número de servicios de datos son tolerantes al retardo, por lo que es posible considerar un acceso intermitente del servicio en vez de un acceso continuo y ubicuo por lo que los usuarios no necesitan ser atendidos en todo momento y, sí el total de la tasa de datos es lo suficientemente grande, pueden tolerar permanecer sin cobertura por periodos relativamente largos [3]. Una última diferencia significativa es que mientras los sistemas de voz utilizan transferencia de información simétrica, (tráfico igual tanto en el enlace de subida ⎯uplink⎯, como en el enlace de bajada⎯downlink⎯); en los servicios de datos por lo general la transferencia es asimétrica (el tráfico en el enlace de bajada es mayor que en el de subida) [1]. Se preveé que los sistemas inalámbricos futuros (4G) operarán en bandas de frecuencia sin licencia, señales de radio adaptivas en ambientes cambiantes, redes MANET (Redes con nodos móviles —Mobile And hoc Networks—)1, transferencia de información asimétrica y cobertura no ubicua2 [7]. Por otro lado, investigadores de WINLAB (Wireless Information Networks Laboratory) propusieron un sistema inalámbrico de 4G, conocido como Estaciones de Información (EI). “Islas” de cobertura pequeñas y separadas que proveen acceso a servicios de datos en ambientes móviles a alta velocidad, bajo costo y baja potencia [3]. 5.1.2.2 Definición Una estación de información es parte de un sistema de estaciones de información; que es definido como una red inalámbrica de cuarta generación, que ofrece servicios de datos en una cobertura limitada y discontinua, transmitiendo a baja potencia y en bandas libres.

1 Una red Ad-Hoc es un tipo de red formada por un grupo de nodos o hosts móviles y que forman una red temporal sin la ayuda de ninguna infraestructura externa. 2 Srikanta Kumar de la DARPA, hace referencia a esos sistemas inalámbricos como AAA (Adaptive signals, Ad hoc Network, Asymetric Information)

Page 11: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

11

Las EI’s son dispositivos relativamente simples, ideados para proporcionar servicios de datos para aplicaciones en donde se necesita transferir grandes archivos de datos a bajo costo. El servicio es ofrecido en lugares que por lo regular un gran número de personas visita o cruza; por ejemplo podrían ser colocadas a lo largo de carreteras, entradas a edificios, centros comerciales, restaurantes, etc [1, 2, 3, 5]. El área de cobertura de estas islas de información es pequeña en comparación con la de los sistemas celulares, ya que no necesita ser continua ni ubicua, puede tener un reuso de frecuencia de uno y una relación señal a interferencia (SIR, Signal Interference Rate) alta. La figura 5.1 nos muestra lo antes mencionado, en donde la cobertura en una estación de información no es tan estricta en el aspecto de ubicuidad y continuidad, debido a que los servicios de datos no lo exigen.

F 1Figura 5.1. Área de cobertura de un sistema celular (Celda) y área de cobertura de una

Estación de Información. La importancia de que las Estaciones de Información tengan un área de cobertura pequeña, es que pueden utilizar transceptores de baja potencia, y si se incluye que puede operar en bandas libres como la banda Industrial Científica y Medica (ISM de 2.4Ghz) o infraestructura de Información Nacional sin Licencia (UNII de 5Ghz, con soporte de tasa de transmisión de datos de 2 Mbps y 11Mbps), respectivamente se aseguran transmisiones de datos altas y bajo costo, además de garantizarnos una infraestructura económica [1,5]. La separación entre Estaciones de Información provoca que exista interferencia en pequeñas proporciones y que no exista en el caso ideal. En el caso de que la interferencia esté presente, un móvil en los bordes del área de cobertura se verá más afectado que un móvil que se encuentre en las cercanías de la EI, entonces el área de cobertura de una EI podría ser dividida en zonas (Ver figura 5.2). En la zona externa se transmitiría a una tasa de bits baja; en esta zona el móvil se identifica con la EI y viceversa; en la segunda zona, (que podría ser la intermedia suponiendo un total de tres zonas) se transmitiría a tasas de bits más altas en comparación con la zona externa. Por último, en la zona interna se transmitiría a tasas de bits más altas: lo que implica un mínimo consumo de potencia en el móvil más cercano a la EI.

Page 12: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

12

F 2Figura 5.2. Diferentes tasas de transmisión para cada zona

En cuanto a la movilidad de un usuario, esta puede ser vista por medio de tres escenarios básicos (ver figura 5.3): con nula o muy baja movilidad (estático —sit-through—), de baja movilidad (peatonal —walk-through—) y de alta movilidad (vehicular —drive-through—). A los usuarios en un ambiente estático se les puede tratar como dentro de una red inalámbrica de área local (WLAN, Wíreless Local Area Network) donde pueden acceder a los recursos de la red usando una tasa de transmisión fija; en el caso de un ambiente peatonal la tasa de codificación cambia de baja a alta conforme se acerca a la EI, lo mismo sucede con usuarios en ambiente vehicular sólo que la tasa seria mucha mas alta para estos últimos [1, 2, 3, 5]. La tasa de transferencia de las EI’s es asimétrica, esto es debido a que hay más tráfico en el enlace de bajada que en el enlace de subida; por lo regular se usa el enlace de subida para que el usuario se registre, se identifique o realice alguna petición en una EI, mientras que en el enlace de bajada se hacen las descargas de un archivo [1].

F 3Figura 5.3. Escenarios de un Sistema de Estaciones de Información.

Page 13: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

13

Un sistema de estaciones de información puede ser controlado por una EI ‘administrador’, que se encargaría de controlar cada usuario en cada EI para evitar que se registre en múltiples ocasiones o que descargue cierta información más de una vez. La información a la que se refiere son páginas web, mapas o correos electrónicos, etc [1,2]. La siguiente figura muestra como se pueden organizar las EI’s en varios caminos a lo largo de una trayectoria en donde un usuario pueda descargar información.

F 4Figura 5.4. Esquema representativo de un Sistema de Estaciones de Información.

Donde dmin representa la distancia mínima en la cual puede existir un reuso de frecuencia de uno. 5.1.3 Predicción de la movilidad de un usuario en sistemas celulares basados en un historial. El propósito del esquema de asignación de prioridades es establecer de acuerdo a ciertos criterios la forma en la cual se asignarán las prioridades a cada uno de los usuarios. El criterio principal a considerar es el tiempo de estancia promedio. Se podría pensar de manera somera, que el tiempo de estancia está ligado a la velocidad de un usuario; sin embargo no es del todo cierto; ya que dos usuarios con igual velocidad podrían permanecer un tiempo distinto en determinada zona, muestra de ello se ilustra en la figura 5.5.

Page 14: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

14

F 5Figura 5.5 Dos trayectorias diferentes para usuarios que se mueven a la misma velocidad. El

móvil en la figura de arriba pasa un tiempo menor que el segundo. Por ello en el Esquema de asignación de prioridades, la problemática a tratar es el tiempo de estancia promedio no la velocidad. Debido a que aún no se han realizado estudios referentes a la movilidad de un usuario en EI’s; el enfoque de la investigación fue hacia los sistemas celulares; ya que la infraestructura de una EI es más parecida a este tipo de redes. A continuación se explicará de manera breve como se realiza la localización de un usuario en sistemas celulares. El Esquema de Asignación de Prioridades no pretende localizar a un usuario, si no que se basa en la forma en la cual se localiza un usuario en sistemas celulares para determinar el tiempo promedio de estancia de un usuario en el área de cobertura de alguna Estación de información; esto se logra creado un historial de usuario. Los sistemas celulares no se preocupan en sí por la velocidad de un usuario, sino por la localización de un usuario; que implica determinar la movilidad de cada uno de los usuarios; es decir en que momento cambia a una celda y a cuál celda se encuentra actualmente. En los sistemas celulares se usan tres métodos diferentes para tener conocimiento de la movilidad de un usuario. En el primer método, la estación móvil indica cada cambio de celda a la red. Se le llama actualización sistemática de la localización al nivel de celda. Cuando llega una llamada, se necesita enviar un mensaje de búsqueda sólo a la celda donde está el móvil, ya que ésta es conocida. Un segundo método sería enviar un mensaje de búsqueda a todas las celdas de la red cuando llega una llamada, evitándonos así la necesidad de que el móvil esté continuamente avisando a la red de su posición. El inconveniente de estos métodos es el alto tráfico generado en la actualización constante de cada uno de los móviles; si además un móvil recibe pocas llamadas, este tráfico de señalización es desperdiciado provocando que el proceso de actualización de localización y registro sea costoso. El tercer método es un compromiso entre los dos primeros para reducir los costos de registro y paginación del usuario; además de estar basado en la predicción del comportamiento de los usuarios.

Page 15: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

15

El comportamiento de los usuarios es muy regular como se puede advertir en los registros de tráfico de camino y la teoría de flujo de tráfico. Estos comportamientos regulares pueden ser modelados debido a que el comportamiento geográfico es bastante estable en el sentido de que las actividades se repiten en el mismo lugar, aunque es inestable en el sentido de que no se repiten periódicamente. La Estrategia Alternativa (EA) es un ejemplo claro del tercer método; esta estrategia es usada en la tercera generación de telefonía celular y tiene el propósito de reducir el tráfico a causa de la gestión de la movilidad tomando en cuenta los patrones altamente predecibles de las personas, y así reducir el costo de actualización de la ubicación. [10] Para este método se maneja un perfil para cada uno de los usuarios; donde se almacenan sus patrones más previsibles de movilidad. Y por ello, para cada usuario se considera:

Para cada periodo de tiempo, le corresponde un conjunto de áreas de localización y la probabilidad de que el usuario se encuentre en esas áreas de localización. Este conjunto es optimizado ordenándolas con su respectiva probabilidad en forma descendente.

Las probabilidades de que un usuario esté ubicado en cierta área son funciones del tiempo y

de otros parámetros como las condiciones de tráfico del camino, el clima, etc. El comportamiento predecible de los usuarios es lo que lleva a los sistemas celulares a tener un perfil de cada usuario; el Esquema de Asignación de Prioridades define esos perfiles de usuarios como el tiempo promedio en el que móvil permaneció en la zona de cobertura de una Estación de Información; esta información es almacenada en la EI y cada vez que el móvil entra a el área de cobertura comunica estos datos a la EI para que los actualice; y esta recolecta estos datos para obtener un promedio y en base a ese promedio determinar si es posible atender a ese usuario. El algoritmo para la EA es como sigue: Si un usuario recibe una llamada en determinado momento, el sistema entonces lo vocea sobre el área de localización (AL) más probable, si no se encuentra en esa área el sistema lo voceará sobre el área más probable después de ésta; hasta llegar al área de localización menos probable. En EA, cada usuario debe tener una copia de su perfil (AL y probabilidad de estar en esa AL) almacenado en la red; y esta copia se va actualizando cuando ocurre un cambio de AL del usuario. En EA, el sistema almacena dos tipos de eventos o clases de información: Largo termino. Información que cambia muy lentamente o no cambia a lo largo de un cierto periodo de tiempo (semanas, meses). Corto o medio termino. Información que refleja el comportamiento reciente de un usuario (horas, dias). Por otra parte el método llamado Reconocimiento Regular de Ruta (RPR, Regular Path Recognition), maneja de igual manera, perfiles en base al comportamiento predecible de las personas; este método hace perfiles de movimiento individuales. Estos perfiles solo serán significativos si el comportamiento espacial del usuario es repetitivo [11, 12]. En RPR se consideran sólo las tres señales mas fuertes de estaciones base recibidas por el móvil; la señal más fuerte de estas tres es colocada primero y así respectivamente. Los ID’s (Identificadores de celda) de estás tres estaciones base serán almacenadas en orden descendente desde la más fuerte a la más débil junto con un medidor de frecuencia que contará las veces que ha ocurrido esa combinación (figura 5.6 ).

Page 16: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

16

F 6Figura 5.6. Predicción de los movimientos del usuario.

En este método se definen los Puntos Limites del Patrón (Pattern Edge Points, PEP) como aquellos sitios geográficos estáticos (casa, trabajo, parque, etc.); donde un usuario permanece un lapso de tiempo relativamente largo, por lo que el comportamiento del usuario, es más o menos estable. El usuario recorrerá ciertas rutas para trasladarse de uno a otro PEP, estas rutas son registradas con sus correspondientes conjuntos de combinaciones de estaciones base consecutivas. Este concepto es descrito en la figura 5.7. Las rutas serán registradas periódicamente para construir un perfil que describa el comportamiento del usuario adecuadamente.[12]

F 7Figura.5.7 .PEP’s y rutas definidos de acuerdo al los lugares en donde un usuario pasa más

tiempo (Perfiles de usuario). Para realizar una predicción de la ruta del móvil, primero se realizará una revisión a corto plazo para extraer PEP’s y rutas para crear un perfil para una ruta específica, después, una revisión a largo plazo determinará las rutas anteriores entre estos PEP’s. Cada vez que un PEP nuevo sea detectado se almacenará la combinación de estaciones base correspondiente, para los PEP existentes se incrementará el contador de frecuencia. Al abandonar este PEP todas las combinaciones EB serán almacenadas como ruta junto con sus respectivos contadores de frecuencia.

Page 17: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

17

Una vez determinados los tres criterios, se otorga una prioridad a cada usuario y posteriormente es agregado a una cola. Esta cola se ordenará cada vez que un móvil es agregado. La siguiente sección analiza la mejor manera de ordenar a estos usuarios en dicha cola. 5.1.4 Métodos de ordenamiento Cuando se va a emplear algún algoritmo de ordenamiento, se debe decidir cuál se adapta mejor a los requerimientos del programa. Los factores a analizar para decidir cuál es el algoritmo más adecuado son los siguientes:

• Grado de orden que tendrá la información que se va a manejar. Si la información se encuentra casi ordenada, un algoritmo sencillo es adecuado. Si por el contrario los datos van a estar muy desordenados, un algoritmo más complicado puede ser el más indicado.

• Cantidad de datos a manipular Si la cantidad es pequeña, no es necesario utilizar un algoritmo complejo, y es preferible uno de fácil implementación. Una cantidad muy grande puede hacer prohibitivo utilizar un algoritmo que requiera de mucha memoria adicional.

• Tipo de datos que se ordenarán Si los datos de cada elemento serán enteros, flotantes o estructuras.

Estos últimos factores nos ayudarán a determinar el algoritmo mas adecuado además del número de comparaciones y movimiento que tengan que realizarse en cierto método de ordenamiento. Otro factor importante es la estabilidad; que se refiere a cómo se comporta el algoritmo con datos iguales en dos o más registros. Por ejemplo. Si tenemos la siguiente lista de datos (nombre, edad) "Pedro 19, Juan 23, Felipe 15, Marcela 20, Juan 18, Marcela 17", y la ordenamos alfabéticamente por el nombre con un algoritmo estable quedaría así: "Felipe 15, Marcela 20, Marcela 17, Juan 23, Juan 18, Pedro 19". Un algoritmo no estable podría dejar a Juan 18 antes de Juan 23, o a Marcela 20 después de Marcela 17 [14,16].

El desempeño de un algoritmo se representa con orden de magnitud(O). Por ejemplo: Para una función como: f(n) = N4 + 100N2 + 10N + 50 el orden será O(N4), ya que para valores grandes de N, N4 dominará. Por lo tanto la función es de orden O(N4).

• O(1) se refiere a que las operaciones de intercambio y acceso se realizarán en un tiempo constante.

• O(n) Se ejecuta en tiempo lineal (impresión de todos los elementos, encontrar un elemento en una lista).

• O(log n) Trabaja más que uno O(1) y menos que uno O(N). • O(n2) trabaja más que uno de O(n) • O(n3) Inicializar en un arreglo tridimensional.

Por lo que el algoritmo más rápido es aquel cuyo orden de magnitud es de grado O(log n). En la siguiente figura se muestra las características entre varios algoritmos de ordenamiento comúnmente usados; en la cuál se define el Mejor Caso, cuando el conjunto de elementos se encuentra ordenado; el Peor Caso, cuando el conjunto de elementos se encuentra totalmente en desorden y el Caso Promedio.

Page 18: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

18

Ordenamiento Mejor Caso Peor Caso Caso Promedio

Estabilidad Memoria Adicional

Inserción O(n) O(n2) O(n2) Estable No

Burbuja O(n) O(n2) O(n2) Estable No

Shell O(n logn) O(n2) O(n2) No Estable No

Fusión O(n logn) O(n logn) O(n logn) Estable Si

Rápido O(n logn) O(n2) O(n logn) No Estable No

F 8Figura 5.8. Resumen de los Algoritmos de Ordenación

En lo que se refiere a este proyecto, se tienen las siguientes características:

• Grado de orden que tendrá la información que se va a manejar. Cada vez que se requiera insertar un elemento, la lista se encontrará en orden.

• Cantidad de datos a manipular La cantidad de datos a emplear en este algoritmo es dependiente de la cantidad de usuarios que puedan entrar en el área de cobertura de dicha EI.

• Tipo de datos que se ordenarán Los datos que se ordenarán son estructuras, ya que cada uno de los elementos tiene características definidas.

En lo referente a la estabilidad, se requiere de un algoritmo estable ya que en casos en los que arriben dos o más usuarios con misma prioridad, se tendrá que considerar el orden de llegada. En el aspecto del número de comparaciones y movimientos se requiere un algoritmo rápido. De lo anterior se observa que es necesario un algoritmo que sea estable y que sea rápido en tiempo de ejecución. El que cumple con estas características de ordenamiento por fusión [13, 14, 15].

5.1.4.1. Ordenación por fusión (MergeSort) Esta técnica es un caso particular del Principio de Reducción, que permite solucionar problemas complejos fraccionándolos en instancias más pequeñas y simples del mismo problema. La idea es solucionar cada uno de esos subproblemas más simples y encontrar una forma de ensamblar una solución al problema original con base en dichas soluciones como se muestra en la figura 5.9. Desde este punto de vista, el enfoque "Divide y Vencerás" (D&V) plantea un método suficientemente general para ilustrar como derivar soluciones algorítmicas recurrentes. D&V sólo es realmente eficiente cuando el tiempo y esfuerzo que se requiere para realizar la descomposición en subproblemas, solucionarlos, y luego re-ensamblar una respuesta es menor que el costo de solucionar el problema directamente como se presenta, en toda su complejidad inherente. Un factor importante para la eficiencia práctica de este enfoque es saber cuando detener la división de instancias y aplicar entonces, algoritmos convencionales para solucionar instancias ya demasiado pequeñas. En otras palabras, un algoritmo D&V debe evitar continuar recurrentemente cuando el tamaño de las subinstancias ya no lo justifique. Tiene la ventaja de que utiliza un tiempo proporcional a: n log (n), su desventaja radica en que se requiere de un espacio extra para el procedimiento. Este tipo de ordenamiento es útil cuando se tiene una estructura ordenada y los nuevos datos a añadir se almacenan en una estructura temporal para después agregarlos a la estructura original de manera que vuelva a quedar ordenada [13, 14].

Page 19: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

19

F 9Figura 5.9. Forma el la cuál ordena mergesort.

Page 20: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

20

6. Desarrollo 6.1 Solución Propuesta Se dice que un móvil está en el área de cobertura de una EI cuando detecta alguna trama proveniente de dicha EI; así pues si un móvil se encuentra en el área de cobertura de la EI, obtendrá la cantidad de errores presentados en la trama, y en base a esos errores el móvil activará un contador; de tal forma que se perciba el tiempo en el cuál permanece en cada una de las zonas de la EI. Para determinar el TEP (Tiempo de Estancia Promedio) de determinado móvil, cada móvil recopila datos acerca del tiempo que permaneció en cada una de las zonas del área de cobertura, para ello se emplean tres contadores en cada móvil. Estos contadores son activados dependiendo del número de errores que son detectados cada vez que dicho usuario recibe una trama 1 de la EI. Los tiempos almacenados en cada contador son enviados a la EI que el usuario visita actualmente y la EI los almacena promediándolos con los datos anteriores que recibió del mismo móvil, creando así un historial de usuario; en este historial la información es clasificada como a Corto o medio término, como se definió en la sección 5.1.3. Una vez obtenido el criterio del TEP, se obtienen el tipo de información y el perfil de un usuario de una base de datos almacenada en la EI, después se asigna una prioridad y los usuarios son colocados en una cola esperando a ser atendidos; cada que un usuario sea agregado a dicha cola esta debe ser ordenada, para ello se emplea el método de ordenamiento por fusión. Primeramente se explicará como se lleva a cabo el intercambio de tramas entre la EI y el móvil, así como la estructura de cada trama, de tal forma que se pueda observar como es el cálculo de la prioridad para cada uno de los usuarios. 6.2 Diseño El esquema de asignación de prioridades consta de dos programas, uno ubicado en la Estación de información (que es una PC) y el otro ubicado en la Estación móvil o usuario (que es un microcontrolador). El programa en la EI está elaborado con el lenguaje de programación orientado a objetos java, multiplataforma, que tiene integrado algunos paquetes para facilitar la conexión a una base de datos, emplear listas ligadas y establecer una comunicación hacia y desde algunos puertos. La información de cada móvil, es almacenada en una base de datos; elaborada con ayuda del lenguaje gestor de base de datos MySQL, que además de ser de libre distribución, es fácil de manejar y está orientada a bases de datos pequeñas. En la Estación móvil se empleó un microcontrolador programable porque la implementación de un puerto serie es relativamente sencilla, contiene también un temporizador que permite el conteo de tiempo, es pequeño, barato, y fácil de usar. El programa en el móvil está elaborado en lenguaje C. El circuito integrado programable es el PIC16f84A. El transceptor empleado es el AC4424, de aerocomm, con una frecuencia de transmisión en banda libre ISM a 2.4GHz, con potencia de de salida de 100mW cuya área de cobertura es de 2km, proporciona una interfaz con puerto serie y es fácil de emplear.

Page 21: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

21

6.2.1 Estructura de tramas e intercambio de ellas entre Estación de Información y Móviles. El intercambio de tramas se lleva a cabo en 5 pasos: 1. Inicialmente la Estación de Información, transmite la trama 1, mostrada en la figura 6.1; y espera recibir alguna trama válida.

F 10Figura 6.1. Trama 1 de la EI.

Los campos de la trama 1 de la EI son: Inicio: El inicio de trama se definió de un byte cuyo valor es 127 en binario. Número de Trama: Indica el número de trama. ID de la EI: Identificador de la EI. Cadena conocida: En esta cadena es donde observaremos la cantidad de errores para identificar la zona en la cual se encuentra el móvil. Nota: Toda la trama 1 de la EI es conocida por el móvil, a excepción del identificador de la EI; si se pretende aplicar el algoritmo a un sistema de estaciones de información.. 2. El móvil recibe la trama 1 de la EI la almacena y realiza un conteo de los errores presentados en la trama. Posteriormente envía a la EI la trama 1 cuyos campos se muestran en la figura 6.2.

F 11Figura 6.2. Trama 1 del Móvil.

Descripción de los campos: Inicio. Mismo para todas las tramas. Numero de Trama: Indica el número de trama. ID del móvil: Identificador del móvil. T de Estancia Z1: Tiempo de Estancia promedio en la zona 1 del área de cobertura. T de Estancia Z2: Tiempo de Estancia Promedio en la zona 2 del área de cobertura. T de Estancia Z3: TEP en la zona 3 del área de cobertura. A cada campo de TEP le corresponden dos bytes; el primero indica los minutos que permaneció en esa zona y el segundo, indica los segundos. 3. En caso de que la EI haya recibido la trama 1 del móvil, envía acuse de recibo a ese móvil (figura 6.3). Posteriormente el móvil es colocado en una cola. La EI continua recibiendo varias tramas provenientes de diferentes móviles, y realiza el mismo procedimiento para cada móvil.

F 12Figura 6.3.Trama 2 donde la EI envía al móvil la confirmación de registro.

Page 22: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

22

Descripción de los campos de la trama 2 de la EI: Inicio. Mismo para todas las tramas. Numero de Trama: Indica el número de trama. ID del Móvil: Identificador del móvil al que envía el Acuse de recibo de la trama1. Acuse de recibo: La EI le indica al móvil que se ha registrado. 4. Una vez que el móvil reciba el acuse esperará recibir trama 3 de la EI (archivo). La EI envía el mensaje (trama 3 de EI, figura 6.4), sí el móvil lo recibe, contesta con un acuse de recibo de archivo (trama 2 del móvil), indicando así un archivo recibido exitosamente.

F 13Figura 6.4. Trama 3 donde la EI envía al móvil el mensaje o archivo.

La trama 2 del móvil tiene los mismos campos que la trama 2 de la EI, sin embargo no se pueden confundir, ya que el campo de ACK tiene distinto valor. 5. Se repite el proceso del punto 1. La siguiente figura muestra el intercambio de tramas entre Estación de información y un móvil para así establecer la comunicación.

F 14Figura 6.5. Intercambio de tramas Estación de Información-móvil.

Page 23: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

23

6.2.2 Base de Datos “Móviles” En la base de datos es donde se almacenan los datos correspondientes a cada móvil: el identificador, los tiempos de estancia promedio, el tipo de información, el perfil del móvil y los archivos que hay que descargarle a cada móvil. Se requiere pues de dos tablas, al considerar que a un móvil le corresponden varios archivos y el diagrama Entidad-Relación es mostrado en la figura siguiente:

F15Figura 6.6.Diagrama Entidad-Relación de la base de datos “Móviles”.

Las tablas de la base de datos, son mostradas en la figura 6.7; de manera inicial se colocaron solo 20 móviles; los datos Tz1, Tz2, Tz3, act y Num_act; fueron cambiando conforme un móvil entraba en la zona de cobertura.

F 16Figura 6.7.Tablas de la base de datos “Móviles”

Page 24: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

24

6.2.2.1 Definición de campos de la base de datos Tabla Móvil id _ móvil: Es el identificador correspondiente a un móvil, se considera como clave primaria ya que ningún móvil podrá tener el mismo identificador. Tz1, Tz2, Tz3: En estos campos se almacenan los minutos que un móvil estuvo en cada una de las zonas, el tiempo es representado como un dato de tipo float para uso en el programa en java. Perfil: Determina el perfil de un usuario; este puede ser maestro cuyo perfil es cero o alumno cuyo perfil es uno. act: Indica que un móvil ha actualizado sus datos; con esto evitamos actualizar los datos de un móvil que se encuentra en proceso de ser atendido. Este campo tiene un valor de uno si el móvil se ha actualizado, cuando se termina de atender a ese móvil este campo vuelve a su valor inicial: cero. Num_act: Este campo tiene valor inicial de cero; va incrementándose cada vez que los datos de los TEP’s del móvil son actualizados en la base de datos. Num_act es para obtener un promedio del tiempo que un usuario en específico estuvo en determinada zona; por ejemplo si un usuario entra a la zona de cobertura 10 veces y en esas 10 veces actualiza sus datos, entonces Num_act será igual a 10 y el tiempo en cada zona será divido entre 10 para obtener un promedio. Tabla Archivos Id_arch: Es el identificador del archivo, el cuál es la ruta donde es almacenado ese archivo. Tipoinfo: Es el tipo de información de determinado archivo, es decir en este campo se indica si el archivo es importante (Tipoinfo=0) o si no lo es (Tipoinfo=1). movil: Es una clave foránea de la tabla movil, que une las dos tablas para indicar que uno o varios archivos le corresponden a un usuario. fragmentos: Es el tamaño del archivo dividido entre 128; en caso de existir residuo en esta división fragmentos se incrementa en uno. El tamaño del archivo es de 128 puesto que un mensaje relativamente corto sería en promedio de 128bytes; por esa razón se propuso fragmentos de esa longitud.

Page 25: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

25

6.2.3 Diagrama de flujo del programa en la Estación de Información La figura 6.8 muestra el diagrama de flujo del programa en la EI.

F 17Figura 6.8. Diagrama de flujo de la Estación de Información.

Inicialmente la cola se encontrará vacía, por lo que únicamente se transmitirá la trama 1 de la Estación de información, posteriormente se esperará la llegada de la trama 1de algún móvil. En caso de que se reciba una trama se verifica sí es trama válida; es decir sí es trama 1o 2 de algún móvil. Posteriormente se busca al móvil en la base de datos establecida en la EI, asegurándose que el usuario existe en la base de datos y que hay uno o más archivos a descargarle. Una vez que se ha recibido la Trama 1 de un móvil, se busca en la base de datos ese móvil y sí existe un archivo disponible para este; se actualizan los datos recibidos en la trama 1(Los tiempos promedios en cada zona). El campo act será puesto a uno para indicar que los datos de ese móvil en específico se han actualizado; esto con la finalidad de no actualizar los mismos datos repetidamente; se obtiene el promedio de cada uno de los campos Tz1, Tz2, Tz3; esto se logra con ayuda del campo Num_act que tiene almacenado las veces en las que ese usuario ha actualizado sus datos. El Tiempo de Estancia Promedio final se obtiene de promediar los campos Tz1, Tz2 y Tz3. Finalmente se obtiene el tipo de información y el perfil del usuario y en base a esos datos se obtiene la prioridad y el móvil es colocado en una cola. En caso de recibir trama 2; que implica que el móvil recibió exitosamente el archivo, entonces es borrado el renglón o tupla de la tabla Archivos, en la cual aparece ese móvil con el archivo correspondiente.

Page 26: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

26

Los valores del tipo de información y el perfil, son solo uno o cero; cero para maestros e información urgente y uno para alumnos e información no urgente; sin embargo para determinar si el Tiempo de Estancia Promedio es alto o bajo se considera un umbral; así pues el TEP = 0 si se cumple con TEP<=UMBRAL; de lo contrario TEP = 1. El valor de la variable UMBRAL se obtiene del promedio de los TEP’s de todos los móviles que al menos alguna vez se han registrado y aparecen en la base de datos; por ejemplo; en la siguiente figura se muestra el umbral obtenido de la tabla movil en la cual solo se han registrado 15 móviles. Select SUM((Tz1+Tz2+Tz3)/3) from movil; obtiene la suma de los TEP de todos los usuarios que se han registrado al menos una vez; el número de registros lo indica el campo Num_act. Select count(*) from movil where Num_act<>0; obtiene el total de usuarios registrados; y el umbral lo determinamos como: UMBRAL=127.070/15 = 8.4.

F 18Figura 6.9. Obteniendo el UMBRAL de 15 móviles registrados.

Para obtener la prioridad se debe considerar que se tienen tres niveles, el nivel uno, donde se considera el TEP, el nivel dos en el cual se considera el tipo de información y por ultimo el nivel tres, con el perfil del usuario. Cada nivel es separado de acuerdo a si es de alta o baja prioridad (hablando solo en un nivel); esta parte se explica mejor con un ejemplo: Supóngase que se tienen 15 móviles con sus respectivo TEP, tipo de información y perfil; en la figura 6.10 A) se muestra los móviles de acuerdo al orden de llegada; es decir el primero en llegar fue el 1, luego el 2 y así sucesivamente.

Page 27: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

27

F 19Figura 6.10. Ejemplo de como se ordenan los móviles considerando los tres criterios.

En B) se muestra como deben ser ordenados los móviles únicamente considerando el TEP (ordenamiento en el primer nivel); separamos entonces los que tengan un TEP de cero de los que tienen TEP de uno. Posteriormente se separan los móviles de acuerdo al tipo de información; primero se ordena la parte en donde el TEP es cero y después la parte en donde el TEP es uno, como se ilustra el inciso C). Finalmente se ordenan todas esas partes divididas, de acuerdo al perfil de cada usuario (inciso D)). Para evitar tres ordenamientos se incluye una variable denominada BASE; que ayuda a determinar la prioridad resultante de esos tres criterios. Prioridad=Perfil+(BASE*Ti)+(BASE*BASE*TEP); donde BASE es el valor que puede llegar a tener cualquiera de los criterios; es decir si se considera que el perfil corresponde a alumnos, maestros y administrativos; siendo que sólo se considera inicialmente alumnos y maestros; entonces habríamos que asignar valores maestros=0 (prioridad alta), administrativos=1 (prioridad media) y alumnos= 2 (prioridad baja); y BASE sería igual a tres en lugar de dos, que es el valor actual; lo mismo ocurriría si el TEP o el Tipo de información

Page 28: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

28

tomarán tres valores. BASE es igual a tres, si al menos uno de los criterios tiene tres valores; o cuatro si al menos uno de los criterios tiene cuatro valores y así sucesivamente. Una vez obtenido la prioridad de cierto móvil; este es situado en una cola; esta cola es ordenada de acuerdo a la prioridad, los móviles con valor de prioridad pequeño (que implica prioridad alta) estarán a la cabeza de la cola y son los que serán atendidos lo más pronto posible. La forma en la cuál se ordena esta cola es por medio del algoritmo de fusión (mergesort), ya que dicho algoritmo cumple con los requerimientos necesarios para este proyecto (ver características mencionadas en la página 18 sección 5.1.4 ). El método mergesort esta implementado en el paquete util de java. Cada elemento en dicha cola esta estructurado de la siguiente manera:

prioridad Archivo id_mov frag fgs Tiempo

de arribo

TEP

Tabla 1.Componentes de cada elemento en la cola. Cada elemento es ordenado de acuerdo a la prioridad de manera Ascendente, el Archivo es la ruta y nombre del archivo, el id_mov es el identificador del móvil, frag es el total de fragmentos y fgs inicialmente tiene el mismo valor que frag y va decrementandose conforme se trasmite un fragmento. Tiempo de arribo es el tiempo en el que el usuario llegó para ser comparado con el TEP y determinar si se puede o no atender.

Page 29: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

29

F 20Figura 6.11. Diagrama de clases del programa correspondiente al Esquema de asignación de

prioridades.

Page 30: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

30

6.2.4. Diagrama de flujo del programa en la Estación móvil

F 21Figura 6.12. Diagrama a bloques del móvil.

El móvil se encuentra por lo general en estado de “escucha”, reconoce que ha entrado a la zona de cobertura de la EI cuando recibe la Trama 1 proveniente de la Estación de Información; compara la trama con una cadena conocida y determina la cantidad de errores que se perciben, en base a la cantidad de errores activa un contador. Indica que está en zona con la variable inZ = 1; El móvil obtiene los datos de memoria (tiempos de estancia en cada zona) y transmite la trama 1, si es que no ha recibido trama 2 de la EI. inZ inicialmente es igual a cero; y una vez que el móvil a entrado a la zona de cobertura, inZ es uno; así cuando deje de recibir la trama 1, 2 ó 3 proveniente de la EI, se activará el contador C, y cuando C alcanza el valor de Umbral, que en este caso es un segundo; se asume que el móvil esta fuera del área de cobertura. Cuando se ha detectado que ha salido de la zona de cobertura, el móvil almacena esos valores en la EEPROM del PIC y estos datos son agregados a la trama 1 que dicho móvil le transmite ala Estación de información.

Page 31: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

31

Cuando el móvil haya salido del área de cobertura se actualizarán los tiempos de estancia, almacenando los contadores C1, C2 y C3 en memoria y se inicializan a cero los contadores C1, C2, C3, C, la variable ACK; que indica que el usuario se ha registrado en la EI(ACK= 1) y la variable inZ; para indicarle que está fuera del área de cobertura. Nuevamente regresa al estado o modo “escucha”. El móvil pondrá ACK =1, cuando reciba la trama 2 de la EI y en caso de recibir la trama 3, almacenará el archivo y transmitirá la trama 2 (acuse de recibo) y vuelve a estado “escucha”. 6.2.5. Diagrama a bloques La siguiente figura muestra el diagrama a bloques de la EI y el móvil, la EI sólo consta de la computadora y directamente se conecta al transceptor por medio del puerto RS232.

F 22.Figura 6.13. Diagrama a bloques del sistema.

El móvil por su parte consta del PIC 16F84A y un circuito integrado MAX232 que cambia los niveles TTL a los del estándar RS-232 cuando se hace una transmisión, y cambia los niveles RS-232 a TTL cuando se tiene una recepción. Para recibir y transmitir datos desde y hacia el transceptor, se emplea un DB9-macho (DB9 1, de la figura 6.14); se emplea un BD9-macho (DB9 2, de la figura 6.14) para almacenar el archivo recibido a una computadora. Para que se pueda visualizar el archivo recibido en una computadora, es necesario que el código RW.java (incluido en el disco) este ejecutándose en el momento de la recepción; así los datos serán almacenados en la carpeta Arch ubicada en C; puede cambiarse la ruta modificando la variable A.

Page 32: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

32

F 23Figura 6.14. Diagrama de conexiones de la estación móvil.

Los componentes del móvil, son fáciles de conseguir y muy económicos: 4 Capacitores electrolíticos $4.00 2 LED’s de 3mm $2.00 1 Cristal de cuarzo a 20Mhz $8.00 2 Condensadores cerámicos a 33pF $2.00 1 PIC 16F84A $48.00 1 MAX232N $6.00 2 Conectores BD9-macho $16.00 Dando así un presupuesto total de $87.00. Estos precios son sin considerar la compra en mayoreo.

Page 33: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

33

7. Pruebas al Sistema Después de explicar el funcionamiento del proyecto a continuación se explican los resultados obtenidos. 7.1. Comportamiento del algoritmo frente a uno y varios móviles En la siguiente figura se visualiza como se comporta el sistema frente a un móvil.

F 24Figura 6.13.Programa de la EI en ejecución. EI vs. un móvil

Como se observa en la figura 6.13, un móvil es agregado a la cola siempre y cuando tenga un archivo a descargársele; en este caso se agrega el móvil 4 con dos fragmentos a transmitirle. Cada vez que se transmite un fragmento se actualiza la cola; es decir: Tx T3 a movil:4 fragmentos restantes 2 indica que se está trasmitiendo un fragmento de dos, que componen al archivo. Una vez que se transmite un fragmento se actualiza el campo fragmentos de la cola indicando así cuantos fragmentos restan por enviar a determinado móvil.

Page 34: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

34

Cuando la EI haya terminado de trasmitir la trama 3; el móvil responde con trama 2 que se recibió exitosamente el archivo y entonces la EI borra el archivo; para evitar transmitirlo de nuevo. Así pues se logró establecer una buena comunicación de la EI con un móvil.

F 25Figura 6.14. Programa de la EI en ejecución. EI Vs varios móviles

La comunicación de la EI con varios móviles muestra el mismo comportamiento, la figura anterior muestra como se van acomodando los usuarios en la cola (el orden de llegada fue: 3, 19, 20, 4 y 5) y al transmitirle un fragmento, esta se va actualizando. El enunciado Tx T3 a móvil: 20 fragmentos restantes: 9 significa que se transmitirá el primer fragmento de nueve, que conforman el archivo; este dato es actualizado en la cola; cambiando el campo Fragmentos a 8; y así sucesivamente se le transmite a cada móvil.

Page 35: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

35

7.2. Tiempo de descarga El tiempo en el cuál un móvil descarga un archivo es calculado con la finalidad de averiguar el tiempo de espera de cada móvil en la cola; para ello se hizo el calculo del tiempo que la EI tarda en transmitir un archivo; esto fue con ayuda de la función get() de la clase Calendar de java, que obtiene el tiempo actual, en nuestro caso lo ocupamos para que se desplegarán los milisegundos y segundos. La tasa de transmisión empleada es de 115200bits/s; esto fue por que la interfaz para la comunicación hacia el transceptor es por medio del puerto serial bajo el protocolo RS232; el cuál alcanza una tasa máxima de de 115200bits/s. Sin embargo el proyecto fue planeado para transmitir a 2Mbps; pero no se pudo conseguir transceptores con esas tasas de transmisión; únicamente transceptores con interfaz puerto serie; por lo que se modifico la tasa y se cambio a la tasa máxima del protocolo RS232. Cabe mencionar también, que no se realizaron pruebas para comprobar que el sistema funciona a altas tasas de transmisión. Despreciando el tiempo de procesamiento de una computadora, teóricamente se puede calcular el tiempo en el que se transmite cada trama de acuerdo a la tasa a la que se esta trasmitiendo. Un bit es transmitido en 8.6µs, el tiempo de transmisión para cada trama se obtiene multiplicando el numero de bytes de dicha trama por el tiempo de bit(8.6µs), por ocho bits que componen un byte. A partir de lo anterior se obtienen los siguientes datos, mostrados en la tabla 2 y en la tabla 3.

Tabla 2. Tiempo de procesamiento en la transmisión de tramas.

Tabla 3. Tiempo de procesamiento en la recepción de tramas.

Estadísticamente en la UPIITA, se pueden esperar hasta 20 alumnos/s en hora pico queriéndose registrar3; la trama 1 de la EI se trasmitiría una vez (825µs), cambiaría el tiempo en el cual tenemos que esperar a esos 20 usuarios (12.3ms); además del tiempo en el que le trasmitiríamos la trama 2 a todos esos móviles (5.5ms) y finalmente la transmisión de archivos; considerando archivos de solo un fragmento (183ms). El tiempo para de transmisión y recepción considerando estos 20 usuarios es lustrado en la tabla 4.

3 Datos obtenidos del trabajo Terminal “Desarrollo de una Estación de Información”.

Proceso Tx T1

(transmisión de trama1)

Tx T2 Tx T3

Tiempo aprox. en realizarlo 825µs 275µs 9.15ms

Proceso Rc T1

(recepciónn de trama1)

Rc T2

Tiempo aprox. en realizarlo 619µs 275µs

Page 36: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

36

Tabla 4. Tiempo de procesamiento cuando se incluyen 20 usuarios.

El peor de los casos es transmitir más de un fragmento secuencialmente; como cien fragmentos para cada móvil; ya que en promedio un usuario pasa 3 minutos4 en el área de cobertura y si quisiéramos atender a todos los usuarios secuencialmente, posiblemente algunos de ellos saldrían de la zona de cobertura antes de que se le transmitiera el archivo. Para que los usuarios puedan ser atendidos en mayor medida, se debe considerar entonces, no transmitir archivos grandes secuencialmente; esto con la finalidad de esperar recibir más móviles y poder atender a los de mayor prioridad. Por otra parte se tiene el tiempo en el que un móvil es atendido considerando el tiempo de procesamiento de la EI; según varias pruebas de descarga a archivos, se determinó que una trama 3 se transmite en 1.15s. La intención de estas pruebas observar el comportamiento del algoritmo comparado con una cola FIFO (First in, First out; Primero en entrar, Primero en salir). El tiempo de transmisión de la trama 3 de la EI dependerá del TEP mínimo en el que pueda estar un usuario, por ejemplo; supongamos la descarga de un archivo con 100 fragmentos, para cada uno de los veinte móviles que recibimos; el tiempo de descarga de un archivo a todos los usuarios es de 11.5s aproximadamente.. De acuerdo a esos datos se obtuvo de manera aproximada el tiempo de descarga para cada móvil; primero se consideró transmitir a 20 móviles archivos con 2 fragmentos (Tabla 5). Donde T_descarga es el dato obtenido por medio de la función get() de la clase Calendar; en donde cada trama se transmite en 11.5ms. En la siguiente tabla (Tabla 6) se muestra el orden de llegada de acuerdo a una cola FIFO, el tiempo de descarga del archivo para cada móvil, el TEP de cada móvil y un campo que nos dice sí se logro atender a ese móvil o no.

Orden de llegada de móviles

1 2 3 4 5 6 7 8 9 10

T_descarga 0.021 0.042 0.063 0.084 0.105 0.126 0.147 0.168 0.189 0.21 TEP 7.43 5.31 11.4 6.96 8.12 7.67 6.95 8.03 21.1 20.5

¿Móvil recibió archivo? Si Si Si Si Si Si Si Si Si Si

Orden de llegada de móviles

11 12 13 14 15 16 17 18 19 20

T_descarga 0.231 0.252 0.273 0.294 0.315 0.336 0.357 0.378 0.399 0.42 TEP 6.33 5.41 1.18 8.6 12.8 6.7 37.6 8.03 6.12 14.5

¿Móvil recibió Si Si Si Si Si Si Si Si Si Si 4 Este dato fue obtenido de acuerdo a observaciones de un grupo de 45 alumnos entrando al estacionamiento de la UPIITA durante dos semanas, en horas pico y en horas que no lo eran.

Proceso Tx T1

(transmisión de trama1)

Rc T1 (recepción de

trama1) Tx T2 Tx T3

Tiempo aprox en realizarlo 833µs (619µs*20)

12.3ms (275µs*20)

5.5ms 183ms

Page 37: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

37

archivo? Tabla 5. Orden en el cuál se atienden 20 usuarios en una cola FIFO. Cada usuario con un

archivo de dos fragmentos. Por supuesto aquí no hubo diferencia entre ambos algoritmos debido a que el total de descarga del total de los archivos es menor que el TEP más pequeño de todos los móviles; sin embargo veamos el caso en donde no es así, la siguiente tabla (Tabla 6) corresponde a la descarga de 20 archivos con 100 fragmentos cada uno, considerando cola FIFO.

Orden de llegada de móviles

1 2 3 4 5 6 7 8 9 10

T_descarga 1.15 2.3 3.449 4.6 5.75 6.899 8.05 9.2 10.34 11.5 TEP 7.43 5.31 11.4 6.96 8.12 7.67 6.95 8.03 21.1 20.5

¿Móvil recibió

archivo? Si Si Si Si Si Si No No Si Si

Orden de llegada de móviles

11 12 13 14 15 16 17 18 19 20

T_descarga 12.65 13.79 14.95 16.1 17.25 18.4 19.55 20.69 21.85 23.0 TEP 6.33 5.41 1.18 8.6 12.8 46.7 37.6 8.03 6.12 14.5

¿Móvil recibió

archivo? No No No No No No Si No No No

Tabla 6. Orden en el cuál se atienden 20 usuarios en una cola FIFO. Cada usuario con un archivo de cien fragmentos.

La segunda tabla (Tabla 7) corresponde a la descarga de 20 archivos con 100 fragmentos cada uno, considerando prioridad.

Orden de llegada de móviles

13 2 12 19 11 7 4 1 6 8

T_descarga(seg) 1.15 2.3 3.449 4.6 5.75 6.899 8.05 9.2 10.34 11.5 TEP 1.18 5.31 5.41 6.12 6.33 6.95 6.96 7.43 7.67 8.03

¿Móvil recibió archivo? Si Si Si Si Si Si No No No No

Orden de llegada de móviles

18 14 5 3 15 20 10 9 17 16

T_descarga(seg) 12.65 13.79 14.95 16.1 17.25 18.4 19.55 20.69 21.85 23.0 TEP 8.03 8.6 8.12 11.4 12.8 14.5 20.5 21.1 37.6 46.7

¿Móvil recibió archivo? No No No No No No Si Si Si Si

Tabla 7. Orden en el cuál se atienden 20 usuarios empleando el esquema de asignación de prioridades. Cada usuario con un archivo de cien fragmentos.

De lo anterior se puede observar que el Esquema de Asignación de Prioridades no garantiza en algunos casos el atender a más usuarios que la cola FIFO; sin embargo si garantiza atender a los usuarios con mayor prioridad. Aunado a eso, el Esquema de asignación de prioridades no transmite

Page 38: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

38

a usuarios que no tienen posibilidades de recibir el archivo que necesiten de manera completa (ver figura 6.15).

F 26.Figura 6.15. Orden en el cual se van atendiendo los móviles. De 20 móviles sólo se

pudieron atender 10. La llegada de los 20 usuarios, fue simulada: se agregaron 10 usuarios por la llegada de cada móvil, y se generaron 2 llegadas con el circuito del móvil.

Page 39: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

39

8. Conclusiones Se terminó satisfactoriamente el Esquema de Asignación de Prioridades. Los criterios establecidos, mostraron una mejora en la atención de usuarios, ya que el algoritmo atiende a los más importantes. La manera de asignar las prioridades fue rápida y sencilla, la cola en donde los usuarios esperan ser atendidos respetó el orden de llegada de cada móvil; el TEP de cada usuario ayudó en mayor medida a determinar esta prioridad favoreciendo a los usuarios con poco tiempo en dicha zona. Por parte de los tiempos de transmisión y recepción, estos dependen de la longitud de cada trama, así que si se llegase a agregar bytes a cada trama, el tiempo de transmisión se incrementaría y la posibilidad de enviar archivos grandes disminuiría. El tamaño de los fragmentos en cada archivo sería otro factor para aumentar este tiempo. En comparación con una cola FIFO, el algoritmo es una mejor opción si se pretende ser usado en ambientes donde los usuarios son discriminados; como es el caso de la UPIITA, así aseguramos en mayor medida que los usuarios de alta prioridad puedan tener el archivo de interés a tiempo. Para este proyecto se consideró únicamente enviar un archivo a un móvil; pero sí se piensa en la posibilidad de transmitir dos o más archivos a un solo móvil, bastaría con agregar más de una vez al móvil en la lista; y eso se soluciona comentando tres líneas del código ListaMoviles.java que se encuentran justo antes de agregar un móvil. En cambio sí se pretendiera enviar un archivo a un grupo de trabajo, no sería del todo eficiente puesto que nada nos garantiza que el grupo de trabajo en conjunto se encuentre en el área de cobertura de esa estación de información. En el diseño del Esquema de Asignación de Prioridades, no se contemplo el de transmitir mas de un archivo a un usuario. Así como tampoco se considero enviar un archivo a un grupo de trabajo, únicamente el de enviar a un sólo móvil y que este difundiera la información por medio de redes Ad-Hoc, en el proyecto “Extensión de la Cobertura de una Estación de Información implementando redes Ad Hoc”. Finalmente el proyecto ofrece una estructura barata y sencilla; ya que los componentes son fácil de emplear, de conseguir y muy económicos.

Page 40: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

40

9. Bibliografía [1]R. H. Frenkiel and T. Imielinski “Infostations: The Joy of ‘many-time, many-where’ Communications”, WINLAB Technical Report (WINLAB-TR-119), Rutgers University, April, 1996 [2]David J. Goodman, Joan Borras, Narrayan B.Mandayam and Roy D.Yatas,"INFOSTATIONS:A new System Model for data and Messaging Services," 47th IEEE VTC'97,pp.969-973,May 1997 [3]Oscar Higadera-Macias, G. Hernández-Valdez, R. Parra-Michel, Felipe A. Cruz-Perez, “Estaciones de información para sistemas de comunicación inalámbricos: Conceptos e implementación Practica”, Cinvestav-IPN /Instituto Tecnológico de Estudios Superiores de Occidente [4]Irvine, J., Pesch, D., Robertson, D., Girma, D. "Efficient UMTS data service provision using Infostations", Vehicular technology conference, 1998. VTC 98. 48th IEEE,Volume:3, 1998, page(s): 2532-2536 vol.3 [5]Yates, R.D.;Mandayam, N.B, "Challenges in low-cost wireless data transmission", IEEE Signal Processin Magazine, volume:17Issue:3, May 200 Page(s):93-102 [6]Younghyun Baek, Sugryong Seo, Enuok Lee, “Expectations of profit from ‘Infostations’” Information and communications University, Taejon, Korea [7]Goodman, David J. “The wireless Internet: Promises and Challenges” Politechnic Institute [8]Gang Wu; Churng-Wen Chu; Wine; Wine, K.; Evans, J., Frenkiel, R. "WINMAC: a novel trasmission protocol for infostations", Vehicular Technoloy Conference, 199 IEE 49th, volume: 2, 1999 Page(s):1340-1344 vol.2 [9]Hua Mao, Gang Wu, James Evans, Michael Caggiano, “An Adaptive Radio Link Protocol infostations”, WINLAB, Rutgers University, New Jersey [10] Sami Tabbane, “An Alternative Strategy for Location Tracking”, IEEE journal on selected areas in communications, vol.13, No. 5. June 1995. [11] Fazli Erbas, Kyandoghere Kymakya, Jan Steuer, Klaus Jobmann, “On the User Profiles and the Prediction of User Movements in Wireless Networks”, University of Handover. [12] Fazli Erbas, Jan Steuer, Dirk Eggesieker, Kyandoghere Kyamakya, Klaus Jobmann, "A Regular Path Recognition Method and Prediction of User Movements in Wireless Networks",University of Hanover, IANT' Institute for Communications [13]”Diseño de algoritmos”, Jaime a. Bohórquez. http://agamenon.uniandes.edu.co/~rgarcia/Cursos/DisAlgoritmos/Notas%20JB/08_Dividir_y_vencer.pdf [14]Apuntes de la Universidad de las Americas de Puebla. http://mailweb.udlap.mx/~sainzmar/is211/AlgoritmosOrden.html [15]Charles Bowman: "Algoritmos y estructuras de datos: Aproximación en C". Oxford University Press, 1999.

Page 41: INSTITUO POLITECNICO NACIONAL UNIDAD PROFESIONAL

41

[16] Diccionario de Algoritmos y estructuras del NIST (Nacional Institute of Standards http://www.nist.gov/dads/HTML/stable.html.