En los últimos años, se ha presentado una enorme demanda por servicios portátiles,



Documentos relacionados
Este sistema de manera global presenta cuatro módulos: bearerbox de Kannel, kj-

Creación de un gateway entre SMS y JMS para Kannel

Capítulo 5. Cliente-Servidor.

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

QUE ES COMLINE MENSAJES? QUE TIPO DE MENSAJES PROCESA COMLINE MENSAJES?

Descripción. Este Software cumple los siguientes hitos:

Proyectos Finales. Redes de Computadoras Proyecto 1. Sistema de almacenamiento virtual sobre una plataforma P2P utilizando JXTA.

Instalación del Software Magaya

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl

II. Análisis del problema

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Versión / 04 / GUÍA RÁPIDA PARA USUARIOS

SIEWEB. La intranet corporativa de SIE

REGISTRO DE EMPRESAS Y PERSONAS BASE DE INFORMACIÓN DE CLIENTES & CONTACTOS

Hostaliawhitepapers. Las ventajas de los Servidores dedicados. Cardenal Gardoki, BILBAO (Vizcaya) Teléfono:

CAPITULO IV CONCLUSIONES Y RECOMENDACIONES

Ingeniería de Software. Pruebas

Windows Server 2012: Infraestructura de Escritorio Virtual

Mesa de Ayuda Interna

SDT Sistema de Provisioning y Conciliación

Mi propuesta consiste en crear un portal Web que contemple las siguientes funcionalidades:

APÉNDICE E: MANUAL DE USUARIO PARA EL SISTEMA DE MONITOREO DE REDES LAN.

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

CAPÍTULO 4 ANÁLISIS DE IMPLEMENTACIONES

Gestión Dispositivos Móviles Dexon Software

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

10 razones para cambiarse a un conmutador IP

INFORME TECNICO ESTANDARIZACION DE SERVICIOS

Tabla de contenido. 1. Objetivo Asignación de responsabilidades Alcance Procedimientos relacionados...4

JAVA EE 5. Arquitectura, conceptos y ejemplos.

Capitulo I. Introducción

SISTEMAS DE INFORMACIÓN II TEORÍA

DATOS IDENTIFICATIVOS:

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

Symantec Backup Exec System Recovery 7.0 Server Edition. Recuperación de sistemas en cuestión de minutos, en lugar de en horas o días

CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA. BizAgi Process Modeler

Juan Carlos Serna Morales

Producto. Información técnica y funcional. Versión 2.8

11/06/2011. Alumno: José Antonio García Andreu Tutor: Jairo Sarrias Guzman

Capítulo V. Implementación

LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO

CAT Información. Proveedor de Soluciones Informáticas. Rev.: 10/2008

Diseñado y Desarrollado por Sistemas Informáticos Aplicados, SA de CV. Socio Estratégico de Negocios

CAPÍTULO 1 Instrumentación Virtual

SISTEMA DE GESTIÓN DE INCIDENTES Manual de usuario

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores

Elementos requeridos para crearlos (ejemplo: el compilador)

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

(PHP y APACHE), y el programa de comunicación Skype, para controlar de manera

Simulador de Protocolos de Red a tráves de WEB

Servidores Donantonio

Introducción a las redes de computadores

4. Programación Paralela

SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA

UNIVERSIDAD FRANCISCO GAVIDIA Tecnología, Humanismo y Calidad DIRECCION DE POSTGRADOS Y EDUCACION CONTINUA

10775 Administering Microsoft SQL Server 2012 Databases

Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java

Visión General de GXportal. Última actualización: 2009

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV

Este proyecto propone la investigación referente al modelado y desarrollo de agentes para

Diego Mauricio Cortés Quiroga

Qué son los protocolos de enrutamiento Dinámico?

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios

UNIVERSIDAD DE SALAMANCA

Unidad I: La capa de Red

MANUAL DE USUARIO DESKTOP

SISTEMA DE ESPECIICACION DE REQUERIMIENTOS

UNIVERSIDAD TECNICA DEL NORTE

CURSO COORDINADOR INNOVADOR

ESCUELA NORMAL PROF. CARLOS A CARRILLO

Guía rápida de la Oficina Virtual Área Web y Administración Electrónica

CONTRALORIA GENERAL DE LA REPUBLICA UNIDAD DE TECNOLOGIAS DE INFORMACION POLITICAS DE USO DE LA RED INALAMBRICA INSTITUCIONAL

Capítulo VI. Estudio de Caso de Aplicación del Integrador de Información Desarrollado

Capítulo 1 Introducción

CFGM. Servicios en red. Unidad 2. El servicio DHCP. 2º SMR Servicios en Red

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

WINDOWS : TERMINAL SERVER

Capítulo 1. Introducción

Disposición complementaria modificada en Sesión de Directorio N del 15 de diciembre de 2014.

