ES2423404T3 - Enrutamiento de datos basado en directivas para un dispositivo multimodo - Google Patents

Enrutamiento de datos basado en directivas para un dispositivo multimodo Download PDF

Info

Publication number
ES2423404T3
ES2423404T3 ES11169639T ES11169639T ES2423404T3 ES 2423404 T3 ES2423404 T3 ES 2423404T3 ES 11169639 T ES11169639 T ES 11169639T ES 11169639 T ES11169639 T ES 11169639T ES 2423404 T3 ES2423404 T3 ES 2423404T3
Authority
ES
Spain
Prior art keywords
connection
server
network
application
communications
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES11169639T
Other languages
English (en)
Inventor
Michael Montemurro
Nicholas Alfano
John-Luc Bakker
Richard George
Brian Alexander Oliver
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BlackBerry Ltd
Original Assignee
BlackBerry Ltd
Research in Motion Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BlackBerry Ltd, Research in Motion Ltd filed Critical BlackBerry Ltd
Application granted granted Critical
Publication of ES2423404T3 publication Critical patent/ES2423404T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/18Selecting a network or a communication service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Un procedimiento realizado por un equipo de usuario (UE), estando caracterizado el procedimiento por que: - establece una conexión para una aplicación según una directiva sensible a la información a la hora y a laubicación para el UE; - en el que el UE evalúa, mediante un motor de normas, la directiva, y configura las operaciones decomunicación en el UE para proporcionar la conexión a uno de entre un primer servidor y un segundoservidor en respuesta a las horas de trabajo, las horas de ocio y la ubicación del UE.

Description

