Integridad de un flujo de mensajes.

Un método que incluye:

enviar, mediante un dispositivo informático (100), un primer mensaje de datos

, en el que el primer mensaje de datos incluye un número de secuencia de primer mensaje de datos con un valor de un número de secuencia inicial predefinido, en el que el primer mensaje de datos incluye un número de fase de primer mensaje de datos;

enviar, mediante el dispositivo informático, un primer mensaje de latido de corazón, en el que el primer mensaje de latido de corazón se envía en un primer intervalo de tiempo después de enviarse el primer mensaje de datos, en el que el primer mensaje de latido de corazón incluye un número de fase de primer mensaje de latido de corazón, y el número de fase de primer mensaje de latido de corazón es el mismo que el número de fase de primer mensaje de datos;

enviar, mediante el dispositivo informático, un primer mensaje de parada, en el que el primer mensaje de parada incluye un número de fase de mensaje de parada, en el que el número de fase de mensaje de parada es el mismo que el número de fase de primer mensaje de datos; y

enviar, mediante el dispositivo informático, un segundo mensaje de datos, en el que el segundo mensaje de datos se envía después del primer mensaje de parada, en el que el segundo mensaje de datos incluye un número de secuencia de segundo mensaje de datos con un valor del número de secuencia inicial predefinido, en el que el segundo mensaje de datos incluye un número de fase de segundo mensaje de datos, en el que el número de fase de segundo mensaje de datos es diferente del número de fase de primer mensaje de datos.

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2012/053169.

Solicitante: TRADING TECHNOLOGIES INTERNATIONAL, INC.

Nacionalidad solicitante: Estados Unidos de América.

Dirección: 222 South Riverside Plaza, Suite 1100 Chicago, IL 60606 ESTADOS UNIDOS DE AMERICA.

Inventor/es: BRADNICK,ERICA JOAN GRANT, BRODY,LESLIE MICHAEL, SINGER,SCOTT F.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Disposiciones para detectar o evitar errores en la... > H04L1/16 (en el cual el canal de retorno lleva señales de control, p. ej. repetición de señales de demanda)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Disposiciones, aparatos, circuitos o sistemas no... > H04L29/08 (Procedimiento de control de la transmisión, p. ej. procedimiento de control del nivel del enlace)

PDF original: ES-2488672_T3.pdf

 

google+ twitter facebook

Fragmento de la descripción:

Integridad de un flujo de mensajes Antecedentes

Los mensajes que se transmiten a través de una red, de un dispositivo a otro, contienen habitualmente contenido que se extrae cuando se reciben en un dispositivo de destino. Posteriormente se llevan a cabo varias acciones de procesamiento en función del contenido.

Puesto que los eventos dependen del contenido del mensaje, es deseable mantener la integridad del flujo de mensajes (véase, por ejemplo, el documento US 6.389.16 B1). En particular, la capacidad de detectar mensajes perdidos y conseguir una reducción en los datos del flujo de mensajes es particularmente beneficioso. Un área de aplicación en la que tal detección de mensajes perdidos y tal reducción en los datos de flujo de mensajes es particularmente relevante es el campo de las transacciones electrónicas.

Breve descripción de los dibujos

Se describen determinadas realizaciones con referencia a los siguientes dibujos.

La figura 1 ilustra un diagrama de bloques de un dispositivo informático según determinadas realizaciones.

La figura 2A ilustra mensajes de ejemplo que usan una técnica de "latido de corazón" (heartbeat) con intervalos fijos.

La figura 2B ilustra mensajes de ejemplo que usan una técnica de latido de corazón con intervalos crecientes.

La figura 2C ilustra un diagrama de flujo de un método de ejemplo para enviar mensajes según las figuras 2A y 2B.

La figura 2D ilustra un diagrama de flujo de un método de ejemplo para recibir mensajes según las figuras 2A y 2B.

La figura 3A ilustra mensajes de ejemplo que utilizan una técnica de latido de corazón con intervalos crecientes.

La figura 3B ilustra mensajes de ejemplo que utilizan una técnica de mensajes de parada.

Las figuras 3C a 3D ilustran mensajes de ejemplo que usan mensajes de parada.

La figura 3E ilustra mensajes de ejemplo que usan mensajes de parada y borrado de flujo mensajes.

Las figuras 3F a 3H ilustran mensajes de ejemplo que usan mensajes de parada, borrado de flujo de mensajes y números de fase.

La figura 4 ilustra un diagrama de flujo de un método de ejemplo para enviar mensajes usando números de fase según determinadas realizaciones.

