Patent ID: 8868779

Claim:
A method for routing data among endpoints in a distributed network comprising: receiving, in a service access point, a request for a service of a requested service type from a service consumer; determining, in a proxy corresponding to the service access point, whether a pre-existing binding exists between the service consumer and a plurality of nodes of the requested service type; if the determining indicates that a pre-existing binding exists: selecting a target node from the plurality of nodes; and establishing a communication route directly between the target node and the service consumer, wherein a service broker is bypassed by the communication route; if the determining indicates that no pre-existing binding exists: querying a private persistent registry corresponding to the service broker to obtain a list of nodes from the plurality of nodes providing service of said particular service type; collecting, in the service broker, status and routing information for the nodes comprising the list of nodes; creating a plurality of bindings between the nodes comprising the list of nodes and the requested service type in a binding cache accessible to the proxy; analyzing the status and routing information to identify a node from the list of nodes as the target node; and establishing a communication route between the target node and the service consumer through the service broker.