Enrutamiento de datos basado en directivas para un dispositivo multimodo
CAMPO La presente invención se refiere, en general, a un sistema y un procedimiento para la operación de un dispositivo de comunicaciones inalámbrico multimodo y, más particularmente, a un enrutamiento de comunicaciones basado en directivas entre dos o más modos de comunicación inalámbrica.
ANTECEDENTES DE LA INVENCIÓN Debido a la proliferación de las redes inalámbricas, hay un número continuamente creciente de dispositivos inalámbricos en uso en la actualidad. Estos dispositivos incluyen teléfonos móviles, teléfonos inteligentes, asistentes personales digitales (PDA) con capacidad de comunicación inalámbrica, localizadores de dos vías y similares. Simultáneamente al aumento de los dispositivos inalámbricos disponibles, las aplicaciones de software que se ejecutan en dichos dispositivos han aumentado su utilidad. Por ejemplo, el dispositivo inalámbrico puede incluir una aplicación que recupera un informe meteorológico para una lista de ciudades deseadas o una aplicación que permite al usuario realizar compras en supermercados.
Con la aparición de los dispositivos de modo dual o multimodo (por ejemplo, dispositivos con tecnologías de acceso de radio que proporcionan acceso a redes de área local inalámbricas (WLAN) (por ejemplo, tecnologías de acceso bajo la marca Wi-Fi), redes inalámbricas de área metropolitana (WMAN) (por ejemplo, tecnologías de acceso bajo la marca WiMAX) y redes inalámbricas de área amplia (WWAN) (por ejemplo, tecnologías celulares tales como GSM/GPRS EDGE, UMTS, HSPA, CDMA, WCDMA, etc.), las aplicaciones pueden tener la capacidad de ofrecer diferentes modelos de uso dependiendo del modo de funcionamiento inalámbrico seleccionado. La selección de entre las diferentes tecnologías de acceso de radio puede basarse en las diferentes propiedades de las tecnologías, tales como ancho de banda, alcance, costo y consumo de energía, entre otras consideraciones. La selección puede ser una selección inicial de una tecnología o una reselección/evaluación, particularmente, como resultado de un cambio en las condiciones en tiempo real.
Por ejemplo, en un dispositivo de modo dual, el contenido de la portadora de tráfico de voz puede ser accedido a través de radio GSM, mientras que el contenido de tráfico de voz empresarial puede ser accedido a través de una radio WLAN. Para una aplicación de navegación en el dispositivo, el contenido de un sitio web puede ser accedido desde una red WLAN, WMAN o WWAN (por ejemplo, GPRS o EDGE). Hay costos asociados con el acceso de la aplicación desde estas diferentes redes. También hay consideraciones de calidad, tales como la velocidad a la que el contenido puede ser suministrado o, en el caso de los medios de flujo continuo, la calidad de servicio con la que se suministra el contenido. Por lo tanto, es deseable disponer de un mecanismo que busque optimizar las comunicaciones para los dispositivos con capacidad multimodo, es decir, que, busque mejorar las comunicaciones para los dispositivos con capacidad multimodo.
El documento WO2004/008 793 describe un aparato y un procedimiento para soportar múltiples tecnologías inalámbricas, y realizar una selección de interfaz en base a características relacionadas con la red y la infraestructura.
El documento EP 1 526 682 describe la selección de red e interfaz según una directiva.
COMPENDIO Los dispositivos de comunicación inalámbrica capaces de comunicarse en al menos dos modos de comunicación de red (por ejemplo, WLAN, tal como Wi-Fi, WMAN, tal como WiMAX y WWAN, tal como GSM/GPRS modos celular y por cable (por ejemplo, LAN, entre otros)) pueden configurarse para optimizar las comunicaciones usando un mecanismo basado en directivas para configurar las conexiones y las rutas. Un motor de normas evalúa sus directivas al producirse un cambio de estado (por ejemplo, disponibilidad de la red, hora del día, etc.) para configurar una tabla de enrutamiento y, junto con las APIs de comunicaciones, proporciona una conexión apropiada a una aplicación de sus comunicaciones respectivas. Las directivas pueden ser sensibles a diversos factores, tales como requisitos de tecnología de acceso de radio, alto/bajo ancho de banda, costo, presencia, hora del día, ubicación, tipo de aplicación y calidad de servicio (QoS), entre otros, para optimizar las comunicaciones.
Según un primer aspecto, se proporciona un dispositivo de comunicación multimodo. El dispositivo de comunicación multimodo comprende al menos dos interfaces de comunicaciones configuradas para permitir que el dispositivo se comunique en al menos dos modos de comunicación; y un procesador y una memoria, acoplada al procesador, para almacenar instrucciones para su ejecución por el procesador en tiempo de ejecución. Las instrucciones definen al menos una aplicación configurada para la comunicación usando al menos uno de dichos
modos de comunicación; y un componente de enrutamiento para el enrutamiento de las comunicaciones para la al menos una aplicación entre las interfaces de comunicaciones. El componente de enrutamiento se configura usando normas para seleccionar una interfaz de comunicaciones particular en tiempo de ejecución.
Preferiblemente, el componente de enrutamiento comprende un motor de normas configurable según las normas. Las normas pueden ser sensibles a al menos un requisito de entre el tipo de tecnología de acceso de radio, ancho de banda, costo, presencia, hora del día, ubicación, tipo de aplicación y calidad de servicio.
Según una característica, el componente de enrutamiento funciona al menos para: a) seleccionar un modo de comunicación inicial según las normas para establecer una conexión para una de dichas aplicaciones, y b) supervisar la conexión para conmutar el modo inicial según las normas.
Las instrucciones pueden proporcionar además transparencia de direcciones de red a al menos algunas de las aplicaciones según al menos uno de entre protocolos IP móvil y técnicas de direccionamiento constante.
Preferiblemente, el componente de enrutamiento configura al menos una de entre una tabla de enrutamiento y una tabla de conexiones para enrutar dichas comunicaciones a través de una interfaz de comunicaciones particular según la evaluación de las normas en tiempo de ejecución. Puede proporcionarse una API de comunicación para gestionar las comunicaciones en nombre de las aplicaciones, en la que la API de comunicaciones enruta las comunicaciones según la tabla de enrutamiento y la tabla de conexiones.
En algunas realizaciones, uno de dichos dos modos de comunicación funciona según un estándar de telefonía móvil y un segundo de entre dichos dos modos de comunicación funciona según un estándar de LAN inalámbrica (WLAN).
Según un segundo aspecto, se proporciona un procedimiento de comunicación multimodo para un dispositivo que comprende al menos dos interfaces de comunicaciones configuradas para comunicarse en al menos dos modos de comunicación y un procesador y una memoria acoplada al procesador para almacenar instrucciones para su ejecución por el procesador en tiempo de ejecución, en el que las instrucciones definen al menos una aplicación configurada para la comunicación con al menos uno de dichos modos de comunicación. El procedimiento comprende: comunicaciones de enrutamiento para la al menos una aplicación entre las interfaces de comunicaciones usando normas para seleccionar una interfaz de comunicaciones particular en tiempo de ejecución.
Según un tercer aspecto, se proporciona un medio de almacenamiento legible por ordenador que tiene instrucciones ejecutables por ordenador almacenadas en el mismo para el enrutamiento de las comunicaciones para un dispositivo que comprende al menos dos interfaces de comunicaciones configuradas para comunicarse en al menos dos modos de comunicación y un procesador para la ejecución de dichas instrucciones ejecutables por ordenador en tiempo de ejecución. Las instrucciones ejecutables por ordenador son operables para enrutar las comunicaciones entre las interfaces de comunicaciones usando normas para seleccionar una interfaz de comunicaciones particular en tiempo de ejecución para al menos una aplicación ejecutada por el dispositivo.
BREVE DESCRIPCIÓN DE LOS DIBUJOS Ahora, se describirá, solo a modo de ejemplo, una realización de la invención, con referencia a los dibujos siguientes, en los que:
La Figura 1 es un diagrama de bloques que muestra un ejemplo de red de comunicaciones; La Figura 2 es un diagrama de bloques de enrutamiento de datos basado en directivas para operaciones multimodo de un dispositivo para la infraestructura de red de comunicaciones de la Figura 1; Las Figuras 3 a 6 son diagramas de flujo que muestran las operaciones de enrutamiento de datos basado en directivas; y La Figura 6 es un diagrama de bloques de un dispositivo móvil representativo que puede ser configurado con las aplicaciones multimodo, tal como se describe.
Para mayor conveniencia, los mismos números en la descripción hacen referencia a estructuras similares en los dibujos.
DESCRIPCIÓN DETALLADA DE LA REALIZACIÓN PREFERIDA Con referencia a la Figura 1, en la misma se ilustra, en general, una red 100 de comunicaciones ejemplar. La red 100 de comunicaciones comprende un dispositivo 102 móvil de comunicación inalámbrica, o simplemente un dispositivo 102 móvil, acoplado para la comunicación inalámbrica a través de al menos una red de comunicaciones inalámbrica (por ejemplo, 104 y 106) a al menos uno de entre una pluralidad de servidores 120a, 120b y 120c back
end (colectivamente, 120). Por simplicidad, los dibujos y la descripción se refieren a un único dispositivo 102 de comunicación inalámbrico móvil aunque en la práctica y, tal como comprenderá una persona con conocimientos ordinarios en la materia, una pluralidad de dichos dispositivos están presentes, típicamente, en la red 100. Un dispositivo 102 móvil particular puede comprender diversos dispositivos de computación, tales como un ordenador de sobremesa, un ordenador que se puede portar u otro ordenador portátil, un teléfono inteligente, un asistente digital personal (PDA), etc.
En la red 100 ejemplar, el dispositivo 102 móvil tiene capacidad de comunicación inalámbrica según los estándares WLAN o WMAN (por ejemplo, Wi-Fi o WiMAX) y WWAN (por ejemplo, GSM celular). Como tal, puede comunicarse a través de la red 104 celular y una estación 108 base representativa acoplada a Internet 112 y/o a través de una red 106 WLAN o WMAN y su punto 110 de acceso acoplado también se a Internet 112. Los servidores 120 están también acoplados a Internet 112. Aunque se muestran como comunicándose a través de la Internet 112 pública, otras configuraciones de red serán evidentes para las personas con conocimientos ordinarios en la materia. Por ejemplo, uno o más servidores 120 back-end pueden ser accesibles para el dispositivo 102 sobre una LAN, tal como una LAN empresarial (no mostrada).
En aras de la simplicidad, no se muestran diversas infraestructuras de red (por ejemplo, operadores y empresas inalámbricas, incluyendo pasarelas, cortafuegos, etc.). A modo de ejemplo, puede haber una aplicación de pasarela (no mostrada) que comprende un servidor de pasarela, un servidor de aprovisionamiento, un servidor de descubrimiento y un repositorio de aplicaciones. El servidor de pasarela puede estar en comunicación tanto con el servidor de aprovisionamiento como con el servidor de descubrimiento. El servidor de pasarela está además en comunicación (por ejemplo, a través de una red pública, tal como Internet 112 o una red privada) con al menos algunos de entre la pluralidad de los servidores 120 back-end que proporcionan servicios deseados, tales como servicios Web, servicios de base de datos, así como otros tipos de servicios de fuentes de eventos. El servidor de pasarela puede actuar como un intermediario de mensajes entre el dispositivo 102 y los servidores 120 back-end. A modo de ejemplo, un servicio Web puede proporcionar contenido audiovisual (por ejemplo, música u otro audio, vídeo, etc.) para su descarga al dispositivo 102 móvil. El servicio puede proporcionar notificaciones de nuevos contenidos y una interfaz para obtener las mismas, donde estas notificaciones se añaden, de manera asíncrona y no solicitada, al dispositivo 102 a través de un servidor de adición (no mostrado). Las notificaciones pueden ser relativamente ligeras en sus necesidades de comunicación, mientras que la descarga de contenidos es relativamente pesada (mayor ancho de banda y costos). Un servicio de base de datos puede tener requisitos similares cuando se intercambian grandes cantidades de datos con el dispositivo 102.
Otros servicios proporcionados al dispositivo 102 por la infraestructura de red, no mostrada, pueden incluir:
Servicios Administrativos y de gestión que tratan con las directivas, tales como las que especifican las aplicaciones permitidas para los usuarios, los servicios disponibles para las aplicaciones, etc.;
Servicio de Aprovisionamiento que controla y gestiona qué aplicaciones pueden ser descargadas por los usuarios a los dispositivos móviles;
Servicio de Optimización de Datos que transforma los datos para una transmisión inalámbrica eficiente y su uso en dispositivos móviles;
Servicio de Conexión que proporciona conectividad, basada en TCP/IP y HTTP, entre el dispositivo y otras aplicaciones, por ejemplo, para la navegación;
Servicio de Integración de Aplicaciones que soporta la integración y la transmisión de datos entre las aplicaciones del dispositivo y los servidores 120 back-end;
Repositorio de Aplicaciones que gestiona, de manera centralizada, las aplicaciones publicadas, y
Servicios agente IP móvil doméstico y extranjeros que permiten que un dispositivo móvil se conecte a una red IP a través de una red doméstica y extranjera y continúe recibiendo paquetes enviados a la dirección IP de la red doméstica del dispositivo. Cuando el dispositivo está conectado a través de una red extranjera, un agente doméstico en la red doméstica del dispositivo captura y encapsula los paquetes para el dispositivo y los transmite, mediante tunelización, al dispositivo a través de un agente extranjero en la red extranjera.
Las aplicaciones multimodo basadas en componentes para su ejecución en una infraestructura de comunicaciones de red que soporta aplicaciones basadas en componentes y herramientas para su programación se describen en la solicitud de patente US Nº de serie 11/763630, presentada el 16 de junio de 2007, por el cesionario del presente
documento, titulada "Device For Communicating In Multiple Modes Using Multi-mode Applications”, que se incorpora a la presente memoria, por referencia.
Con la irrupción de dispositivos de modo dual y multimodo que combinan tecnologías de comunicación, se pueden desarrollar y operar aplicaciones para proporcionar diferentes modelos de uso que pueden variar dependiendo del modo de operación que está disponible en tiempo de ejecución. La Figura 2 ilustra, según una realización de la misma, un diagrama de bloques de enrutamiento de datos basado en directivas para operaciones multimodo del dispositivo 102 para la infraestructura de red de comunicaciones de la Figura 1.
La Figura 2 muestra una vista de un almacenamiento 200 (por ejemplo, RAM) en tiempo de ejecución del dispositivo 102 que comprende, en términos generales, una pluralidad de aplicaciones 204, la lógica 206 de enrutamiento e interfaces 208 de red. Se entiende que el almacenamiento 200 puede incluir otro software (instrucciones y datos) diferente al mostrado, incluyendo, por ejemplo, un sistema operativo y otras interfaces. En el ejemplo de la Figura 2, las aplicaciones 204 incluyen una aplicación 204A VoIP a través de comunicaciones IP en una red de datos empresarial, tal como una LAN; correo electrónico y otras aplicaciones 204B administrativas que comunican, típicamente, datos diferentes a voz; aplicación 204C de navegación, tales como un navegador Web, descarga 204D MP3 para adquirir archivos multimedia de audio o de otro tipo y servicios 204E basados en operador, tales como comunicaciones de SMS y voz a través de una red de operador.
Por conveniencia y en el presente ejemplo, las redes 104 y 106 están basadas, principalmente, en IP. Las aplicaciones 204 pueden requerir comunicaciones orientadas a conexión, por ejemplo, usando un protocolo de control de transmisión (Transmission Control Protocol, TCP) en la capa de transporte sobre la red IP (TCP/IP) y/o comunicación sin conexión, por ejemplo, usando un protocolo de datagrama de usuario (User Datagram Protocol, UDP) sobre la red IP.
La lógica 206 de enrutamiento incluye un motor 206A de normas (a veces llamado un motor de inferencia) como un mecanismo basado en directivas que usa normas para configurar la pila 206B de la red TCP/IP y la tabla 206C de conexiones para coordinar las comunicaciones para las aplicaciones 204 usando interfaces de comunicaciones (denominadas también como interfaces de red) 208. Un administrador de IT, por ejemplo, puede crear una directiva para añadir un perfil de red WLAN a un dispositivo (un perfil WLAN se configura con el SSID, las credenciales de seguridad, etc.). El administrador de IT puede crear también una directiva para deshabilitar o habilitar una aplicación para un usuario. Una norma es una directiva específica que es introducida en el "motor de normas" para llevar a cabo la directiva.
En el dispositivo 102 ejemplar, las interfaces 208 de red incluyen una interfaz para cada una de las comunicaciones de red WLAN 208A, WMAN 208B y WWAN 208C. Aunque no se muestra, otras interfaces de red podrían incluir interfaces inalámbricas de corto alcance (por ejemplo, Bluetooth® inalámbrico) e interfaz o interfaces para las comunicaciones de red por cable (por ejemplo, interfaces serie, tales como USB, RS-232, etc.) Aunque los ejemplos se exponen con relación a múltiples modos inalámbricos, las personas con conocimientos ordinarios en la materia apreciarán que las configuraciones multimodo y las operaciones descritas en la presente memoria pueden incluir también modos por cable.
El motor 206A de normas configura las operaciones de comunicación con un conjunto de normas/directivas que podrían incluir diversos factores, tales como requisitos de tecnología de acceso de radio (por ejemplo, propiedades de alto/bajo ancho de banda), el costo, la presencia, la hora del día, la ubicación (por ejemplo, directivas basadas en geo-localización, roaming de red), la dirección IP de destino, el tipo de aplicación y la calidad de servicio (QoS), entre otras. Un ejemplo de lenguaje natural de una norma de directiva podría ser "la aplicación 204D de descarga MP3 funciona sobre la red 104 y 106 de menor costo disponible". Otro ejemplo podría ser que "la aplicación CRM (es decir, una de 204B) sólo sincroniza la base de datos de contactos de ventas (por ejemplo, 120B) a través de una red 106 WLAN".
La pila 206A de red TCP/IP incluye una tabla 210 de enrutamiento y una tabla 212 de estado de interfaz. La tabla 212 de estado de interfaz se actualiza conforme el dispositivo 102 se conecta y desconecta con la red 104 de acceso o la red 106 de operadora. De una manera similar, la tabla 210 de enrutamiento se actualiza, según qué interfaces 208 están disponibles. Por ejemplo, si ambas radios WLAN y WWAN (Figura 6) del dispositivo 102 están conectadas a sus respectivas redes 104 y 106, habrá una ruta asociada con cada red 104 y 106 que tendría el
aspecto siguiente:
Dirección IP Fuente
Dirección IP Destino Interfaz (208) de dispositivo
192.168.1.20
0.0.0.0 WLAN (208A)
67.69.20.142
0.0.0.0 WWAN (208C)
5
Cuando un paquete IP está destinado para la transmisión, el software 206B de la pila de red TCP/IP compara la cabecera IP del paquete con una entrada en la tabla 210 de enrutamiento. La comparación determinará qué interfaz 208 de red se usará para la transmisión del paquete.
La tabla 206C de conexiones gestiona las conexiones desde las aplicaciones 204 en el dispositivo a aplicaciones remotas en dispositivos acoplados a través de las redes 104 y 106. La tabla 206C de conexiones tiene una entrada respectiva correspondiente a cada conexión de aplicación. Por ejemplo, una conexión a un servidor remoto empresarial (por ejemplo, para correo electrónico o una aplicación 204B administrativa) tendría su propia entrada específica en la tabla de conexiones. Las entradas incluyen la dirección IP de origen, la dirección IP de destino y el número de puerto TCP o UDP. Una tabla de conexiones ejemplar tiene el aspecto siguiente:
Dirección IP Fuente
Dirección IP Destino Puerto Local Puerto Remoto
192.168.1.20
129.24.36.244 1023 21 (descarga MP3 por FTP)
67.69.20.142
29.164.236.32 NNN NNNN (aplicación empresarial)
Típicamente, las comunicaciones para las aplicaciones 204 se realizan en una de dos maneras. Una está basada en conexiones, usando una interfaz de programación de aplicación (API) 206 basada en conexiones para las comunicaciones. La aplicación "delega" los detalles de la comunicación (establecimiento y cese, etc. y gestión) a la conexión. La otra es una conexión de protocolo básico en la que una aplicación construye paquetes IP para su transmisión a otro dispositivo en la red 104 ó 106. Una conexión basada en conexión usa la tabla de conexiones y la tabla de enrutamiento para determinar cómo se transmitirá un paquete IP en una red 104 y 106. La conexión básica usa sólo la tabla 210 de enrutamiento para determinar cómo se transmitirá un paquete IP en la red 104 o
106. La conexión es mantenida por la aplicación particular y no por la tabla 206C de conexiones y su software asociado.
Según la presente realización, el motor 206A de normas configura (es decir, modifica, de manera periódica, en respuesta a los cambios de estado y a la evaluación de sus normas) la tabla 206C de conexiones y la tabla 210 de enrutamiento para optimizar el flujo de comunicaciones sobre múltiples modos de comunicación (por ejemplo, interfaces 208 y redes 104 y 106 respectivas).
Con un cambio de estado (por ejemplo, basado en una hora del día, o la conexión/desconexión del dispositivo 102 con una red 104 y 106 específica), el motor 206A de normas ejecuta y modifica, en su caso, la tabla 210 de enrutamiento para garantizar que los datos se transmitan por la red más apropiada (a través de la interfaz 208 respectiva). El motor 206A de normas interactúa también con la API de conexión para determinar qué interfaz sería mejor usar para dar servicio a una aplicación particular.
Aunque no se muestra, una interfaz de usuario puede estar provista en el dispositivo para que un usuario y/o administrador de dispositivo configure el motor 206A de normas. Las normas pueden ser configuradas fuera del dispositivo (por ejemplo, por un usuario y/o administrador) y ser transferidas al dispositivo a través de una interfaz de comunicaciones. Dicha una transferencia puede estar asociada con la instalación de una aplicación o servicio que da servicio al dispositivo o tras una actualización u otro evento. Por ejemplo, un grupo de dispositivos puede ser administrado por un administrador empresarial y, por lo tanto, normas definidas por el administrador para dichos dispositivos.
Opcionalmente, el dispositivo 102 tiene capacidades IP móviles (por ejemplo, a través del componente 207) para permitir al dispositivo conectarse a Internet (red IP) a través de una red doméstica y una o más redes extranjeras (no mostradas). Las capacidades IP móviles permiten a un dispositivo móvil recibir los paquetes enviados a su dirección IP de red doméstica cuando el dispositivo está conectado a través de una red extranjera y tiene una dirección IP diferente (una dirección de custodia ”care-of-address”) en esa red. Un agente doméstico en la red doméstica puede interceptar los paquetes para el dispositivo, encapsularlos y transmitirlos, mediante tunelización, al dispositivo móvil a través de un agente extranjero que mantiene la dirección de custodia para el dispositivo. El dispositivo móvil puede registrar la dirección de custodia de la red extranjera con el agente doméstico del dispositivo tras conectarse a través de la red extranjera. Las aplicaciones pueden comunicarse, de manera transparente, conforme el dispositivo se mueve entre direcciones en redes diferentes y no tienen que ser conscientes de la dirección IP del dispositivo.
De manera opcional, el dispositivo 102 tiene otras capacidades de direccionamiento constantes (por ejemplo, a través del componente 209), tales como una capacidad de direccionamiento con identificador personal único (PIN) que permite el enrutamiento de un mensaje usando el PIN del dispositivo a través de al menos una parte de la red. Dicho direccionamiento permite que una aplicación se comunique a través de la red, tal como mediante el envío y
la recepción de mensajes, para evitar cualquier dependencia o necesidad de ser consciente de una dirección IP subyacente de una conexión y, de esta manera, preservar la transparencia durante una conmutación de tecnología de acceso. La infraestructura de red asocia el PIN constante del dispositivo y la dirección IP variable conforme el dispositivo se mueve en la red IP. Un ejemplo comercial es la mensajería PIN a PIN usando el PIN BlackBerry® y la infraestructura de red BlackBerry® proporcionada por Research In Motion Ltd. De esta manera, cada uno de los componentes 209 y 207 proporciona transparencia en el direccionamiento de red a las aplicaciones.
Las Figuras 3 y 4 ilustran operaciones representativas para múltiples modos de comunicación. Brevemente, para una aplicación enrutada, tal como protocolo de inicio de sesión (Session Initiation Protocol, SIP), usando UDP (por ejemplo, VoIP 204A) o una aplicación HTTP (por ejemplo, Browser 204C) usando TCP, la tabla de enrutamiento controla cómo fluye el tráfico a través de la red. Una norma basada en el tiempo y/o una norma basada en la ubicación pueden ser formuladas de manera que durante las horas de trabajo, todo el tráfico SIP y HTTP es dirigido a través de la red corporativa (o una conexión con una red privada virtual (VPN) si el usuario está alejado del trabajo). Sin embargo, una vez terminadas las horas de trabajo, podría activarse una norma, por ejemplo, por una aplicación de calendario, para cambiar la ruta por defecto de manera que el tráfico sea enrutada a través de la LAN en lugar de la red corporativa. Si el usuario está en el trabajo, podría haber otra norma para deshabilitar este cambio de ruta por defecto.
La Figura 3 es un diagrama de flujo que ilustra las operaciones 300 de actualización de la tabla 210 de enrutamiento con el establecimiento de una nueva conexión a través de la red 106 inalámbrica. En la etapa 302, se establece una conexión de red WLAN a través de la red 106. Se obtiene una dirección IP (etapa 304) y se actualiza la tabla 212 de estado de interfaz (etapa 306). En la etapa 308, el motor 206A evalúa una norma. La norma de ejemplo evalúa la información de la hora y la ubicación para el dispositivo 102. Otra información, tal como se ha expuesto anteriormente, puede ser usada en las normas. La Fig. 3 ilustra operaciones simplificadas, en el supuesto de que el dispositivo no está en el lugar de trabajo. En la etapa 310, para una decisión “Sí”, cuando el dispositivo no está en el trabajo, pero es una hora de trabajo típica, se establece una conexión con una red privada virtual (VPN) a través de Internet 112 entre el dispositivo 102 y un servidor de empresa (no mostrado). La tabla 210 de enrutamiento se actualiza (etapa 312). En la etapa 314, se establece una conexión SIP al servidor “de trabajo” apropiado del usuario (por ejemplo, un servidor 120 de SIP de empresa) para los servicios SIP. Si el dispositivo 102 está en el trabajo, es decir, dentro de los límites físicos de una oficina, planta o campus, que tiene unos requisitos apropiados de seguridad de acceso, las operaciones pueden determinar dicha información y es posible que no se requiera una VPN durante la conexión.
Para una decisión “No” en la etapa 308, por ejemplo, cuando no es hora de trabajo y el dispositivo 102 del usuario no está en el trabajo, la tabla 210 de enrutamiento se actualiza (etapa 316). En la etapa 318, se establece una conexión SIP al servidor “doméstico” apropiado del usuario (por ejemplo, un servidor 120 back-end que proporciona servicios SIP) para los servicios SIP cuando el usuario no está trabajando.
La Figura 4 es un diagrama de flujo que ilustra las operaciones 400 para la actualización de tabla 210 de enrutamiento cuando ya se ha establecido una conexión (etapa 402), pero se ha producido un evento de tiempo (etapa 404). En la etapa 406, el motor de normas evalúa una norma en base a la hora y la ubicación, tal como en la etapa 308. En la etapa 408, para una decisión “No”, la conexión SIP existente en el trabajo se mantiene. En la etapa 410, para una decisión “Sí”, la tabla de enrutamiento es actualizada para hacer referencia a la LAN local a través de la cual se está conectando el dispositivo en lugar de a través de la red de la empresa y se establece una conexión SIP con un servidor (120) que proporciona dichos servicios cuando el usuario está en el "domicilio".
La Figura 5 ilustra las operaciones 500 para conmutar las tecnologías de acceso cuando los criterios de rendimiento caen por debajo de los estándares requeridos que se cumplían en el momento del establecimiento de la conexión. En la etapa 502, se establece una conexión para una aplicación usando una tecnología de acceso que cumple los criterios de rendimiento, tal como puede ser mantenida por el motor de normas. Dicho establecimiento puede ser según las operaciones 300, por ejemplo, pero no es necesario que sea así. La pila 206B de TCP/IP y la tabla 206C de conexiones se actualizan en consecuencia.
Periódicamente (no se muestra ningún período de espera específico), se supervisan los criterios de rendimiento y se adoptan medidas según sea necesario (etapas 504 y 506). Si no se mantienen los criterios (a través de una ramificación “No” desde la etapa 506), pueden evaluarse alternativas a la presente conexión, tales como una tecnología de acceso alternativa o una instancia diferente del mismo tipo de tecnología de acceso (por ejemplo, una red WLAN o subred diferente a través de un punto de acceso alternativo, conexión PPP o GSM APN) (etapa 508). Si no existe una alternativa mejor (a través de la ramificación “No” en la etapa 510), las operaciones 500 pueden continuar (por ejemplo, a través de un bucle de retorno a la etapa 504). De lo contrario, puede establecerse una conexión a través de una alternativa seleccionada (etapa 512) y se continúan las operaciones 500. Con relación a la
frecuencia de supervisión (etapa 504), la misma puede depender de la tecnología de acceso de radio en particular u otros indicadores. Puede ser adaptativa (tal como mediante la medición de un aumento en el tiempo de respuesta entre la solicitud/respuesta HTTP, etc.). Debido a que la supervisión requiere cierta sobrecarga y consumo de batería, la omisión de "ciclos de supervisión” innecesarios puede ser beneficiosa.
En caso de fallo de la primera conexión (por ejemplo, caída de la misma), entonces, las operaciones 500 pueden operar para elegir una tecnología y una conexión que sean las mejores alternativas disponibles para volver a establecer la conexión con el motor 206A de normas, la pila de red, etc., según sea aplicable.
En caso de que el servicio solicitado (por ejemplo, después de recibir una indicación desde la red, por ejemplo, mediante la recepción de una SIP 380 (Servicio Alternativo)) indica una necesidad de conectarse usando una tecnología alternativa (por ejemplo, debido a la invocación de los servicios de emergencia), entonces, las operaciones 500 pueden operar para elegir una tecnología y conexión que sean la mejor alternativa disponible para volver a establecer la conexión usando el motor 206A de normas (en base a las normas de ejemplo que tienen en cuenta el servicio solicitado (por ejemplo, una solicitud SIP que contiene un identificador de emergencia conocido)), pila de red, etc., según sea aplicable.
Para algunas aplicaciones y en algunas realizaciones, es posible que los detalles de la tecnología de acceso y de la pila de red, etc., deban ser reflejados en el protocolo de aplicación que está usando la conexión. Por ejemplo, la cabecera P-Access_Info de SIP [RFC 3455] necesita estar muy poblada. Por lo tanto, una aplicación puede interactuar con el motor 206A de normas (por ejemplo, a través de una consulta u otro mecanismo) para adquirir información de la red de acceso.
Algunas conmutaciones de tecnología de acceso resultarán en cambios de dirección IP. Si una aplicación que usa la conexión tiene que conocer la dirección IP, es posible que el cambio no sea transparente y es posible que necesite ser comunicada a (o si no pueda ser detectada por) la aplicación. Por ejemplo, si una dirección IP de tunelización de destino cambia, es posible que dicha dirección deba ser proporcionada a la aplicación o a cualquier otro componente responsable de mantener y asesorar a los agentes remotos y similares. Cuando una aplicación no tiene conocimiento de la dirección IP, la conmutación dinámica de la tecnología de acceso puede ser transparente. La transparencia supone que la nueva tecnología de acceso ofrece niveles de rendimiento de servicio similares a la tecnología de acceso previa. En otro caso en el que las diferencias son considerables (por ejemplo, entre las tecnologías GSM/GPRS y WAN 802.11), una aplicación puede tener que adaptar su comportamiento para tener en cuenta la nueva tecnología de acceso usada. Es posible que tengan que cambiarse los tamaños de memoria intermedia, los temporizadores de retransmisión, etc.
Tal como se ha indicado anteriormente, un protocolo IP móvil o de direccionamiento constante puede ser útil para realizar cambios de tecnología de acceso transparentes para las aplicaciones. De esta manera, el motor de normas puede ser usado para seleccionar un modo de comunicación inicial para establecer una conexión, por ejemplo, eligiendo entre diversas tecnologías de acceso disponibles en tiempo de ejecución y para conmutar un modo de comunicación para un rendimiento supervisado de la conexión establecida u otros criterios.
La Figura 6 es un diagrama de bloques detallado de una realización de un dispositivo 600 de comunicación inalámbrico, portátil, que puede configurarse como un dispositivo 102 móvil, tal como se ha descrito. Preferiblemente, el dispositivo 600 portátil es un dispositivo de comunicación de dos vías que tiene al menos capacidades de voz y comunicación de datos avanzadas, incluyendo la capacidad de comunicarse con otros sistemas informáticos. Dependiendo de la funcionalidad proporcionada por el dispositivo 600 portátil, puede ser denominado como un dispositivo de mensajería de datos, un localizador de dos vías, un teléfono celular con capacidades de mensajería de datos, un aparato inalámbrico con Internet, asistente digital personal (PDA), teléfono inteligente, BlackBerry o un dispositivo de comunicación de datos (con o sin capacidades de telefonía). En la presente realización, el dispositivo 600 portátil tiene capacidades tanto de transceptor Wi-Fi como de transceptor celular. Como tal, el dispositivo 600 puede comunicarse en modos respectivos con uno cualquiera de entre una pluralidad de puntos de acceso y sistemas transceptores de estación base (no mostrados) dentro de su área de cobertura geográfica.
El dispositivo 600 portátil puede incorporar un transceptor celular (subsistema de comunicación) 611, que incluye un receptor 612, un transmisor 614, y componentes asociados, tales como uno o más elementos 616 y 618 de antena (preferiblemente incluidos o internos), osciladores locales (LOs) 613 y un módulo de procesamiento, tal como un procesador de señal digital (DSP) 620. Como será evidente para las personas con conocimientos en el campo de las comunicaciones, el diseño particular del subsistema 611 de comunicaciones depende de la red de comunicaciones en la que el dispositivo 600 portátil está destinado a operar.
El dispositivo 600 portátil puede enviar y recibir señales de comunicación sobre la red después de completados los procedimientos requeridos de registro de la red, de autenticación o activación. Las señales recibidas por la antena 616 a través de la red son introducidas al receptor 612, que puede realizar funciones de receptor comunes, tales como una amplificación de señal, conversión descendente de frecuencia, filtrado, selección de canal y conversión de analógico a digital (A/D). La conversión A/D de una señal recibida permite la realización de funciones de comunicación más complejas, tales como la demodulación y la decodificación en el DSP 620. De una manera similar, las señales a transmitir son procesadas, incluyendo la modulación y la codificación, por ejemplo, por el DSP 620. Estas señales procesadas por el DSP son introducidas al transmisor 614 para una conversión de digital a analógico (D/A), conversión ascendente de frecuencia, filtrado, amplificación y transmisión sobre la red de comunicación a través de la antena 618. El DSP 620 no sólo procesa las señales de comunicación, sino que proporciona también un control del receptor y del transmisor. Por ejemplo, las ganancias aplicadas a las señales de comunicación en el receptor 612 y el transmisor 614 pueden ser controladas adaptativamente a través de algoritmos automáticos de control de ganancia implementados en el DSP 620.
El acceso de red está asociado con un abonado o usuario del dispositivo 600 portátil y, por lo tanto, el dispositivo 600 portátil comprende un módulo 672 de memoria, una tarjeta de módulo de memoria o un módulo de identidad de usuario extraíble (Removable User Identity Module, R-UIM) o módulo de identificación del suscriptor (Subscriber Identity Module, SIM/USIM), para ser insertado en o conectado a una interfaz 674 con el fin de operar en la red. Como alternativa, el módulo 672 de memoria puede ser una memoria no volátil que está programada con datos de configuración por un proveedor de servicios de manera que la estación 600 móvil pueda operar en la red. Debido a que el dispositivo 600 portátil es un dispositivo móvil alimentado por baterías, incluye también una interfaz 664 de batería para recibir una o más baterías 666 recargables. Dicha batería 666 proporciona energía eléctrica a la mayoría de, si no a todos, los circuitos eléctricos en el dispositivo 600 portátil, y la interfaz 664 de batería proporciona una conexión mecánica y eléctrica para ello. La interfaz 664 de batería está acoplada a un regulador (no mostrado en la Fig. 6) que proporciona energía V+ a todos los circuitos.
El dispositivo 600 portátil puede incluir un transceptor 621 Wi-Fi que puede comprender componentes/chipsets similares al subsistema 611 adaptado para uno o más protocolos de Wi-Fi. Aunque se muestra Wi-Fi, WiMAX es un transceptor alternativo. En algunas formas de realización, el dispositivo 600 puede ser capaz tanto de comunicaciones Wi-Fi como WiMAX según las técnicas de radio definidas por software ("Radio consciente").
El dispositivo 600 portátil incluye un microprocesador 638 que controla el funcionamiento global de la estación 600 móvil. Las funciones de comunicación, que incluyen al menos comunicaciones de datos y voz, se realizan a través del subsistema 611 de comunicaciones. El microprocesador 638 interactúa también con subsistemas de dispositivo adicionales, tales como una pantalla 622, una memoria 624 flash, una memoria 626 de acceso aleatorio (RAM), subsistemas 628 auxiliar de entrada/salida (E/S), un puerto 630 serie, un teclado 632, un altavoz 634, un micrófono 636, un subsistema 640 de comunicaciones de corto alcance, y cualquier otro subsistema del dispositivo designado en general con 642. Algunos de los subsistemas mostrados en la Fig. 6 realizan funciones relacionadas con la comunicación, mientras que otros subsistemas pueden proporcionar funciones "residentes" o en el dispositivo. De manera notable, algunos subsistemas, tales como el teclado 632 y la pantalla 622, por ejemplo, pueden ser usados tanto para funciones relacionadas con la comunicación, tales como la introducción de un mensaje de texto para su transmisión sobre una red de comunicaciones, y funciones residentes en el dispositivo, tales como una calculadora
o una lista de tareas. Preferiblemente, el software de sistema operativo usado por el microprocesador 638 está almacenado en un almacenamiento persistente, tal como una memoria 624 flash que, como alternativa, puede ser una memoria de sólo lectura (ROM) o un elemento de almacenamiento similar (no mostrado). Las personas con conocimientos en la materia apreciarán que el sistema operativo, las aplicaciones específicas del dispositivo o partes de los mismos, pueden ser cargados temporalmente en un almacenamiento volátil, tal como la RAM 626.
El microprocesador 638, además de sus funciones de sistema operativo, permite preferiblemente la ejecución de aplicaciones de software en el dispositivo 600 portátil. Un conjunto predeterminado de aplicaciones que controlan las operaciones básicas del dispositivo, incluyendo al menos las aplicaciones de comunicación de datos y voz, se instalarán normalmente en el dispositivo 600 portátil durante su fabricación. Una aplicación preferida que puede cargarse en el dispositivo 600 portátil puede ser una aplicación de gestor de información personal (PIM) que tiene la capacidad de organizar y gestionar elementos de datos relacionados con un usuario, tales como, pero sin limitarse a, correo electrónico, eventos del calendario, correos de voz, citas y tareas. Naturalmente, uno o más almacenamientos de memoria están disponibles en el dispositivo 600 portátil y el módulo 672 de memoria para facilitar el almacenamiento de los elementos de datos PIM y otra información.
Preferiblemente, la aplicación PIM tiene la capacidad de enviar y recibir elementos de datos a través de la red inalámbrica. En una realización preferida, los elementos de datos PIM están perfectamente integrados, sincronizados, y actualizados a través de la red inalámbrica, con elementos de datos correspondientes al usuario de
la estación móvil almacenados y/o asociados con un sistema informático central creando, de esta manera, un ordenador principal reflejado en el dispositivo 600 portátil con respecto a dichos elementos. Esto es especialmente ventajoso cuando el sistema informático central es estación móvil del sistema informático de la oficina o empresa del usuario. También pueden cargarse aplicaciones adicionales en el dispositivo 600 portátil a través de la red, un subsistema 628 de E/S auxiliar, un puerto 630 serie, un subsistema 640 de comunicaciones de corto alcance, o cualquier otro subsistema 642 adecuado, e instaladas por un usuario en la RAM 626 o, preferiblemente, un almacenamiento no volátil (no mostrado) para su ejecución por el microprocesador 638. Dicha flexibilidad en la instalación de aplicaciones aumenta la funcionalidad del dispositivo 600 portátil y puede proporcionar funciones mejoradas en el dispositivo, funciones relacionadas con comunicación, o ambas. Por ejemplo, las aplicaciones de comunicación segura pueden habilitar funciones de comercio electrónico y otras transacciones financieras de este tipo, a ser realizadas usando el dispositivo 600 portátil.
En un modo de comunicación de datos, una señal recibida, tal como un mensaje de texto, un mensaje de correo electrónico o una página descargada de Internet o un mensaje según otra aplicación 204, será procesada por el subsistema 611 ó 621 de comunicación aplicable y será introducida al microprocesador 638. Preferiblemente, el microprocesador 638 procesará adicionalmente la señal, según una aplicación asociada, para sacarla a la pantalla 622 o, como alternativa, a un dispositivo 628 de E/S auxiliar. Un usuario del dispositivo 600 portátil puede componer también elementos de datos según una aplicación asociada, tales como mensajes de correo electrónico, por ejemplo, usando el teclado 632 en conjunción con la pantalla 622 y, posiblemente, el dispositivo 628 de E/S auxiliar. Preferiblemente, el teclado 632 es un teclado alfanumérico completo y/o un teclado de tipo teléfono. Estos elementos compuestos pueden ser transmitidos sobre una red de comunicaciones a través del subsistema 611 o 621 de comunicaciones.
Para las comunicaciones de voz, el funcionamiento global del dispositivo 600 portátil es sustancialmente similar, excepto que las señales recibidas serían sacadas al altavoz 634 y las señales para la transmisión serían generadas por el micrófono 636. También pueden implementarse subsistemas de voz o de E/S de audio alternativos, tales como un subsistema de grabación de mensajes de voz. Preferiblemente, aunque la salida de señal de voz o de audio se consigue, principalmente, a través del altavoz 634, puede usarse también la pantalla 622 para proporcionar una indicación de la identidad de una parte llamante, la duración de una llamada de voz, u otra información relacionada con la llamada de voz, como algunos ejemplos.
El puerto 630 serie en la Fig. 6 se implementa, normalmente, en un dispositivo de comunicación de tipo asistente digital personal (PDA) para el que la sincronización con el ordenador de sobremesa de un usuario es un componente deseable, aunque opcional. El puerto 630 serie permite a un usuario configurar las preferencias a través de un dispositivo externo o aplicación de software y extiende las capacidades del dispositivo 600 portátil mediante la provisión de información o descargas de software a un dispositivo 600 portátil mediante una ruta diferente a una red de comunicaciones inalámbrica. Por ejemplo, la ruta de descarga alternativa puede ser usada para cargar una clave de cifrado en el dispositivo 600 portátil a través de una conexión directa y, por lo tanto, fiable y de confianza, para proporcionar con ello una comunicación segura con el dispositivo. Además, puede ser usada, tal como se ha descrito anteriormente, como un modo para las aplicaciones 204.
El subsistema 640 de comunicaciones, de corto alcance, es un componente opcional adicional que permite la comunicación entre el dispositivo 600 portátil y diferentes sistemas o dispositivos, que no tienen que ser, necesariamente, dispositivos similares. Por ejemplo, el subsistema 640 puede incluir un dispositivo de infrarrojos y circuitos y componentes asociados, o un módulo de comunicaciones Bluetooth® para permitir la comunicación con sistemas y dispositivos habilitados de manera similar. Bluetooth® puede usarse, tal como se ha descrito anteriormente, como un modo para las aplicaciones 204.
Aunque se han descrito principalmente en asociación con operaciones de modo inalámbrico, las personas con conocimientos ordinarios en la materia apreciarán que los dispositivos 102 pueden estar configurados para el funcionamiento en multimodo seleccionando entre diferentes modos inalámbricos y modos por cable con cambios adecuados en la infraestructura de red. Las aplicaciones 204 pueden ser configuradas para las operaciones según múltiples modos inalámbricos, modos por cable y ambos modos inalámbrico y por cable. Las operaciones pueden ser configuradas para seleccionar diferentes modos de un mismo tipo de comunicación por red, también. Por ejemplo, para elegir entre las redes Wi-Fi disponibles o las redes celulares disponibles de diferentes proveedores de servicios celulares.
Aunque en la presente memoria se han descrito las realizaciones específicas de la invención, las personas con conocimientos en la materia entenderán que pueden realizarse variaciones a las mismas sin apartarse del alcance de las reivindicaciones adjuntas.
Según un aspecto de la invención, se proporciona un dispositivo de comunicaciones multimodo que comprende: al menos dos interfaces de comunicaciones configurados para habilitar el dispositivo para comunicarse en al menos dos modos de comunicación; y un procesador y memoria, acoplada al procesador para almacenar las instrucciones para su ejecución por el procesador en tiempo de ejecución, definiendo dichas instrucciones: al menos una
5 aplicación configurada para la comunicación usando al menos uno de dichos modos de comunicación; y un componente de enrutamiento para enrutar las comunicaciones para la al menos una aplicación entre las interfaces de comunicaciones, siendo configurado dicho componente de enrutamiento usando normas para seleccionar una interfaz de comunicaciones particular en tiempo de ejecución.
10 De manera opcional, el componente de enrutamiento comprende un motor de normas configurable por dichas normas.
De manera opcional, las normas son sensibles a al menos un requisito de tipo de tecnología de acceso de radio, ancho de banda, costo, presencia, hora del día, ubicación, tipo de aplicación y calidad de servicio.
15 De manera opcional, el componente de enrutamiento funciona para al menos uno de entre:
a) seleccionar un modo de comunicación inicial según las normas para establecer una conexión para una de dichas aplicaciones, y
20 b) supervisar dicha conexión para conmutar el modo inicial según las normas.
De manera opcional, las instrucciones proporcionan transparencia de direccionamiento de red a al menos algunas de las aplicaciones según al menos uno de entre protocolos IP móvil y técnicas de direccionamiento constante.
25 De manera opcional, el componente de enrutamiento configura al menos una de entre una tabla de enrutamiento y una tabla de conexiones para enrutar dichas comunicaciones a través de una interfaz de comunicaciones particular según la evaluación de las normas en tiempo de ejecución.
30 De manera opcional, las instrucciones definen una API de comunicaciones para gestionar las comunicaciones en nombre de las aplicaciones, enrutando dicha API de comunicaciones dichas comunicaciones según la tabla de enrutamiento y la tabla de conexiones.
De manera opcional, uno de dichos dos modos de comunicación funciona según un estándar de telefonía móvil y 35 un segundo de dichos dos modos de comunicación funciona según un estándar LAN inalámbrico (WLAN).
Según otro aspecto de la invención, se proporciona un procedimiento de comunicación multimodo para un dispositivo que comprende al menos dos interfaces de comunicaciones configuradas para comunicarse en al menos dos modos de comunicación; y un procesador y una memoria, acoplada al procesador para almacenar
40 instrucciones para su ejecución por el procesador en tiempo de ejecución, definiendo dichas instrucciones al menos una aplicación configurada para la comunicación usando al menos uno de dichos modos de comunicación; comprendiendo dicho procedimiento: enrutar las comunicaciones para la al menos una aplicación entre las interfaces de comunicaciones usando normas para seleccionar una interfaz de comunicaciones particular en tiempo de ejecución.
45 De manera opcional, las normas son sensibles a al menos un requisito de tipo de tecnología de acceso de radio, ancho de banda, costo, presencia, hora del día, ubicación, tipo de aplicación y calidad de servicio.
De manera opcional, el procedimiento comprende proporcionar dichas normas a un motor de normas de un 50 componente de enrutamiento definido por dichas instrucciones.
De manera opcional, las instrucciones definen una tabla de enrutamiento y una tabla de conexiones para enrutar dichas comunicaciones y en el que el procedimiento comprende configurar al menos una de entre la tabla de enrutamiento y la tabla de conexiones para enrutar dichas comunicaciones a través de una interfaz de
55 comunicaciones particular según la evaluación de las normas en tiempo de ejecución.
De manera opcional, las instrucciones definen una API de comunicaciones para gestionar las comunicaciones en nombre de las aplicaciones, enrutando dicha API de comunicaciones dichas comunicaciones según la tabla de enrutamiento y la tabla de conexiones.
60 De manera opcional, el procedimiento comprende al menos uno de entre: c) seleccionar un modo de comunicación inicial según las normas para establecer una conexión para una de dichas aplicaciones; y d) supervisar dicha conexión para conmutar el modo inicial según la normas.
5 De manera opcional, el procedimiento comprende proporcionar una transparencia de dirección de red a al menos algunas de las aplicaciones con al menos uno de entre protocolos IP móvil y técnicas de direccionamiento constante.
10 Según otro aspecto de la invención, se proporciona un medio de almacenamiento legible por ordenador que tiene instrucciones ejecutables por ordenador almacenadas en el mismo para enrutar las comunicaciones para un dispositivo que comprende al menos dos interfaces de comunicaciones configuradas para comunicarse en al menos dos modos de comunicación; y un procesador para ejecutar dichas instrucciones legibles por ordenador en tiempo de ejecución; siendo dichas instrucciones ejecutables por ordenador operables para enrutar las
15 comunicaciones entre las interfaces de comunicaciones usando normas para seleccionar una interfaz de comunicaciones particular en tiempo de ejecución para al menos una aplicación ejecutada por el dispositivo.
De manera opcional, las normas son sensibles a al menos un requisito de tipo de tecnología de acceso, ancho de banda, costo, presencia, hora del día, ubicación, tipo de aplicación y calidad de servicio.
20 De manera opcional, las instrucciones ejecutables por ordenador son operables para interpretar dichas normas en tiempo de ejecución usando un motor de normas.
De manera opcional, las instrucciones ejecutables por ordenador son operables para definir una tabla de
25 enrutamiento y una tabla de conexiones para enrutar dichas comunicaciones y para configurar al menos una de entre la tabla de enrutamiento y la tabla de conexiones para enrutar dichas comunicaciones a través de una interfaz de comunicaciones particular según la evaluación de las normas en el tiempo de ejecución.
De manera opcional, las instrucciones ejecutables por ordenador son operables para definir una API de 30 comunicaciones para gestionar las comunicaciones en nombre de la aplicación, enrutando dicha API de comunicaciones dichas comunicaciones según la tabla de enrutamiento y la tabla de conexiones.
De manera opcional, las instrucciones ejecutables por ordenador son operables para al menos uno de entre:
35 e) seleccionar un modo de comunicación inicial según las normas para establecer una conexión para una de dichas aplicaciones; y
f) supervisar dicha conexión para conmutar el modo inicial según las normas.

