Patents by Inventor Charu Venkatraman

Charu Venkatraman 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: 7769869
    Abstract: The present invention is related to a method for establishing via an appliance a transport layer protocol connection initiated by a server on a first network to a client connected from a second network to the first network via a secure socket layer virtual private network (SSL VPN) connection. The method includes the step of receiving, by an appliance, a transport layer connection request from a server on a first network to connect to a client connected to the first network via a SSL VPN connection from a second network. The transport layer connection request identifies a client destination internet protocol address and a client destination port on the first network.
    Type: Grant
    Filed: August 21, 2006
    Date of Patent: August 3, 2010
    Assignee: Citrix Systems, Inc.
    Inventors: Charu Venkatraman, Arkesh Kumar, James Harris, Ajay Soni, Junxiao He
  • Publication number: 20080046616
    Abstract: A method for compressing a stream of application layer network traffic communicated over a transport layer connection of a virtual private network connection between a client and a server using an appliance. The appliance intercepts one or more transport layer packets of a stream of application network traffic communicated via a transport layer connection of a virtual private network connection between a client and a server. The appliance accumulates data from a payload of the intercepted transport layer packets, determines data accumulated for transmission should be compressed based on one or more compression trigger, and compresses the accumulated data into a self-contained compression block for transmission.
    Type: Application
    Filed: August 21, 2006
    Publication date: February 21, 2008
    Applicant: Citrix Systems, Inc.
    Inventors: Sergey Verzunov, Charu Venkatraman, Junxiao He, Shashi Nanjundaswamy, Bharath Bhushan, Saravana Annamalaisami, Josephine Suganthi, Anil Shetty
  • Publication number: 20080043760
    Abstract: The present invention is related to a method for establishing via an appliance a transport layer protocol connection initiated by a server on a first network to a client connected from a second network to the first network via a secure socket layer virtual private network (SSL VPN) connection. The method includes the step of receiving, by an appliance, a transport layer connection request from a server on a first network to connect to a client connected to the first network via a SSL VPN connection from a second network. The transport layer connection request identifies a client destination internet protocol address and a client destination port on the first network.
    Type: Application
    Filed: August 21, 2006
    Publication date: February 21, 2008
    Applicant: Citrix Systems, Inc.
    Inventors: Charu Venkatraman, Junxiao He, Ajay Soni, James Harris, Arkesh Kumar
  • Publication number: 20080046993
    Abstract: An appliance and method for authorizing a level of access of a client to a virtual private network connection, based on a client-side attribute includes the step of establishing, by an appliance, a control connection with a client upon receiving a client request to establish a virtual private network connection with a network. The appliance transmits, via the control connection, a request to the client to evaluate at least one clause of a security string, the at least one clause including an expression associated with a client-side attribute. The client transmits, via the control connection, a response to the appliance comprising a result of evaluating the at least one clause by the client. The appliance assigns the client to an authorization group based on the result of evaluation of the at least one clause.
    Type: Application
    Filed: August 21, 2006
    Publication date: February 21, 2008
    Inventors: Amarnath Mullick, Charu Venkatraman, Shashi Nanjundaswamy, Junxiao He, Ajay Soni
  • Publication number: 20080046371
    Abstract: A method for automatically changing a version of a client agent for a non-administrative user account without rebooting the user's machine uses a service having installation privileges. The service executes on the client and installs a client agent. The client agent communicates with a network appliance. The client agent detects a difference between its version and a version of the client agent identified by the network appliance. The agent signals the service that it has detected the difference and, in response, the service executes an installation program that installs, without rebooting the client, the version of the client agent identified by the appliance. A corresponding system is also described.
    Type: Application
    Filed: August 21, 2006
    Publication date: February 21, 2008
    Applicant: Citrix Systems, Inc.
    Inventors: Junxiao He, Charu Venkatraman, Arkesh Kumar, Ajay Soni
  • Publication number: 20080046994
    Abstract: The intranet IP address management solution of the appliance and/or client described herein provides an environment for efficiently assigning, managing and querying virtual private network addresses, referred to as intranet IP (IIP) addresses of virtual private network users, such as a multitude of SSL VPN users on an enterprise network. The appliance provides techniques and policies for assigning previously assigned virtual private network addresses of a user to subsequent sessions of the user as the user logs in multiple times or roams between access points. This technique is referred to IIP stickiness as the appliance attempts to provide the same IIP address to a roaming VPN user. The appliance also provides a configurable user domain naming policy so that one can ping or query the virtual private network address of a user by an easily referenceable host name identifying the user.
    Type: Application
    Filed: August 21, 2006
    Publication date: February 21, 2008
    Applicant: Citrix Systems, Inc.
    Inventors: Charu Venkatraman, Junxiao He, Ajay Soni
  • Publication number: 20080031265
    Abstract: Systems and methods are described for using a client agent executing on a client to send ICMP messages to an appliance connected via a virtual private network Methods include: establishing, via a client agent executing on a client, a transport layer virtual private network connection with an appliance; intercepting, by the client agent at the network layer, an ICMP request originating from the client; and transmitting, by the client agent via a transport layer connection, the ICMP request to the appliance. Addition methods describe determining, by the appliance, the address identified by the ICMP request corresponds to a second client, the second client also connected via a virtual private network to the remote machine; and transmitting, by the appliance to the second client via the virtual private network connection, the ICMP request. Corresponding systems are also described.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Amarnath Mullick, Charu Venkatraman, Shashi Nanjundaswami, Junxiao He, Roy Rajan, Ajay Soni
  • Publication number: 20080034418
    Abstract: A method for intercepting, by an agent of a client, communications from the client to be transmitted via a virtual private network connection includes the step of intercepting communications based on identification of an application from which the communication originates. The agent receives information identifying a first application. The agent determines a network communication transmitted by the client originates from the first application and intercepts that communication. The agent transmits the intercepted communication via the virtual private network connection.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Charu Venkatraman, Junxiao He, Amarnath Mullick, Shashi Nanjundaswami, James Harris, Ajay Soni
  • Publication number: 20080034119
    Abstract: Systems and methods are disclosed for communicating compressed and uncompressed content over a transport layer connection established by an appliance between a client and a server. One method comprises the steps of: establishing, by an appliance, a transport layer connection between a client and a server, and receiving, by the appliance, a first response from the server to a first client request, and a second response from the server to a second client request The first response and the second response has uncompressed data. The method includes transmitting, by the appliance, the first response to the client. The appliance identifies first type of compression from a plurality of compression types for compressing the second response to the client, compresses the second response based on the identified compression type, and transmits the compressed second response to the client.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Sergey Verzunov, Junxiao He, Shashi Nanjundaswamy, Charu Venkatraman, Bharath Bhushan, Saravana Annamalaisami, Anil Shetty
  • Publication number: 20080031235
    Abstract: A method for intercepting communication of a client to a destination on a virtual private network includes an agent executing on the client that intercepts a network communication of the client. The agent provides a virtual private network connection from a first network to a second network. The decision to intercept is based on a network destination description or an identification of an application authorized to be accessed via the virtual private network. In one case, the agent determines that a destination specified by the intercepted communication corresponds to a network identifier and a port of a network destination description of an application on the second network authorized for access via the virtual private network. In response to this determination, the agent transmits the intercepted communication.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: James Harris, Charu Venkatraman, Junxiao He, Amarnath Mullick, Shashi Nanjundaswamy, Ajay Soni
  • Publication number: 20080034198
    Abstract: Systems and methods are described for using a client agent to manage HTTP authentication cookies. One method includes intercepting, by a client agent executing on a client, a connection request from the client; establishing, by the client agent, a transport layer virtual private network connection with a network appliance; transmitting, by the client agent via the established connection, an HTTP request comprising an authentication cookie; and transmitting, by the client agent via the connection, the connection request.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Junxiao He, Charu Venkatraman, Ajay Soni
  • Publication number: 20080034072
    Abstract: Methods for redirecting, on a client, a communication of the client to a server to upon determining the server is not useable to communicate to the client include the steps of: establishing, by an client agent on a client, a transport layer connection between the client and an intermediary appliance, the intermediary appliance providing access to one or more servers; receiving, by the client agent from the intermediary appliance, address information identifying at least one of the one or more servers available to communicate; determining, by the client agent, the transport layer connection is unusable to communicate; establishing, by the client agent, a second transport layer connection between the client and one of the identified available servers to bypass the appliance. Corresponding systems are also described.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Junxiao He, Josephine Suganthi, Sergey Verzunov, Anil Shetty, Charu Venkatraman
  • Publication number: 20080034419
    Abstract: A method for allowing or denying, by an appliance, access to a resource by an application on a client via a virtual private network connection includes basing the decision to allow or deny access on identification of the application. The appliance intercepts a request from an application on a client on a first network to access via a virtual private network connection a resource on a second network. The appliance identifies the application and associates with the intercepted request an authorization policy based on the identity of the application. The appliance determines, using the authorization policy and the identity of the application, to either allow or deny access by the application to the resource.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Amarnath Mullick, Shashi Nanjundaswami, Charu Venkatraman, Junxiao He, James Harris, Ajay Soni
  • Publication number: 20080034110
    Abstract: Methods for using a client agent to route client requests among a plurality of appliances using transport layer information include the steps of: establishing, by a client agent executing on a client, a first transport layer connection with a first appliance of a plurality of appliances, the first appliance providing access to one or more servers; establishing, by a client agent executing on the client, a second transport layer connection with a second appliance of a plurality of appliances, the second appliance providing access to one or more servers; intercepting, by the client agent, a packet transmitted by the client; selecting, by the client agent, one of the connections to transmit the intercepted packet based on a characteristic of at least one of: the transport layer connections, the plurality of appliances, or the servers; and transmitting the intercepted packet via the selected connection.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Josephine Suganthi, Junxiao He, Sergey Verzunov, Anil Shetty, Charu Venkatraman
  • Publication number: 20080034417
    Abstract: Systems and methods are described for using a client agent operating in a virtual private network environment to intercept HTTP communications. Methods include: intercepting at the network layer, by a client agent executing on a client, an HTTP request from an application executing on the client; modifying the HTTP request; and transmitting, via a transport layer connection, the modified HTTP request to a server. Additional methods may comprise adding, removing, or modifying at least one cookie in the HTTP request. Still other methods may comprise modifying at least one name-value pair contained in the HTTP request. Corresponding systems are also described.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Inventors: Junxiao He, Charu Venkatraman, Ajay Soni
  • Publication number: 20080034413
    Abstract: Systems and methods are described for using a client agent to manage HTTP authentication cookies. One method includes intercepting, by a client agent executing on a client, a connection request from the client; establishing, by the client agent, a transport layer virtual private network connection with a network appliance; transmitting, by the client agent via the established connection, an HTTP request comprising an authentication cookie; and transmitting, by the client agent via the connection, the connection request.
    Type: Application
    Filed: August 3, 2006
    Publication date: February 7, 2008
    Applicant: Citrix Systems, Inc.
    Inventors: Junxiao He, Charu Venkatraman, Roy Rajan, Ajay Soni
  • Publication number: 20070245409
    Abstract: The present invention relates to systems and methods to identify a level of access for a resource being accessed via a secure socket layer virtual private network (SSL VPN) connection to a network, and to control the action on the resource based on the identified level of access. The appliance described herein provides intelligent secure access and action control to resources based on a sense and respond mechanism. When a user requests access to a resource via the SSL VPN connection of the appliance, the appliance obtains information about the client to determine the user access scenario—the location, device, connection and identify of the user or client.
    Type: Application
    Filed: December 5, 2006
    Publication date: October 18, 2007
    Inventors: James Harris, Max He, Arkesh Kumar, Ajay Soni, Charu Venkatraman, Shashi Najundaswamy, Amarnath Mullick
  • Publication number: 20060253605
    Abstract: The present invention is directed towards systems and methods for dynamically deploying and executing acceleration functionality on a client to improve the performance and delivery of remotely accessed applications. In one embodiment. The client-side acceleration functionality is provided by an acceleration program that performs a plurality of the following acceleration techniques in an integrated and efficient manner: 1) multi-protocol compression 2) transport control protocol pooling, 3) transport control protocol multiplexing 4) transport control protocol buffering, and 5) caching. The acceleration program establishes a transport layer connection between the client and server, and intercepts network packets at the transport layer.
    Type: Application
    Filed: December 30, 2005
    Publication date: November 9, 2006
    Inventors: Prabakar Sundarrajan, Junxiao He, Josephine Suganthi, Shashi Nanjundaswamy, Bharath Bhushan KR, Saravana Annamalaisami, Sergey Verzunov, Charu Venkatraman, Anil Shetty
  • Publication number: 20060248581
    Abstract: The present invention is directed towards systems and methods for dynamically redirecting on a client communications of the client with a server to bypass an intermediary that is determined to be unavailable for such communications. An acceleration program on the client establishes a transport layer connection between the client and server, and intercepts communications of the client to the server. The transport layer connection may be established via an intermediary, such as a gateway, proxy or appliance. If the client-side acceleration program determines the intermediary is not available for communicating by the client to the server, the acceleration program automatically establishes a second transport layer connection to the server in order to bypass the intermediary. The acceleration program then transmits the intercepted communications of the client via the second transport layer connection to the server.
    Type: Application
    Filed: December 30, 2005
    Publication date: November 2, 2006
    Inventors: Prabakar Sundarrajan, Junxiao He, Josephine Suganthi, Sergey Verzunov, Charu Venkatraman, Anil Shetty
  • Publication number: 20060200849
    Abstract: The present invention is directed towards systems and methods for dynamically deploying and executing acceleration functionality on a client to improve the performance and delivery of remotely accessed applications. In one embodiment, the client-side acceleration functionality is provided by an acceleration program that performs a transport layer connection pooling technique for improving performance of communications and delivery of a remotely-accessed application. The acceleration program establishes a transport layer connection from the client to the server that can be used by multiple applications on the client, or that is otherwise shared among applications of the client. The acceleration program maintains the transport layer connection open to reduce the number of transport layer connection requests and number of transport layer connections established with the server for an application or multiple applications running on the client.
    Type: Application
    Filed: December 30, 2005
    Publication date: September 7, 2006
    Inventors: Prabakar Sundarrajan, Junxiao He, Shashi Nanjundaswamy, Sergey Verzunov, Charu Venkatraman, Anil Shetty