Real-time publish-subscribe system
First Claim
1. A real-time protocol executable on a computer network having a plurality of nodes, wherein the nodes include real-time middleware capable of executing real-time operations, the middleware of each node further including:
- a write object associated with a variable;
a read object associated with a variable;
a message interpreter that receives and interprets the variable change messages so that they can be read by a read object;
a variable reference table which a write object uses to track variable information;
a remote reader reference table for each reader that has registered to receive information from the writer so that the writer can determine a message status for each reader registered to receive information from the writer, whereina variable is a data object that includes a plurality of parameters and a plurality of associated parameter values,a variable includes parameters for a globally unique identifier and, implicitly or explicitly, a type and a topic; and
the write object is capable of writing variable change messages having a topic to associated read objects that are registered to receive variable change messages having the topic, without the read communication objects otherwise requesting the change information.
0 Assignments
0 Petitions
Accused Products
Abstract
A real-time protocol for real-time network programming applications is disclosed. The protocol is executable on a computer network having a plurality of nodes that include applications, a network stack, an operating system, and middleware capable of executing real-time operations. The protocol can use group objects to model physical and logical devices connected to the network wherein each group object comprises at least one variable. Changes in these variables are encapsulated in variable change messages which are propagated in the network using communication objects. Also described is a real-time messaging format useful for implementing the protocol.
67 Citations
15 Claims
-
1. A real-time protocol executable on a computer network having a plurality of nodes, wherein the nodes include real-time middleware capable of executing real-time operations, the middleware of each node further including:
-
a write object associated with a variable; a read object associated with a variable; a message interpreter that receives and interprets the variable change messages so that they can be read by a read object; a variable reference table which a write object uses to track variable information; a remote reader reference table for each reader that has registered to receive information from the writer so that the writer can determine a message status for each reader registered to receive information from the writer, wherein a variable is a data object that includes a plurality of parameters and a plurality of associated parameter values, a variable includes parameters for a globally unique identifier and, implicitly or explicitly, a type and a topic; and the write object is capable of writing variable change messages having a topic to associated read objects that are registered to receive variable change messages having the topic, without the read communication objects otherwise requesting the change information. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A real-time publish-subscribe (RTPS) message format for use on a real-time computer network where the RTPS messages are sent between communication objects, wherein the communication objects include write communication objects and read communication objects the communication objects are associated with variables, a variable is a data object that includes a plurality of parameters and a plurality of associated parameter values, and a variable includes parameters for a globally unique identifier and, implicitly or explicitly, a type and a topic;
-
wherein the read communication objects are configured to register with the write communication objects to receive information concerning topics for which those write communication objects have variable information; and each write communication object is configured, in response to change information regarding the variable information for a topic, to cause the change information regarding the variable information for that topic to be provided to those read communication objects registered to receive information for that topic without the read communication objects otherwise requesting the change information, each RTPS message comprising; a modular message format having a RTPS message header of a uniform length; a variable number of RTPS submessages where each RTPS submessage includes a RTPS submessage header of uniform length; and a RTPS submessage payload comprised of a variable number of RTPS submessage elements. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
Specification