Claims (11)

  1. REIVINDICACIONES
    1. Un procedimiento realizado por un equipo de usuario (UE), estando caracterizado el procedimiento por que:
    5 - establece una conexión para una aplicación según una directiva sensible a la información a la hora y a la ubicación para el UE;
    -
    en el que el UE evalúa, mediante un motor de normas, la directiva, y configura las operaciones de comunicación en el UE para proporcionar la conexión a uno de entre un primer servidor y un segundo servidor en respuesta a las horas de trabajo, las horas de ocio y la ubicación del UE.
  2. 2.
    Procedimiento según la reivindicación 1, en el que la directiva es evaluada de manera que cuando el UE está en el lugar de trabajo durante las horas de trabajo, el UE establece una conexión al primer servidor.
  3. 3.
    Procedimiento según la reivindicación 1 o la reivindicación 2, en el que la directiva es evaluada de manera que
    15 cuando el UE no está en el lugar de trabajo durante las horas de trabajo, el UE establece una conexión a una red privada virtual (VPN) al primer servidor.
  4. 4. Procedimiento según una cualquiera de las reivindicaciones 1 a 3, en el que la directiva es evaluada de manera
    que cuando el UE no está en el lugar de trabajo durante las horas de ocio, el UE establece una conexión al segundo 20 servidor.
  5. 5. Procedimiento según una cualquiera de las reivindicaciones 1 a 4, en el que, en respuesta a un cambio de estado, la directiva es evaluada y la conexión se mantiene o actualiza.
    25 6. Procedimiento según la reivindicación 5, en el que el cambio de estado es desencadenado por una aplicación de calendario.
  6. 7. Procedimiento según una cualquiera de las reivindicaciones 1 a 6, en el que cada uno de entre el primer servidor
    y el segundo servidor proporciona servicios SIP (Session Initiation Protocol) al UE. 30
  7. 8. Procedimiento según una cualquiera de las reivindicaciones 1 a 7, en el que el primer servidor comprende un servidor de trabajo y el segundo servidor comprende un servidor doméstico.
  8. 9. Procedimiento según una cualquiera de las reivindicaciones 1 a 8, en el que la aplicación comprende una 35 aplicación Voz sobre IP (Voice over IP, VoIP).
  9. 10. Procedimiento según la reivindicación 1, en el que el UE configura las operaciones de comunicaciones enrutando los datos de aplicación a una interfaz de red apropiada.
    40 11. Procedimiento según cualquiera de las reivindicaciones anteriores, en el que dicha aplicación usa una interfaz de conexión y en el que la configuración de las operaciones de comunicación comprende configurar tanto una tabla de enrutamiento como una tabla de conexiones.
  10. 12. Procedimiento según cualquiera de las reivindicaciones anteriores, en el que dicha aplicación usa una conexión
    45 básica y en el que la configuración de las operaciones de comunicación comprende configurar una tabla de enrutamiento.
  11. 13. Un equipo de usuario, UE, que comprende un procesador y una memoria con instrucciones almacenadas en la
    misma que pueden ser ejecutadas llevando a cabo los procedimientos según las reivindicaciones 1 a 12. 50
