Patents by Inventor Alaa H. Abdelhalim
Alaa H. Abdelhalim 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: 10057326Abstract: Described herein are various principles for operating transfer protocols using adaptive flow control techniques. In accordance with some of these principles, a client may adaptively negotiate with a server regarding a window size to use when communicating datagrams using a connectionless content unit transfer protocol like the Trivial File Transfer Protocol (TFTP). In some implementations, a client may inform a server whether to increase or decrease a window size. In these implementations, the client may increase the window size upon determining that a previous window size has led to successful transfer of content without any loss of datagrams and the client may decrease the window size upon detecting a loss of a datagram. Because of the limited resources available in some environments in which these techniques may be used, in some implementations a window size may be increased by small amounts but may be decreased drastically upon detecting a loss.Type: GrantFiled: May 18, 2015Date of Patent: August 21, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Richard T. Russo, Aaron Matthew Tyler, Chandan Rama Reddy, Manoj Krishna Ghosh, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich
-
Patent number: 9172551Abstract: A form of multicast, referred to as “on-demand multicast,” provides a methodology that allows for “on demand” multicasting of data. On-demand multicast allows clients to join or leave a transmission at any point. There is no transmission session start or end time—the session is continuously available, although data is not necessarily continuously transmitted. Data blocks missed by late-joining clients are retransmitted per amalgamated client requests through multiple transmission cycles until all clients that have joined the transmission session receive all content. Once a client has received all data blocks comprising the content for the session, the client may exit the ongoing session.Type: GrantFiled: August 4, 2011Date of Patent: October 27, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Christopher Scott Dickens, Asad Yaqoob, Saad Syed, Jeremy Sadler, Alaa H. Abdelhalim
-
Publication number: 20150249702Abstract: Described herein are various principles for operating transfer protocols using adaptive flow control techniques. In accordance with some of these principles, a client may adaptively negotiate with a server regarding a window size to use when communicating datagrams using a connectionless content unit transfer protocol like the Trivial File Transfer Protocol (TFTP). In some implementations, a client may inform a server whether to increase or decrease a window size. In these implementations, the client may increase the window size upon determining that a previous window size has led to successful transfer of content without any loss of datagrams and the client may decrease the window size upon detecting a loss of a datagram. Because of the limited resources available in some environments in which these techniques may be used, in some implementations a window size may be increased by small amounts but may be decreased drastically upon detecting a loss.Type: ApplicationFiled: May 18, 2015Publication date: September 3, 2015Inventors: Richard T. Russo, Aaron Matthew Tyler, Chandan Rama Reddy, Manoj Krishna Ghosh, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich
-
Patent number: 9049175Abstract: Described herein are various principles for operating transfer protocols using adaptive flow control techniques. In accordance with some of these principles, a client may adaptively negotiate with a server regarding a window size to use when communicating datagrams using a connectionless content unit transfer protocol like the Trivial File Transfer Protocol (TFTP). In some implementations, a client may inform a server whether to increase or decrease a window size. In these implementations, the client may increase the window size upon determining that a previous window size has led to successful transfer of content without any loss of datagrams and the client may decrease the window size upon detecting a loss of a datagram. Because of the limited resources available in some environments in which these techniques may be used, in some implementations a window size may be increased by small amounts but may be decreased drastically upon detecting a loss.Type: GrantFiled: December 2, 2010Date of Patent: June 2, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Richard T. Russo, Aaron Matthew Tyler, Chandan Rama Reddy, Manoj Krishna Ghosh, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich
-
Patent number: 8837278Abstract: A system and a process for deploying a computer file involves a client computer applying the computer file concurrently with downloading the computer file from a file server. The concurrent operations can be performed even when the data of the computer file is downloaded out of order. The computer file includes a plurality of file segments. The client computer obtains information defining the file segments and monitors the received data of the computer file during downloading. When downloading of a file segment is complete, the client computer applies the completed segment concurrently with receiving other segments of the computer file from the file server. The process can be used when the computer file is downloaded using a multicast protocol, but is not limited to use with multicast protocols. The client computer can request only needed segments of the computer file.Type: GrantFiled: November 19, 2010Date of Patent: September 16, 2014Assignee: Microsoft CorporationInventors: Richard T. Russo, Aaron Matthew Tyler, Blaine Young, Bruce Green, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich, Vittal Pai, Andrew Sveikauskas, P. Daniel Suberviola, II
-
Patent number: 8521902Abstract: Described herein are various principles for operating a connectionless content unit transfer protocol to transmit content of a content unit to multiple clients using a shared buffer. A server may transfer content of one or more content units to each of multiple clients upon request from the client using individual buffers. For each content unit being transferred, the server may maintain a count of the aggregate size of buffers for transferring content of that content unit. If the server determines that the aggregate size of the buffers transmitting a particular content unit is larger than the content unit itself, the server may establish a shared buffer for transferring that content unit to clients. A server using a shared buffer in this manner may transfer content of the content unit to clients using the shared buffer until all requesting clients have received the content unit.Type: GrantFiled: December 2, 2010Date of Patent: August 27, 2013Assignee: Microsoft CorporationInventors: Richard T. Russo, Aaron Matthew Tyler, Chandan Rama Reddy, Manoj Krishna Ghosh, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich
-
Publication number: 20120144060Abstract: Described herein are various principles for operating a connectionless content unit transfer protocol to transmit content of a content unit to multiple clients using a shared buffer. A server may transfer content of one or more content units to each of multiple clients upon request from the client using individual buffers. For each content unit being transferred, the server may maintain a count of the aggregate size of buffers for transferring content of that content unit. If the server determines that the aggregate size of the buffers transmitting a particular content unit is larger than the content unit itself, the server may establish a shared buffer for transferring that content unit to clients. A server using a shared buffer in this manner may transfer content of the content unit to clients using the shared buffer until all requesting clients have received the content unit.Type: ApplicationFiled: December 2, 2010Publication date: June 7, 2012Applicant: Microsoft CorporationInventors: Richard T. Russo, Aaron Matthew Tyler, Chandan Rama Reddy, Manoj Krishna Ghosh, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich
-
Publication number: 20120143993Abstract: Described herein are various principles for operating transfer protocols using adaptive flow control techniques. In accordance with some of these principles, a client may adaptively negotiate with a server regarding a window size to use when communicating datagrams using a connectionless content unit transfer protocol like the Trivial File Transfer Protocol (TFTP). In some implementations, a client may inform a server whether to increase or decrease a window size. In these implementations, the client may increase the window size upon determining that a previous window size has led to successful transfer of content without any loss of datagrams and the client may decrease the window size upon detecting a loss of a datagram. Because of the limited resources available in some environments in which these techniques may be used, in some implementations a window size may be increased by small amounts but may be decreased drastically upon detecting a loss.Type: ApplicationFiled: December 2, 2010Publication date: June 7, 2012Applicant: Microsoft CorporationInventors: Richard T. Russo, Aaron Matthew Tyler, Chandan Rama Reddy, Manoj Krishna Ghosh, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich
-
Publication number: 20120131087Abstract: A system and a process for deploying a computer file involves a client computer applying the computer file concurrently with downloading the computer file from a file server. The concurrent operations can be performed even when the data of the computer file is downloaded out of order. The computer file includes a plurality of file segments. The client computer obtains information defining the file segments and monitors the received data of the computer file during downloading. When downloading of a file segment is complete, the client computer applies the completed segment concurrently with receiving other segments of the computer file from the file server. The process can be used when the computer file is downloaded using a multicast protocol, but is not limited to use with multicast protocols. The client computer can request only needed segments of the computer file.Type: ApplicationFiled: November 19, 2010Publication date: May 24, 2012Applicant: Microsoft CorporationInventors: Richard T. Russo, Aaron Matthew Tyler, Bruce Green, Blaine Young, Alaa H. Abdelhalim, Roger D. Seielstad, Peter A. Gurevich, Vittal Pai, Andrew Sveikauskas, P. Daniel Suberviola, II
-
Publication number: 20110286379Abstract: A form of multicast, referred to as “on-demand multicast,” provides a methodology that allows for “on demand” multicasting of data. On-demand multicast allows clients to join or leave a transmission at any point. There is no transmission session start or end time—the session is continuously available, although data is not necessarily continuously transmitted. Data blocks missed by late-joining clients are retransmitted per amalgamated client requests through multiple transmission cycles until all clients that have joined the transmission session receive all content. Once a client has received all data blocks comprising the content for the session, the client may exit the ongoing session.Type: ApplicationFiled: August 4, 2011Publication date: November 24, 2011Applicant: MICROSOFT CORPORATIONInventors: Christopher Scott Dickens, Asad Yaqoob, Saad Syed, Jeremy Sadler, Alaa H. Abdelhalim
-
Patent number: 8018933Abstract: A form of multicast, referred to as “on-demand multicast,” provides a methodology that allows for “on demand” multicasting of data. On-demand multicast allows clients to join or leave a transmission at any point. There is no transmission session start or end time—the session is continuously available, although data is not necessarily continuously transmitted. Data blocks missed by late-joining clients are retransmitted per amalgamated client requests through multiple transmission cycles until all clients that have joined the transmission session receive all content. Once a client has received all data blocks comprising the content for the session, the client may exit the ongoing session.Type: GrantFiled: June 27, 2007Date of Patent: September 13, 2011Assignee: Microsoft CorporationInventors: Christopher Scott Dickens, Asad Yaqoob, Saad Syed, Jeremy Sadler, Alaa H. Abdelhalim
-
Publication number: 20100180042Abstract: Simulcast flow-controlled data streams is described. In embodiment(s), multicast data streams each communicate data to client devices at a different data rate. A high data rate of a first data stream can be reduced to accommodate a receive data rate of a client device that receives the data slower than the high data rate of the first data stream. A flow control service can monitor the high data rate of the first data stream to determine when the high data rate is reduced to a low trigger data rate, initiate a data stream probe at a probe data rate to determine slow client devices that receive the data slower than the probe data rate, and then demote the slow client devices for communication with a second data stream that communicates the data at a low data rate.Type: ApplicationFiled: January 13, 2009Publication date: July 15, 2010Applicant: Microsoft CorporationInventors: David James Gemmell, Asad Yaqoob, Alaa H. Abdelhalim, Seunghwan Hong
-
Publication number: 20090003342Abstract: A form of multicast, referred to as “on-demand multicast,” provides a methodology that allows for “on demand” multicasting of data. On-demand multicast allows clients to join or leave a transmission at any point. There is no transmission session start or end time—the session is continuously available, although data is not necessarily continuously transmitted. Data blocks missed by late-joining clients are retransmitted per amalgamated client requests through multiple transmission cycles until all clients that have joined the transmission session receive all content. Once a client has received all data blocks comprising the content for the session, the client may exit the ongoing session.Type: ApplicationFiled: June 27, 2007Publication date: January 1, 2009Applicant: Microsoft CorporationInventors: Christopher Scott Dickens, Asad Yaqoob, Saad Syed, Jeremy Sadler, Alaa H. Abdelhalim