Patent ID: 9209991
Filing Date: 2015-12-08
Classification: H04L

Abstract:
1. A computer-implemented method, comprising: (A) sending a request from a source node to intermediate nodes directly connected to the source node based on the source node not having a direct route to a destination node in order to determine whether the intermediate nodes have a route to the destination node, wherein the source node has no prior knowledge of a route from the source node to the destination node; (B) receiving one or more routing scores, at the source node from the intermediate nodes directly connected to the source node, indicating whether a direct route or indirect route to the destination node exists from each intermediate node, wherein a routing score for each intermediate node is based at least on hardware capabilities, available applications, and networking capabilities of each intermediate node; (C) identifying a number of route paths from each intermediate node to the destination node based on the received one or more routing scores; (D) selecting, by the source node, a particular intermediate node from the intermediate nodes based on the particular intermediate node's associated route path score, wherein the particular intermediate node's route path score is computed based on the particular intermediate node's routing score, one or more reported routing scores from other nodes associated with the particular intermediate node, and the number of identified route paths from the particular intermediate node to the destination node; (E) sending, by the source node, data for the destination node to the selected intermediate node; and (F) repeating steps (A) to (E) at the selected intermediate node until a route to the destination node is found and the data is transmitted to the destination node, wherein the selected intermediate node becomes a new source node.