Patents by Inventor Dhiraj Gedam

Dhiraj Gedam 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: 10476764
    Abstract: The present invention is related to a method for high volume logging for large scale network address translation. A first device intermediary to a plurality of clients and a plurality of database servers allocates a portion of memory to each packet engine in a plurality of packet engines executing on a respective core of a plurality of cores of the first device. The first device establishes large scale network address translation (LSN) for the plurality of clients, the first device logging LSN information of sessions to a corresponding logging buffer established in a respective packet engine's portion of memory. The first device identifies, for a LSN session, a packet engine from the plurality of packet engines to log the information for the LSN session and stores information of the LSN session to the logging buffer in the packet engine's portion of memory.
    Type: Grant
    Filed: August 19, 2014
    Date of Patent: November 12, 2019
    Assignee: CITRIX SYSTEMS, INC.
    Inventor: Dhiraj Gedam
  • Patent number: 10015039
    Abstract: The present disclosure is directed towards systems and methods for supporting Simple Network Management Protocol (SNMP) request operations over clustered networking devices. The system includes a cluster that includes a plurality of intermediary devices and an SNMP agent executing on a first intermediary device of the plurality of intermediary devices. The SNMP agent receives an SNMP GETNEXT request for an entity. Responsive to receipt of the SNMP GETNEXT request, the SNMP agent requests a next entity from each intermediary device of the plurality of intermediary devices of the cluster. To respond to the SNMP request, the SNMP agent selects a lexicographically minimum entity. The SNMP agent may select the lexicographically minimum entity from a plurality of next entities received via responses from each intermediary device of the plurality of intermediary devices.
    Type: Grant
    Filed: April 17, 2015
    Date of Patent: July 3, 2018
    Assignee: Citrix Systems, Inc.
    Inventors: Saravana Annamalaisami, Raveendra Holla, Nishant Kumar Jain, Sharvari Mithyantha, Dhiraj Gedam
  • Patent number: 9699061
    Abstract: In a multi-core device or clustered system, instead of snmpd polling for configured monitoring values of an entity to determine if reached a threshold, each core in a multi-core system or node in a clustered system triggers information to the snmpd about entities that may be or are generating SNMP traps. A configured threshold T is distributed among the cores or nodes, as the case may be, based on the number of cores or nodes. If there are ‘n’ cores in a multi-core device, and the configured threshold is ‘T’, then each core checks for a per-core threshold value ‘T/n’. If there are ‘n’ nodes in a clustered system, and the configured threshold is ‘T’, then each node checks for a per-node threshold value ‘T/n’. Snmpd then gathers information about this entity from all the cores and checks for the threshold ‘T’.
    Type: Grant
    Filed: January 26, 2016
    Date of Patent: July 4, 2017
    Assignee: Citrix Systems, Inc.
    Inventors: Dhiraj Gedam, Raveendra Holla, Sharvari Mithyantha
  • Publication number: 20160142279
    Abstract: In a multi-core device or clustered system, instead of snmpd polling for configured monitoring values of an entity to determine if reached a threshold, each core in a multi-core system or node in a clustered system triggers information to the snmpd about entities that may be or are generating SNMP traps. A configured threshold T is distributed among the cores or nodes, as the case may be, based on the number of cores or nodes. If there are ‘n’ cores in a multi-core device, and the configured threshold is ‘T’, then each core checks for a per-core threshold value ‘T/n’. If there are ‘n’ nodes in a clustered system, and the configured threshold is ‘T’, then each node checks for a per-node threshold value ‘T/n’. According to the pigeonhole principle, if an entity has reached or exceeded the threshold ‘T’, then the entity must have reached or exceeded a value of ‘T/n’ on at least one core or node. Upon the entity crossing a ‘T/n’ value on any core or node, the core or node informs snmpd about this entity.
    Type: Application
    Filed: January 26, 2016
    Publication date: May 19, 2016
    Inventors: Dhiraj Gedam, Raveendra Holla, Sharvari Mithyantha
  • Patent number: 9294381
    Abstract: In a multi-core device or clustered system, instead of snmpd polling for configured monitoring values of an entity to determine if reached a threshold, each core in a multi-core system or node in a clustered system triggers information to the snmpd about entities that may be or are generating SNMP traps. A configured threshold T is distributed among the cores or nodes, as the case may be, based on the number of cores or nodes. If there are ‘n’ cores in a multi-core device, and the configured threshold is ‘T’, then each core checks for a per-core threshold value ‘T/n’. If there are ‘n’ nodes in a clustered system, and the configured threshold is ‘T’, then each node checks for a per-node threshold value ‘T/n’. According to the pigeonhole principle, if an entity has reached or exceeded the threshold ‘T’, then the entity must have reached or exceeded a value of ‘T/n’ on at least one core or node. Upon the entity crossing a ‘T/n’ value on any core or node, the core or node informs snmpd about this entity.
    Type: Grant
    Filed: April 12, 2013
    Date of Patent: March 22, 2016
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Dhiraj Gedam, Raveendra Holla, Sharvari Mithyantha
  • Publication number: 20160057031
    Abstract: The present invention is related to a method for high volume logging for large scale network address translation. A first device intermediary to a plurality of clients and a plurality of database servers allocates a portion of memory to each packet engine in a plurality of packet engines executing on a respective core of a plurality of cores of the first device. The first device establishes large scale network address translation (LSN) for the plurality of clients, the first device logging LSN information of sessions to a corresponding logging buffer established in a respective packet engine's portion of memory. The first device identifies, for a LSN session, a packet engine from the plurality of packet engines to log the information for the LSN session and stores information of the LSN session to the logging buffer in the packet engine's portion of memory.
    Type: Application
    Filed: August 19, 2014
    Publication date: February 25, 2016
    Applicant: CITRIX SYSTEMS, INC.
    Inventor: Dhiraj Gedam
  • Publication number: 20150222475
    Abstract: The present disclosure is directed towards systems and methods for supporting Simple Network Management Protocol (SNMP) request operations over clustered networking devices. The system includes a cluster that includes a plurality of intermediary devices and an SNMP agent executing on a first intermediary device of the plurality of intermediary devices. The SNMP agent receives an SNMP GETNEXT request for an entity. Responsive to receipt of the SNMP GETNEXT request, the SNMP agent requests a next entity from each intermediary device of the plurality of intermediary devices of the cluster. To respond to the SNMP request, the SNMP agent selects a lexicographically minimum entity. The SNMP agent may select the lexicographically minimum entity from a plurality of next entities received via responses from each intermediary device of the plurality of intermediary devices.
    Type: Application
    Filed: April 17, 2015
    Publication date: August 6, 2015
    Inventors: Saravana Annamalaisami, Raveendra Holla, Nishant Kumar Jain, Sharvari Mithyantha, Dhiraj Gedam
  • Patent number: 9015304
    Abstract: The present disclosure is directed towards systems and methods for supporting Simple Network Management Protocol (SNMP) request operations over clustered networking devices. The system includes a cluster that includes a plurality of intermediary devices and an SNMP agent executing on a first intermediary device of the plurality of intermediary devices. The SNMP agent receives an SNMP GETNEXT request for an entity. Responsive to receipt of the SNMP GETNEXT request, the SNMP agent requests a next entity from each intermediary device of the plurality of intermediary devices of the cluster. To respond to the SNMP request, the SNMP agent selects a lexicographically minimum entity. The SNMP agent may select the lexicographically minimum entity from a plurality of next entities received via responses from each intermediary device of the plurality of intermediary devices.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: April 21, 2015
    Assignee: Citrix Systems, Inc.
    Inventors: Saravana Annamalaisami, Raveendra Holla, Nishant Kumar Jain, Sharvari Mithyantha, Dhiraj Gedam
  • Publication number: 20130339503
    Abstract: The present disclosure is directed towards systems and methods for supporting Simple Network Management Protocol (SNMP) request operations over clustered networking devices. The system includes a cluster that includes a plurality of intermediary devices and an SNMP agent executing on a first intermediary device of the plurality of intermediary devices. The SNMP agent receives an SNMP GETNEXT request for an entity. Responsive to receipt of the SNMP GETNEXT request, the SNMP agent requests a next entity from each intermediary device of the plurality of intermediary devices of the cluster. To respond to the SNMP request, the SNMP agent selects a lexicographically minimum entity. The SNMP agent may select the lexicographically minimum entity from a plurality of next entities received via responses from each intermediary device of the plurality of intermediary devices.
    Type: Application
    Filed: June 15, 2012
    Publication date: December 19, 2013
    Inventors: Saravana Annamalaisami, Raveendra Holla, Nishant Kumar Jain, Sharvari Mithyantha, Dhiraj Gedam
  • Publication number: 20130275582
    Abstract: In a multi-core device or clustered system, instead of snmpd polling for configured monitoring values of an entity to determine if reached a threshold, each core in a multi-core system or node in a clustered system triggers information to the snmpd about entities that may be or are generating SNMP traps. A configured threshold T is distributed among the cores or nodes, as the case may be, based on the number of cores or nodes. If there are ‘n’ cores in a multi-core device, and the configured threshold is ‘T’, then each core checks for a per-core threshold value ‘T/n’. If there are ‘n’ nodes in a clustered system, and the configured threshold is ‘T’, then each node checks for a per-node threshold value ‘T/n’. According to the pigeonhole principle, if an entity has reached or exceeded the threshold ‘T’, then the entity must have reached or exceeded a value of ‘T/n’ on at least one core or node. Upon the entity crossing a ‘T/n’ value on any core or node, the core or node informs snmpd about this entity.
    Type: Application
    Filed: April 12, 2013
    Publication date: October 17, 2013
    Applicant: Citrix Systems, Inc.
    Inventors: Dhiraj Gedam, Raveendra Holla, Sharvari Mithyantha