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: 20110235551
    Abstract: 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: Application
    Filed: June 7, 2011
    Publication date: September 29, 2011
    Applicant: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
  • Publication number: 20110238841
    Abstract: 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: Application
    Filed: June 7, 2011
    Publication date: September 29, 2011
    Applicant: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
  • Patent number: 8014321
    Abstract: 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: Grant
    Filed: September 7, 2005
    Date of Patent: September 6, 2011
    Assignee: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
  • Patent number: 7961711
    Abstract: 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: Grant
    Filed: July 15, 2008
    Date of Patent: June 14, 2011
    Assignee: Microsoft Corporation
    Inventors: Michael J. Marucheck, Bradford H. Lovering, Max Attar Feingold, Richard L. Hasha, Michael Abbott
  • Patent number: 7958262
    Abstract: 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: Grant
    Filed: May 22, 2007
    Date of Patent: June 7, 2011
    Assignee: Microsoft Corporation
    Inventors: Richard L. Hasha, Lu Xun, Gopala Krishna R. Kakivaya, Dahlia Malkhi
  • Publication number: 20110082928
    Abstract: 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: Application
    Filed: October 19, 2010
    Publication date: April 7, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Richard L. Hasha, Lu Xun, Gopala Krishna R. Kakivaya, Dahlia Malkhi
  • Publication number: 20100262717
    Abstract: 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: Application
    Filed: June 22, 2010
    Publication date: October 14, 2010
    Applicant: Microsoft Corporation
    Inventors: Craig A. Critchley, David A. Wortendyke, Michael J. Marucheck, Richard L. Hasha
  • Publication number: 20100217782
    Abstract: 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: Application
    Filed: May 6, 2010
    Publication date: August 26, 2010
    Applicant: Microsoft Corporation
    Inventors: Andrew D. Milligan, Charles R. Reeves, Jeffrey B. Parham, Gopal Krishna R. Kakivaya, Lawrence A. Buerk, Angela Mills, Richard L. Hasha
  • Patent number: 7730220
    Abstract: 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: Grant
    Filed: August 17, 2006
    Date of Patent: June 1, 2010
    Assignee: Microsoft Corporation
    Inventors: Richard L. Hasha, Lu Xun, Gopala Krishna R. Kakivaya
  • Patent number: 7716357
    Abstract: 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: Grant
    Filed: October 24, 2003
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Andrew D. Milligan, Charles R. Reeves, Jeffrey B. Parham, Gopal Krishna R. Kakivaya, Lawrence A. Buerk, Angela Mills, Richard L. Hasha
  • Patent number: 7694167
    Abstract: 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: Grant
    Filed: October 13, 2006
    Date of Patent: April 6, 2010
    Assignee: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Lu Xun, Dahlia Malkhi
  • Patent number: 7693807
    Abstract: 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: Grant
    Filed: December 15, 2005
    Date of Patent: April 6, 2010
    Assignee: Microsoft Corporation
    Inventors: Christopher G. Kaler, Richard L. Hasha
  • Patent number: 7685288
    Abstract: 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: Grant
    Filed: June 30, 2003
    Date of Patent: March 23, 2010
    Assignee: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Jeffrey C. Schlimmer, Christian Huitema, Richard L. Hasha, Don Box, Jeffrey B. Parham
  • Publication number: 20100046399
    Abstract: 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: Application
    Filed: November 3, 2009
    Publication date: February 25, 2010
    Applicant: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer
  • Publication number: 20100005071
    Abstract: 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: Application
    Filed: September 9, 2009
    Publication date: January 7, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha
  • Publication number: 20090327312
    Abstract: 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: Application
    Filed: September 9, 2009
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha
  • Patent number: 7640299
    Abstract: 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: Grant
    Filed: January 4, 2006
    Date of Patent: December 29, 2009
    Assignee: Microsoft Corporation
    Inventors: Christopher G. Kaler, Gopala Krishna R. Kakivaya, Hervey Oliver Wilson, Richard L. Hasha
  • Publication number: 20090319684
    Abstract: 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: Application
    Filed: June 25, 2009
    Publication date: December 24, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Gopala Krishna R. Kakivaya, Lu Xun, Richard L. Hasha
  • Patent number: 7636939
    Abstract: 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: Grant
    Filed: December 10, 2004
    Date of Patent: December 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Christopher G. Kaler, Douglas A. Walter, Giovanni M. Della-Libera, Melissa W. Dunn, Richard L. Hasha, Tomasz Janczuk
  • Patent number: 7624194
    Abstract: 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: Grant
    Filed: December 17, 2004
    Date of Patent: November 24, 2009
    Assignee: Microsoft Corporation
    Inventors: Gopala Krishna R. Kakivaya, Richard L. Hasha, Thomas Lee Rodeheffer