ES2311802T3 - Sistema de comunicaciones que proporciona una interfaz compartida de comunicaciones cliente-servidor y metodos relacionados. - Google Patents

Sistema de comunicaciones que proporciona una interfaz compartida de comunicaciones cliente-servidor y metodos relacionados. Download PDF

Info

Publication number
ES2311802T3
ES2311802T3 ES04715115T ES04715115T ES2311802T3 ES 2311802 T3 ES2311802 T3 ES 2311802T3 ES 04715115 T ES04715115 T ES 04715115T ES 04715115 T ES04715115 T ES 04715115T ES 2311802 T3 ES2311802 T3 ES 2311802T3
Authority
ES
Spain
Prior art keywords
http
server
application
requests
client
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.)
Expired - Lifetime
Application number
ES04715115T
Other languages
English (en)
Inventor
Blair Cooper
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
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 Research in Motion Ltd filed Critical Research in Motion Ltd
Application granted granted Critical
Publication of ES2311802T3 publication Critical patent/ES2311802T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)

Abstract

Un sistema (100) de comunicaciones que comprende: una pluralidad de dispositivos (108) de comunicaciones conectados juntos en una red (107) y que tienen una pluralidad de cuentas de usuario asociadas con los mismos, estando destinado al menos uno de dichos dispositivos (108) de comunicación a procesar solicitudes de utilización de un protocolo de transferencia de hipertexto, HTTP, de la aplicación (104) de cliente asociada con el mismo; un servidor (101) de la aplicación destinado a acceder a las cuentas de usuario por medio de dicha aplicación (104) de cliente de HTTP; y un servidor (102) de HTTP destinado a la interfaz de dicha aplicación (104) de cliente de HTTP con dicho servidor (101) de la aplicación; estando destinados dicho servidor (102) de HTTP y dicha aplicación (104) de cliente a formatear solicitudes para que sean comunicadas entre ellos en un formato de HTTP a través de Internet (109), y estando cada uno destinado a proporcionar información de estado adicional con las solicitudes formateadas de HTTP reconocibles por el otro para la autentificación del servidor (101) de la aplicación y de dicha aplicación (104) de cliente entre sí; estando destinada dicha aplicación (104) de cliente de HTTP a solicitar un primer localizador de recursos universal, URL, desde dicho servidor (102) de HTTP para aceptar solicitudes de trabajo de dicho servidor (101) de la aplicación, y estando destinado a solicitar un segundo URL, diferente del primer URL de dicho servidor (102) de HTTP para responder a las solicitudes de trabajo de dicho servidor (101) de la aplicación.

Description

