Patents by Inventor Costin Hagiu
Costin Hagiu 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: 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
-
Publication number: 20090204975Abstract: A method for measuring application responsiveness measures the time elapsed between receiving and processing a trailing tag message inserted into the application's message queue. The method receives a message, generates a trailing tag message associated with the message, and inserts the trailing tag message into the application's message queue. The trailing tag message includes a timestamp indicating when the trailing tag message was queued. A default message handler calculates the time elapsed between when the trailing tag message was queued and when the trailing tag message was processed. The elapsed time may then be used to calculated system responsiveness.Type: ApplicationFiled: February 8, 2008Publication date: August 13, 2009Applicant: Microsoft CorporationInventors: Costin Hagiu, Wilhelm R. Schmieder, Gabriel Hera
-
Publication number: 20090187784Abstract: Embodiments that facilitate the fair and dynamic distribution of central processing unit (CPU) time are disclosed. In accordance with one embodiment, a method includes organizing one or more processes into one or more groups. The method further includes allocating a CPU time interval for each group. The allocation of a CPU time interval for each group is accomplished by equally distributing a CPU cycle based on the number of groups. The method also includes adjusting the allocated CPU time intervals based on a change in the quantity of the one or more groups.Type: ApplicationFiled: January 18, 2008Publication date: July 23, 2009Applicant: MICROSOFT CORPORATIONInventors: Ara Bernardi, Costin Hagiu, NK Srinivas, Ashwin Palekar, Arun U. Kishan, Karthik Thirumalai
-
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: 20080256389Abstract: A strategy is described in which multiple testing agents perform multiple respective tests in a multi-user environment. One such multi-user environment allows multiple clients to interact with remote applications that are executed on a server. According to one exemplary case, a central test management module coordinates the execution of the multiple tests by the testing agents. For instance, the test management module can prevent testing agents that make demands on a global state of the multi-user environment from interfering with other testing agents.Type: ApplicationFiled: April 11, 2007Publication date: October 16, 2008Applicant: Microsoft CorporationInventors: Madhanmohan Neethiraj, Costin Hagiu, Vishal D. Maru
-
Patent number: 7349953Abstract: Presented is a system and method for determining a user's intent. Specifically, constituents and a topology are derived from the user's expression of intent, which can be stated broadly or stated in specific detail. The intent is expressed verbally, written, or in an XML format. The constituents and topology are resolved into a configuration based upon contexts. The contexts, which include a resource context, a user context, and an application context, includes information about the user's preferences, location, restrictions, device and network availability, and content availability. The configuration is then implemented.Type: GrantFiled: December 22, 2004Date of Patent: March 25, 2008Assignee: Microsoft CorporationInventors: Rafael S. Lisitsa, Dale A. Sather, Costin Hagiu
-
Publication number: 20070277231Abstract: A credential security support provider (Cred SSP) is provided that enables any application to securely delegate a user's credentials from the client, via client side Security Support Provider (SSP) software, to a target server, via server side SSP software in a networked computing environment. The Cred SSP of the invention provides a secure solution that is based in part upon a set of policies, including a default policy that is secure against a broad range of attacks, which are used to control and restrict the delegation of user credentials from a client to a server. The policies can be for any type of user credentials and the different policies are designed to mitigate a broad range of attacks so that appropriate delegation can occur for given delegation circumstances, network conditions, trust levels, etc. Additionally, only a trusted subsystem, e.g.Type: ApplicationFiled: May 26, 2006Publication date: November 29, 2007Applicant: Microsoft CorporationInventors: Gennady Medvinsky, Cristian Ilac, Costin Hagiu, John E. Parsons, Mohamed Emad El Din Fathalla, Paul J. Leach, Tarek Buhaa El-Din Mahmoud Kamel
-
Patent number: 7290039Abstract: Presented is a system and method for determining a user's intent. Specifically, constituents and a topology are derived from the user's expression of intent, which can be stated broadly or stated in specific detail. The intent is expressed verbally, written, or in an XML format. The constituents and topology are resolved into a configuration based upon contexts. The contexts, which include a resource context, a user context, and an application context, includes information about the user's preferences, location, restrictions, device and network availability, and content availability. The configuration is then implemented.Type: GrantFiled: February 27, 2001Date of Patent: October 30, 2007Assignee: Microsoft CorporationInventors: Rafael S Lisitsa, Dale A Sather, 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
-
Publication number: 20070061878Abstract: Implementations of the present invention efficiently establish secure connections between a client and server, at least in part by authenticating the client and server early on in the connection setup phases. A client initiating a connection with a server identifies the secure communication protocols enabled at the client, and identifies these protocols in a connection request it sends to the server. The server processes the message and responds with a communication protocol it deems appropriate for the connection. The client and server then exchange appropriate authentication information, and then establish a connection session that implements the chosen communication protocol, and encrypts messages using the negotiated communication protocol. Additional implementations relate to reestablishing dropped connections behind virtual Internet Protocol addresses, without necessarily having to recommit much connection resource overhead.Type: ApplicationFiled: February 15, 2006Publication date: March 15, 2007Applicant: Microsoft CorporationInventors: Costin Hagiu, Elton Saul, Rajneesh Mahajan, Sergey Kuzin, Joy Chik, John Parsons, Ashwin Palekar, Ara Bernardi
-
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: 20060195586Abstract: Systems and methods for configuring sessions and terminals for binding in an extensible manner are disclosed. In one implementation, a terminal is created in response to notification of an incoming connection. A session is also created. The terminal and session are bound together for operation. This implementation may be instantiated as computer-executable instructions defined on a computer-readable media.Type: ApplicationFiled: February 25, 2005Publication date: August 31, 2006Applicant: Microsoft CorporationInventors: Vladimir Stoyanov, Ara Bernardi, Costin Hagiu, John Parsons, Makarand Patwardhan, Sriram Sampath
-
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: 7073011Abstract: The present invention analyzes a user's or client application's requirements and searches for a solution based on the end-to-end latency requirements (requested or derived), data formats, control protocols, timing and synchronization, local streaming, and resource availability. The search for a solution is tracked to allow backtracking from the point of no solution. Once a solution is determined, the system translates the solution into requirements for the individual components of the graph.Type: GrantFiled: April 13, 2004Date of Patent: July 4, 2006Assignee: Microsoft CorporationInventors: Rafael S. Lisitsa, Dale A. Sather, 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
-
Publication number: 20050154783Abstract: Presented is a system and method for determining a user's intent. Specifically, constituents and a topology are derived from the user's expression of intent, which can be stated broadly or stated in specific detail. The intent is expressed verbally, written, or in an XML format. The constituents and topology are resolved into a configuration based upon contexts. The contexts, which include a resource context, a user context, and an application context, includes information about the user's preferences, location, restrictions, device and network availability, and content availability. The configuration is then implemented.Type: ApplicationFiled: December 22, 2004Publication date: July 14, 2005Applicant: Microsoft CorporationInventors: Rafael Lisitsa, Dale Sather, Costin Hagiu
-
Publication number: 20050108354Abstract: Presented is a system and method for determining a user's intent. Specifically, constituents and a topology are derived from the user's expression of intent, which can be stated broadly or stated in specific detail. The intent is expressed verbally, written, or in an XML format. The constituents and topology are resolved into a configuration based upon contexts. The contexts, which include a resource context, a user context, and an application context, includes information about the user's preferences, location, restrictions, device and network availability, and content availability. The configuration is then implemented.Type: ApplicationFiled: December 22, 2004Publication date: May 19, 2005Applicant: Microsoft CorporationInventors: Rafael Lisitsa, Dale Sather, Costin Hagiu