Patents by Inventor Richard L. Hasha
Richard L. Hasha has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20110235551Abstract: The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings.Type: ApplicationFiled: June 7, 2011Publication date: September 29, 2011Applicant: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
-
Publication number: 20110238841Abstract: The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings.Type: ApplicationFiled: June 7, 2011Publication date: September 29, 2011Applicant: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
-
Patent number: 8014321Abstract: The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings.Type: GrantFiled: September 7, 2005Date of Patent: September 6, 2011Assignee: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
-
Patent number: 7961711Abstract: The present invention extends to methods, systems, and computer program products for fitness based routing. Embodiments of the invention significantly improve the likelihood that routing nodes contained in routing table have adequate (or even relatively increased) ability to transfer and process messages in an overlay network. Thus, when the node is to make a routing decision for a message, the node has some assurances that any selected routing node is adequate (or is at least the best currently available). Further, a sending node can take preference to routing nodes with higher fitness values when sending a message. Preference to higher fitness metric values further insures that messages are adequately transferred and processed. Accordingly, embodiments of the invention can be used to route messages in a manner that optimizes bandwidth and provides efficient routing capability.Type: GrantFiled: July 15, 2008Date of Patent: June 14, 2011Assignee: Microsoft CorporationInventors: Michael J. Marucheck, Bradford H. Lovering, Max Attar Feingold, Richard L. Hasha, Michael Abbott
-
Patent number: 7958262Abstract: The present invention extends to methods, systems, and computer program products for allocating and reclaiming resources within a rendezvous federation. Embodiments of the invention include formulating and routing messages in accordance with cached two-way agreements between adjacent nodes on a ring of nodes. Cached two-way agreements divide responsibility for at least unoccupied identifiers between the adjacent nodes on a ring. When a message is received at a node, the node can refer to a cached two-way agreement to determine if it or an adjacent node is responsible for the message. The node then sends the message to the next appropriate component in accordance with the cached two-way agreement.Type: GrantFiled: May 22, 2007Date of Patent: June 7, 2011Assignee: Microsoft CorporationInventors: Richard L. Hasha, Lu Xun, Gopala Krishna R. Kakivaya, Dahlia Malkhi
-
Publication number: 20110082928Abstract: The present invention extends to methods, systems, and computer program products for a joining node to join a ring of nodes within a rendezvous federation. Embodiments of the invention include establishing a neighborhood of multiple nodes on the ring of nodes. The joining node indicates its intent to take id-space ownership for a portion of the id-space between the joining node and a selected immediately adjacent node. The joining node initiates a one-way monitoring relationship with the selected immediately adjacent node. The joining node receiving an indication from the selected immediately adjacent node that indicates acceptance of the joining node's intent to take id-space ownership for a portion of the id-space between the joining node and the selected node and indicates establishment of a one-way monitoring relationship between the selected node and the joining node. The joining node agrees to participate in a one-way monitoring relationship with the selected node.Type: ApplicationFiled: October 19, 2010Publication date: April 7, 2011Applicant: MICROSOFT CORPORATIONInventors: Richard L. Hasha, Lu Xun, Gopala Krishna R. Kakivaya, Dahlia Malkhi
-
Publication number: 20100262717Abstract: The present invention extends to methods, systems, and computer program products for optimizing access to federation infrastructure-based resources. Various different layers within a federation infrastructure can signal location change events indicating the hosting location and/or access location for a resource is to be optimized. In response to a location change event, redirection information for accessing the resource is updated within the federation infrastructure. The redirection information is used to redirect resource access requests to appropriately optimized locations within the federation infrastructure. Redirecting resource access requests reduces communication within the federation infrastructure.Type: ApplicationFiled: June 22, 2010Publication date: October 14, 2010Applicant: Microsoft CorporationInventors: Craig A. Critchley, David A. Wortendyke, Michael J. Marucheck, Richard L. Hasha
-
Publication number: 20100217782Abstract: A system and methods for service discovery and publication are disclosed. Application programs write requests for service discovery, publication, and subscription to a service discovery application programming interface. The service discovery application programming interface invokes one or more lower-level protocols to satisfy the discovery, publication and/or subscription request. Service information retrieved from lower-layer protocols is formatted into a consistent data model and returned to the client application. In addition, service information may be stored in a persistent data store managed by a discovery persistence service communicatively connected to the service discovery API.Type: ApplicationFiled: May 6, 2010Publication date: August 26, 2010Applicant: Microsoft CorporationInventors: Andrew D. Milligan, Charles R. Reeves, Jeffrey B. Parham, Gopal Krishna R. Kakivaya, Lawrence A. Buerk, Angela Mills, Richard L. Hasha
-
Patent number: 7730220Abstract: The present invention extends to methods, systems, and computer program products for broadcasting communication within a rendezvous federation. Embodiments of the invention include inter-ring and intra-ring communication. Inter-ring communication includes sending a message to destination rings included in a node's Collateral Ring Set entry table. When a node identifies a destination ring that has not yet received a message, the node can send a ring notification message. The ring notification message propagates towards a publishing node until a responsible node in the message path to the publishing node is identified. The responsible node updates its entry table to include the ring and forwards the message to the destination ring. Intra-ring communication can include recursively partitioning ranges of nodes within a ring and forwarding the message to nodes included the partitioned ranges.Type: GrantFiled: August 17, 2006Date of Patent: June 1, 2010Assignee: Microsoft CorporationInventors: Richard L. Hasha, Lu Xun, Gopala Krishna R. Kakivaya
-
Patent number: 7716357Abstract: A system and methods for service discovery and publication are disclosed. Application programs write requests for service discovery, publication, and subscription to a service discovery application programming interface. The service discovery application programming interface invokes one or more lower-level protocols to satisfy the discovery, publication and/or subscription request. Service information retrieved from lower-layer protocols is formatted into a consistent data model and returned to the client application. In addition, service information may be stored in a persistent data store managed by a discovery persistence service communicatively connected to the service discovery API.Type: GrantFiled: October 24, 2003Date of Patent: May 11, 2010Assignee: Microsoft CorporationInventors: Andrew D. Milligan, Charles R. Reeves, Jeffrey B. Parham, Gopal Krishna R. Kakivaya, Lawrence A. Buerk, Angela Mills, Richard L. Hasha
-
Patent number: 7694167Abstract: The present invention extends to methods, systems, and computer program products for appropriately detecting node failures in a rendezvous federation. A monitor node monitors a subject node. The subject node intermittently renews a time-to-live duration value with the monitor node to indicate the monitor node that the subject node has not failed. In some embodiments, each node in a pair of nodes monitors the other nodes in the pair of nodes. Thus, each node is a subject node and a monitor node. In further embodiments, an arbitration facility arbitrates failure reports.Type: GrantFiled: October 13, 2006Date of Patent: April 6, 2010Assignee: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Lu Xun, Dahlia Malkhi
-
Patent number: 7693807Abstract: The present invention extends to methods, systems, and computer program products for mapping between anonymous modules in an event environment. Through the use of one or more event type to executable module bindings, a binding/dispatch manager maps events, for example, peer-to-peer, grid, or parallel processing computing events, to appropriate methods for processing the events. When an event is received from an event infrastructure, the binding/dispatch manager refers to annotations (e.g., based on the shape of the parameters) to identify an appropriate method for processing the event. Parameters are transferred to the appropriate method, which processes the parameters and returns any results to the binding/dispatch manager. In some embodiments, the binding/dispatch manager then forwards a response to the event infrastructure.Type: GrantFiled: December 15, 2005Date of Patent: April 6, 2010Assignee: Microsoft CorporationInventors: Christopher G. Kaler, Richard L. Hasha
-
Patent number: 7685288Abstract: An ad-hoc discovery protocol improves reliability, security and scalability of multicast and server-based discovery. In switching from multicast to server-based discovery, the discovery client is made responsible for multicast suppression, and not discoverable devices with services. Messages include message identifier and time-to-live parameters to detect recast queries and avoid duplicating replies. A device's announcement message includes endpoint identifier, configuration number and stateless boot time parameters to detect changed device configuration and rebooted state for refreshing cached device and service descriptions. Paging parameters allow a discovery client to control the number of discovery responses returned at a time from a discovery server.Type: GrantFiled: June 30, 2003Date of Patent: March 23, 2010Assignee: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Jeffrey C. Schlimmer, Christian Huitema, Richard L. Hasha, Don Box, Jeffrey B. Parham
-
Publication number: 20100046399Abstract: The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings.Type: ApplicationFiled: November 3, 2009Publication date: February 25, 2010Applicant: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
-
Publication number: 20100005071Abstract: The present invention extends to methods, systems, and computer program products for organizing resources into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure can efficiently route, migrate, and process namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources can be registered in and made accessible from multiple different namespaces. Resources can be identified using nested queries that filter results at multiple levels of a hierarchical namespace.Type: ApplicationFiled: September 9, 2009Publication date: January 7, 2010Applicant: MICROSOFT CORPORATIONInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha
-
Publication number: 20090327312Abstract: The present invention extends to methods, systems, and computer program products for organizing resources into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure can efficiently route, migrate, and process namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources can be registered in and made accessible from multiple different namespaces. Resources can be identified using nested queries that filter results at multiple levels of a hierarchical namespace.Type: ApplicationFiled: September 9, 2009Publication date: December 31, 2009Applicant: MICROSOFT CORPORATIONInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha
-
Patent number: 7640299Abstract: Implementations of the present invention relate in part to optimizations to peer-to-peer communication systems. For example, one implementation relates to use of a smart transceiver that creates, caches, and manages communication channels dynamically between peers. Another implementation relates to use of a central tracking object that can be used to efficiently register and distribute peer messages among the various peers. In one implementation, the central tracking object is shared amongst peers in the group. Still another implementation relates to associating peer groups with namespaces, and for including peer groups of one namespace within still other peer groups of different namespaces. These and other aspects of the invention can also be used to ensure delivery intent of a given peer message is preserved, and to ensure that optimal numbers of messages are communicated to any given peer at any given time.Type: GrantFiled: January 4, 2006Date of Patent: December 29, 2009Assignee: Microsoft CorporationInventors: Christopher G. Kaler, Gopala Krishna R. Kakivaya, Hervey Oliver Wilson, Richard L. Hasha
-
Publication number: 20090319684Abstract: A computational system determines that a joining node in the federation infrastructure desires to join an identified subfederation within the federation infrastructure. The system accesses the joining node's group table, where the group table includes membership information identifying subfederations within the federation infrastructure. Each node in the federation maintains neighborhood information for each subfederation of which the node is aware. The system determines that no entry for the identified subfederation exists in the joining node's group table and, based on the determination, routes a group join message to a rendezvous point within the federation infrastructure. The rendezvous point checks its group table for an entry corresponding to the identified subfederation.Type: ApplicationFiled: June 25, 2009Publication date: December 24, 2009Applicant: MICROSOFT CORPORATIONInventors: Gopala Krishna R. Kakivaya, Lu Xun, Richard L. Hasha
-
Patent number: 7636939Abstract: A data structure with endpoint address and security information. The data structure includes an address field that includes one or more endpoint addresses for an entity. The data structure further includes a security field that includes one or more keys for facilitating secure communications with the entity. The data structure may also be such that the contents of the address field and the security field are serialized in the data structure. The data structure may be extensible such that new address fields and security fields may be added.Type: GrantFiled: December 10, 2004Date of Patent: December 22, 2009Assignee: Microsoft CorporationInventors: Christopher G. Kaler, Douglas A. Walter, Giovanni M. Della-Libera, Melissa W. Dunn, Richard L. Hasha, Tomasz Janczuk
-
Patent number: 7624194Abstract: The present invention extends to methods, systems, and computer program products for establishing and maintaining membership within a federation infrastructure. A joining node submits a join message to an existing federation infrastructure. The federation infrastructure routes the join message to a processing node. The processing node facilitates identification of predecessor, successor, neighborhood, and routing nodes (for the joining node) within a ring of nodes. The joining node exchanges messages with identified nodes to obtain state information for the identified nodes and other nodes within the ring. Nodes periodically exchange state information, including state information for other nodes, such that state information for the ring is efficiently propagated to all nodes in the ring even when communication between some nodes is lost. Instance IDs, phase values, and freshness values are used to determine when state information is stale and/or is to be updated.Type: GrantFiled: December 17, 2004Date of Patent: November 24, 2009Assignee: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer