Server-group messaging system for interactive applications
DC CAFCFirst Claim
1. A method for facilitating communications among a plurality of host computers over a network to implement a shared, interactive application, comprising the steps of:
- (1) receiving a create message from one of the plurality of host computers, wherein said create message specifies a message group to be created;
(2) receiving join messages from a first subset of the plurality of host computers, wherein each of said join messages specifies said message group;
(3) receiving host messages from a second subset of said first subset of the plurality of host computers belonging to said message group, wherein each of said messages contains a payload portion and a portion that is used to identify said message group;
(4) aggregating said payload portions of said host messages received from said second subset of the plurality of host computers to create an aggregated payload;
(5) forming an aggregated message using said aggregated payload; and
(6) transmitting said aggregated message to said first subset of the plurality of host computers belonging to said message group;
wherein said aggregated message keeps the shared, interactive application operating consistently on each of said first subset of the plurality of host computers.
9 Assignments
Litigations
4 Petitions
Reexamination
Accused Products
Abstract
A method for deploying interactive applications over a network containing host computers and group messaging servers is disclosed. The method operates in a conventional unicast network architecture comprised of conventional network links and unicast gateways and routers. The hosts send messages containing destination group addresses by unicast to the group messaging servers. The group addresses select message groups maintained by the group messaging servers. For each message group, the group messaging servers also maintain a list of all of the hosts that are members of the particular group. In its most simple implementation, the method consists of the group server receiving a message from a host containing a destination group address. Using the group address, the group messaging server then selects a message group which lists all of the host members of the group which are the targets of messages to the group. The group messaging server then forwards the message to each of the target hosts. In an interactive application, many messages will be arriving at the group server close to one another in time. Rather than simply forward each message to its targeted hosts, the group messaging server aggregates the contents of each of messages received during a specified time period and then sends an aggregated message to the targeted hosts. The time period can be defined in a number of ways. This method reduces the message traffic between hosts in a networked interactive application and contributes to reducing the latency in the communications between the hosts.
319 Citations
19 Claims
-
1. A method for facilitating communications among a plurality of host computers over a network to implement a shared, interactive application, comprising the steps of:
-
(1) receiving a create message from one of the plurality of host computers, wherein said create message specifies a message group to be created;
(2) receiving join messages from a first subset of the plurality of host computers, wherein each of said join messages specifies said message group;
(3) receiving host messages from a second subset of said first subset of the plurality of host computers belonging to said message group, wherein each of said messages contains a payload portion and a portion that is used to identify said message group;
(4) aggregating said payload portions of said host messages received from said second subset of the plurality of host computers to create an aggregated payload;
(5) forming an aggregated message using said aggregated payload; and
(6) transmitting said aggregated message to said first subset of the plurality of host computers belonging to said message group;
wherein said aggregated message keeps the shared, interactive application operating consistently on each of said first subset of the plurality of host computers. - View Dependent Claims (2)
-
-
3. A method for facilitating communications among a plurality of host computers over a network to implement a shared, interactive application, comprising the steps of:
-
(1) receiving a create message from one of the plurality of host computers, wherein said create message specifies a message group to be created;
(2) receiving join messages from a first subset of the plurality of host computers, wherein each of said join messages specifies said message group;
(3) receiving host messages from a second subset of said first subset of the plurality of host computers belonging to said message group, wherein each of said messages contains a payload portion and a portion that is used to identify said message group;
(4) aggregating said payload portions of said host messages received from said second subset of the plurality of host computers to create an aggregated message;
(5) transmitting said aggregated message to said first subset of the plurality of host computers belonging to said message group;
wherein said aggregated message keeps the shared, interactive application operating consistently on each of said first subset of the plurality of host computers. - View Dependent Claims (4)
-
-
5. A method for facilitating communications among a plurality of host computers over a network to implement a shared, interactive application, comprising the steps of:
-
(1) receiving a host message from one of the plurality of host computers belonging to a message group, wherein said host message contains a payload portion and a portion that is used to identify said message group;
(2) forming a server message using said payload portion of said host message;
(3) transmitting said server message to each of the plurality of host computers belonging to said message group; and
(4) suppressing said server message such that said one of the plurality of host computers which originated said host message does not receive said server message;
wherein said server message keeps the shared, interactive application operating consistently on each of the plurality of host computers belonging to said message group. - View Dependent Claims (6)
-
-
7. A method for facilitating communications among a plurality of host computers over a network to implement a shared, interactive application, comprising the steps of:
-
(1) receiving messages from a subset of the plurality of host computers belonging to a message group, wherein each of said messages contains a payload portion and a portion that is used to identify said message group;
(2) aggregating said payload portions of said messages to create an aggregated payload; and
(3) transmitting said aggregated message to each of the plurality of host computers belonging to said message group;
wherein said aggregated message keeps the shared, interactive application operating consistently on each of the plurality of host computers belonging to said message group. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A method for providing group messages to a plurality of host computers connected to a group messaging server over a unicast wide area communication network, comprising the steps of:
-
(1) communicating with the plurality of host computers using the unicast network and maintaining a list of message groups, each message group containing at least one host computer;
(2) receiving messages from a subset of the plurality of host computers, each host computer in said subset belonging to a first message group, wherein each of said messages contains a payload portion and a portion that is used to identify said first message group;
(3) aggregating said payload portions of said messages received from said subset of the plurality of host computers to create an aggregated payload;
(4) forming an aggregated message using said aggregated payload; and
(5) transmitting said aggregated message to a recipient host computer belonging to said first message group. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A method for facilitating communications among a plurality of host computers over a network to implement a shared, interactive application, comprising the steps of:
-
(1) receiving a host message from one of the plurality of host computers belonging to a message group, wherein said host message contains a payload portion and a portion that is used to identify said message group;
(2) forming a server message by using said payload portion of said host message; and
aggregating said payload portion with the payload portion of a second host message received from another of the plurality of host computers belonging to said message group(3) transmitting said server message to each of the plurality of host computers belonging to said message group;
whereby said server message keeps the shared, interactive application operating consistently on each of the plurality of host computers belonging to said message group. - View Dependent Claims (19)
-
Specification