ES11169639T 2008-02-15 2008-02-15 Enrutamiento de datos basado en directivas para un dispositivo multimodo Active ES2423404T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP08151541A EP2091190A1 (en) 2008-02-15 2008-02-15 Policy-based data routing for a multi-mode device

Publications (1)

Publication Number Publication Date
ES2423404T3 true ES2423404T3 (es) 2013-09-20

Family

ID=39645325

Family Applications (2)

Application Number Title Priority Date Filing Date
ES11169640.7T Active ES2440335T3 (es) 2008-02-15 2008-02-15 Enrutamiento de datos basado en instrucciones para un dispositivo multimodo
ES11169639T Active ES2423404T3 (es) 2008-02-15 2008-02-15 Enrutamiento de datos basado en directivas para un dispositivo multimodo

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES11169640.7T Active ES2440335T3 (es) 2008-02-15 2008-02-15 Enrutamiento de datos basado en instrucciones para un dispositivo multimodo

Country Status (3)

Country Link
EP (4) EP2389036B1 (es)
CA (1) CA2653862C (es)
ES (2) ES2440335T3 (es)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8379551B2 (en) * 2009-08-18 2013-02-19 Qualcomm Incorporated Radio selection in a multi-radio device
US10003652B2 (en) 2012-03-05 2018-06-19 Omnitracs, Llc Managing selective access of a user equipment to internet-based services based on transport type
US9014174B2 (en) 2012-06-29 2015-04-21 Blackberry Limited Managing multiple forwarding information bases
EP2880955B1 (en) 2012-08-03 2021-03-31 Apple Inc. Method for enabling device-to-device communication
US9036603B2 (en) 2012-08-03 2015-05-19 Intel Corporation Network assistance for device-to-device discovery
US9191828B2 (en) 2012-08-03 2015-11-17 Intel Corporation High efficiency distributed device-to-device (D2D) channel access
US8913518B2 (en) 2012-08-03 2014-12-16 Intel Corporation Enhanced node B, user equipment and methods for discontinuous reception in inter-ENB carrier aggregation
CN104471876B (zh) 2012-08-03 2018-08-10 英特尔公司 包含设备触发重呼/替换特征的3gpp/m2m方法和设备
US9526022B2 (en) 2012-08-03 2016-12-20 Intel Corporation Establishing operating system and application-based routing policies in multi-mode user equipment
US20150280765A1 (en) * 2012-10-11 2015-10-01 Wyless Group Holding (Suisse) Sa Communication device management
LU92843B1 (en) * 2015-10-06 2017-05-02 Univ Luxembourg Network Management System
US10511542B2 (en) * 2016-06-10 2019-12-17 Microsoft Technology Licensing, Llc Multi-interface power-aware networking
US10609118B2 (en) 2017-03-14 2020-03-31 International Business Machines Corporation Adaptive communication control device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7065367B2 (en) * 2002-07-11 2006-06-20 Oliver Michaelis Interface selection in a wireless communication network
US20040131078A1 (en) 2003-01-03 2004-07-08 Gupta Vivek G. Apparatus and method for supporting multiple wireless technologies within a device
US7743156B2 (en) * 2003-07-18 2010-06-22 Onset Technology, Ltd. System and method for PIN-to-PIN network communications
US7996505B2 (en) * 2003-10-24 2011-08-09 Microsoft Corporation Network and interface selection on a computing device capable of establishing connections via multiple network communications media
DE102006010513B4 (de) 2006-03-07 2011-12-29 Infineon Technologies Ag Kommunikationseinrichtung, Funk-Kommunikations-Anordnung und Verfahren zum Übertragen von Information von einer ersten Funk-Kommunikationseinrichtung zu einer zweiten Funk-Kommunikationseinrichtung
US7636779B2 (en) * 2006-04-28 2009-12-22 Yahoo! Inc. Contextual mobile local search based on social network vitality information
US8223729B2 (en) 2006-07-19 2012-07-17 Qualcomm Incorporated Radio interface selection for a terminal

