Patents by Inventor Hammad Butt

Hammad Butt 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: 8233499
    Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.
    Type: Grant
    Filed: June 15, 2009
    Date of Patent: July 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
  • Publication number: 20090248885
    Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.
    Type: Application
    Filed: June 15, 2009
    Publication date: October 1, 2009
    Applicant: Microsoft Corporation
    Inventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
  • Patent number: 7548547
    Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.
    Type: Grant
    Filed: March 31, 2006
    Date of Patent: June 16, 2009
    Assignee: Microsoft Corporation
    Inventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
  • Publication number: 20070237077
    Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.
    Type: Application
    Filed: March 31, 2006
    Publication date: October 11, 2007
    Applicant: Microsoft Corporation
    Inventors: Makarand Patwardhan, Nadim Abdo, Mahesh Lotlikar, Hammad Butt, Costin Hagiu
  • Patent number: 7174275
    Abstract: Apparatuses and methods to test whether a multi-user system will provide satisfactory performance are described. Response times are logged for each individual user, and the measurements are aggregated together in a single file at the end of the test. For each action type, a graph is built that correlates the distribution of the response times as a function of the user load. A break point is determined for each action type at which a response time exceeds a predetermined threshold. By analyzing the different break points, the number of users that can be supported by the multi-user computer system is determined. Additionally, an optimal amount of memory may be determined to support a user load. The amount of memory required per user is computed based on the user load at the projected point where a line that is determined from page output peaks intersects the page input line.
    Type: Grant
    Filed: January 24, 2006
    Date of Patent: February 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Hammad Butt, Costin Hagiu
  • Publication number: 20060161399
    Abstract: Apparatuses and methods to test whether a multi-user system will provide satisfactory performance are described. Response times are logged for each individual user, and the measurements are aggregated together in a single file at the end of the test. For each action type, a graph is built that correlates the distribution of the response times as a function of the user load. A break point is determined for each action type at which a response time exceeds a predetermined threshold. By analyzing the different break points, the number of users that can be supported by the multi-user computer system is determined. Additionally, an optimal amount of memory may be determined to support a user load. The amount of memory required per user is computed based on the user load at the projected point where a line that is determined from page output peaks intersects the page input line.
    Type: Application
    Filed: January 24, 2006
    Publication date: July 20, 2006
    Applicant: Microsoft Corporation
    Inventors: Hammad Butt, Costin Hagiu
  • Patent number: 7035771
    Abstract: Apparatuses and methods to test whether a multi-user system will provide satisfactory performance are described. Response times are logged for each individual user, and the measurements are aggregated together in a single file at the end of the test. For each action type, a graph is built that correlates the distribution of the response times as a function of the user load. A break point is determined for each action type at which a response time exceeds a predetermined threshold. By analyzing the different break points, the number of users that can be supported by the multi-user computer system is determined. Additionally, an optimal amount of memory may be determined to support a user load. The amount of memory required per user is computed based on the user load at the projected point where a line that is determined from page output peaks intersects the page input line.
    Type: Grant
    Filed: July 14, 2005
    Date of Patent: April 25, 2006
    Assignee: Microsoft Corporation
    Inventors: Hammad Butt, Costin Hagiu
  • Patent number: 7010465
    Abstract: Apparatuses and methods to test whether a multi-user system will provide satisfactory performance are described. Response times are logged for each individual user, and the measurements are aggregated together in a single file at the end of the test. For each action type, a graph is built that correlates the distribution of the response times as a function of the user load. A break point is determined for each action type at which a response time exceeds a predetermined threshold. By analyzing the different break points, the number of users that can be supported by the multi-user computer system is determined. Additionally, an optimal amount of memory may be determined to support a user load. The amount of memory required per user is computed based on the user load at the projected point where a line that is determined from page output peaks intersects the page input line.
    Type: Grant
    Filed: March 29, 2004
    Date of Patent: March 7, 2006
    Assignee: Microsoft Corporation
    Inventors: Hammad Butt, Costin Hagiu
  • Publication number: 20050267711
    Abstract: Apparatuses and methods to test whether a multi-user system will provide satisfactory performance are described. Response times are logged for each individual user, and the measurements are aggregated together in a single file at the end of the test. For each action type, a graph is built that correlates the distribution of the response times as a function of the user load. A break point is determined for each action type at which a response time exceeds a predetermined threshold. By analyzing the different break points, the number of users that can be supported by the multi-user computer system is determined. Additionally, an optimal amount of memory may be determined to support a user load. The amount of memory required per user is computed based on the user load at the projected point where a line that is determined from page output peaks intersects the page input line.
    Type: Application
    Filed: July 14, 2005
    Publication date: December 1, 2005
    Applicant: Microsoft Corporation
    Inventors: Hammad Butt, Costin Hagiu
  • Publication number: 20050216235
    Abstract: Apparatuses and methods to test whether a multi-user system will provide satisfactory performance are described. Response times are logged for each individual user, and the measurements are aggregated together in a single file at the end of the test. For each action type, a graph is built that correlates the distribution of the response times as a function of the user load. A break point is determined for each action type at which a response time exceeds a predetermined threshold. By analyzing the different break points, the number of users that can be supported by the multi-user computer system is determined. Additionally, an optimal amount of memory may be determined to support a user load. The amount of memory required per user is computed based on the user load at the projected point where a line that is determined from page output peaks intersects the page input line.
    Type: Application
    Filed: March 29, 2004
    Publication date: September 29, 2005
    Applicant: Microsoft Corporation
    Inventors: Hammad Butt, Costin Hagiu