Sistema de comunicaciones que proporciona una interfaz compartida de comunicaciones cliente-servidor y métodos relacionados.
Campo de la invención
La presente invención se refiere al campo de los sistemas de comunicaciones, y, más particularmente, a comunicaciones cliente-servidor y métodos relacionados.
Antecedentes de la invención
Un modo en el que las aplicaciones se comunican entre sí es usando la relación cliente-servidos. En ese tipo de relación, una aplicación funciona como un cliente y proporciona una interfaz al usuario. La otra aplicación es la aplicación de servidor que se basa en un servidor de la aplicación y es responsable de la mayoría de los cálculos y/o tratamiento de datos.
Esta relación cliente-servidor puede ser extendida a aplicaciones de la World Wide Web en donde la aplicación de cliente (típicamente un Buscador de red) y la componente de servidor (un servidor de aplicaciones o de Red sobre Internet) interaccionarán. Una solución para las aplicaciones cliente-servidor basadas en la Red para comunicarse uno con otro es la utilización del protocolo (HTTP) de transferencia de hipertexto como un protocolo de solicitud-respuesta. Tradicionalmente, HTTP es usado en la World Wide Web por los clientes buscadores para acceder y descargar contenidos de lugares de la Red Internet para entornos de cálculo de usuarios (por ejemplo, hogar, sociedades, red, etc.).
Muchos entornos de cálculo proporcionan funcionalidad sofisticada y amplia a sus usuarios cuando estos actúan dentro de los límites de su entorno de cálculo protegido. Por ejemplo, un usurario de la corporación puede tener acceso a bases de datos de la empresa propietaria mientras usa so ordenador de mesa en su oficina. No obstante, cuando un usuario está fuera de este entorno (por ejemplo, el usuario está sobre la carretera), el puede todavía requerir el acceso a esa funcionalidad.
La mayoría de los entornos de cálculo permiten conexiones que se originan dentro del entorno con lugares externos, pero las conexiones que se originan fuera del entorno tienen restringido el acceso al entorno. Esto se consigue típicamente mediante la utilización de un cortafuegos, por ejemplo. Además, algunos entornos de cálculo restringen además las conexiones de red hacia el exterior para acceder solamente a servicios de HTTP. Esto hace difícil, aunque no imposible, a un usuario vagabundo el acceso a una funcionalidad o a servicios importantes de su entorno de cálculo protegido.
El problema es quizás más grave para los usuarios basados en su hogar. Por ejemplo, es difícil para los usuarios conectarse desde su ordenador personal con sus servidores incorporados en el trabajo. Una conexión telefónica o de alta velocidad basada en la Red requiere a menudo software de cliente en la máquina de casa y/o una prueba segura para la autentificación. Además, la mayoría de las corporaciones pueden no soportar el acceso colectivo usando ordenadores personales.
Varias soluciones de la técnica anterior han sido desarrolladas para permitir que los usuarios accedan a la información desde fuera de un entorno de cálculo protegido. A modo de ejemplo, "Symmetry Pro" de "Infowave Software, Inc.", es un servicio de software que proporciona a los usuarios incorporados el acceso inalámbrico a su correo electrónico incorporado usando un dispositivo manual inalámbrico. En particular, los mensajes de correo electrónico que llegan en una caja interior incorporada de usuarios son criptografiados y luego entregados por medio del servicio de software de "Symmetry Pro" a los usuarios del dispositivo manual inalámbrico.
Otras dos soluciones de la técnica anterior incluyen un Extintor de Incendios y un Túnel de HTTP Gnu. Ambos productos tratan de encapsular el tráfico TCP sobre una conexión HTTP, actuando como un mandatario bidireccional genérico. Aunque, un inconveniente significativo de tales soluciones es que estas no proporcionan un nivel deseado de autentificación para proteger las comunicaciones seguras en ciertas aplicaciones.
La Solicitud de Patente Internacional WO 01/73522, describe un método y un aparato para asegurar las comunicaciones alrededor de un cortafuegos. El cortafuegos se configura para solamente el paso de paquetes si estos se originan en un lado más protegido del cortafuegos, o si estos se originan en respuesta a un paquete de ese tipo. Una conexión segura persistente se efectúa desde un programa de gestor de la conexión dentro del cortafuegos para un servidor situado fuera del cortafuegos. Un mensaje de solicitud de protocolo se envía entonces desde el gestor de la conexión al servidor sobre la conexión segura. Las solicitudes que llegan desde un cliente son incorporadas en un mensaje de respuesta de protocolo y enviadas al programa del gestor de la conexión. Después del tratamiento, los resultados, si los hay, son enviados como un mensaje de solicitud de protocolo al servidor, que extrae el resultado del mensaje de solicitud de protocolo y pone el resultado en un mensaje de respuesta de protocolo que es enviado al cliente que lo solicita.
Sumario de la invención
En vista de los antecedentes que se mencionan, un objeto es por lo tanto proporcionar un sistema de comunicaciones que proporcione características de comunicación y métodos relacionados cliente-servidor mejorados.
Un aspecto de la invención está definido por la reivindicación 1 del sistema independiente. Otro aspecto de la invención está definido por la reivindicación 7 del método independiente.
El sistema de comunicaciones descrito puede incluir una pluralidad de dispositivos de comunicación conectados entre sí en una red que tiene una pluralidad de cuentas de usuario asociadas con la misma. Al menos uno de los dispositivos de comunicación puede procesar solicitudes usando una aplicación de cliente de protocolo (HTTP) de transferencia de hipertexto asociada con el mismo. Además, el sistema puede incluir también un servidor de la aplicación para acceder a las cuentas de usuario a través de la aplicación de cliente de HTTP, y un servidor de HTTP para la interfaz de la aplicación de cliente de HTTP con el servidor de la aplicación. El servidor de HTTP y la aplicación de cliente de HTTP pueden formatear solicitudes para que sean comunicadas entre ellos a través de Internet en un formato HTTP, y cada uno puede proporcionar información de estado adicional con las solicitudes formateadas HTTP reconocibles por el otro para autentificar el servidor de la aplicación y la aplicación de cliente HTTP entre sí. Además, la solicitud de cliente de HTTP puede requerir un primer localizador de recursos universal (URL) del servidor de HTTP para aceptar solicitudes de trabajo del servidor de la aplicación, y solicitar un segundo URL diferente del primer URL del servidor de HTTP para responder a las solicitudes de trabajo del servidor de la aplicación.
Consecuentemente, el sistema de comunicaciones permite ventajosamente que puedan acceder seguramente a los datos o aplicaciones dentro de un entorno de cálculo protegido (por ejemplo, una red corporativa) los usuarios cuando estén fuera del entorno. Es decir, el al menos un dispositivo de comunicaciones puede estar situado dentro del entorno protegido (por ejemplo, un ordenador de mesa de usuario). Puesto que la aplicación de clientes de HTTP y el servidor de HTTP se comunican usando solicitudes de HTTP, la aplicación de clientes de HTTP y el servidor de HTTP pueden ventajosamente comunicarse a través de un puerto de red reservado para tráfico de Internet (es decir, solicitudes formateadas de HTTP y respuestas). Por tanto, un usuario puede acceder a su cuenta, que puede incluir diversos tipos de aplicaciones o información (por ejemplo, cuentas de correo, calendarios, contactos, etc.) la cual puede de otra manera estar bloqueada por un cortafuegos de la red. Además, el uso del primer y segundo cortafuegos permite que el servidor
de HTTP distinga más fácilmente y gestione solicitudes procedentes o dirigidas a la aplicación de clientes de HTTP.
Más particularmente, la información de estado adicional puede ser un (GUID) identificador único global asociado con la aplicación de cliente de HTTP. Adicionalmente, la aplicación de cliente de HTTP y el servidor de HTTP proporcionan además información de secuencias con las solicitudes de HTTP formateadas. La información de secuencias permite ventajosamente que una respuesta dada sea casada con una respectiva solicitud. Además, la aplicación de cliente de HTTP y el servidor de HTTP pueden formatear la información de estado adicional tal como los encabezamientos de HTTP para respectivas solicitudes formateadas de HTTP.
El método descrito puede permitir el acceso a una pluralidad de cuentas de usuario asociadas con una pluralidad de dispositivos de comunicaciones usando un servidor de la aplicación. Los dispositivos de comunicaciones pueden estar conectados juntos en una red, y al menos uno de los dispositivos de comunicaciones puede procesar solicitudes usando una aplicación de cliente de HTTP asociada con el mismo. El método puede incluir la conexión en serie del servidor de la aplicación con la aplicación de cliente de HTTP usando un servidor de HTTP. Además, el servidor de HTTP y la aplicación de cliente pueden formatear solicitudes para que sean comunicadas entre ellos en un formato de HTTP a través de Internet, y cada uno puede proporcionar información de estado adicional con las solicitudes formateadas de HTTP reconocibles por el otro para autentificar el servidor de la aplicación y la aplicación de cliente entre sí. El método puede incluir además la utilización de la aplicación de cliente de HTTP para solicitar un primer (URL) localizador de recursos universal del servidor de HTTP para aceptar solicitudes de trabajo del servidor de la aplicación. Adicionalmente, un segundo URL diferente del primer URL es solicitado desde el servidor de HTTP para responder a las solicitudes de trabajo del servidor de la aplicación.
Breve descripción de los dibujos
La Figura 1 es un diagrama de bloques esquemático de un sistema de comunicaciones de acuerdo con la presente invención.
La figura 2 es un diagrama de flujo que ilustra un método de comunicaciones de cliente-servidor de acuerdo con la presente invención.
Descripción detallada de las realizaciones preferidas
La presente invención se describirá ahora con más detalle en esta memoria con referencia a los dibujos que se acompañan, en los cuales se muestran las realizaciones preferidas de la invención. Esta invención puede, no obstante, ser incorporada de muchas formas diferentes y no debe ser considerada como limitada a las realizaciones que se muestran en este documento. Por el contrario, estas realizaciones se proporcionan para que esta descripción sea detallada y completa, y cubra completamente el alcance de la invención. Los mismos números se refieren a elementos similares a través de la misma.
Hablando en general, la presente invención permite que un cliente de HTTP actúe con una capacidad de servidor mientras todavía continúa siendo aceptado su comportamiento como cliente de HTTP. La invención permite ventajosamente por tanto una aplicación de cliente en un entorno de cálculo protegido de usuario (por ejemplo, una red corporativa) para establecer una conexión segura con un servicio de Internet y luego responder a solicitudes de un usuario autentificado (por ejemplo, el ordenador casero o dispositivo de comunicaciones inalámbrico del usuario).
Haciendo referencia inicialmente a la Figura 1, se describe primero un sistema 100 de comunicaciones cliente servidor basado en la red. El sistema 100 incluye ilustrativamente un cliente de HTTP o una aplicación 104 de cliente, situada en un entorno 106 de cálculo protegido. A modo de ejemplo, el entorno de cálculo protegido puede ser una red corporativa 107 que tiene una pluralidad de dispositivos 108a-108b dispositivos de comunicaciones (por ejemplo, ordenadores personales (PCs)) conectados a la misma, y un cortafuegos 112 para limitar el acceso externo a la red, como apreciarán los expertos en la técnica. Se ha de tener en cuenta que aunque el cortafuegos 112 y la red 107 se muestran como elementos separados por claridad de ilustración, las diversas funciones de cortafuegos y encaminamiento a la red realizadas de ese modo pueden ser ejecutadas en uno o más servidores de red o en otros dispositivos, como apreciarán los expertos en la técnica.
La aplicación 104 de cliente comunica bidireccionalmente con un servidor 102 de HTTP, que en el presente ejemplo está fuera del entorno 106 de cálculo protegido, a través de Internet, por ejemplo. El servidor 102 de HTTP comunica ilustrativamente con un servidor 101 de la aplicación para recuperar o procesar cualquier dato relativo a la aplicación. En una realización a modo de ejemplo, el servidor el servidor 102 de HTTP puede pertenecer a un proveedor de servicios que interconecta usuarios con sus respectivos dispositivos 108a-108n de comunicaciones dentro del entorno 106 de cálculo protegido. Consecuentemente, el servidor 101 de la aplicación puede dedicarse a realizar la entrega de correo o servicios de agregación usando el servidor 102 de HTTP para proporcionar una interfaz a un dispositivo 108 de comunicaciones situado dentro del entorno 106 de cálculo protegido, como se describirá mejor más adelante. Por supuesto, se puede acceder a otros tipos de datos asimismo, como apreciarán los expertos en la técnica. Un usuario podría entonces acceder al correo electrónico (u otros) datos recogidos por el servidor 101 por medio de un ordenador doméstico, dispositivo de comunicaciones inalámbricas (por ejemplo, un auxiliar de datos personal (PDA)), etc., como se apreciará también por los expertos en la técnica.
De acuerdo con la invención, el servidor 102 de HTTP y la aplicación 104 de cliente siguen preferiblemente comportamientos de servidor, cliente de HTTP y/o relaciones aceptadas. Esto permite que los dos se comuniquen usando un puerto de red dedicado (típicamente el puerto 80) reservado para el tráfico de Internet (es decir, HTTP), sin que esté bloqueado por el cortafuegos 112. No obstante, el servidor 102 de HTTP y la aplicación 104 de cliente son también ambas capaces de insertar información de estado adicional dentro de las solicitudes y las respuestas, y reconocen la información de estado insertada
En la realización ilustrada, la aplicación 104 de cliente es una aplicación "inteligente" que se hace correr sobre un ordenador en el entorno 106 de cálculo protegido de usuario. La aplicación 104 de cliente de HTTP estabiliza una conexión de red de salida con el servidor 102 de HTTP designado, y solicita un localizador (URL) de recursos uniforme desde este. En adición, la aplicación 104 de cliente de HTTP proporciona encabezamientos de HTTP adicionales, tales como datos que especifiquen un identificador único global (GUID) al servidor 102 de HTTP, por ejemplo. Esto establece una conexión semipermanente que está disponible para ser usada por el servidor 102 de HTTP para acceder a la aplicación 104 de cliente de HTTP sin que sea bloqueada por el cortafuegos 112.
Más concretamente, la(s) aplicación(es) que corre(n) sobre el servidor 101 es ahora capaz de acceder al cliente 104 de HTTP desde fuera del entorno 106 de cálculo protegido haciendo una petición al servidor 102 de HTTP. Cuando uno de los servidores 100 de aplicaciones efectúa una petición indirecta de la aplicación 104 de cliente de HTTP a través del servidor 102 de HTTP, el servidor 102 de HTTP a su vez formatea esa petición transformándola en una solicitud de HTTP válida. Esta solicitud es entonces encapsulada dentro de una respuesta de HTTP a la aplicación 104 de cliente de HTTP. La respuesta incluye una sección de encabezamiento, que incluye ambos datos requeridos por la especificación de HTTP así como el estado adicional y la información secuencial inyectada por el servidor 102 de HTTP, y una sección de cuerpo, que incluye una petición de HTTP completa.
Cuando la aplicación 104 de cliente de HTTP recibe la respuesta, esta es entonces capaz de acceder al cuerpo de respuestas, que incluye una solicitud de HTTP, que además incluye ambos un encabezamiento y la sección de cuerpo. La aplicación 104 de cliente de HTTP es entonces capaz de actuar sobre la petición y obtener los resultados apropiados basados en la misma. Los resultados de las peticiones son entonces comunicados a través del servidor 102 de HTTP al servidor 101 de la aplicación contactando el servidor de HTTP y haciendo una petición de otro URL diferente del primer URL citado anteriormente. Esta petición de HTTP encapsula una respuesta de HTTP, en la que los encabezamientos de la petición incluyen los datos requeridos así como información de estado suficiente para permitir que el servidor 102 de HTTP asocie la respuesta encapsulada con la petición anterior. El cuerpo de la petición incluye una respuesta de HTTP completa.
De acuerdo con un aspecto particularmente ventajoso de la invención, el dispositivo 108a de comunicación puede funcionar como una interfaz compartida que permite que el servidor 101 de aplicaciones acceda también a las cuentas de usuario asociadas con los dispositivos 108b-108n de comunicaciones. Es decir, puesto que los dispositivos 108a-108n están conectados en una configuración de red (tal como una red de área local (LAN) o red de área grande (WAN), por ejemplo), estos dispositivos pueden potencialmente acceder a la información de cuentas de usuario almacenada sobre la red 107 (por ejemplo, sobre un servidor de red), y/o sobre una distinta, así como otros datos de red, como apreciarán los expertos en la técnica. A modo de ejemplo, las cuentas de usuario pueden ser cuentas de correo electrónico, pero pueden ser también otros numerosos tipos de información tales como datos de dirección/contacto, datos de calendario, etc., a los que se puede acceder de esta manera. Como tales, incluso aunque la aplicación 104 de cliente esta instalada solamente sobre el dispositivo 108a de comunicaciones, este puede ventajosamente proporcionar un "acceso" para que el servidor 101 de la aplicación acceda a las cuentas de usuario asociadas con otros dispositivos 108b-108n de comunicaciones, como apreciarán los expertos en la técnica. Por supuesto, se apreciará también que una aplicación 105 de cliente separada podría ser instalada sobre uno o más de los otros dispositivos 108b-108n de comunicaciones, si se desea.
Volviendo adicionalmente a la Figura 2, se describe a continuación un diagrama de flujo que ilustra la trayectoria de decisión para conectar la aplicación 104 de cliente al servidor 102 de HTTP. Antes de que empiece el flujo del procedimiento ilustrado (Bloque 200), la aplicación 104 de cliente de HTTP se instala sobre el dispositivo 108a de comunicaciones en el entorno 106 de cálculo protegido. Se ha de tener en cuenta que en algunas realizaciones la aplicación 104 de cliente de HTTP puede por el contrario ser instalada sobre un servidor de red, por ejemplo, y proporcionada la funcionalidad de acceso compartido o común para múltiples dispositivos de comunicaciones como se ha descrito anteriormente. El software podría ser ventajosamente descargado del alojamiento del proveedor de servicios, el servidor 102 de HTTP y el servidor 101 de la aplicación, por ejemplo. Para los propósitos del presente ejemplo, se supondrá que la aplicación 104 de cliente de HTTP está instalada en un PC de mesa de usuario en el entorno 106 de cálculo protegido (es decir, en su PC de mesa en el trabajo).
Tras la instalación, es asignado un GUID a la aplicación 104 de cliente, que es guardado en una base conocimientos (no mostrada accesible por el servidor 102 y/o el servidor (101) de las aplicaciones. La aplicación 104 de cliente de HTTP suministra este GUID en todas las comunicaciones con el servidor 102 de HTTP. El flujo de decisión empieza con el usuario ejecutando una sesión de la aplicación 104 de cliente de HTTP en el dispositivo 108a de cálculo en el medio 106 de cálculo protegido, en el Bloque 201. Por ejemplo, el usuario puede ejecutar la aplicación 104 de cliente tras dejar la oficina por la tarde y durante un largo periodo. La aplicación 104 de cliente de GTTP abre una conexión con el servidor 102 de HTTP, en el Bloque 202, e identifica y se identifica ella misma suministrando únicamente el GUID, en el Bloque 206. La aplicación 104 de cliente de HTTP solicita entonces un primer URL dedicado para indicar que está preparada para aceptar las peticiones de trabajo que vengan del servidor 102 de HTTP.
El servidor 102 de HTTP realiza entonces una autentificación para garantizar una conexión satisfactoria, en el Bloque 208. Si la autentificación tiene éxito, el servidor 102 de HTTP espera entonces una respuesta, en el Bloque 212. Si la autentificación falla, se proporciona un mensaje de fallo (Bloque 210), y el servidor 102 de HTTP efectúa un bucle de retroceso al punto (Bloque 200) de partida original. El servidor 102 de HTTP no continúa hasta que se registra una autentificación satisfactoria.
Como se ha indicado anteriormente, una vez que la autentificación satisfactoria es aceptada, el servidor 102 de HTTP espera una respuesta, en el bloque 212, y luego determina si hay un retardo, en el Bloque 214. Si hay un retardo, el servidor 102 de HTTP determina entonces si se ha recibido la respuesta de HTTP, en el Bloque 218. Si no hay retardo, la conexión se cierra (Bloque 216), y el sistema retrocede formando un bucle a la operación ilustrada en el Bloque 202.
Si la respuesta de HTTP no se recibe, el procedimiento retrocede también formando un bucle a la operación ilustrada en el Bloque 202. Si se recibe una respuesta, el servidor 102 de HTTP desempaqueta la solicitud de HTTP incorporada, en el bloque 220, y procesa la solicitud, en el Bloque 222. El servidor 100 de la aplicación garantiza que la solicitud procede de una aplicación de cliente válida recuperando el GUID apropiado de la base de conocimientos. El servidor 101 de la aplicación efectúa una solicitud al servidor 102 de HTTP, que incluye el GUID. El servidor 102 de HTTP vuelve a la solicitud de aplicación dentro de una petición de HTTP válida, y envía esa solicitud a la aplicación de cliente que tiene el GUID idéntico.
La aplicación 104 de cliente de HTTP realiza entonces el trabajo solicitado, reúne los resultados, y crea una respuesta de HTTP, en el Bloque 224. La solicitud 104 de cliente de HTTP contacta el servidor 102 de HTTP, solicita un segundo URL diferente del primero para indicar que desea devolver resultados en vez de buscar trabajo, y encapsula los resultados como una respuesta de HTTP válida dentro del cuerpo de una solicitud de HTTP.
La aplicación 104 de cliente de HTTP determina entonces si una conexión de HTTP está abierta, en el Bloque 226. Si esta está abierta, la aplicación 104 de cliente de HTTP envía una petición de un segundo URL, en el Bloque 232. No obstante, si la conexión de HTTP no está abierta, la aplicación 104 de cliente de HTTP abre otra conexión de HTTP (Bloque 228), que autentifica la información (Bloque 230), y entonces solicita el URL revisado (Bloque 232).
Después de solicitar la aplicación 104 de cliente de HTTP el URL revisado, la aplicación de cliente de HTTP envía la respuesta de HTTP como parte del cuerpo de solicitud de HTTP, en el Bloque 234. La aplicación 104 de cliente de HTTP determina entonces si la conexión de HTTP está abierta todavía, en el Bloque 236. Si está abierta, la aplicación 104 de cliente de HTTP retrocede formando un bucle al Bloque 204 para solicitar el URL. Si la conexión no está abierta, la aplicación 104 de cliente de HTTP retrocede a la operación ilustrada en el Bloque 202 para abrir la conexión de HTTP, y el mismo procedimiento se repite.
Muchas modificaciones y otras realizaciones de la invención serán imaginadas por un experto en la técnica que tienen el beneficio de las enseñanzas presentadas en las descripciones anteriores y los dibujos asociados. Por lo tanto, se ha de entender que la invención no está limitada a las realizaciones concretas descritas, y que diversas modificaciones y realizaciones están destinadas a ser incluidas dentro del alcance de las reivindicaciones adjuntas.

Claims (12)

1. Un sistema (100) de comunicaciones que comprende:
una pluralidad de dispositivos (108) de comunicaciones conectados juntos en una red (107) y que tienen una pluralidad de cuentas de usuario asociadas con los mismos, estando destinado al menos uno de dichos dispositivos (108) de comunicación a procesar solicitudes de utilización de un protocolo de transferencia de hipertexto, HTTP, de la aplicación (104) de cliente asociada con el mismo;
un servidor (101) de la aplicación destinado a acceder a las cuentas de usuario por medio de dicha aplicación (104) de cliente de HTTP; y
un servidor (102) de HTTP destinado a la interfaz de dicha aplicación (104) de cliente de HTTP con dicho servidor (101) de la aplicación;
estando destinados dicho servidor (102) de HTTP y dicha aplicación (104) de cliente a formatear solicitudes para que sean comunicadas entre ellos en un formato de HTTP a través de Internet (109), y estando cada uno destinado a proporcionar información de estado adicional con las solicitudes formateadas de HTTP reconocibles por el otro para la autentificación del servidor (101) de la aplicación y de dicha aplicación (104) de cliente entre sí;
estando destinada dicha aplicación (104) de cliente de HTTP a solicitar un primer localizador de recursos universal, URL, desde dicho servidor (102) de HTTP para aceptar solicitudes de trabajo de dicho servidor (101) de la aplicación, y estando destinado a solicitar un segundo URL, diferente del primer URL de dicho servidor (102) de HTTP para responder a las solicitudes de trabajo de dicho servidor (101) de la aplicación.
2. El sistema (100) de comunicaciones de la Reivindicación 1, en el que la información de estado adicional comprende un identificador único global, GUID, asociado con dicha aplicación (104) de cliente de HTTP.
3. El sistema (100) de comunicaciones de la Reivindicación 1, en el que las cuentas de usuario comprenden cuentas de correo electrónico.
4. El sistema (100) de comunicaciones de la Reivindicación 1, en el que dicha aplicación (104) de cliente y dicho servidor (102) de HTTP están destinados además a secuenciar la información las con las solicitudes formateadas de HTTP.
5. El sistema (100) de comunicaciones de la Reivindicación 1, en el que dicha aplicación (104) de cliente y dicho servidor (102) de HTTP están destinados a formatear la información de estado adicional como los encabezamientos de HTTP para las respectivas solicitudes formateadas HTTP.
6. El sistema (100) de comunicaciones de la Reivindicación 1, en el que dicho al menos un dispositivo (108) de comunicaciones está dentro de un entorno de cálculo protegido.
7. Un método para acceder a una pluralidad de cuentas de usuario asociadas con una pluralidad de dispositivos (108) de comunicaciones que usan un servidor (101) de la aplicación, estando conectados los dispositivos (108) de comunicaciones juntos en una red (107), y al menos uno de los dispositivos (108) de comunicaciones que procesan las solicitudes usando un protocolo de transferencia de hipertexto, HTTP, de la aplicación (104) de cliente asociado con el mismo, comprendiendo el método:
interconectar el servidor (101) de la aplicación con la aplicación (104) de cliente de HTTP usando un servidor (102) de HTTP, formateando el servidor (102) de HTTP y la aplicación (104) de cliente de HTTP solicitudes para que sean comunicadas entre ambos en un formato (HTTP) por medio de Internet (109), y proporcionando cada uno información de estado adicional con las solicitudes formateadas de HTTP reconocibles por el otro para autentificar el servidor (101) de la aplicación y la aplicación (104) de cliente de HTTP uno con otro; y
usar la aplicación (104) de cliente de HTTP para solicitar un primer URL, localizador de recursos universal, del servidor (102) de HTTP para aceptar solicitudes de trabajo del servidor (101) de la aplicación, y para solicitar un segundo URL diferente del primer URL, del servidor (102) de HTTP para responder a solicitudes de trabajo del servidor (101) de la aplicación.
8. El método de la reivindicación 7, en el que la información de estado adicional comprende un identificador único global, GUID, asociado con la aplicación (104) de cliente de HTTP.
9. El método de la reivindicación 7, en el que las cuentas de usuario comprenden cuentas de correo.
10. El método de la reivindicación 7, en el que la aplicación (104) de cliente de HTTP y el servidor (102) de HTTP proporcionan además información de secuenciación con las solicitudes formateadas de HTTP.
11. El método de la reivindicación 7, en el que la aplicación (104) de cliente de HTTP y el servidor (102) de HTTP formatean la información de estado adicional como encabezamientos de HTPP para las respectivas solicitudes formateadas de HTTP.
12. El método de la reivindicación 7, en el que el al menos un dispositivo (108) de comunicaciones está dentro de un entorno (106) de cálculo protegido.
ES04715115T 2003-08-11 2004-02-26 Sistema de comunicaciones que proporciona una interfaz compartida de comunicaciones cliente-servidor y metodos relacionados. Expired - Lifetime ES2311802T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US49432503P 2003-08-11 2003-08-11
US494325P 2003-08-11
US775962 2004-02-10
US10/775,962 US7107357B2 (en) 2003-08-11 2004-02-10 Communications system providing shared client-server communications interface and related methods

Publications (1)

Publication Number Publication Date
ES2311802T3 true ES2311802T3 (es) 2009-02-16

Family

ID=34138844

Family Applications (1)

Application Number Title Priority Date Filing Date
ES04715115T Expired - Lifetime ES2311802T3 (es) 2003-08-11 2004-02-26 Sistema de comunicaciones que proporciona una interfaz compartida de comunicaciones cliente-servidor y metodos relacionados.

Country Status (8)

Country Link
US (4) US7107357B2 (es)
EP (3) EP1975806B1 (es)
CN (1) CN1867905B (es)
AT (3) ATE504042T1 (es)
CA (1) CA2533282A1 (es)
DE (3) DE602004026494D1 (es)
ES (1) ES2311802T3 (es)
WO (1) WO2005020087A1 (es)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107310B2 (en) 2003-08-11 2006-09-12 Teamon Systems, Inc. Communications system providing enhanced client-server communications and related methods
US7107357B2 (en) * 2003-08-11 2006-09-12 Teamon Systems, Inc. Communications system providing shared client-server communications interface and related methods
US7665147B2 (en) * 2004-02-05 2010-02-16 At&T Mobility Ii Llc Authentication of HTTP applications
CN101601252B (zh) * 2006-12-27 2012-07-04 意大利电信股份公司 用于在ims网络中通过一组服务器提供网络服务的方法和设备
EP2273748A1 (en) * 2009-07-09 2011-01-12 Gemalto SA Method of managing an application embedded in a secured electronic token
US20150081799A1 (en) * 2011-06-01 2015-03-19 Rodrigo Fernandez-Gil Goñi System for managing administrative electronic notifications
US8819170B2 (en) * 2011-07-14 2014-08-26 Schneider Electric It Corporation Communication protocols
US8738706B1 (en) 2011-11-16 2014-05-27 Google Inc. Systems and methods for collaborative document editing
US9811390B1 (en) * 2015-03-30 2017-11-07 EMC IP Holding Company LLC Consolidating tasks into a composite request

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5802292A (en) 1995-04-28 1998-09-01 Digital Equipment Corporation Method for predictive prefetching of information over a communications network
US6473609B1 (en) 1995-12-11 2002-10-29 Openwave Systems Inc. Method and architecture for interactive two-way communication devices to interact with a network
US5995503A (en) 1996-06-12 1999-11-30 Bay Networks, Inc. Method and apparatus for providing quality of service routing in a network
US6070191A (en) 1997-10-17 2000-05-30 Lucent Technologies Inc. Data distribution techniques for load-balanced fault-tolerant web access
US6181694B1 (en) 1998-04-03 2001-01-30 Vertical Networks, Inc. Systems and methods for multiple mode voice and data communciations using intelligently bridged TDM and packet buses
US6175858B1 (en) 1998-07-13 2001-01-16 At&T Corp. Intelligent network messaging agent and method
US6421732B1 (en) 1998-08-27 2002-07-16 Ip Dynamics, Inc. Ipnet gateway
US6643779B1 (en) * 1999-04-15 2003-11-04 Brian Leung Security system with embedded HTTP server
US6549937B1 (en) 1999-07-21 2003-04-15 Microsoft Corporation System and method for multi-protocol communication in a computer network
US6615212B1 (en) 1999-08-19 2003-09-02 International Business Machines Corporation Dynamically provided content processor for transcoded data types at intermediate stages of transcoding process
GB9920834D0 (en) * 1999-09-04 1999-11-10 Hewlett Packard Co Providing secure access through network firewalls
US6557026B1 (en) 1999-09-29 2003-04-29 Morphism, L.L.C. System and apparatus for dynamically generating audible notices from an information network
US6775687B1 (en) * 1999-10-12 2004-08-10 International Business Machines Corporation Exchanging supplemental information fields between a client and a server
US20020112007A1 (en) 1999-11-03 2002-08-15 Christopher (Noah) Wood Personal message management system
US6631417B1 (en) * 2000-03-29 2003-10-07 Iona Technologies Plc Methods and apparatus for securing access to a computer
US7003798B2 (en) * 2000-10-20 2006-02-21 Canon Kabushiki Kaisha System for operating device from remote location and apparatus for use in the system
US7020687B2 (en) 2001-05-18 2006-03-28 Nortel Networks Limited Providing access to a plurality of e-mail and voice message accounts from a single web-based interface
US7660875B2 (en) * 2001-08-31 2010-02-09 Sony Corporation Bidirectional remote communication via browser plug-in
US7278157B2 (en) 2002-03-14 2007-10-02 International Business Machines Corporation Efficient transmission of IP data using multichannel SOCKS server proxy
US20030217149A1 (en) * 2002-05-20 2003-11-20 International Business Machines Corporation Method and apparatus for tunneling TCP/IP over HTTP and HTTPS
US6775987B2 (en) 2002-09-12 2004-08-17 The Boeing Company Low-emission, staged-combustion power generation
US7024689B2 (en) * 2002-12-13 2006-04-04 Intuit, Inc. Granting access rights to unattended software
US7107357B2 (en) * 2003-08-11 2006-09-12 Teamon Systems, Inc. Communications system providing shared client-server communications interface and related methods
US7107310B2 (en) * 2003-08-11 2006-09-12 Teamon Systems, Inc. Communications system providing enhanced client-server communications and related methods

Also Published As

Publication number Publication date
CA2533282A1 (en) 2005-03-03
EP1975806A2 (en) 2008-10-01
EP1975806B1 (en) 2010-04-07
EP2169561A2 (en) 2010-03-31
ATE463795T1 (de) 2010-04-15
EP2169561B1 (en) 2011-03-30
WO2005020087A1 (en) 2005-03-03
HK1091290A1 (en) 2007-01-12
US7107357B2 (en) 2006-09-12
US20050038896A1 (en) 2005-02-17
US20080313354A1 (en) 2008-12-18
ATE406616T1 (de) 2008-09-15
EP1661017A1 (en) 2006-05-31
EP2169561A3 (en) 2010-04-28
US7644185B2 (en) 2010-01-05
EP1975806A3 (en) 2008-12-24
US7418520B2 (en) 2008-08-26
US20100162380A1 (en) 2010-06-24
CN1867905A (zh) 2006-11-22
EP1661017B1 (en) 2008-08-27
CN1867905B (zh) 2010-06-16
DE602004026494D1 (de) 2010-05-20
DE602004016180D1 (de) 2008-10-09
DE602004032071D1 (de) 2011-05-12
US20060294202A1 (en) 2006-12-28
ATE504042T1 (de) 2011-04-15
EP1661017A4 (en) 2006-11-02

Similar Documents

Publication Publication Date Title
ES2308048T3 (es) Cortafuegos personal remoto.
ES2348260T3 (es) Recuperacion asincrona de datos en tiempo real.
US7788410B2 (en) Communications system providing enhanced client-server communications and related methods
CN106209838B (zh) Ssl vpn的ip接入方法及装置
EP3761196A1 (en) Password protect feature for application in mobile device during a remote session
ES2311802T3 (es) Sistema de comunicaciones que proporciona una interfaz compartida de comunicaciones cliente-servidor y metodos relacionados.
ES2342557T3 (es) Sistema de red, servidor proxu, metodo de gestion de sesion y programa respectivo.
ES2312573T3 (es) Sistema y procedimiento para interceptar un acceso de red.
FI113303B (fi) Järjestely asiakaspyyntöjen prosessointiin
KR20060096986A (ko) 개인 원격 방화벽
Pimenidis et al. Web services security–Implementation and evaluation issues
HK1091292B (en) Communications system providing enhanced client-server communications and related methods
HK1091290B (en) Communications system providing shared client-server communications interface and related methods