Inducción al Laboratorio de Informática

V i s i t a V i r t u a l e n e l H o s p i t a l

Redes cableadas (Ethernet)

Sistema de SaaS (Software as a Service) para centros educativos

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

Capítulo 4: Requerimientos.

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN

Multipedidos es un sistema de ventas on-line que permite gestionar pedidos por internet en tiempo real de manera económica, simple y eficaz.

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

MANUAL DE USUARIO APLICACIÓN SYSACTIVOS

ICAFE. Caso de éxito del Instituto del Café de Costa Rica

Windows Server 2012: Infraestructura de Escritorio Virtual

Impresión en red: Cómo hacer que funcione

Arquitectura de sistema de alta disponibilidad

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red.

INSTALACIÓN, OPERACIÓN Y PROGRAMACIÓN DE EQUIPOS Y SISTEMAS TELEFÓNICOS

PROBLEMAS CON SU CLAVE? Cliente Nuevo Puedo solicitar acceso a la Banca en Línea (Contrato Uso de Canales de Autoatención) a través del Portal?

Capitulo 3. Desarrollo del Software

Transcripción:

Capítulo 1 Introducción En los últimos años, se ha presentado una enorme demanda por servicios portátiles, a los que se les ha llamado tecnologías móviles, este repentino crecimiento de tecnologías ha traído consigo nuevas formas de hacer negocios y nuevos paradigmas para ofrecer servicios de información. Tal es el caso de los servicios de texto o SMS [1] [4] por sus siglas en inglés Short Message Service que permiten el intercambio de mensajes cortos (entre 140 y 160 caracteres como límite) entre teléfonos celulares o entre teléfonos celulares y una central de SMS (llamada SMSC [1] [4] por sus siglas en inglés Short Message Service Center) que a su vez, puede redirigir los mensajes a una entidad externa de mensajes cortos (llamada ESME [4] por sus siglas en inglés External Short Message Entity) donde pueden ser procesados para brindar servicios más complejos. Para que un ESME sea capaz de hospedar servicios, éste debe comunicarse con el SMSC mediante un protocolo de propósito específico, generalmente SMPP [4] que permite el intercambio de mensajes a través de una conexión punto a punto, que puede realizarse usando protocolos de más bajo nivel como TCP [3], PPP [8] u otros. Este enlace debe ser establecido por un gateway (SMS gateway) que implemente dicho protocolo e integre el enlace a los servicios de información que se van a ofrecer. Los servicios son atendidos por un software que recibe el mensaje del cliente, lo procesa y envía una 1

CAPÍTULO 1. INTRODUCCIÓN 2 ESME Servicio 1 Servicio 2 SMS Gateway SMPP SMSC Red Celular Servicio 3 SMPP Teléfono móvil Figura 1.1: Trayectoria de los mensajes transmitidos entre un servicio y un teléfono móvil respuesta de regreso en caso de ser requerido. A este software vamos a llamarlo servicio de ahora en adelante. Uno de los SMS gateways más populares actualmente, es el proyecto Kannel [2] [9], que es un WAP [7] y SMS gateway que sigue la filosofía OpenSource [10]. Kannel posee, entre otras características, la capacidad para crear servicios muy sencillos mediante el uso de archivos de configuración, pero para una aplicación en el mundo real, esta capacidad es bastante reducida, por lo que posee características que le permiten comunicarse con otros procesos usando HTTP [6], de este modo, servicios más complejos pueden ser desarrollados como aplicaciones web. 1.1. Definición del problema El protocolo que usa Kannel para comunicarse con otras aplicaciones (HTTP) funciona correctamente, pero tiene la desventaja de no haber sido diseñado específicamente

CAPÍTULO 1. INTRODUCCIÓN 3 para este propósito, lo cual trae con sigo algunos aspectos a considerar. 1.1.1. Persistencia y fallas HTTP no incorpora características para mantenimiento de persistencia, por lo que en caso de falla del sistema, pueden llegar a perderse mensajes, ya que no existe un método para recuperarlos. Tampoco existe el concepto de transacciones por lo que no se tiene un control de las acciones que son iniciadas y terminadas con éxito. 1.1.2. Componentes Kannel puede ser configurado para funcionar de manera distribuida, pero sus componentes realizan demasiadas tareas que en la mayoría de los casos no son utilizadas. El funcionamiento de unos componentes depende del de otros de manera directa, por lo que podemos decir que los módulos de Kannel no son del todo autónomos. 1.2. Objetivos 1.2.1. Objetivos generales Crear un módulo para Kannel (box) que sirva como gateway entre el protocolo nativo/intenrno de Kannel y Java mediante el uso de JMS que permita persistencia de los mensajes y uso de transacciones. 1.2.2. Objetivos específicos 1. Habilitar la persistencia de mensajes transferidos entre Kannel y un servicio SMS mediante la integración con JMS que permite administrar esta característica.