La figura 5 ilustra un diagrama de flujo de un método de ejemplo para recibir mensajes usando números de fase según determinadas realizaciones.

La figura 6 ilustra un diagrama de bloques de un dispositivo emisor de ejemplo según determinadas realizaciones.

La figura 7 ilustra un diagrama de bloques de un dispositivo receptor de ejemplo según determinadas realizaciones.

La figura 8 ilustra un diagrama de bloques de un sistema de transacciones electrónicas en el que pueden utilizarse determinadas realizaciones.

La figura 9 ilustra un diagrama de bloques de un sistema de transacciones electrónicas de ejemplo de la figura 8.

Ciertas realizaciones se entenderán mejor cuando se lean junto con los dibujos proporcionados, que ilustran ejemplos. Sin embargo, debe entenderse que las realizaciones no están limitadas a las disposiciones e instrumentos mostrados en los dibujos adjuntos.

Descripción detallada

Un flujo de mensajes es un canal de comunicación lógico para mensajes relacionados. La detección de mensajes perdidos, en particular de mensajes que contienen datos, mejora la integridad del flujo de mensajes. Si se pierde un mensaje pueden llevarse a cabo varias acciones, tales como solicitar la retransmisión del mensaje perdido, interrumpir o reiniciar el flujo de mensajes, crear una entrada en un archivo de registro, proporcionar un mensaje de

error, generar una interrupción, informar acerca del mensaje perdido a una aplicación o protocolo de mayor nivel que procese los datos recibidos, abortar la ejecución de un programa, notificar a uno o más usuarios de que se ha perdido un mensaje, finalizar el flujo de mensajes y establecer un nuevo flujo de mensajes, revocar y volver a adquirir una licencia, volver a autenticarse con un servidor y/o volver a descargar un conjunto de datos completo.

Además, la información de estado debe almacenarse para mantener un flujo de mensajes y la integridad del flujo de mensajes. La información de estado puede almacenarse en el emisor y el receptor, así como en dispositivos intermedios. Esta información de estado puede consumir recursos limitados, tales como memoria. Por tanto, es deseable reducir la información de estado que debe almacenarse para los flujos de mensajes.

Para detectar mensajes perdidos, algunos sistemas actuales usan un número de secuencia o identificador de mensaje que se incrementa en una cantidad predeterminada para cada mensaje, de manera que un destinatario puede determinar el orden en que se enviaron los mensajes y si se perdió algún mensaje. Sin embargo, cuando los mensajes se envían con poca frecuencia, puede haber un retardo inaceptable antes de que se detecte un mensaje perdido.

Algunos sistemas actuales utilizan mensajes de latido de corazón para aumentar la probabilidad de detectar mensajes perdidos. Los mensajes de latido de corazón pueden enviarse a intervalos fijos para detectar un mensaje perdido en una cantidad de tiempo razonable. Sin embargo, el envío de un gran número de mensajes de latido de corazón puede usar de manera ineficaz un ancho de banda de red limitado y/o aumentar la latencia para la difusión de otros mensajes de datos en la red.

Las realizaciones desveladas se refieren a técnicas para mejorar la integridad de los flujos de mensajes detectando mensajes perdidos y reduciendo la información de estado almacenada para flujos de mensajes. En algunas realizaciones se usa una técnica de latido de corazón con intervalos crecientes para aumentar la probabilidad de detectar mensajes perdidos reduciendo a su vez el tráfico de red provocado por los mensajes de latido de corazón. En algunas realizaciones se implementa una técnica de mensaje de parada para aumentar la probabilidad de detectar mensajes perdidos reduciendo a su vez un tráfico de red excesivo no formado por datos. En algunas realizaciones se implementa una técnica de borrado de estado de flujo de mensajes para reducir la información de estado almacenada para los flujos de mensajes y, por tanto, el uso de memoria. En algunas realizaciones se implementa una técnica de número de fase para aumentar la probabilidad de detectar mensajes perdidos. La invención está definida por las reivindicaciones adjuntas. Realizaciones que no están dentro del alcance de las reivindicaciones son útiles para entender la invención.

Aunque lo siguiente desvela realizaciones que incluyen, entre otros componentes, software ejecutado en hardware, debe observarse que las realizaciones son simplemente ilustrativas y no deben considerarse limitativas. Por ejemplo, se contempla que algunos o todos estos componentes de hardware y software puedan realizarse exclusivamente en hardware, exclusivamente en software, exclusivamente en firmware o en cualquier combinación de hardware, software y/o firmware. Por consiguiente, las realizaciones desveladas pueden implementarse de otras maneras.

