Sistema de Información Telemático basado en Puntos Públicos de Acceso DEPARTAMENTO DE ELECTRÓNICA Y SISTEMAS FACULTAD DE INFORMÁTICA, UNIVERSIDAD DE A CORUÑA CAMPUS DE ELVIÑA s/n, 15.071 A CORUÑA Alberto Pan Bermúdez Lucía Ardao Rodríguez Fidel Cacheda Seijo Angel Viña Castiñeiras Correo electrónico: {alberto, lucia, fidel, avc}@gris.des.fi.udc.es Abstract: In this paper we describe the design of a information system based on telematic public access points. Its main features include: multimedia based information services, Internet connection, search capabilities and the use of smart cards as payment and access control means. A first implementation of the system is already in use. The conclusions obtained from its operation are also showed. 1. Introducción Un Punto Público de Acceso, conocido por las siglas PPA, consiste típicamente en un ordenador ubicado en un recinto seguro y situado en un lugar público, que permite a los usuarios obtener un acceso electrónico instantáneo a información y servicios [1]. Es indudable la expansión que han sufrido este tipo de sistemas, apoyados en gran manera por compañías que desean ofrecer un nuevo tipo de servicios a todos sus clientes de una forma cómoda y sencilla. A través de los PPAs es posible hacer llegar un gran volumen de información a los distintos sectores de la población, haciendo uso de la tecnología informática para presentar diversos tipos de servicios de la forma más atractiva posible. Del mismo modo, el estado actual de la tecnología en el campo del almacenamiento masivo facilita la incorporación de aplicaciones multimedia, lo que posibilita la presentación de los contenidos de una forma mucho más atractiva de cara al público y a través de una interfaz de usuario más amigable, obviando la necesidad de conocimientos informáticos por parte de los usuarios para utilizar de manera eficaz el sistema. Desde la perspectiva empresarial, las ventajas que presentan los PPAs se basan principalmente en el bajo coste que implica la realización de un sistema de estas características y la mínima infraestructura requerida en contraposición, por ejemplo, al establecimiento de oficinas de información. Todos estos factores han hecho que la expansión de los PPAs haya ido creciendo de forma paulatina hasta llegar a un punto en el cual se exigen contenidos más específicos, mayor dinamismo en la información mostrada y mayor variedad en los servicios ofrecidos, exigiendose gradualmente mayor calidad en los mismos. Las nuevas exigencias llevan a la creación de Puntos Públicos de Acceso telemáticos, en los cuales se facilitan las actualizaciones remotas del contenido de cada punto de información y se posibilita la incorporación de innovadores servicios como pueden ser el audio o vídeo en vivo y el acceso al mundo de Internet [2]. Mediante la incorporación de la telemática a los PPAs se posibilita la actualización remota y automática de los contenidos de forma totalmente transparente para los usuarios. Así, el proceso de actualización es independiente de la ubicación geográfica concreta de cada uno de los múltiples PPAs, todos ellos conectados a algún servidor del sistema. Sin embargo, la mayor ventaja se encuentra en la incorporación de Internet al mundo de los PPAs. Lo que ha dado en llamarse Internet Kiosks, ofrece a los usuarios una vía sencilla y cómoda de introducción en el mundo de Internet, permitiendo el acceso directo a todos los servicios que se ofrecen y puedan llegar a ofrecerse a través de ella. De esta forma, la información mostrada a través de un punto público de acceso no se encuentra limitada a la que sea posible almacenar localmente, sino que se permite acceder a una cantidad ilimitada de información: la ofrecida por medio del World Wide Web. La incorporación de estos servicios presenta un incremento del coste debido al empleo de líneas de comunicación. En consecuencia, es necesario algún tipo de financiación para utilizar este tipo de servicios. La financiación puede derivarse de módulos publicísticos incorporados al contenido, o bien mediante el cobro a los usuarios por el uso de servicios utilizando algún tipo de medio de pago. Este trabajo presenta una arquitectura para un sistema basado en Puntos Públicos de Acceso telemáticos. En la sección 2 se apuntan los principales requerimientos que debe de satisfacer un sistema de estas características. La sección 3 proporciona una descripción general del sistema. La sección 4 describe en profundidad los principales aspectos del diseño del mismo. La sección 5 muestra una implementación concreta y ya en funcionamiento de la arquitectura propuesta. Finalmente, la sección 6 expone las principales conclusiones y valoraciones extraídas del estudio presentado. 2. Objetivos En este punto se plantean los principales requerimientos que, a nuestro juicio, debe satisfacer un sistema telemático basado en PPAs. Estos son: • Seguridad: El sistema debe ser protegido ante ataques originados por usuarios de los puntos de información (ataques internos) o tentativas de acceso no autorizadas desde Internet (ataques externos). • Gestión remota: La arquitectura del sistema debe permitir recabar información sobre los puntos públicos de acceso mediante la monitorización de aspectos de rendimiento, utilización de servicios, líneas de comunicación, etc. Esta información incluye datos que pueden permitir tanto la realización automática de acciones remotas de ajuste, como la toma de decisiones de índole técnica y comercial. • Fiabilidad: El sistema debe de garantizar unos tiempos de disponibilidad máximos en los puntos de acceso. Para ello, se debe de garantizar robustez ante fallos o caídas del sistema, incidencias de seguridad, etc. Además, en caso de producirse alguna contingencia se debe asegurar una actuación rápida que permita restaurar el correcto funcionamiento del punto de información. Esto pasa por que la arquitectura del sistema ofrezca las facilidades de gestión remota mencionadas en el punto anterior. • Acceso condicional: Se debe poder limitar el acceso de los usuarios a determinados servicios en función de una serie de condiciones. Estas condiciones pueden referirse, por ejemplo, a la necesidad de realizar un pago electrónico o autentificar la identidad del usuario. • Pago electrónico: El sistema de pago debe estar adaptado a las peculiares características de los puntos de acceso en aspectos como seguridad, soporte de pagos por tiempo o por evento, soporte de pagos de pequeño importe e incluso en ciertos casos debería proporcionar alguna forma de anonimato. • Soporte para gran variedad de servicios: Los servicios ofertados por los puntos de acceso pueden ser de distintos tipos, en el presente trabajo se clasificarán los servicios según dos criterios. Un primer criterio se basa en el tipo de actualización requerido por los servicios, lo cual origina la siguiente clasificación: • Servicios locales: aquellos cuyo contenido se almacena localmente en los puntos de acceso y que, en general, no requieren ser actualizados. • Servicios remotos: aquellos servicios cuyo contenido se almacena remotamente en el servidor, lo que implica que las actualizaciones se realizan directamente en el mismo. • Servicios locales actualizados remotamente: aquellos que debido al gran volumen de información que tiene que ser transmitida durante su operación, no pueden tener sus contenidos almacenados en el servidor, ya que eso originaría unos tiempos de respuesta excesivamente altos, pero que, por otra parte, requieren actualizaciones periódicas. El segundo criterio divide a los servicios en base a sus características desde el punto de vista del acceso condicional, lo que da lugar a la siguiente clasificación: • Servicios de acceso condicional: se deben satisfacer ciertas condiciones para tener acceso al servicio. Pueden subdividirse en: • Gratuitos. • Pagados: Estos pueden requerir el pago por: • Tiempo de utilización. • Evento o acción realizada (e.g. pago por búsqueda realizada en un archivo documental). • Escalabilidad: La arquitectura debe estar preparada para crecer sin degradar parámetros del rendimiento global del sistema. Estos parámetros incluyen aspectos como tiempos de respuesta, rapidez de las actualizaciones, etc. 3. Descripción general Como se observa en la Fig. 1, la arquitectura presentada se basa en la existencia de uno o más servidores encargados de controlar y gestionar los múltiples puntos de información que componen el sistema, así como el sistema de seguridad necesario para evitar la realización de acciones no permitidas. Como primer aspecto a destacar se encuentra la estructura de comunicaciones empleada por el sistema para mantener conectados a todos y cada uno de los puntos de información con su respectivo servidor. El medio empleado se basa en RDSI (Red Digital de Servicios Integrados), principalmente por los siguientes motivos: ancho de banda ofrecido, movilidad y coste. Los servicios que típicamente se ofrecen en un punto de información telemático, si bien en su mayoría, no requieren una velocidad de conexión excesivamente elevada, sí requieren un mínimo que debe ser satisfecho con garantías. Por otra parte, debido a la forma de empleo de un punto de información, en donde existen variaciones en los tiempos de respuesta esperados dependiendo del servicio solicitado, e incluso de la presencia o ausencia de usuarios en determinadas situaciones, la línea de comunicación empleada debe ser capaz de soportar el tráfico variable generado, manteniendo los tiempos de respuesta esperados. sistema desde el exterior . El caso de los ataques internos se deriva de aquellos usuarios que desde los puntos de acceso pertenecientes al sistema intenten corromper al mismo, con diferentes objetivos como, por ejemplo, el acceso a servicios evitando el pago. Contra este tipo de ataques además de los mecanismos particulares implementados directamente en cada punto público, se requiere la presencia de un cortafuegos que controle a través de un agente proxy el acceso al exterior del sistema, consiguiendo así mismo la monitorización de los accesos al exterior realizados desde todos y cada uno de los puntos públicos de acceso. En el apartado 4.1 se trata este aspecto en mayor profundidad. Fig. 1: Arquitectura de un sistema de información basado en PPAs. Debido a la movilidad de los puntos de información, la línea de comunicación debe ser fácilmente instalable en cualquier punto de la zona de acción del sistema, que no necesariamente tiene porque ser local, hecho que no todas las líneas de comunicación soportan (e.g. líneas dedicadas). Por último, el coste asociado a la línea contratada debe estar en función de la utilización de la misma, debido principalmente a la variación en el tráfico generado por los distintos puntos de información. En consecuencia, la utilización de la red RDSI para la conexión de los diferentes puntos públicos de información con un servidor central presenta las características expuestas, garantizando, por medio de un acceso básico, una velocidad de transferencia lo suficientemente elevada. Para evitar que el acceso al servidor se convierta en un cuello de botella es posible aumentar la capacidad en el mismo mediante un acceso primario. En un sistema basado en redes abiertas, como es el caso de Internet, es necesario extremar el control ejercido tanto sobre los diferentes puntos de información, como sobre el servidor con el objetivo de evitar accesos indebidos. Esto se realiza a través de un cortafuegos, en donde en sistemas de este tipo las precauciones a tener en cuenta se centran en evitar ataques tanto externos como internos. Los ataques externos se producen por el empleo de una red abierta dentro de la estructura de comunicaciones, por lo que cualquier intruso puede intentar acceder al servidor central del sistema. Para prevenir este tipo de ataques están especialmente pensados los cortafuegos, controlando el acceso al Como se ha introducido anteriormente, la utilización de puntos de acceso telemáticos incorpora la existencia de servicios en los cuales es necesario condicionar el acceso, e incluso realizar pagos por la utilización de los mismos. Un ejemplo claro de esta situación es permitir el acceso a determinados servicios sólo a aquellos usuarios que cumplan determinada característica (poseer una tarjeta identificativa, conocer una contraseña, etc). El hecho de tener que realizar un cobro al usuario de un punto de información hace que se incorporen a los mismos los medios de pago electrónicos a través de monederos electrónicos. El uso de un punto de información puede generar gran cantidad de pagos de pequeño importe por la utilización de los servicios. Pensados especialmente para este tipo de situaciones se encuentran los monederos electrónicos utilizando tarjetas-chip pre-pagadas. En estos sistemas, el usuario realiza un desembolso inicial para la compra de la tarjeta, lo cual le permite posteriormente realizar diferentes gastos en los puntos de información que van decrementando el saldo de la tarjeta. Cuando el saldo se agota, la tarjeta-chip puede ser recargada. La arquitectura permite el empleo de tarjetaschip de clave compartida, con un coste asociado sensiblemente inferior a las tarjetas basadas en clave pública, obteniendo el mismo grado de seguridad en los puntos de acceso. Mediante este medio de pago electrónico se ofrece soporte para los diferentes pagos de pequeños importes que se puedan generar durante la utilización de un punto de información, incorporando incluso ciertas formas de anonimato. Una explicación detallada del sistema empleado puede encontrarse en el apartado 4.2. Uno de los principales aspectos que incorpora esta arquitectura se basa en la facilidad que ofrece para la actualización de los contenidos ofertados en el punto de información. Las actualizaciones se pueden realizar de dos formas principalmente. La primera de ellas consiste en la actualización directa en el servidor de los contenidos que serán accedidos a posteriori por los diferentes puntos de información. Esto determina que el servicio sea remoto. La segunda consiste en la actualización de los contenidos, a través del servidor, en cada uno de los puntos de información. Esto determina que el servicio sea local actualizado remotamente. El primer tipo de actualización no requiere ningún tipo de arquitectura específica, simplemente hace uso de las posibilidades que ofrecen aquellos servicios alojados en el servidor y accedidos remotamente desde el cliente. Este tipo de actualización presenta la importante ventaja de su fácil implementación e inmediata repercusión en el contenido pero, en cambio, no es una opción válida para algunos servicios cuyo volumen de información es excesivamente elevado. En estos casos, si los documentos residiesen en el servidor, se obtendrían tiempos de respuesta inaceptables. Para este último tipo de servicios, se ha diseñado una actualización remota y automática, que translada el control de la actualización a los puntos de información. Una vez que el servidor central ha determinado que se debe iniciar la actualización remota, el punto de información solicita al servidor de actualización únicamente aquellos datos necesarios para mantener el sistema actualizado desde la última actualización realizada. En un sistema basado en puntos de información, la dispersión geográfica es un elemento importante e inherente al propio sistema. Por este motivo es de vital importancia poder determinar en todo momento la situación exacta de cada puesto de información. La arquitectura propuesta permite la incorporación de técnicas de gestión de red al sistema, con el objetivo de poder detectar y corregir fallos del sistema, así como monitorizar la calidad de servicio ofrecida a los usuarios. Mediante el empleo de técnicas de monitorización y muestreo exhaustivas, es posible determinar en todo momento el estado de cada punto de información. De esta forma, se permite determinar en todo momento aquellos puntos de información que se encuentran funcionando correctamente, y lo que es más importante, en algunos casos, es posible una recuperación automática y remota del equipo que presente problemas intentando de esta forma responder de la forma más rápida posible ante los fallos del sistema. Así mismo, es posible visualizar en todo momento el funcionamiento de los componentes primordiales del punto de información, así como la carga de las líneas de comunicación empleadas. De esta forma se consigue controlar en todo momento el funcionamiento del sistema, pudiendo detectar posibles mejoras o reparaciones a realizar en base a datos obtenidos de las observaciones realizadas. El apartado 4.4 profundiza en este tema. Por último, una de las mayores ventajas aportadas por esta tecnología se basa en su escalabilidad. Esta arquitectura no se encuentra limitada a un funcionamiento con un número fijo de puntos de información y un único servidor central. Por el contrario, en caso de que el número de puntos públicos de acceso alcance un número elevado para ser gestionados a través de un único servidor central, existe la posibilidad de ampliar modularmente la arquitectura. En el apartado 4.5 se toca este aspecto en mayor detalle. 4. El sistema en detalle. 4.1 Seguridad Las peculiares características de un sistema de información telemático basado en puntos públicos de acceso obligan a considerar la seguridad desde dos puntos de vista, derivados respectivamente de: • La condición pública de los puntos de acceso al sistema. • La conexión del sistema a una red abierta, típicamente Internet. El primer aspecto consiste en intentar evitar acciones indebidas de los usuarios, tanto sobre el punto de acceso como sobre los servidores, que podrían causar fallos en el sistema o compromisos en la seguridad del mismo. Esto conlleva, por una parte, dotar a los puntos públicos de acceso de medidas de seguridad física, tales como las provistas por equipos antivándalicos, una estructura externa resistente a ataques físicos, etc. Y por otra parte, es necesario crear una interfaz de usuario del punto de acceso que aune la facilidad de manejo con la limitación de aquellas operaciones que podrían resultar peligrosas (e.g. escribir en el dispositivo de almacenamiento, acceder a la interfaz del sistema operativo, etc.). El segundo aspecto crucial para la seguridad del sistema consiste en el control de los accesos a los servidores desde máquinas externas conectadas a través de Internet, o cualquier otra red abierta. Para solucionar este problema se utiliza un cortafuegos, implementado mediante un encaminador y un agente proxy localizado en el servidor, actuando este último como “bastion host” [4]. El modo de funcionamiento del cortafuegos se basa en la configuración del encaminador y del agente proxy del servidor. El encaminador es configurado para no permitir la comunicación entre los puntos de acceso y la red abierta, del mismo modo que tampoco se permiten conexiones desde el exterior a los puntos de acceso. Para permitir la comunicación entre los puntos de acceso y algún nodo de la red abierta se hace uso del agente proxy situado en el servidor que habilita o deniega el acceso en función de parámetros de autorización de los servicios. En base a los requerimientos de seguridad de este sistema una solución estándar de cortafuegos como la aquí utilizada ofrece las garantías exigidas. Debe tenerse en cuenta que la seguridad ante ataques internos (ataques al servidor desde los puntos de acceso) es fuertemente incrementada por las ya comentadas restricciones de seguridad impuestas a los puntos públicos. 4.2 El Sistema de Pago y Control de Acceso El Sistema de pago y control de acceso se basa en el uso de tarjetas-chip (también conocidas como tarjetas inteligentes) frente al empleo de tarjetas de crédito (debido a los altos costes por transacción inherentes a este método de pago). Esto permite dar solución a las necesidades de pago electrónico, al tiempo que proporciona una manera natural de implementar la estructura de autorizaciones necesaria para el acceso condicional a los servicios. Desde el punto de vista del pago, las tarjetaschip son pre-pagadas, lo que significa que las tarjetas son cargadas con un cierto importe y posteriormente el usuario puede utilizarlas para pagar los servicios del sistema. Este enfoque proporciona de forma automática varias ventajas: debido a que las tarjetas son pre-pagadas no es necesario realizar ninguna comprobación on line con una entidad bancaria o de otro tipo, lo que abarata considerablemente el coste de una transacción y hace al sistema adecuado para pagos de importes pequeños. Además, si las tarjetas no son distribuidas de manera personalizada, el sistema de pago es potencialmente anónimo lo que puede ser interesante en determinadas aplicaciones. Las tarjetas-chip propuestas en la arquitectura se basan en la criptografía de clave compartida. Esto implica que la tarjeta-chip y el terminal de venta comparten una clave secreta que utilizan para autentificarse mútuamente mediante un protocolo basado en el uso de números aleatorios. La tecnología de tarjetas-chip de clave compartida es mucho más barata que su competidora, la tecnología de tarjetas-chip de clave pública. La ventaja de la criptografía de clave pública en los sistemas de monedero electrónico de este tipo, consiste en permitir a los terminales de venta contener únicamente claves públicas, lo que hace inútil vencer su seguridad con el propósito de cometer un fraude al sistema [5]. El problema de la seguridad de los terminales de venta es especialmente grave en el caso de los PPAs, donde dicho terminal está expuesto al público. Sin embargo, el uso de tarjetas-chip de clave pública podría encarecer en demasía el sistema de pago. La arquitectura que presentamos soluciona el problema de seguridad de los puntos de venta con un incremento inapreciable del coste, haciendo uso de las líneas de comunicación ya existentes que conectan servidores y puntos de acceso. Básicamente, se transfiere la “inteligencia” del terminal de venta al servidor, de manera que el terminal del punto de acceso se limita a contener un proceso “proxy” que actúa como intermediario en las comunicaciones entre la tarjeta-chip y el servidor. De esta manera, la clave compartida reside físicamente en el servidor, con lo que no es vulnerable a ataques por parte de los usuarios. La clave no puede ser interceptada por intrusos en las comunicaciones entre tarjeta y servidor debido al uso del sencillo protocolo de autentificación basado en la transmisión de números aleatorios típico de clave compartida: un extremo que desee autentificar al otro genera un número aleatorio y se lo envía al otro extremo, quien debe de devolverlo encriptado con la clave compartida. El extremo emisor encripta a su vez el número aleatorio con la clave y comprueba que ambos resultados son idénticos. En la Fig. 2 se muestra un sencillo esquema del sistema, en el que se muestra la función de intermediario que efectua el PA. Con este sencillo esquema se consiguen, aparte del incremento de seguridad ya mencionado, otras características convenientes tales como: una mejor monitorización del sistema de pago (que ahora puede ser realizada desde los servidores), compartición de recursos del sistema de pago por parte de todos los puntos de acceso (e.g. si se usa un sistema de pago general, basta con contratar con la entidad propietaria del sistema de pago, un terminal de venta por servidor y no uno por punto de acceso), etc. Por otra parte, el coste temporal extra asociado a las comunicaciones con el servidor es casi despreciable en nuestro caso debido fundamentalmente a los siguientes factores: la capacidad que deben tener las líneas de Lector de tarjetas PA (Proceso proxy) Servidor (Punto remoto de venta) Fig. 2 : Estructura del sistema de pago comunicaciones para dar soporte a los servicios telemáticos es ampliamente superior a la requerida por el sistema de pago (los datos intercambiados en cada transacción no sobrepasan los 50 bytes) y a que la velocidad de la comunicación entre el ordenador del PPA y el lector de tarjetas-chip (que obviamente también se tendría que realizar si la transacción fuese totalmente local) se produce a velocidades mucho más bajas (e.g. 9600 bps) que la comunicación con el servidor, con lo que es ahí donde se situará el cuello de botella del tiempo de respuesta de una transacción. El uso de tarjetas-chip de uso exclusivo en el sistema puede resultar poco flexible para los usuarios. Hay dos maneras de solucionarlo: la primera de ellas consiste en utilizar un sistema de monedero electrónico de uso general (e.g VISA Cash, EURO-6000, etc). Esto requiere agregar a los servidores un módulo de punto de venta de estos sistemas. En el servidor actuaría otro proceso “proxy” entre el terminal de venta y la tarjeta-chip. La segunda manera se basa en utilizar tarjetas de crédito como medio para la carga de las tarjetas-chip. Este método consistiría en disponer de puntos automáticos de adquisición y recarga de tarjetas-chip específicas para los puntos públicos, donde la compra y recarga de las mismas se realizase de manera automática y con cargo a una tarjeta de crédito. El primer método mantiene todas las ventajas del sistema inicial, pero puede requerir algún acuerdo especial con el proveedor del método utilizado (e.g. VISA). El segundo impide que los usuarios puedan tener garantía de anonimato e incrementa el coste debido al establecimiento de puntos donde se aceptan tarjetas de crédito. En cuanto al sistema de acceso condicional, este también se beneficia de las ventajas de la arquitectura debido a que toda la información referente a la seguridad y a las condiciones de acceso reside en el servidor, de manera que una intrusión en los puntos de acceso es inútil, del mismo modo que se facilita la actualización y monitorización de las reglas de acceso al sistema. La complejidad del sistema de acceso puede variar desde la necesidad de poseer una tarjeta-chip autorizada para acceder a algún servicio, hasta construir una compleja estructura de autorizaciones y condiciones de acceso basándose en la información de autorización contenida en la tarjeta-chip, el sistema puede decidir si proporciona o no el acceso, así como mantener o modificar la información de autorización de la tarjeta. 4.3 Actualización de contenidos La idea básica para la actualización de contenidos en el sistema consiste en el empleo de un tipo de procesos denominados “servidores de actualización”, encargados de detectar la existencia de nuevos documentos en el servidor. Estos envían un aviso a otro tipo de procesos que se ejecutan en los puntos públicos de acceso, llamados “clientes de actualización”. El principal aspecto se centra en que el peso de las decisiones recae en el proceso cliente, quedando los procesos servidores como meros “mensajeros”, encargados únicamente de advertir a los clientes de los cambios producidos y proporcionar los datos que precisan para realizar la actualización. Las razones de este enfoque son varias y se irán mostrando en las líneas que siguen. El hecho de realizar una actualización involucra diferentes actividades según el tipo de servicio a actualizar, remoto o local actualizado remotamente. En el primer caso, una vez realizada la actualización en el servidor, únicamente es necesario eliminar la información de la cache de la aplicación cliente, de manera que los contenidos del servicio tengan que obtenerse directamente del servidor. Este tipo de actualizaciones, normalmente, puede realizarse una vez es recibida la señal procedente del “servidor de actualizaciones”, ya que no afectan de forma sensible a la calidad de servicio ofrecida al usuario. Sin embargo, la actualización de los servicios locales actualizados remotamente, debe realizarse de forma diferente debido a que se necesita un uso intensivo de las líneas de comunicación y de un sistema de almacenamiento local, lo que podría perjudicar el correcto funcionamiento del punto de acceso. Por este motivo, el “cliente de actualización” debe ser autónomo respecto al “servidor de actualización”, lo que implica que debe de ser capaz de obtener del servidor los datos necesarios para la actualización (tales como el servicio afectado, el volumen de datos a actualizar, etc.), almacenarlos y realizar la actualización en el momento adecuado, que, por ejemplo, si la rapidez de la actualización no es un factor crítico, puede ser el horario nocturno, o en caso contrario, puede emplear los intervalos en que el punto de acceso no esté siendo utilizado por ningún usuario. En cualquier caso, el cliente debe de ser capaz de almacenar el estado de la actualización para proseguirla posteriormente. Por otra parte, poner la “inteligencia” del sistema en el cliente permite descargar al servidor del control de las actualizaciones de todos los puntos de acceso. Así, el papel del servidor se reduce a proporcionar un mensaje con información sobre la actualización a todos los clientes y, en caso de realizarse algún tipo de monitorización del proceso, debe recibir mensajes indicativos del estado de la actualización en el cliente. En este sentido, el sistema funciona de manera similar a los protocolos de “Webcasting” o tecnologías “push” actualmente en auge en Internet. La idea general expuesta debe de ser ajustada a cada caso particular para obtener un protocolo plenamente adaptado a las necesidades de cada sistema. A continuación se esboza brevemente un protocolo concreto que, aun siendo sencillo, será adecuado para la mayoría de sistemas. Para las actualizaciones en servicios locales actualizados remotamente, el proceso se inicia cuando el servidor de actualizaciones envía a cada PPA un mensaje en el que se indica: el servidor que envía el mensaje, el servicio al que se refiere la actualización, un identificador de la actualización, el número de documentos nuevos, la longitud total de los mismos, una fecha tope de terminación y una lista (opcional) de algunos documentos y sus longitudes. La lista es conveniente para servicios multimedia porque, frecuentemente, el tamaño de los documentos es muy variable. En caso de no utilizarse esta lista, el cliente podría comenzar la actualización de un documento de tamaño elevado y no disponer de suficiente tiempo para terminarla antes de que el siguiente usuario acceda al punto de acceso, causándole importantes restricciones en la calidad del servicio. De esta manera, listando los documentos de mayor volumen el cliente puede realizar una mejor planificación (e.g. puede dejar los documentos de mayor longitud para las horas nocturnas). Adicionalmente, la lista puede ser utilizada para asignar prioridades a los documentos. un proceso en el servidor efectue un test de conectividad sobre sus clientes para detectar posibles caídas de los puntos de acceso o de las líneas de comunicaciones. Sin embargo, se requerirán, normalmente, controles e información más rigurosa que permitan recoger, por ejemplo, parámetros de comunicaciones (e.g % de paquetes perdidos en las comunicaciones con cada punto de acceso, tiempos de respuesta, etc.), parámetros de distribución de carga (e.g. carga de CPU, picos de utilización, etc. ), etc. Este tipo de parámetros pueden ser recogidos y procesados utilizando técnicas estándar de Gestión de Red. En concreto, el uso de alguna herramienta de Gestión de Red basada en SNMP debería de ser suficiente para detectar a tiempo anomalías y caídas en la calidad de servicio de un punto de acceso determinado, a la vez que puede proporcionar información extremadamente útil para determinar la causa del problema. El enfoque a utilizar sería el clásico, con un agente SNMP en cada punto de acceso y el gestor localizado en el servidor. Ambos manejarían una MIB específica orientada a la gestión de los PPA. Los agentes recolectan la información especificada y lanzan alarmas (“traps”) si se sobrepasan los niveles permitidos en ciertos parámetros. Otra posible opción sería utilizar agentes RMON (“Remote MONitoring”) para la recolección de estadísticas de diversos parámetros del sistema [3]. El cliente puede enviar al servidor dos tipos de mensajes que permiten a este realizar una monitorización completa del proceso de actualización. El primero es un mensaje indicando el estado de la actualización, que puede ser enviado a intervalos predeterminados. En este mensaje, cada PPA especifica cuantos documentos han sido ya actualizados, su longitud, así como cuales de los documentos de la lista han sido tratados. El segundo es un mensaje de error que indica al servidor que se ha surgido un problema intentando actualizar un documento. Si bien, por razones de limitación en la extensión del presente artículo, no se puede tratar en detalle la estructura de una MIB para estos sistemas, sí se pueden apuntar algunos parámetros específicos a modo de ejemplo: distribución del tiempo de operación entre los servicios, utilización y picos de uso de recursos del PPA por servicio, número de usuarios para cada servicio y, en general, parámetros que no sólo permitan monitorizar el funcionamiento adecuado de los PPAs, sino que permitan adecuar los requerimientos concretos para cada servicio en cada PPA, proporcionando a la vez información para medir la aceptación de los servicios entre los usuarios. Una de las principales ventajas de la gestión de red aplicado a sistemas de este tipo es la capacidad para realizar acciones de forma automática con un mínimo tiempo de respuesta. El modo de funcionamiento consiste en el empleo de acciones de recuperación asociados a determinados tipos de alarmas activadas por los clientes. Esto permite la detección de situaciones de compromiso de la seguridad o posibles errores de funcionamiento (e.g. es posible detectar mediante una alarma si una aplicación cliente necesaria en el PPA ha dejado de estar activa, tomándose la acción de reiniciar remotamente el punto público de acceso para restaurar las anomalías). El caso de actualizaciones de servicios remotos es mucho más sencillo ya que sólo se requiere un mensaje de aviso del servidor al cliente y otro de respuesta de la acción en sentido inverso. 4.4 Gestión remota Es sencillo aplicar en la arquitectura técnicas de monitorización remota que permitan detectar de manera rápida anomalías de funcionamiento, caídas en la calidad del servicio, etc. La idea central consiste en que un servidor se gestiona a sí mismo y a los clientes que dependen de él. La complejidad de las técnicas empleadas puede variar ampliamente según el nivel de gestión requerida. En el caso más sencillo bastaría con que 4.5 Protocolo de respaldo La posibilidad de fallos o excesos de carga en servidores puede ser tratada de manera eficaz en sistemas a gran escala mediante una estructura basada en la agrupación por zonas de los PPAs, designando un servidor primario por zona y uno o varios servidores secundarios (que a su vez, pueden ser primarios para otras zonas) para propósitos de respaldo, siguiendo un esquema similar al planteado por DNS (Domain Name System). Ocurrirá normalmente que los contenidos ofertados en cada zona sean diferentes (e.g. servicios de información local), lo que implica que los servidores secundarios deben actualizar sus contenidos de manera automática, pudiendo utilizar para ello un protocolo muy similar al mostrado en el punto 4.3, utilizado para las actualizaciones en servicios locales actualizados remotamente. De esta manera, si un servidor primario no está accesible en un momento determinados, sus clientes pueden dirigirse a alguno de los servidores secundarios temporalmente mientras no se recupera la conectividad con el servidor primario. Se corre el riesgo de que el servidor secundario no haya tenido tiempo de actualizarse totalmente, pero se evita la ausencia de servicio al usuario. De la misma forma, un servidor primario sobrecargado puede ordenar a sus clientes dirigir sus peticiones relacionadas con un determinado servicio a un servidor secundario que le haya informado de la finalización de la actualización de dicho servicio. Esta estructura puede generalizarse organizando los servidores del sistema de modo jerárquico, de tal forma que los servidores raíz se encargan de proporcionar los contenidos generales del sistema y los servidores de niveles inferiores introducen contenidos y servicios específicos para zonas o subzonas específicas. Esta estructura es, en muchos aspectos, similar a la conocida jerarquía DNS y, al igual que ella, proporciona fiabilidad basada en servidores secundarios, escalabilidad y extensibilidad automáticas, evita la replicación de contenidos (excepto para propósitos de apoyo) y permite una gestión independiente para cada zona. Los protocolos que soportan esta arquitectura, así como otras consideraciones que deben de realizarse sobre ella, serán tratados en una futura comunicación. 5. Una implementación concreta: Proyecto KIM En este apartado se muestra una implementación concreta y ya en funcionamiento de la arquitectura presentada: el proyecto KIM (Kiosco Interactivo Multimedia) realizado para el Grupo Voz de comunicaciones. La primera versión fue presentada en noviembre de 1.996 y ha estado en funcionamiento desde entonces. Es esta versión la que se tomará como referencia para las líneas que siguen. 5.1 Los servicios del KIM Con el KIM se pretende proporcionar al ciudadano medio un sistema de puntos de información de acceso público, que sea el soporte para una serie de servicios novedosos. La característica fundamental de este sistema frente a los sistemas de puntos de acceso habituales en su zona de operación, es su condición de telemático, es decir su capacidad de proporcionar servicios de naturaleza telemática como puede ser la consulta de bases de datos documentales o permitir el acceso a Internet. A continuación se presentan los servicios que ofrece el sistema clasificándolos según los criterios que fueron presentados en el apartado 2. Dentro de la clasificación de servicios locales se ofrece un servicio de información corporativa en formato multimedia (audio, video, rotativas en 3D) del GrupoVoz de comunicaciones. Atendiendo al otro criterio de clasificación, se trata de un servicio de acceso libre. Dentro de los servicios locales actualizados remotamente se engloba el servicio de Hemeroteca on-line. Este servicio permite la consulta de los periódicos del último año del archivo hemerográfico del Grupo Voz, ofreciendo dos utilidades principales: • Consulta de periódicos: Permite al usuario consultar el periódico de una fecha determinada. • Búsquedas: Permite realizar búsquedas en el archivo hemerográfico. Las búsquedas pueden realizarse entre los periódicos de un período determinado (e.g el último trimestre o el último año) y se admiten búsquedas avanzadas (e.g buscar las palabras similares a una dada, buscar las palabras con la misma raiz léxica, etc.) Los periódicos se visualizan en un formato que es una reproducción exacta del periódico impreso, utilizando para ello el formato Adobe PDF (Portable Document Format). El servicio es actualizado diariamente con el fin de que el archivo hemerográfico contenga incluso el periódico del día. El servicio no es remoto (i.e. no se almacenan los documentos directamente en el servidor) debido a que el elevado tamaño de los documentos y los índices utilizados en las búsquedas, convertirían al servicio en extremadamente lento. Desde el punto de vista del otro criterio de clasificación considerado, el servicio es de acceso condicional gratuito. Para el acceso a este servicio es necesario introducir en el lector una tarjeta chip autorizada, si bien actualmente no se sustrae dinero de ella durante la operación. Si el usuario retira la tarjeta mientras se está utilizando este servicio, la consulta se interrumpe automáticamente. Dentro de los servicios remotos englobamos: • Conexión a Internet de pago: Este es un servicio de acceso condicional de pago por tiempo. Desde el punto de acceso es posible navegar por Internet y conectarse a cualquier servidor WWW externo. Sin embargo, para ello el usuario tendrá que disponer de una tarjeta chip autorizada que posea saldo suficiente. Cuando el usuario esté conectado a Internet, se sustraerá dinero de esta tarjeta a intervalos definidos. Si el usuario retira la tarjeta o se agota el dinero de ésta, el acceso queda automáticamente interrumpido, permitiéndose exclusivamente el acceso a los servidores propios del sistema. • Radio en Internet: Se ofrece un menú ‘a la carta’ con programas de radio así como radio ‘en vivo’ en Internet de la emisora del GrupoVoz. Junto con el nombre de los programas ofertados, se indica la fecha y hora de emisión así como el tipo de programa. Este servicio es de acceso libre. • Inserción de anuncios por palabras y suscripciones al periódico convencional: El usuario del punto de acceso telemático tiene la posibilidad de contratar un anuncio por palabras para la edición impresa de los periódicos del GrupoVoz y de contratar una suscripción a cualquiera de las ediciones de los mismos. Ambos servicios son de acceso condicional pagado por eventos. En el caso de los anuncios por palabras, se utiliza la tarjeta chip autorizada para pagar el anuncio contratado. En el caso de las suscripciones, el pago se realiza utilizando una cuenta bancaria. 5.2 La implementación de la arquitectura en el KIM líneas RDSI de acceso básico. El uso de un sólo servidor es suficiente por el momento debido a que el número de clientes es reducido. Los clientes acceden al servidor a través de un router que está conectado con el servidor mediante una Ethernet a 10 Mbps. La salida a Internet se realiza a través del router mediante una línea Frame Relay a 64 Kbps. • Seguridad: Se ha utilizado un cortafuegos combinado con técnicas de seguridad en los puntos públicos, tal y como se ha comentado en el apartado 4.1 • El sistema de pago y de control de acceso: El sistema de pago empleado es un sistema propietario de tarjetas chip pre-pagadas. Las tarjetas son anónimas ya que no están ligadas a ningún usuario concreto. No ha sido necesaria la integración con sistemas de pago de uso general, ya que el sistema fue planteado para su uso en superficies comerciales, por lo que es sencillo disponer puntos de venta y recarga de las tarjetas cerca de cada punto de acceso • Actualización de contenidos: Se ha implementado la estructura de actualizaciones presentada en el apartado 4.3 para el servicio de Consulta del archivo hemerográfico. El protocolo concreto se ha simplificado ligeramente con respecto al del punto 4.3 para aprovechar que el servicio se actualiza a intervalos diarios. • Monitorización, gestión remota y protocolos de backup: Debido a que este tipo de sistema requiere una gestión remota sencilla sólamente se han implementado los aspectos que chequean la conectividad de los puntos de acceso y que se encuentran lanzadas todas la aplicaciones necesarias para el correcto funcionamiento del punto de acceso. Adicionalmente, se ha implementado un mecanismo simple que muestra mensajes en el servidor describiendo que acción se está realizando en cada momento en cada punto de acceso (e.g. que servicio se está utilizando, como se accede a él, etc.). Actualmente se están realizando pruebas con protocolos más complejos basados en el uso de SNMP y agentes RMON. 5.3 Valoración del funcionamiento del KIM En este apartado revisaremos los puntos presentados en el apartado 4 indicando que opciones de las ofrecidas por la arquitectura se han tomado para este sistema concreto, además de cual es la estructura de comunicaciones: • Estructura de comunicaciones: El sistema lo componen un servidor central y un conjunto de clientes dispersos geográficamente que se comunican con este servidor central utilizando En este apartado se indica como se ha comportado la arquitectura en la implementación particular que aquí se presenta. • Seguridad: Se han producido ataques simples a la seguridad de los puntos públicos, tales como intentos de acceso al sistema operativo de los ordenadores clientes. Las medidas de seguridad tomadas en los puntos de acceso fueron suficientes para evitarlos e informar de ellos. • El sistema de pago y de control de acceso: Los costes por transacción se han mostrado como casi nulos, lo que ha confirmado que el sistema de pago es válido para pagos de pequeño importe. Si bien las restricciones de acceso condicional en el sistema han sido sencillas, y no permiten sacar conclusiones generales, el sistema de tarjetas-chip también se ha comportado bien en este aspecto, permitiendo realizar una buena monitorización de las reglas de acceso. También se ha comprobado que el uso de tarjetas-chip exclusivas del sistema no es un problema serio si pueden disponerse puntos de venta y recarga de las mismas cerca de cada punto de acceso. • Actualización de contenidos: Las primeras pruebas con el servicio de Consulta del archivo hemerográfico mostraron la inviabilidad de plantear el servicio como remoto. Con el enfoque de actualizaciones, ha podido realizarse el servicio satisfaciendo adecuadamente los requisitos de velocidad. Pudo observarse al realizar las actualizaciones remotas que debido al elevado volumen de información a transmitir, las actualizaciones podían ser, en ocasiones, algo lentas. Sin embargo, esto no constituyó un problema en este caso concreto debido a que las actualizaciones podían realizarse en las horas nocturnas. En casos en que se requieran actualizaciones más rápidas, puede requerirse el uso de formatos que generen documentos de menor tamaño que el Adobe PDF. • Monitorización, gestión remota y protocolos de backup: Los procesos implementados de monitorización y gestión remota, a pesar de su sencillez, se han mostrado como suficientes para este sistema, debido a que el número de puntos de acceso ha sido bajo. Entre las incidencias que ha permitido detectar han estado: caída de la línea entre un punto de aceso y el servidor y pérdida de corriente eléctrica en un punto de acceso. También se detectaron casos en que se produjeron fallos de alguna aplicación del punto de acceso (e.g el navegador de Internet). Esto provocó que el proceso de gestión remota reiniciase el punto de acceso donde se había producido el fallo, restaurando así su funcionamiento normal. A pesar del buen funcionamiento en líneas generales, para sistemas con un número de puntos de acceso elevado, parece conveniente generalizar las técnicas empleadas mediante el uso de herramientas más formales de gestión de red. Las primeras experiencias con SNMP y agentes RMON parecen confirmar esta apreciación. 6. Discusión de la arquitectura Una vez expuestos los principios de la arquitectura y las conclusiones extraídas de la operación del primer sistema construido de acuerdo a ella, se procede a la valoración de la misma en base a los objetivos planteados inicialmente. Como primera característica cabe destacar la capacidad para soportar un amplio espectro de tipos de servicios. El soporte para servicios locales es inmediato por la naturaleza del punto de información, mientras que el soporte para aquellos servicios remotos se posibilita por la conexión con los servidores. La parte más novedosa se centra en el soporte de servicios locales pero actualizados remotamente desde los servidores. Desde el punto de vista del acceso condicional a los servicios, la incorporación al punto público de acceso de un mecanismo de monedero electrónico basado en tarjetas-chip ofrece soporte para prácticamente cualquier aplicación de control de acceso, al tiempo que proporciona una manera segura y eficiente de realizar el pago por los servicios. De todas maneras, si el acceso condicional se implementa en base a otro método no existe ningún inconveniente en la arquitectura que impida la incorporación del mismo al punto público de información. También cabe destacar, respecto al pago electrónico, la posibilidad de incluir mecanismos de pago de uso general, frente al uso de un método propietario de uso exclusivo en el sistema. Esto permitiría incorporar una mayor flexibilidad en los pagos de los usuarios, al poder emplear los mecanismos de pago electrónico que utiliza para otros propósitos. En cuanto a la seguridad incorporada por el sistema, el esquema basado en un cortafuegos estándar que se ha esbozado, unido a las precauciones tomadas en la implementación del punto de información para permitir al usuario realizar únicamente aquellas operaciones estrictamente necesarias para un empleo cómodo y eficiente de los servicios, parecen ser más que suficientes para sistemas de este tipo, donde normalmente el incentivo de fraude para posibles atacantes sea bajo. Otro aspecto considerado en la arquitectura, que posibilita la detección y corrección de fallos se basa en la monitorización y gestión remota de los diferentes puntos de información realizada a través de técnicas de gestión de red. Esto enlaza directamente con las posibilidades de recuperación automática que ofrece el sistema ante algunos fallos en los puntos públicos. También es importante la capacidad para detectar posibles zonas de mejoras en el sistema en función de los valores obtenidos de la monitorización y que abarcan tanto aspectos relacionados con la utilización de las líneas de comunicación como con los diferentes elementos que componen el punto de información, así como con el grado de utilización de los diferentes servicios. Por último destacar el alto grado de escalabilidad que presenta el sistema, de tal modo que su crecimiento no influencia sobre aspectos como los tiempos de respuesta ofrecidos a los usuarios en determinados servicios, tiempo invertido en las actualizaciones remotas, etc. Esto es debido a la utilización del modelo jerárquico y organizado en zonas esbozado en el apartado 4.5, el cual permite el crecimiento gradual del sistema sin degradación en los parámetros de calidad de servicio observados por el usuario, al tiempo que permite una distribución natural entre los servidores de la carga asociada a las actualizaciones de los servicios. De esta forma, se concluye que aún existiendo puntos mejorables, la arquitectura propuesta da soporte a los objetivos principales reseñados inicialmente. Referencias [1] Morris, G., Sanders, T., Gilman, A., Stephen, A. y Smith, S. “Kiosks: A technological Overview”. LA-UR-95-1672. CIC-3, Los Alamos National Laboratory. Los Alamos, NM 87545. January, 1995. [2] Shah, R. “Suggestions for Information Kiosk System using the World Wide Web”. The World Wide Web information Kiosks Special Interest Group, April 1994. [3] Rose, T. “The simple book. An introduction to networking management”, 2nd ed. Prentice Hall 1997. [4] Hare, C. and Siyan K. “Internet Firewalls and Network Security”, 2nd ed. New Riders 1.996. [5] Chaum, David. “Prepaid smart card techniques: A brief introduction and comparison”. Technical report DIGICASH (1994).