Patent ID: 7558210

Claim:
A system for detecting and correcting publish-subscribe looping in a messaging network, said system comprising: a plurality of nodes in said messaging network; and a plurality of communication media for a plurality of communication paths located between said plurality of nodes; wherein a first message is sent through said messaging network, from a first node to a second node; said second node extracts a list of identification codes attached to said first message; an identification code uniquely defines a specific node; said list of identification codes provides information about all participating nodes that said first message has gone through; a participating node is a node that interacts with said list of identification codes, and whose identification code format is according to said list of identification codes; said second node determines whether or not the identification code corresponding to said second node is in said list of identification codes; in the case that said identification code corresponding to said second node is in said list of identification codes, said second node discards said first message; in the case that said identification code corresponding to said second node is not in said list of identification codes, said second node adds said identification code corresponding to said second node to said list of identification codes, and said second node transmits said first message to next one or more nodes in said messaging network; two or more of said plurality of nodes are aggregated into a broker cooperative aggregated node; said broker cooperative aggregated node has an internal mechanism for preventing publications looping within said broker cooperative aggregated node; said broker cooperative aggregated node has a unique identification code; a third node within said broker cooperative aggregated node receives a second message from a fourth node; said third node discards said second message, only if said fourth node is not within said broker cooperative aggregated node, and the identification code of said third node is in a list of identification codes attached to said second message; said third node sends said second message to a fifth node; and said third node adds said identification code of said broker cooperative aggregated node to said list of identification codes attached to said second message, only if said fifth node is not within said broker cooperative aggregated node.