I. Breve descripción

Determinadas realizaciones proporcionan un método que incluye enviar, mediante un dispositivo informático, un primer mensaje de datos; enviar, mediante el dispositivo informático, un primer mensaje de parada; y enviar, mediante el dispositivo informático, un segundo mensaje de datos. El primer mensaje de datos incluye un número de secuencia de primer mensaje de datos con un valor de un número de secuencia inicial predefinido. El primer mensaje de datos incluye un número de fase de primer mensaje de datos. El primer mensaje de parada incluye un número de fase de mensaje de parada. El número de fase de mensaje de parada... [Seguir leyendo]

 


Reivindicaciones:

1. Un método que incluye:

enviar, mediante un dispositivo informático (1), un primer mensaje de datos, en el que el primer mensaje de datos incluye un número de secuencia de primer mensaje de datos con un valor de un número de secuencia inicial predefinido, en el que el primer mensaje de datos incluye un número de fase de primer mensaje de datos;

enviar, mediante el dispositivo informático, un primer mensaje de latido de corazón, en el que el primer mensaje de latido de corazón se envía en un primer intervalo de tiempo después de enviarse el primer mensaje de datos, en el que el primer mensaje de latido de corazón incluye un número de fase de primer mensaje de latido de corazón, y el número de fase de primer mensaje de latido de corazón es el mismo que el número de fase de primer mensaje de datos;

enviar, mediante el dispositivo informático, un primer mensaje de parada, en el que el primer mensaje de parada incluye un número de fase de mensaje de parada, en el que el número de fase de mensaje de parada es el mismo que el número de fase de primer mensaje de datos; y

enviar, mediante el dispositivo informático, un segundo mensaje de datos, en el que el segundo mensaje de datos se envía después del primer mensaje de parada, en el que el segundo mensaje de datos incluye un número de secuencia de segundo mensaje de datos con un valor del número de secuencia inicial predefinido, en el que el segundo mensaje de datos incluye un número de fase de segundo mensaje de datos, en el que el número de fase de segundo mensaje de datos es diferente del número de fase de primer mensaje de datos.

2. El método según la reivindicación 1, en el que el primer mensaje de datos incluye datos relacionados con el estado de un servidor.

3. El método según la reivindicación 2, en el que el servidor es el dispositivo informático.

4. El método según la reivindicación 1, en el que el primer mensaje de latido de corazón incluye un número de secuencia de primer mensaje de latido de corazón, en el que el número de secuencia de primer mensaje de latido de corazón es el mismo que el número de secuencia de primer mensaje de datos.

5. El método según la reivindicación 1, en el que el primer mensaje de latido de corazón se envía antes de enviar el primer mensaje de parada.

6. El método según la reivindicación 1, en el que el primer mensaje de latido de corazón incluye un indicador que indica que el primer mensaje de latido de corazón es además el primer mensaje de parada.

7. El método según la reivindicación 1, que incluye además enviar, mediante el dispositivo informático, un segundo mensaje de latido de corazón, en el que el segundo mensaje de latido de corazón se envía en un segundo intervalo de tiempo después de enviarse el primer mensaje de latido de corazón, en el que el segundo mensaje de latido de corazón incluye un número de fase de segundo mensaje de latido de corazón, en el que el número de fase de segundo mensaje de latido de corazón es el mismo que el número de fase de primer mensaje de datos.

8. El método según la reivindicación 7, en el que el segundo intervalo de tiempo aumenta con respecto al primer intervalo de tiempo en una cantidad fija.

9. El método según la reivindicación 7, en el que el segundo intervalo de tiempo aumenta con respecto al primer intervalo de tiempo según uno de entre un múltiplo del primer intervalo de tiempo, un valor exponencial del primer intervalo de tiempo, una secuencia de números primos y una secuencia de Fibonacci.

1. El método según la reivindicación 1, que incluye además borrar, mediante el dispositivo informático, un estado de flujo de mensajes asociado a un objeto que está supervisándose, en el que el estado de flujo de mensajes se borra después de enviarse el mensaje de parada, en el que el estado de flujo de mensajes incluye información particular a un flujo de mensajes, en el que el flujo de mensajes es un canal de comunicación lógico para mensajes relacionados con el objeto que está supervisándose.

11. El método según la reivindicación 1, en el que la información particular al flujo de mensajes incluye el número de fase de primer mensaje de datos.

12. El método según la reivindicación 1, en el que borrar el estado de flujo de mensajes incluye desasignar el estado de flujo de mensajes de una memoria del dispositivo informático.

