Patents by Inventor Gopala Kakivaya

Gopala Kakivaya 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: 20140095930
    Abstract: Arbitrating node failures. A method includes determining at a first node that communication to a second node has been lost. The method further includes sending an arbitration request to a plurality of arbitrators. The method further includes receiving from the plurality of arbitrators a sufficient number of arbitration reply grant messages to have arbitration reply grant messages from a quorum of the arbitrators. As a result of receiving a sufficient number of arbitration reply grant messages to have arbitration reply grant messages from a quorum of the arbitrators, the method further includes declaring the second node down.
    Type: Application
    Filed: October 1, 2012
    Publication date: April 3, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Lu Xun, Mihail Gavril Tarta, Yang Li, Gopala Kakivaya
  • Publication number: 20080031246
    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: Application
    Filed: May 22, 2007
    Publication date: February 7, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Richard Hasha, Lu Xun, Gopala Kakivaya, Dahlia Malkhi
  • Publication number: 20080005624
    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: Application
    Filed: October 13, 2006
    Publication date: January 3, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Gopala Kakivaya, Richard Hasha, Lu Xun, Dahlia Malkhi
  • Publication number: 20070150540
    Abstract: Managing peer-to-peer application components. A method may be performed, for example, at a computer system that includes application components including peer-to-peer application components. The peer-to-peer application components allow the computer system to communicate with other agents, such as host computers, operating systems, frameworks, application code and the like, in a peer-to-peer fashion. The computer system includes a launch pad module for coordinating the peer-to-peer application components. The method includes providing an extensible interface that allows peer-to-peer application components to be registered with the launch pad module. Peer-to-peer application components are registered with the launch pad module. Requests are accepted from agents directed to the peer-to-peer application components registered with the launch pad module. Launch functions are performed for the peer-to-peer application components registered with the launch pad module in response to the requests.
    Type: Application
    Filed: December 27, 2005
    Publication date: June 28, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Gopala Kakivaya, Hervey Wilson, Richard Hasha
  • Publication number: 20070133520
    Abstract: Communicating a message using between networked agents. Some embodiments may be practiced, for example, in a network including one or more interconnected agents. A method facilities communicating a message to one or more of the interconnected agents. The method includes receiving feedback including information about the network. The information about the network is tracked. The method further includes consulting a set of policy rules. The policy rules include logic which takes into account the tracked information about the network. The policy rules further include information about how messages should be sent based on the logic which takes into account the tracked information about the network. The method also includes sending the message according to the information about how messages should be sent.
    Type: Application
    Filed: December 12, 2005
    Publication date: June 14, 2007
    Applicant: Microsoft Corporation
    Inventors: Gopala Kakivaya, Richard Hasha, Christopher Kaler
  • Publication number: 20070002774
    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: Application
    Filed: August 17, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Richard Hasha, Lu Xun, Gopala Kakivaya
  • Publication number: 20070006198
    Abstract: A system and method for mitigating problems associated with automatic execution of initialization code is provided. The system includes an initialization method activator that can call a class initialization method at a pre-determined execution point. The system also includes a deadlock analyzer that can determine whether calling the initialization method will create a deadlock, and, if a deadlock is detected that can resolve such a deadlock. The system also includes a semantic analyzing component that can analyze a semantic type associated with the initialization method and a domain uniqueness analyzer that can analyze the uniqueness of the domain with which the class will interact, to facilitate determining where to place code that will check whether a class is initialized, and if the class is not initialized that will invoke the class initializing method.
    Type: Application
    Filed: August 16, 2006
    Publication date: January 4, 2007
    Applicant: MICROSOFT CORPORATION
    Inventors: Gopala Kakivaya, Christopher Brumme, James Miller, Vance Morrison, David Mortenson, Sean Trowbridge
  • Publication number: 20060282505
    Abstract: The present invention extends to methods, systems, and computer program products for facilitating inter-proximity communication within a rendezvous federation. Nodes maintain collateral ring set entry tables that include collateral rings and corresponding entry nodes into the collateral rings. Nodes can exchange collateral ring set entry state to update one another on the configuration of rings within a tree of rings. Nodes can refer to collateral ring set entry tables, as well as to other nodes, to identify entry nodes into rings that are collateral rings of the node. Messages can be sent to entry nodes in collateral rings. A message can include an indication that an entry node in a target proximity ring is to resolve the message to the node in the target proximity ring which has a node ID closest to an indicated destination node.
    Type: Application
    Filed: June 30, 2006
    Publication date: December 14, 2006
    Inventors: Richard Hasha, Lu Xun, Gopala Kakivaya
  • Publication number: 20060282547
    Abstract: The present invention extends to methods, systems, and computer program products for facilitating inter-proximity communication within a rendezvous federation. Nodes maintain collateral ring set entry tables that include collateral rings and corresponding entry nodes into the collateral rings. Nodes can exchange collateral ring set entry state to update one another on the configuration of rings within a tree of rings. Nodes can refer to collateral ring set entry tables, as well as to other nodes, to identify entry nodes into rings that are collateral rings of the node. Messages can be sent to entry nodes in collateral rings. A message can include an indication that an entry node in a target proximity ring is to resolve the message to the node in the target proximity ring which has a node ID closest to an indicated destination node.
    Type: Application
    Filed: June 30, 2006
    Publication date: December 14, 2006
    Inventors: Richard Hasha, Lu Xun, Gopala Kakivaya
  • Publication number: 20060173933
    Abstract: The transfer of raw data from a source data structure to a target data structure that represent the same item. During the data transfer, if there is a given field in the target data structure that does not correspond to a field supplied by the source data structure, the transfer mechanism determines whether or not it is mandatory that the source data structure supply the field. If it is mandatory, the transfer fails. Otherwise, the transfer continues. If there is field of the source data structure that does not correspond to a field of the target data structure, the transfer mechanism determines whether or not it is mandatory that the target data structure have the field. If it is mandatory, the transfer fails. Otherwise, the corresponding data may be provided to a residual field of the target data structure dedicated for unknown data.
    Type: Application
    Filed: February 1, 2005
    Publication date: August 3, 2006
    Applicant: Microsoft Corporation
    Inventors: Sowmyanarayanan Srinivasan, Natasha Jethanandani, Stefan Pharies, Douglas Purdy, Donald Box, Gopala Kakivaya
  • Publication number: 20060117025
    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: Application
    Filed: January 4, 2006
    Publication date: June 1, 2006
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Gopala Kakivaya, Hervey Wilson, Richard Hasha
  • Publication number: 20060117026
    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: Application
    Filed: January 4, 2006
    Publication date: June 1, 2006
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Gopala Kakivaya, Hervey Wilson, Richard Hasha
  • Publication number: 20060117024
    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: Application
    Filed: January 4, 2006
    Publication date: June 1, 2006
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Gopala Kakivaya, Hervey Wilson, Richard Hasha
  • Publication number: 20060087990
    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: September 7, 2005
    Publication date: April 27, 2006
    Applicant: Microsoft Corporation
    Inventors: Gopala Kakivaya, Richard Hasha, Thomas Rodeheffer
  • Publication number: 20060064464
    Abstract: The present invention extends to methods, systems, and computer program products for reliable messaging using clocks with synchronized rates. Embodiments of the present invention insure at-most-once delivery of messages. A source and a destination utilize clocks with synchronized rates. Messages are assigned Time-To-Live (“TTL”) values such that state information is updated the source and removed at the destination when a corresponding message timer based on a TTL value expires. Accordingly, resources consumed to maintain state information at the destination can be freed up in a shorter period of time. The source can retransmit state information to the message destination if relevant state information has been removed. Message processor instance IDs insure at-most-once delivery when a message destination suffers an involuntary memory loss. Embodiments of the present invention can also be used for exactly-once-delivery, for example, when TTL values are infinite and instance IDs are not used.
    Type: Application
    Filed: September 21, 2004
    Publication date: March 23, 2006
    Inventors: Gopala Kakivaya, David Langworthy
  • Publication number: 20060064425
    Abstract: A generic mechanism to persist data objects into databases without a fundamental dependence on the underlying data store is provided. Rather than relying on the expertise of a programmer to know what the structure of a database should look like, data types are defined and adorned by the programmer with attributes that suggest what the corresponding data will be used for, and without the programmer defining the structure of the database that will be used to store the data. Thereafter, the database is dynamically created to satisfy the needs suggested by the adorned attributes. In particular, a number of different tables are created according to the intended needs for accessing the data. By doing this an optimized database can be created to provide the desired results without requiring the programmer to have any specific knowledge regarding databases and corresponding database schemas.
    Type: Application
    Filed: September 17, 2004
    Publication date: March 23, 2006
    Inventors: Gopala Kakivaya, Savithri Dani
  • Publication number: 20060047679
    Abstract: Serialization and deserialization using data contracts. The data contract specifies data types that are serialized and deserialized for data objects that are associated with the data contract. During serialization, the data contract associated with the data object is identified. Then, the data fields that correspond to those specified data field types are extracted from the data object and serialized into a serialization format. During deserialization, the serialization mechanism receives a serialized data structure having a particular serialization format. A data contract is then identified as being associated with the serialized data structure. After deserialization of the serialized data structure into abstract data, a corresponding data object is populated with data fields that correspond only with those data field types specified in the data contract. Accordingly, data abstraction is enabled while serializing and deserializing.
    Type: Application
    Filed: August 25, 2004
    Publication date: March 2, 2006
    Inventors: Douglas Purdy, Sowmyanarayanan Srinivasan, Bradford Lovering, Donald Box, Gopala Kakivaya, Natasha Jethanandani, Stefan Pharies, Stephen Swartz, Steven Lucco
  • Publication number: 20050268309
    Abstract: A system and method for interacting with an object is provided. The system includes a method call interceptor that intercepts a method call made on an object and that routes the method call to a proxy. The method call interceptor is accessible to application code. The system also includes an application code generic proxy that after overriding a base class invocation method can receive intercepted method calls, can invoke methods on the object that the proxy images, can receive results from the object that the proxy images and can pass results to the entity that generated the intercepted method call.
    Type: Application
    Filed: July 13, 2005
    Publication date: December 1, 2005
    Applicant: Microsoft Corporation
    Inventors: Raja Krishnaswamy, Tarun Anand, Christopher Brumme, Gopala Kakivaya
  • Publication number: 20050246716
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Application
    Filed: June 23, 2005
    Publication date: November 3, 2005
    Applicant: Microsoft Corporation
    Inventors: Adam Smith, Anthony Moore, Brian LaMacchia, Anders Hejlsberg, Brian Grunkemeyer, Caleb Doise, Christopher Brumme, Christopher Anderson, Corina Feuerstein, Craig Sinclair, Daniel Takacs, David Ebbo, David Driver, David Mortenson, Erik Christensen, Erik Olson, Fabio Yeon, Gopala Kakivaya, Gregory Fee, Hany Ramadan, Henry Sanders, Jayanth Rajan, Jeffrey Cooperstein, Jonathan Hawkins, James Hogg, Joe Long, John McConnell, Jesus Ruiz-Scougall, James Miller, Julie Bennett, Krzysztof Cwalina, Lance Olson, Loren Kohnfelder, Michael Magruder, Manish Prabhu, Radu Palanca, Raja Krishnaswamy, Shawn Burke, Sean Trowbridge, Seth Demsey, Shajan Dasan, Stefan Pharies, Suzanne Cook, Tarun Anand, Travis Muhlestein, Yann Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
  • Publication number: 20050240943
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Application
    Filed: June 23, 2005
    Publication date: October 27, 2005
    Applicant: Microsoft Corporation
    Inventors: Adam Smith, Anthony Moore, Brian LaMacchia, Anders Hejlsberg, Biran Grunkemeyer, Caleb Doise, Christopher Brumme, Christopher Anderson, Corina Feuerstein, Craig Sinclair, Daniel Takacs, David Ebbo, David Driver, David Mortenson, Erik Christensen, Erik Olson, Fabio Yeon, Gopala Kakivaya, George Fee, Hany Ramadan, Henry Sanders, Jayanth Rajan, Jeffrey Cooperstein, Jonathan Hawkins, James Hogg, Joe Long, John McConnell, Jesus Ruiz-Scougall, James Miller, Julie Bennett, Krzysztof Cwalina, Lance Olson, Loren Kohnfelder, Michael Magruder, Manish Prabhu, Radu Palanca, Raja Krishnaswamy, Shawn Burke, Sean Trowbridge, Seth Demsey, Shajan Dasan, Stefan Pharies, Suzanne Cook, Tarun Anand, Travis Muhlestein, Yann Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau