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: 8233499Abstract: 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: GrantFiled: June 15, 2009Date of Patent: July 31, 2012Assignee: Microsoft CorporationInventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
-
Publication number: 20090248885Abstract: 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: ApplicationFiled: June 15, 2009Publication date: October 1, 2009Applicant: Microsoft CorporationInventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
-
Patent number: 7548547Abstract: 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: GrantFiled: March 31, 2006Date of Patent: June 16, 2009Assignee: Microsoft CorporationInventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
-
Publication number: 20070237077Abstract: 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: ApplicationFiled: March 31, 2006Publication date: October 11, 2007Applicant: Microsoft CorporationInventors: Makarand Patwardhan, Nadim Abdo, Mahesh Lotlikar, Hammad Butt, Costin Hagiu
-
Patent number: 7174275Abstract: 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: GrantFiled: January 24, 2006Date of Patent: February 6, 2007Assignee: Microsoft CorporationInventors: Hammad Butt, Costin Hagiu
-
Publication number: 20060161399Abstract: 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: ApplicationFiled: January 24, 2006Publication date: July 20, 2006Applicant: Microsoft CorporationInventors: Hammad Butt, Costin Hagiu
-
Patent number: 7035771Abstract: 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: GrantFiled: July 14, 2005Date of Patent: April 25, 2006Assignee: Microsoft CorporationInventors: Hammad Butt, Costin Hagiu
-
Patent number: 7010465Abstract: 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: GrantFiled: March 29, 2004Date of Patent: March 7, 2006Assignee: Microsoft CorporationInventors: Hammad Butt, Costin Hagiu
-
Publication number: 20050267711Abstract: 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: ApplicationFiled: July 14, 2005Publication date: December 1, 2005Applicant: Microsoft CorporationInventors: Hammad Butt, Costin Hagiu
-
Publication number: 20050216235Abstract: 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: ApplicationFiled: March 29, 2004Publication date: September 29, 2005Applicant: Microsoft CorporationInventors: Hammad Butt, Costin Hagiu