13. Un medio de almacenamiento tangible legible por ordenador, que incluye instrucciones que cuando se ejecutan por un dispositivo informático hacen que el dispositivo informático lleve a cabo un método según una cualquiera de

las reivindicaciones 1 a 12.

14. Un sistema que incluye:

un emisor de primer mensaje de datos (61) para enviar un primer mensaje de datos, en el que el primer mensaje de datos incluye un número de secuencia de primer mensaje de datos con un valor de un número de secuencia inicial predefinido, en el que el primer mensaje de datos incluye un número de fase de primer mensaje de datos;

un emisor de primer mensaje de latido de corazón (61) para enviar un primer mensaje de latido de corazón, en el que el primer mensaje de latido de corazón se envía en un primer intervalo de tiempo después de enviarse el primer mensaje de datos, en el que el primer mensaje de latido de corazón incluye un número de fase de primer mensaje de latido de corazón, y el número de fase de primer mensaje de latido de corazón es el mismo que el número de fase de primer mensaje de datos;

un emisor de primer mensaje de parada (61) para enviar un primer mensaje de parada, en el que el primer mensaje de parada incluye un número de fase de mensaje de parada, en el que el número de fase de mensaje de parada es el mismo que el número de fase de primer mensaje de datos; y

un emisor de segundo mensaje de datos (61) para enviar un segundo mensaje de datos, en el que el segundo mensaje de datos se envía después del primer mensaje de parada, en el que el segundo mensaje de datos incluye un número de secuencia de segundo mensaje de datos con un valor del número de secuencia inicial predefinido, en el que el segundo mensaje de datos incluye un número de fase de segundo mensaje de datos, en el que el número de fase de segundo mensaje de datos es diferente del número de fase de primer mensaje de datos.

15. El sistema según la reivindicación 14, en el que el primer mensaje de datos incluye datos relacionados con el estado de un servidor.

16. El sistema según la reivindicación 15, en el que el servidor incluye el emisor de primer mensaje de datos, el emisor de primer mensaje de latido de corazón, el emisor de primer mensaje de parada y el emisor de segundo mensaje de datos.

17. El sistema según la reivindicación 14, en el que el primer mensaje de latido de corazón incluye un número de secuencia de primer mensaje de latido de corazón, en el que el número de secuencia de primer mensaje de latido de corazón es el mismo que el número de secuencia de primer mensaje de datos.

18. El sistema según la reivindicación 14, en el que el primer mensaje de latido de corazón se envía antes de enviar el primer mensaje de parada.

19. El sistema según la reivindicación 14, en el que el primer mensaje de latido de corazón incluye un indicador que indica que el primer mensaje de latido de corazón es además el primer mensaje de parada.

2. El sistema según la reivindicación 14, que incluye además un emisor de segundo mensaje de latido de corazón para enviar un segundo mensaje de latido de corazón, en el que el segundo mensaje de latido de corazón se envía en un segundo intervalo de tiempo después de enviarse el primer mensaje de latido de corazón, en el que el segundo mensaje de latido de corazón incluye un número de fase de segundo mensaje de latido de corazón, en el que el número de fase de segundo mensaje de latido de corazón es el mismo que el número de fase de primer mensaje de datos.

21. El sistema según la reivindicación 2, en el que el segundo intervalo de tiempo aumenta con respecto al primer intervalo de tiempo en una cantidad fija.

22. El sistema según la reivindicación 2, en el que el segundo intervalo de tiempo aumenta con respecto al primer intervalo de tiempo según uno de entre un múltiplo del primer intervalo de tiempo, un valor exponencial del primer intervalo de tiempo, una secuencia de números primos y una secuencia de Fibonacci.

23. El sistema según la reivindicación 14, que incluye además una unidad de borrado de estado de flujo de mensajes (65) para borrar un estado de flujo de mensajes asociado a un objeto que está supervisándose, en el que el estado de flujo de mensajes se borra después de enviarse el mensaje de parada, en el que el estado de flujo de mensajes incluye información particular a un flujo de mensajes, en el que el flujo de mensajes es un canal de comunicación lógico para mensajes relacionados con el objeto que está supervisándose.

24. El sistema según la reivindicación 23, en el que la información particular al flujo de mensajes incluye el número de fase de primer mensaje de datos.

25. El sistema según la reivindicación 23, en el que la unidad de borrado de estado de flujo de mensajes está dispuesta para desasignar el estado de flujo de mensajes de una memoria de un dispositivo informático, borrándose