Patents by Inventor Varun Taneja
Varun Taneja 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: 10757146Abstract: The present invention is directed towards systems and methods for multipath transmission control protocol connection (MPTCP) management. A first device, intermediary between a second device and a third device, may establish a protocol control structure responsive to establishment of a MPTCP session between the first device and the second device. The first device may maintain, via the protocol control structure, an identification of a plurality of subflows comprising transmission control protocol (TCP) connections in the MPTCP session between the first device and the second device. The first device may convert or translate, via the protocol control structure, subflow-specific sequence identifiers of packets transmitted via each of the plurality of subflows, to sequence identifiers unique across the plurality of subflows and identifying related packets from each subflows to be processed at the third device.Type: GrantFiled: January 22, 2018Date of Patent: August 25, 2020Assignee: Citrix Systems, Inc.Inventors: Saravana Annamalaisami, Krishna Khanal, Varun Taneja, Mahesh Mylarappa
-
Patent number: 10694003Abstract: The present disclosure relates to methods and systems for dynamically changing an advertised window for a transport layer connection. A device can receive data from a server destined for an application. The device identifies the size of the application buffer corresponding to the application and advertises the application buffer size as a window size to the server. The device stores the data in the device memory. The device then determines the memory usage by comparing the memory usage to one or more predetermined thresholds. If the device determines that the memory usage is below a first predetermined threshold, the device can implement an aggressive dynamic receive buffering policy in which the device increases the advertised window size by a first increment. If the device determines that the memory usage is above the first threshold and below a second threshold, the device executes a more conservative dynamic receive buffering policy.Type: GrantFiled: August 14, 2017Date of Patent: June 23, 2020Assignee: Citrix Systems, Inc.Inventors: Varun Taneja, Mahesh Mylarappa, Saravana Annamalaisami
-
Publication number: 20180146015Abstract: The present invention is directed towards systems and methods for multipath transmission control protocol connection (MPTCP) management. A first device, intermediary between a second device and a third device, may establish a protocol control structure responsive to establishment of a MPTCP session between the first device and the second device. The first device may maintain, via the protocol control structure, an identification of a plurality of subflows comprising transmission control protocol (TCP) connections in the MPTCP session between the first device and the second device. The first device may convert or translate, via the protocol control structure, subflow-specific sequence identifiers of packets transmitted via each of the plurality of subflows, to sequence identifiers unique across the plurality of subflows and identifying related packets from each subflows to be processed at the third device.Type: ApplicationFiled: January 22, 2018Publication date: May 24, 2018Inventors: Saravana Annamalaisami, Krishna Khanal, Varun Taneja, Mahesh Mylarappa
-
Patent number: 9888042Abstract: The present invention is directed towards systems and methods for multipath transmission control protocol connection (MPTCP) management. A first device, intermediary between a second device and a third device, may establish a protocol control structure responsive to establishment of a MPTCP session between the first device and the second device. The first device may maintain, via the protocol control structure, an identification of a plurality of subflows comprising transmission control protocol (TCP) connections in the MPTCP session between the first device and the second device. The first device may convert or translate, via the protocol control structure, subflow-specific sequence identifiers of packets transmitted via each of the plurality of subflows, to sequence identifiers unique across the plurality of subflows and identifying related packets from each subflows to be processed at the third device.Type: GrantFiled: May 20, 2014Date of Patent: February 6, 2018Assignee: Citrix Systems, Inc.Inventors: Saravana Annamalaisami, Krishna Khanal, Varun Taneja, Mahesh Mylarappa
-
Publication number: 20180027098Abstract: The present disclosure relates to methods and systems for dynamically changing an advertised window for a transport layer connection. A device can receive data from a server destined for an application. The device identifies the size of the application buffer corresponding to the application and advertises the application buffer size as a window size to the server. The device stores the data in the device memory. The device then determines the memory usage by comparing the memory usage to one or more predetermined thresholds. If the device determines that the memory usage is below a first predetermined threshold, the device can implement an aggressive dynamic receive buffering policy in which the device increases the advertised window size by a first increment. If the device determines that the memory usage is above the first threshold and below a second threshold, the device executes a more conservative dynamic receive buffering policy.Type: ApplicationFiled: August 14, 2017Publication date: January 25, 2018Inventors: Varun Taneja, Mahesh Mylarappa, Saravana Annamalaisami
-
Patent number: 9769288Abstract: The present disclosure relates to methods and systems for dynamically changing an advertised window for a transport layer connection. A device can receive data from a server destined for an application. The device identifies the size of the application buffer corresponding to the application and advertises the application buffer size as a window size to the server. The device stores the data in the device memory. The device then determines the memory usage by comparing the memory usage to one or more predetermined thresholds. If the device determines that the memory usage is below a first predetermined threshold, the device can implement an aggressive dynamic receive buffering policy in which the device increases the advertised window size by a first increment. If the device determines that the memory usage is above the first threshold and below a second threshold, the device executes a more conservative dynamic receive buffering policy.Type: GrantFiled: April 6, 2013Date of Patent: September 19, 2017Assignee: Citrix Systems, Inc.Inventors: Varun Taneja, Mahesh Mylarappa, Saravana Annamalaisami
-
Patent number: 9118569Abstract: Methods and systems for providing congestion control to a transport control protocol implementation are described. A device detects that there is a congestion event on a transport control protocol (TCP) connection of the device. The device determines that a bandwidth estimate is lower than half a current value of a slow start threshold for the TCP connection. In response to the determination, the device changes the slow start threshold to half of the current value of the slow start threshold for the TCP connection. The bandwidth estimate can be the product of the eligible rate estimate and the minimum round trip time. In some implementations, the transport control protocol implementation is a TCP Westwood implementation.Type: GrantFiled: April 6, 2013Date of Patent: August 25, 2015Assignee: CITRIX SYSTEM, INC.Inventors: Varun Taneja, Saravana Annamalaisami, Rajesh Joshi
-
Publication number: 20140351447Abstract: The present invention is directed towards systems and methods for multipath transmission control protocol connection (MPTCP) management. A first device, intermediary between a second device and a third device, may establish a protocol control structure responsive to establishment of a MPTCP session between the first device and the second device. The first device may maintain, via the protocol control structure, an identification of a plurality of subflows comprising transmission control protocol (TCP) connections in the MPTCP session between the first device and the second device. The first device may convert or translate, via the protocol control structure, subflow-specific sequence identifiers of packets transmitted via each of the plurality of subflows, to sequence identifiers unique across the plurality of subflows and identifying related packets from each subflows to be processed at the third device.Type: ApplicationFiled: May 20, 2014Publication date: November 27, 2014Applicant: Citrix Systems, Inc.Inventors: Saravana Annamalaisami, Krishna Khanal, Varun Taneja, Mahesh Mylarappa
-
Patent number: 8875290Abstract: The present application is directed towards systems and methods for aggressively probing a client side connection to determine and counteract a malicious window size attack or similar behavior from a malfunctioning client. The solution described herein detects when a connection may be under malicious attach via improper or unusual window size settings. Responsive to the detection, the solution described herein will setup probes that determine whether or not the client is malicious and does so within an aggressive time period to avoid the tying up of processing cycles, transport layer sockets and buffers, and other resources of the sender.Type: GrantFiled: February 18, 2013Date of Patent: October 28, 2014Assignee: Citrix Systems, Inc.Inventors: Varun Taneja, Mahesh Mylarappa, Saravanakumar Annamalaisami
-
Publication number: 20140304320Abstract: The present disclosure relates to methods and systems for dynamically changing an advertised window for a transport layer connection. A device can receive data from a server destined for an application. The device identifies the size of the application buffer corresponding to the application and advertises the application buffer size as a window size to the server. The device stores the data in the device memory. The device then determines the memory usage by comparing the memory usage to one or more predetermined thresholds. If the device determines that the memory usage is below a first predetermined threshold, the device can implement an aggressive dynamic receive buffering policy in which the device increases the advertised window size by a first increment. If the device determines that the memory usage is above the first threshold and below a second threshold, the device executes a more conservative dynamic receive buffering policy.Type: ApplicationFiled: April 6, 2013Publication date: October 9, 2014Applicant: Citrix Systems, Inc.Inventors: Varun Taneja, Mahesh Mylarappa, Saravana Annamalaisami
-
Publication number: 20140304425Abstract: Methods and systems for providing congestion control to a transport control protocol implementation are described. A device detects that there is a congestion event on a transport control protocol (TCP) connection of the device. The device determines that a bandwidth estimate is lower than half a current value of a slow start threshold for the TCP connection. In response to the determination, the device changes the slow start threshold to half of the current value of the slow start threshold for the TCP connection. The bandwidth estimate can be the product of the eligible rate estimate and the minimum round trip time. In some implementations, the transport control protocol implementation is a TCP Westwood implementation.Type: ApplicationFiled: April 6, 2013Publication date: October 9, 2014Applicant: Citrix Systems, Inc.Inventors: Varun Taneja, Saravana Annamalaisami, Rajesh Joshi
-
Publication number: 20130159540Abstract: The present application is directed towards systems and methods for aggressively probing a client side connection to determine and counteract a malicious window size attack or similar behavior from a malfunctioning client. The solution described herein detects when a connection may be under malicious attach via improper or unusual window size settings. Responsive to the detection, the solution described herein will setup probes that determine whether or not the client is malicious and does so within an aggressive time period to avoid the tying up of processing cycles, transport layer sockets and buffers, and other resources of the sender.Type: ApplicationFiled: February 18, 2013Publication date: June 20, 2013Inventors: Varun Taneja, Mahesh Mylarappa, Saravanakumar Annamalaisami
-
Patent number: 8387143Abstract: The present application is directed towards systems and methods for aggressively probing a client side connection to determine and counteract a malicious window size attack or similar behavior from a malfunctioning client. The solution described herein detects when a connection may be under malicious attach via improper or unusual window size settings. Responsive to the detection, the solution described herein will setup probes that determine whether or not the client is malicious and does so within an aggressive time period to avoid the tying up of processing cycles, transport layer sockets and buffers, and other resources of the sender.Type: GrantFiled: November 30, 2009Date of Patent: February 26, 2013Assignee: Citrix Systems, Inc.Inventors: Varun Taneja, Mahesh Mylarappa, Saravanakumar Annamalaisami
-
Publication number: 20110131654Abstract: The present application is directed towards systems and methods for aggressively probing a client side connection to determine and counteract a malicious window size attack or similar behavior from a malfunctioning client. The solution described herein detects when a connection may be under malicious attach via improper or unusual window size settings. Responsive to the detection, the solution described herein will setup probes that determine whether or not the client is malicious and does so within an aggressive time period to avoid the tying up of processing cycles, transport layer sockets and buffers, and other resources of the sender.Type: ApplicationFiled: November 30, 2009Publication date: June 2, 2011Inventors: Varun Taneja, Mahesh Mylarappa, Saravanakumar Annamalaisami