CAPÍTULO 1. INTRODUCCIÓN 4 2. Habilitar las características de JMS para uso de transacciones en las colas de mensajes compartidas por el gateway y una aplicación de servicio SMS. 3. Reducir el tamaño de los componentes de un Gateway basado en Kannel. 4. Aumentar la autonomía de la administración de los componentes. 5. Determinar si es necesario modificar el bearerbox para una conexión más estable. 1.3. Alcances y limitaciones 1.3.1. Alcances 1. Desarrollar un módulo (box) capaz de mantener una conexión con el bearerbox de Kannel. 2. El software resultante tendrá las características necesarias para la etapa de pruebas. 3. Crear una arquitectura que permita mayor autonomía de los componentes del sistema. 4. Realizar pruebas con el nuevo módulo: a) Que demuestren la funcionalidad básica de la implementación del protocolo. b) Con simulaciones de casos de tráfico extremo. c) Con un servicio de ejemplo.

CAPÍTULO 1. INTRODUCCIÓN 5 1.3.2. Limitaciones 1. La manera de configurar el software resultante será principalmente mediante archivos de configuración. 2. El manual resultante tendrá sólo las características necesarias para que otras personas de la comunidad puedan experimentar con él. 3. La documentación del software deberá estar escrita en inglés con el objeto de facilitar la participación de la comunidad en el proyecto. 4. Las pruebas se limitarán al hardware, software y conexiones disponibles al momento de la experimentación. 1.4. Recursos a utilizar Hardware Los requerimientos de hardware dependerán de los requerimientos de las herramientas de software a utilizar. Software Las pruebas se realizarán usando la versión CVS de Kannel más reciente disponible y compatible al momento de realizar las pruebas. Se utilizará cualquier sistema operativo que soporte el uso de las herramientas requeridas: 1. Java como plataforma y lenguaje de programación principal 2. jedit como interfaz de desarrollo 3. gcc Kannel está escrito en C asi que es probable llegar a utilizar algunas librerías o desarrollar partes en C.

CAPÍTULO 1. INTRODUCCIÓN 6 4. ethereal/tcpdump software de monitoreo de bajo nivel para analizar la información transferida. 5. Kannel es preferente trabajar con la última versión cvs de Kannel. 6. JBoss para usar su implementación de JMS y otras características. 1.5. Estado actual del problema 1.5.1. Sistemas existentes No hay sistemas disponibles en la red que resuelvan estos problemas en Kannel, lo más cercano a éste, son sistemas que reciben los mensajes de Kannel por HTTP y a continuación los traducen a una especificación de JMS para distribuirlos a sus servicios. Esto es, usando el smsbox incluido en Kannel que presenta las desventajas mostradas en la sección 1.1. Componentes de Kannel Los componentes en Kannel son llamados box es en el lenguaje del proyecto, y existen tres tipos principales: bearerbox smsbox wapbox El bearerbox o bearer es el encargado de realizar las conexiones con los SMSC s y realizar el ruteo entre las conexiones y los servicios, el smsbox se conecta al bearer mediante un protocolo interno y es el encargado de atender los servicios SMS, y el wapbox

CAPÍTULO 1. INTRODUCCIÓN 7 se encarga del mismo modo de atender servicios WAP. De los problemas que se han expuesto en la sección 1.1, el único que ha intentado resolverse ha sido el de la persistencia, pero su solución hasta el momento no ha mostrado buenos resultados, actualmente (Octubre 2004) es la parte más discutida y modificada diariamente por los desarrolladores interesados. Para intentar resolver este problema, el bearerbox implementa una cola de mensajes interna que almacena los mensajes de tres modos posibles: Memoria RAM - Veloz pero no es persistente. Archivo - Persistente pero muy lento. Base de Datos - Promedio de los anteriores. Estos métodos, en condiciones de alto tráfico o tráfico con ciertas características, suele fallar, resultando en la pérdida de algunos mensajes. 1.5.2. Aportación La idea aquí es la implementación de un smsbox que en lugar de proveer sus servicios a través de HTTP, lo haga a través de JMS. Podríamos decir que se va a implementar un jsmsbox que tomará en cuenta los aspectos negativos del smsbox (Secc. 1.1 ) para corregirlos. 1.5.3. Técnicas y tecnologías a usar Reverse Engineering, para descifrar el protocolo nativo de Kannel Packet Sniffing, para descifrar el protocolo nativo de Kannel principalmente. J2EE, se usará como ambiente en algunos casos y pruebas para demostrar integración.

CAPÍTULO 1. INTRODUCCIÓN 8 JMS, especificación de MQ de Java. Los lenguajes que serán más probablemente utilizados son: Java, C, Bourne Shell.