Also Published As

Publication number Publication date
ES2440335T3 (es) 2014-01-28
EP2421306B1 (en) 2013-05-01
EP2421306A1 (en) 2012-02-22
CA2653862A1 (en) 2009-08-15
EP2384062B1 (en) 2014-06-11
EP2384062A1 (en) 2011-11-02
EP2091190A1 (en) 2009-08-19
EP2389036B1 (en) 2013-09-25
CA2653862C (en) 2015-11-10
EP2389036A1 (en) 2011-11-23

Similar Documents

Publication Publication Date Title
ES2423404T3 (es) Enrutamiento de datos basado en directivas para un dispositivo multimodo
US8825109B2 (en) Policy-based data routing for a multi-mode device
ES2905988T3 (es) Procedimientos y aparatos de selección de red con priorización de red propia después de la recuperación de señal de red o encendido
ES2335885T3 (es) Metodos y aparatos de seleccion de red con prioridad de red local en las regiones fronterizas del pais.
CA2515819C (en) Methods and apparatus for providing manual selection of a communication network for a mobile station
US7295532B2 (en) System, device and computer readable medium for providing networking services on a mobile device
ES2422908T3 (es) Método y aparato para seleccionar una red de comunicación inalámbrica en una estación móvil
ES2688787T3 (es) Gestor de conexiones para un dispositivo de comunicación inalámbrica
KR100987489B1 (ko) 무선 모드 표시자를 디스플레이하는 시스템, 방법 및모바일 장치
US20100009676A1 (en) System and method for radio access technology-specific routing for multi-mode mobile devices
US20100248719A1 (en) Self-configuring man-machine interface for a communication terminal
ES2278233T3 (es) Sistema y metodo para seleccionar una red celular en una red de area local inalambrica (wlan).
CA2812369A1 (en) Dynamic switching of a network connection based on security restrictions
EP1668935A2 (en) A device, system, method and computer readable medium for attaching to a device identifited by an access point name in a wide area network providing particular services
ES2694380T3 (es) Método y aparato para marcador de posición de sesión dinámica para una interfaz de usuario de recogida de mensajes
ES2352871T3 (es) Métodos y aparatos para producir y cursar una petición http con un dominio de nivel superior desde un dispositivo de comunicación móvil.