Asynchronous messaging using a node specialization architecture in the dynamic routing network
DCFirst Claim
1. A method comprising:
- receiving, using a processing device, an update message from an input source, the update message identifying a live object and containing data for updating a property of the live object;
identifying a category of the update message based on the input source;
determining a node having a node type to which the update message is to be routed based on a mapping of categories of update messages to node types, the mapping controlling an amount of update message traffic through nodes of a routing network;
routing, using the processing device, the update message to the node having the determined node type;
causing the node, through the update message, to determine a client, different from the input source, that has registered for updates of the live object;
causing the node to route the update message from the node to the client; and
causing the client to process the update message and to update the property of the lire object.
4 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A network routes update messages containing updates to properties of live objects from input sources to clients having the objects. When the clients receive live objects, the clients identify the object IDs associated with the objects and register the object IDs with the routing network. The routing network is adapted to selectively send update messages to nodes in the network and the nodes forward the messages to the clients. One implementation uses a hierarchy of registries to indicate which nodes and clients receive which update messages. Another implementation assigns update messages to one or more of N categories and nodes to one or more of M types, and the gateways maintain mapping between categories and types. To ensure that clients receive all of the update messages for which they register, the clients connect to client proxies that in turn connect to at least one node of each type.
129 Citations
37 Claims
-
1. A method comprising:
-
receiving, using a processing device, an update message from an input source, the update message identifying a live object and containing data for updating a property of the live object; identifying a category of the update message based on the input source; determining a node having a node type to which the update message is to be routed based on a mapping of categories of update messages to node types, the mapping controlling an amount of update message traffic through nodes of a routing network; routing, using the processing device, the update message to the node having the determined node type; causing the node, through the update message, to determine a client, different from the input source, that has registered for updates of the live object; causing the node to route the update message from the node to the client; and causing the client to process the update message and to update the property of the lire object. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A routing network comprising:
-
a gateway device configured to; receive an update message from an input source, the update message identifying a live object and containing data for updating a property of the live object, identify a category of the update message based on the input source; determine a node having a node type to which the update message is to be routed based on a mapping of a categories of update messages to node types, the mapping controlling an amount of update message traffic through nodes of a routing network; and
route the update message; andthe node configured to; receive the update message from the gateway device, wherein the node is configured to be mapped to the node type, determine a client, different from the input source, that has registered for updates of the live object, and route the update message from the node to the client, wherein the client is adapted to process the update message and to update the property of the live object. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method comprising:
-
providing, using a processing device of an input source, a data representation to a client device, different from the input source, coupled to a routing network, wherein the data representation includes at least one live object recognizable by the client device, and causing the client device to respond to the live object of the data representation by determining an object identifier (ID) of the live object and to register for updates of the live object with the routing network, such that registering the client device with the routing network provides client connection information to a node in the routing network; and sending, using the processing device of the input source, an update message to the routing network, wherein the update message identifies the live object and contains update data that updates a property of the live object, wherein a gateway device at the routing network is configured to identify a category of the update message based on the input source, to determine a node type to which the identified category maps, and to route the update message to the node, having the node type, at the routing network, wherein the node is configured to identify the client device as a registered device and to route the update message to the client device, and wherein the client device processes the update message upon receipt to update the property of the live object at the client device. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. An apparatus comprising:
-
an input source device configured to provide a data representation to a client device, different from the input source, coupled to a routing network, wherein the data representation includes at least one live object that is recognizable by the client device, and that causes the client device to determine an object identifier (ID) of the live object to register for updates of the bye object with the routing network, such that registering the client device with the routing network provides client connection information to the routing network, wherein the input source device is configured to route an update message to the routing network, wherein the update message identifies the live object and contains update data for updating a property of the live object, wherein a gateway device at the network is configured to identify a category of the update message based on the input source, to determine a node type to which the identified category maps, and to route the update message to a node of the node type at the routing network, wherein the node is configured to identify the client device as a registered device and route the update message containing the update data to the client device, and wherein the client device is configured to process the update message upon receipt to update the property of the bye object at the client device. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. An article of manufacture including a computer-readable storage medium having instructions stored thereon, execution of which by a computing device causes the computing device to perform operations comprising:
-
providing, using a processing device of an input source, a data representation to a client device, different from the input source, coupled to a routing network, wherein the data representation includes at least one live object that is recognizable by the client device, and that causes the client device to respond to the live object by determining an object identifier (ID) of the live object to register for updates of the live object with the routing network, such that registering the client device with the routing network provides client connection information to the routing network; and sending, using the processing device of the input source, an update message to the routing network, wherein the update message identifies the live object and contains update data for updating a property of the live object, wherein a gateway device at the routing network is configured to identify a category of the update message based on the input source, to determine a node type to which the identified category maps, and to route the update message to a node of the node type at the routing network, wherein the node is configured to identify the client device as a registered device and to route the update message to the client device, and wherein the client device is configured to process the update message upon receipt to update the property of the live object at the client device. - View Dependent Claims (27, 28, 29, 30, 31)
-
-
32. A non-transitory computer readable storage medium having instructions stored thereon, the instructions comprising:
-
instructions for providing a data representation to a client device coupled to a routing network, wherein the data representation includes at least one live object recognizable by the client device, and wherein the client device is configured to respond to the live object of the data representation by determining an object identifier (ID) of the live object to register for updates of the live object with the routing network, such that registering the client device with the routing, network provides client connection information to the routing network; and instructions for providing, using a processing device of an input source, different from the client device, an update message to the routing network, wherein the update message identifies the live object and contains update data for updating a property of the live object, wherein a gateway device at the routing network is configured to identify a category of the update message based on the input source, to determine a node type to which the identified category maps, and to route the update message to a node of the node type at the routing network, wherein the node is configured to identify the client device as a registered device and to route the update message containing the update data to the client device, and wherein the client device is configured to process the update message upon receipt to update the property of the live object at the client device. - View Dependent Claims (33, 34, 35, 36, 37)
-
Specification