Patents by Inventor Prabhath Sajeepa

Prabhath Sajeepa 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: 10425473
    Abstract: A method of resetting a stateful connection in a storage cluster with stateless load-balancing is provided. The method includes receiving a packet associated with a stateful connection between a client and a first storage node of the storage cluster. The method includes sending a reset packet from a second storage node to the client, through a stateless load balancer, responsive to the second storage node failing to recognize the packet associated with the stateful connection between the client and the first storage node, wherein the client resets the stateful connection responsive to receiving the reset packet. The method includes sending further reset packets from the load balancer to a plurality of storage nodes of the storage cluster, responsive to receiving, at the load balancer, the reset packet from the second storage node, wherein the plurality of storage nodes reset stateful connection information responsive to receiving the further reset packets.
    Type: Grant
    Filed: July 3, 2017
    Date of Patent: September 24, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Jayesh Patel, Prabhath Sajeepa, Daniel Talayco
  • Patent number: 10333865
    Abstract: An example method for transformation of Peripheral Component Interconnect Express (PCIe) compliant virtual devices in a server in a network environment is provided and includes receiving, during runtime of the server, a request to change a first configuration of a PCIe compliant virtual device to a different second configuration, identifying a bridge on a PCIe topology below which the virtual device is located, issuing a simulated secondary bus reset to the bridge, the virtual device being reconfigured according to the change in configuration after the simulated secondary bus reset is issued, re-enumerating below the bridge after the change in configuration completes without rebooting the server, and updating the PCI topology with the virtual device in the second configuration. A virtual interface card adapter traps the simulated secondary bus reset, removes the virtual device from the PCI topology, and reconfigures the virtual device from the first configuration to the second configuration.
    Type: Grant
    Filed: August 21, 2015
    Date of Patent: June 25, 2019
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Sagar Borikar, Prabhath Sajeepa
  • Patent number: 10313380
    Abstract: A method is provided in one example and includes creating a staging queue in a virtual interface card (VIC) adapter firmware of a server based on a log policy; receiving a log message from a VIC driver in the server; copying the log message to the staging queue; generating a VIC control message comprising the log message from the staging queue; and sending the VIC control message to a switch.
    Type: Grant
    Filed: February 22, 2018
    Date of Patent: June 4, 2019
    Assignee: CISCO TECHNOLOGY, INC.
    Inventor: Prabhath Sajeepa
  • Patent number: 10230544
    Abstract: A method for efficient data forwarding in a networked device is provided. The method includes receiving a first packet from a first VLAN into a load balancer of the networked device and forwarding the first packet from the load balancer to a second VLAN internal to the networked device, wherein an identity of the first VLAN is unknown as a result of forwarding the packet from the first VLAN to the second VLAN. The method includes determining the identity of the first VLAN, based on a source IP address of the first packet and a map of IP addresses and VLANs. The method includes sending a second packet from one of a plurality of nodes, in response to the receiving, with the source IP address of the first packet as a destination IP address of the second packet and with a field of the second packet identifying the first VLAN.
    Type: Grant
    Filed: April 27, 2017
    Date of Patent: March 12, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Curtis Scranton McDowell, Prabhath Sajeepa, Daniel Talayco
  • Patent number: 10114792
    Abstract: An example method for facilitating low latency remote direct memory access (RDMA) for microservers is provided and includes generating queue pair (QPs) in a memory of an input/output (I/O) adapter of a microserver chassis having a plurality of compute nodes executing thereon, the QPs being associated with a remote direct memory access (RDMA) connection between a first compute node and a second compute node in the microserver chassis, setting a flag in the QPs to indicate that the RDMA connection is local to the microserver chassis, and performing a loopback of RDMA packets within the I/O adapter from one memory region in the I/O adapter associated with the first compute node of the RDMA connection to another memory region in the I/O adapter associated with the second compute node of the RDMA connection.
    Type: Grant
    Filed: September 14, 2015
    Date of Patent: October 30, 2018
    Assignee: CISCO TECHNOLOGY, INC
    Inventors: Prabhath Sajeepa, Sagar Borikar
  • Patent number: 10089267
    Abstract: A method is provided in one example embodiment and includes receiving by a network element a request from a network device connected to the network element to update a shared resource maintained by the network element; subsequent to the receipt, identifying a Base Address Register Resource Table (“BRT”) element assigned to a Peripheral Component Interconnect (“PCI”) adapter of the network element associated with the network device, wherein the BRT points to the shared resource; changing an attribute of the identified BRT from read-only to read/write to enable the identified BRT to be written by the network device; and notifying the network device that the attribute of the identified BRT has been changed, thereby enabling the network device to update the shared resource via a Base Address Register (“BAR”) comprising the identified BRT.
    Type: Grant
    Filed: September 8, 2017
    Date of Patent: October 2, 2018
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Sagar Borikar, Prabhath Sajeepa
  • Patent number: 10044616
    Abstract: An example method for simultaneously supporting, on a single VIC adapter (i.e. on a single network interface), RDMA transport according to multiple RoCE versions is disclosed. The method includes providing the VIC adapter with an indication of a RoCE version used for a particular RDMA connection between two compute nodes identified by a certain QP identifier, and then automatically configuring Egress (EG) packet classifier and flow table of the VIC adapter to encapsulate outgoing RDMA commands and automatically configuring Ingress (IG) packet classifier and flow table of the VIC adapter to decapsulate incoming RoCE packets for that RDMA connection according to the indicated RoCE version. Automatic encapsulation and decapsulation according to any one of the multiple RoCE versions that may be used for a particular RDMA connection, i.e. on a per-QP basis, advantageously allows co-existence of routable (i.e. RoCEv2) and non-routable (i.e. RoCEv1) RDMA solutions on a single network interface.
    Type: Grant
    Filed: October 27, 2017
    Date of Patent: August 7, 2018
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Rushikesh Shree Khasgiwale
  • Publication number: 20180183734
    Abstract: A method is provided in one example and includes creating a staging queue in a virtual interface card (VIC) adapter firmware of a server based on a log policy; receiving a log message from a VIC driver in the server; copying the log message to the staging queue; generating a VIC control message comprising the log message from the staging queue; and sending the VIC control message to a switch.
    Type: Application
    Filed: February 22, 2018
    Publication date: June 28, 2018
    Inventor: Prabhath Sajeepa
  • Publication number: 20180137073
    Abstract: An example method for facilitating policy-driven storage in a microserver computing environment is provided and includes receiving, at an input/output (I/O) adapter in a microserver chassis having a plurality of compute nodes and a shared storage resource, policy contexts prescribing storage access parameters of respective compute nodes and enforcing the respective policy contexts on I/O operations by the compute nodes, in which respect a particular I/O operation by any compute node is not executed if the respective policy context does not allow the particular I/O operation. The method further includes allocating tokens to command descriptors associated with I/O operations for accessing the shared storage resource, identifying a violation of any policy context of any compute node based on availability of the tokens, and throttling I/O operations by other compute nodes until the violation disappears.
    Type: Application
    Filed: January 12, 2018
    Publication date: May 17, 2018
    Inventors: Prabhath Sajeepa, Sagar Borikar
  • Patent number: 9965441
    Abstract: An example method for adaptively coalescing remote direct memory access (RDMA) acknowledgements is provided. The method includes determining one or more input/output (I/O) characteristics of RDMA packets of a plurality of queue pairs (QPs) on a per-QP basis, each QP identifying a respective RDMA connection between a respective first compute node and a respective second compute node. The method further includes determining an acknowledgement frequency for providing acknowledgements of the RDMA packets on a per-QP basis (i.e., a respective acknowledgement frequency is set for each QP) based on the determined one or more I/O characteristics for each QP.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: May 8, 2018
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Sagar Borikar
  • Patent number: 9917800
    Abstract: A method is provided in one example and includes creating a staging queue in a virtual interface card (VIC) adapter firmware of a server based on a log policy; receiving a log message from a VIC driver in the server; copying the log message to the staging queue; generating a VIC control message comprising the log message from the staging queue; and sending the VIC control message to a switch.
    Type: Grant
    Filed: August 24, 2012
    Date of Patent: March 13, 2018
    Assignee: Cisco Technology, Inc.
    Inventor: Prabhath Sajeepa
  • Publication number: 20180048569
    Abstract: An example method for simultaneously supporting, on a single VIC adapter (i.e. on a single network interface), RDMA transport according to multiple RoCE versions is disclosed. The method includes providing the VIC adapter with an indication of a RoCE version used for a particular RDMA connection between two compute nodes identified by a certain QP identifier, and then automatically configuring Egress (EG) packet classifier and flow table of the VIC adapter to encapsulate outgoing RDMA commands and automatically configuring Ingress (IG) packet classifier and flow table of the VIC adapter to decapsulate incoming RoCE packets for that RDMA connection according to the indicated RoCE version. Automatic encapsulation and decapsulation according to any one of the multiple RoCE versions that may be used for a particular RDMA connection, i.e. on a per-QP basis, advantageously allows co-existence of routable (i.e. RoCEv2) and non-routable (i.e. RoCEv1) RDMA solutions on a single network interface.
    Type: Application
    Filed: October 27, 2017
    Publication date: February 15, 2018
    Inventors: Prabhath Sajeepa, Rushikesh Shree Khasgiwale
  • Patent number: 9892075
    Abstract: An example method for facilitating policy-driven storage in a microserver computing environment is provided and includes receiving, at an input/output (I/O) adapter in a microserver chassis having a plurality of compute nodes and a shared storage resource, policy contexts prescribing storage access parameters of respective compute nodes and enforcing the respective policy contexts on I/O operations by the compute nodes, in which respect a particular I/O operation by any compute node is not executed if the respective policy context does not allow the particular I/O operation. The method further includes allocating tokens to command descriptors associated with I/O operations for accessing the shared storage resource, identifying a violation of any policy context of any compute node based on availability of the tokens, and throttling I/O operations by other compute nodes until the violation disappears.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: February 13, 2018
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Sagar Borikar
  • Publication number: 20180011807
    Abstract: A method is provided in one example embodiment and includes receiving by a network element a request from a network device connected to the network element to update a shared resource maintained by the network element; subsequent to the receipt, identifying a Base Address Register Resource Table (“BRT”) element assigned to a Peripheral Component Interconnect (“PCI”) adapter of the network element associated with the network device, wherein the BRT points to the shared resource; changing an attribute of the identified BRT from read-only to read/write to enable the identified BRT to be written by the network device; and notifying the network device that the attribute of the identified BRT has been changed, thereby enabling the network device to update the shared resource via a Base Address Register (“BAR”) comprising the identified BRT.
    Type: Application
    Filed: September 8, 2017
    Publication date: January 11, 2018
    Inventors: Sagar Borikar, Prabhath Sajeepa
  • Patent number: 9813338
    Abstract: An example method for simultaneously supporting, on a single VIC adapter (i.e. on a single network interface), RDMA transport according to multiple RoCE versions is disclosed. The method includes providing the VIC adapter with an indication of a RoCE version used for a particular RDMA connection between two compute nodes identified by a certain QP identifier, and then automatically configuring Egress (EG) packet classifier and flow table of the VIC adapter to encapsulate outgoing RDMA commands and automatically configuring Ingress (IG) packet classifier and flow table of the VIC adapter to decapsulate incoming RoCE packets for that RDMA connection according to the indicated RoCE version. Automatic encapsulation and decapsulation according to any one of the multiple RoCE versions that may be used for a particular RDMA connection, i.e. on a per-QP basis, advantageously allows co-existence of routable (i.e. RoCEv2) and non-routable (i.e. RoCEv1) RDMA solutions on a single network interface.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: November 7, 2017
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Rushikesh Shree Khasgiwale
  • Patent number: 9760513
    Abstract: A method is provided in one example embodiment and includes receiving by a network element a request from a network device connected to the network element to update a shared resource maintained by the network element; subsequent to the receipt, identifying a Base Address Register Resource Table (“BRT”) element assigned to a Peripheral Component Interconnect (“PCI”) adapter of the network element associated with the network device, wherein the BRT points to the shared resource; changing an attribute of the identified BRT from read-only to read/write to enable the identified BRT to be written by the network device; and notifying the network device that the attribute of the identified BRT has been changed, thereby enabling the network device to update the shared resource via a Base Address Register (“BAR”) comprising the identified BRT.
    Type: Grant
    Filed: September 22, 2015
    Date of Patent: September 12, 2017
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Sagar Borikar, Prabhath Sajeepa
  • Publication number: 20170168986
    Abstract: An example method for adaptively coalescing remote direct memory access (RDMA) acknowledgements is provided. The method includes determining one or more input/output (I/O) characteristics of RDMA packets of a plurality of queue pairs (QPs) on a per-QP basis, each QP identifying a respective RDMA connection between a respective first compute node and a respective second compute node. The method further includes determining an acknowledgement frequency for providing acknowledgements of the RDMA packets on a per-QP basis (i.e., a respective acknowledgement frequency is set for each QP) based on the determined one or more I/O characteristics for each QP.
    Type: Application
    Filed: December 10, 2015
    Publication date: June 15, 2017
    Applicant: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Sagar Borikar
  • Publication number: 20170171075
    Abstract: An example method for simultaneously supporting, on a single VIC adapter (i.e. on a single network interface), RDMA transport according to multiple RoCE versions is disclosed. The method includes providing the VIC adapter with an indication of a RoCE version used for a particular RDMA connection between two compute nodes identified by a certain QP identifier, and then automatically configuring Egress (EG) packet classifier and flow table of the VIC adapter to encapsulate outgoing RDMA commands and automatically configuring Ingress (IG) packet classifier and flow table of the VIC adapter to decapsulate incoming RoCE packets for that RDMA connection according to the indicated RoCE version. Automatic encapsulation and decapsulation according to any one of the multiple RoCE versions that may be used for a particular RDMA connection, i.e. on a per-QP basis, advantageously allows co-existence of routable (i.e. RoCEv2) and non-routable (i.e. RoCEv1) RDMA solutions on a single network interface.
    Type: Application
    Filed: December 10, 2015
    Publication date: June 15, 2017
    Applicant: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Rushikesh Shree Khasgiwale
  • Publication number: 20170168970
    Abstract: An example method for facilitating policy-driven storage in a microserver computing environment is provided and includes receiving, at an input/output (I/O) adapter in a microserver chassis having a plurality of compute nodes and a shared storage resource, policy contexts prescribing storage access parameters of respective compute nodes and enforcing the respective policy contexts on I/O operations by the compute nodes, in which respect a particular I/O operation by any compute node is not executed if the respective policy context does not allow the particular I/O operation. The method further includes allocating tokens to command descriptors associated with I/O operations for accessing the shared storage resource, identifying a violation of any policy context of any compute node based on availability of the tokens, and throttling I/O operations by other compute nodes until the violation disappears.
    Type: Application
    Filed: December 10, 2015
    Publication date: June 15, 2017
    Applicant: CISCO TECHNOLOGY, INC.
    Inventors: Prabhath Sajeepa, Sagar Borikar
  • Publication number: 20170083466
    Abstract: A method is provided in one example embodiment and includes receiving by a network element a request from a network device connected to the network element to update a shared resource maintained by the network element; subsequent to the receipt, identifying a Base Address Register Resource Table (“BRT”) element assigned to a Peripheral Component Interconnect (“PCI”) adapter of the network element associated with the network device, wherein the BRT points to the shared resource; changing an attribute of the identified BRT from read-only to read/write to enable the identified BRT to be written by the network device; and notifying the network device that the attribute of the identified BRT has been changed, thereby enabling the network device to update the shared resource via a Base Address Register (“BAR”) comprising the identified BRT.
    Type: Application
    Filed: September 22, 2015
    Publication date: March 23, 2017
    Applicant: CISCO TECHNOLOGY, INC.
    Inventors: Sagar Borikar, Prabhath Sajeepa