Patents by Inventor Affan Arshad Dar

Affan Arshad Dar 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).

  • Patent number: 11392702
    Abstract: Described herein is a device (e.g., IoT device) having bootstrap code that communicates with a secure global registry (e.g., private distributed shared blockchain database). The bootstrap code of the device uses a globally unique device identifier of the device to the secure global registry. The bootstrap code receives information from the secure global registry which the bootstrap code uses to obtain information to connect to a cloud-based endpoint. The bootstrap code can download an appropriate software development kit (SDK) associated with the particular cloud based, at least in part, upon the received information. The device can be registered in the secure global registry by creating a globally unique identifier for the device. An initial entry can be created in the secure global registry comprising the globally unique identifier, with the secure global registry stores current cloud-based endpoint information, if any, for the device.
    Type: Grant
    Filed: March 17, 2019
    Date of Patent: July 19, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Balendran Mugundan, Affan Arshad Dar, Anush Prabhu Ramachandran, Raimundo Robledo Pontes Filho, Rajeev Mandayam Vokkarne
  • Publication number: 20200293663
    Abstract: Described herein is a device (e.g., IoT device) having bootstrap code that communicates with a secure global registry (e.g., private distributed shared blockchain database). The bootstrap code of the device uses a globally unique device identifier of the device to the secure global registry. The bootstrap code receives information from the secure global registry which the bootstrap code uses to obtain information to connect to a cloud-based endpoint. The bootstrap code can download an appropriate software development kit (SDK) associated with the particular cloud based, at least in part, upon the received information. The device can be registered in the secure global registry by creating a globally unique identifier for the device. An initial entry can be created in the secure global registry comprising the globally unique identifier, with the secure global registry stores current cloud-based endpoint information, if any, for the device.
    Type: Application
    Filed: March 17, 2019
    Publication date: September 17, 2020
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Balendran Mugundan, Affan Arshad Dar, Anush Prabhu Ramachandran, Raimundo Robledo Pontes Filho, Rajeev Mandayam Vokkarne
  • Patent number: 10666724
    Abstract: Multiple geo-replicated and independent IoT (Internet of Things) hubs configured as servers with storage capacities are utilized and span across various regions in the world, to each of which IoT devices can connect and transmit telemetry data. The IoT devices, configured with sensors to generate telemetry data (e.g., temperature, pressure, etc.), can fail over to another geo-replicated IoT hub (the “target geo-replicated IoT hub”) when one IoT hub experiences technical failures or the IoT device changes location to a region which is covered by the target IoT hub. Upon receiving a connection request from the IoT device, the target geo-replicated IoT hub submits a proposal to available geo-replicated IoT hubs for ownership over the IoT device, that is, receive data from and transmit messages to the IoT device. A quorum is sought so that all IoT hubs are in agreement as to a current owner of the IoT device.
    Type: Grant
    Filed: November 20, 2018
    Date of Patent: May 26, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Kapil Agarwal, Vaibhav Sharma, Affan Arshad Dar, Roopesh Kumar Manda
  • Patent number: 9098359
    Abstract: Executing a long running application while maintaining state of the application. A method includes identifying that a new event has taken place with respect to an execution of an orchestration. The method includes establishing the state of the orchestration by replaying the execution of the orchestration by replaying any previous state from a history of the execution of the orchestration. The method further includes executing a next instruction of the execution of the orchestration. The next instruction is an instruction coded in the orchestration to execute after items in the history have been replayed.
    Type: Grant
    Filed: October 10, 2013
    Date of Patent: August 4, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Samar Abbas, Muralidhar Krishnaprasad, Affan Arshad Dar
  • Publication number: 20150106825
    Abstract: Executing a long running application while maintaining state of the application. A method includes identifying that a new event has taken place with respect to an execution of an orchestration. The method includes establishing the state of the orchestration by replaying the execution of the orchestration by replaying any previous state from a history of the execution of the orchestration. The method further includes executing a next instruction of the execution of the orchestration. The next instruction is an instruction coded in the orchestration to execute after items in the history have been replayed.
    Type: Application
    Filed: October 10, 2013
    Publication date: April 16, 2015
    Applicant: Microsoft Corporation
    Inventors: Samar Abbas, Muralidhar Krishnaprasad, Affan Arshad Dar
  • Patent number: 8755397
    Abstract: Embodiments are directed to promptly reestablishing communication between nodes in a dynamic computer network and dynamically maintaining an address list in an unstable network. A computer system sends a message to other message queuing nodes in a network, where each node in the message queuing network includes a corresponding persistent unique global identifier. The computer system maintains a list of unique global identifiers and the current network addresses of those network nodes from which the message queuing node has received a message or to which the message queuing node has sent a message. The computer system goes offline for a period of time and upon coming back online, sends an announcement message to each node maintained in the list indicating that the message queuing node is ready for communication in the message queuing network, where each message includes the destination node's globally unique identifier and the node's current network address.
    Type: Grant
    Filed: February 8, 2012
    Date of Patent: June 17, 2014
    Assignee: Microsoft Corporation
    Inventors: Sanjib Saha, Affan Arshad Dar, Xin Chen, Manohar Bangalore Puttaswamaiah
  • Patent number: 8671306
    Abstract: A messaging system may operate on multiple processor partitions in several configurations to provide queuing and topic subscription services on a large scale. A queue service may receive messages from a multiple transmitting services and distribute the messages to a single service. A topic subscription service may receive messages from multiple transmitting services, but distribute the messages to multiple recipients, often with a filter applied to each recipient where the filter defines which messages may be transmitted by the recipient. Large queues or topic subscriptions may be divided across multiple processor partitions with separate sets of recipients for each partition in some cases, or with duplicate sets of recipients in other cases.
    Type: Grant
    Filed: December 21, 2010
    Date of Patent: March 11, 2014
    Assignee: Microsoft Corporation
    Inventors: Kartik Paramasivam, Murali Krishnaprasad, Jayu Katti, Pramod Gurunath, Affan Arshad Dar
  • Patent number: 8572627
    Abstract: In one embodiment, a computer system instantiates a queue manager configured to process a plurality of existing queue manager commands on messages in a message queue. The computer system instantiates a virtualized instance of a queue manager in a virtual layer associated with the queue manager in the computing system. The a virtualized queue manager instance provides supplemental queue manager commands usable in addition to existing queue manager commands, such that the queue manager can be used to implement the supplemental commands without substantial modification. The computer system receives an indication that a message in a message queue is to be accessed according to a specified command provided by the instantiated virtualized queue manager instance that is not natively supported by the queue manager and the virtualized queue manager performs the specified supplemental command as indicated by the received indication by performing one or more existing queue manager commands.
    Type: Grant
    Filed: October 22, 2008
    Date of Patent: October 29, 2013
    Assignee: Microsoft Corporation
    Inventors: Affan Arshad Dar, James E. Johnson
  • Patent number: 8505030
    Abstract: The present invention extends to methods, systems, and computer program products for coordinating resources using a volatile network intermediary. Embodiments provide a mechanism for an network intermediary to facilitate a state coordination pattern between an application and a communication medium when the communication medium does not support the state coordination pattern. In some embodiments, receiving applications can make use of this network intermediary by changing the receive location. However, the receiving application may not be able to distinguish the network intermediary from a native implementation of the state coordination pattern. Further, the network intermediary does not require deployment of a persistent or durable store to coordinate state between receiving applications and the original communication medium.
    Type: Grant
    Filed: January 23, 2008
    Date of Patent: August 6, 2013
    Assignee: Microsoft Corporation
    Inventors: Nicholas A. Allen, Affan Arshad Dar, John A. Taylor
  • Patent number: 8443379
    Abstract: A queue management system may store a queue of messages in a main queue. When a message is processed by an application, the message may be moved to a subqueue. In the subqueue, the message may be locked from other applications. After processing the message, the application may delete the message from the subqueue and complete the action required. If the application fails to respond in a timely manner, the message may be moved from the subqueue to the main queue and released for another application to service the message. If the application responds after the time out period, a fault may occur when the application attempts to delete the message from the subqueue. Such an arrangement allows a “peek and lock” functionality to be implemented using a subqueue.
    Type: Grant
    Filed: June 18, 2008
    Date of Patent: May 14, 2013
    Assignee: Microsoft Corporation
    Inventors: Affan Arshad Dar, Sanjib Saha
  • Publication number: 20120159246
    Abstract: A messaging system may operate on multiple processor partitions in several configurations to provide queuing and topic subscription services on a large scale. A queue service may receive messages from a multiple transmitting services and distribute the messages to a single service. A topic subscription service may receive messages from multiple transmitting services, but distribute the messages to multiple recipients, often with a filter applied to each recipient where the filter defines which messages may be transmitted by the recipient. Large queues or topic subscriptions may be divided across multiple processor partitions with separate sets of recipients for each partition in some cases, or with duplicate sets of recipients in other cases.
    Type: Application
    Filed: December 21, 2010
    Publication date: June 21, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Kartik PARAMASIVAM, Murali KRISHNAPRASAD, Jayu KATTI, Pramod GURUNATH, Affan Arshad Dar
  • Publication number: 20120134370
    Abstract: Embodiments are directed to promptly reestablishing communication between nodes in a dynamic computer network and dynamically maintaining an address list in an unstable network. A computer system sends a message to other message queuing nodes in a network, where each node in the message queuing network includes a corresponding persistent unique global identifier. The computer system maintains a list of unique global identifiers and the current network addresses of those network nodes from which the message queuing node has received a message or to which the message queuing node has sent a message. The computer system goes offline for a period of time and upon coming back online, sends an announcement message to each node maintained in the list indicating that the message queuing node is ready for communication in the message queuing network, where each message includes the destination node's globally unique identifier and the node's current network address.
    Type: Application
    Filed: February 8, 2012
    Publication date: May 31, 2012
    Applicant: Microsoft Corporation
    Inventors: Sanjib Saha, Affan Arshad Dar, Xin Chen, Manohar Bangalore Puttaswamaiah
  • Patent number: 8135025
    Abstract: Embodiments are directed to promptly reestablishing communication between nodes in a dynamic computer network and dynamically maintaining an address list in an unstable network. A computer system sends a message to other message queuing nodes in a network, where each node in the message queuing network includes a corresponding persistent unique global identifier. The computer system maintains a list of unique global identifiers and the current network addresses of those network nodes from which the message queuing node has received a message or to which the message queuing node has sent a message. The computer system goes offline for a period of time and upon coming back online, sends an announcement message to each node maintained in the list indicating that the message queuing node is ready for communication in the message queuing network, where each message includes the destination node's globally unique identifier and the node's current network address.
    Type: Grant
    Filed: June 3, 2009
    Date of Patent: March 13, 2012
    Assignee: Microsoft Corporation
    Inventors: Sanjib Saha, Affan Arshad Dar, Xin Chen, Manohar Bangalore Puttaswamaiah
  • Publication number: 20100309928
    Abstract: Embodiments are directed to promptly reestablishing communication between nodes in a dynamic computer network and dynamically maintaining an address list in an unstable network. A computer system sends a message to other message queuing nodes in a network, where each node in the message queuing network includes a corresponding persistent unique global identifier. The computer system maintains a list of unique global identifiers and the current network addresses of those network nodes from which the message queuing node has received a message or to which the message queuing node has sent a message. The computer system goes offline for a period of time and upon coming back online, sends an announcement message to each node maintained in the list indicating that the message queuing node is ready for communication in the message queuing network, where each message includes the destination node's globally unique identifier and the node's current network address.
    Type: Application
    Filed: June 3, 2009
    Publication date: December 9, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Sanjib Saha, Affan Arshad Dar, Xin Chen, Manohar Bangalore Puttaswamaiah
  • Publication number: 20100100890
    Abstract: In one embodiment, a computer system instantiates a queue manager configured to process a plurality of existing queue manager commands on messages in a message queue. The computer system instantiates a virtualized instance of a queue manager in a virtual layer associated with the queue manager in the computing system. The a virtualized queue manager instance provides supplemental queue manager commands usable in addition to existing queue manager commands, such that the queue manager can be used to implement the supplemental commands without substantial modification. The computer system receives an indication that a message in a message queue is to be accessed according to a specified command provided by the instantiated virtualized queue manager instance that is not natively supported by the queue manager and the virtualized queue manager performs the specified supplemental command as indicated by the received indication by performing one or more existing queue manager commands.
    Type: Application
    Filed: October 22, 2008
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Affan Arshad Dar, James E. Johnson
  • Publication number: 20090320044
    Abstract: A queue management system may store a queue of messages in a main queue. When a message is processed by an application, the message may be moved to a subqueue. In the subqueue, the message may be locked from other applications. After processing the message, the application may delete the message from the subqueue and complete the action required. If the application fails to respond in a timely manner, the message may be moved from the subqueue to the main queue and released for another application to service the message. If the application responds after the time out period, a fault may occur when the application attempts to delete the message from the subqueue. Such an arrangement allows a “peek and lock” functionality to be implemented using a subqueue.
    Type: Application
    Filed: June 18, 2008
    Publication date: December 24, 2009
    Applicant: Microsoft Corporation
    Inventors: Affan Arshad Dar, Sanjib Saha
  • Publication number: 20090133036
    Abstract: The present invention extends to methods, systems, and computer program products for coordinating resources using a volatile network intermediary. Embodiments provide a mechanism for an network intermediary to facilitate a state coordination pattern between an application and a communication medium when the communication medium does not support the state coordination pattern. In some embodiments, receiving applications can make use of this network intermediary by changing the receive location. However, the receiving application may not be able to distinguish the network intermediary from a native implementation of the state coordination pattern. Further, the network intermediary does not require deployment of a persistent or durable store to coordinate state between receiving applications and the original communication medium.
    Type: Application
    Filed: January 23, 2008
    Publication date: May 21, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Nicholas A. Allen, Affan Arshad Dar, John A. Taylor
  • Patent number: 7509538
    Abstract: Test result data can be classified across multiple tests, test scenarios, and lab runs. Test result files can be parsed by extracting information from them. Extracted information can be compared to failure information in a database. If a match is found, the extracted information can be linked to the failure, creating a history for each failure. New failures can be identified when no match is found. Failure data can be cross-referenced to further aid in results analysis. For each failure, lists of useful information can be accessed. Analysis information can be associated with failures, for example whether the failure is new, occurred previously, is for a different reason than expected, or has been added to a baseline of expected failures. A Graphic User Interface (“GUI”) is also provided to expose the analyzed results to the result analyzers.
    Type: Grant
    Filed: April 21, 2004
    Date of Patent: March 24, 2009
    Assignee: Microsoft Corporation
    Inventors: Edward Triou, Jr., Andre Milbradt, Osarumwemse U. Agbonile, Affan Arshad Dar